"readonly", ...$extras]); break; default: $form = parent::getFieldForm($field, $value, $viewDatas, $extras); break; } return $form; } public function getFieldView(string $field, mixed $value, array $viewDatas, array $extras = []): string|null { switch ($field) { case 'serverinfo_uid': $value = view_cell("\App\Cells\Equipment\ServerCell::detail", [ 'serviceEntity' => $viewDatas['entity'], 'template' => 'servicelist', ]); break; case 'amount': case 'sale': $value = number_format($value) . "ė"; break; case 'billing_at': if (array_key_exists('unPaids', $viewDatas)) { if (array_key_exists($viewDatas['entity']->getPK(), $viewDatas['unPaids'])) { $value .= sprintf( "
", $viewDatas['entity']->getPK(), $viewDatas['unPaids'][$viewDatas['entity']->getPK()]['cnt'], number_format($viewDatas['unPaids'][$viewDatas['entity']->getPK()]['amount']) ); } } break; default: $value = parent::getFieldView($field, $value, $viewDatas, $extras); break; } return $value; } public function getListLabel(string $field, string $label, array $viewDatas, array $extras = []): string { switch ($field) { case 'serverinfo_uid': $label = parent::getListLabel($field, $label, $viewDatas, $extras); $label .= "ALL ð"; break; default: $label = parent::getListLabel($field, $label, $viewDatas, $extras); break; } return $label; } public function getListButton(string $action, string $label, array $viewDatas, array $extras = []): string { switch ($action) { case 'modify': $action = form_label( $label, 'modify_service', [ "data-src" => "/admin/customer/service/modify/{$viewDatas['entity']->getPK()}?clientinfo_uid={$viewDatas['entity']->getClientInfoUID()}", "data-bs-toggle" => "modal", "data-bs-target" => "#modal_action_form", "class" => "text-primary form-label-sm", ] ); break; case 'addServer': $action = form_label( $label ? $label : ICONS['REBOOT'], $action, [ "data-src" => "/admin/customer/service/addServer/{$viewDatas['entity']->getPK()}", "data-bs-toggle" => "modal", "data-bs-target" => "#modal_action_form", "class" => "btn btn-sm form-label-sm", ...$extras ] ); break; case 'onetime': $action = form_label( $label ? $label : ICONS['ONETIME'], $action, [ "data-src" => "/admin/payment/create?serviceinfo_uid={$viewDatas['entity']->getPK()}", "data-bs-toggle" => "modal", "data-bs-target" => "#modal_action_form", "class" => "btn btn-sm form-label-sm", ...$extras ] ); break; case 'history': $action = form_label( $label ? $label : ICONS['HISTORY'], $action, [ "data-src" => "/admin/customer/service/history?serviceinfo_uid={$viewDatas['entity']->getPK()}&serviceinfo_uid={$viewDatas['entity']->getPK()}&ActionTemplate=popup", "data-bs-toggle" => "modal", "data-bs-target" => "#modal_action_form", "class" => "btn btn-sm btn-primary form-label-sm", ...$extras ] ); break; default: $action = parent::getListButton($action, $label, $viewDatas, $extras); break; } return $action; } }