setTitleField(field: ServiceModel::TITLE); } public function getFieldForm(string $field, mixed $value, array $viewDatas, array $extras = []): string { if (in_array($viewDatas['action'], ['create', 'modify'])) { $extras = (strpos($viewDatas['field_rules'][$field], 'required') !== false) ? ["class" => "form-control", "required" => "", ...$extras] : ["class" => "form-control", ...$extras]; } switch ($field) { case 'payment_date': case 'start_at': case 'end_at': $extra_class = isset($extras['class']) ? $extras['class'] . ' calender' : 'calender'; $form = form_input($field, $value ?? "", ['class' => $extra_class, ...array_diff_key($extras, ['class' => ''])]); break; default: $form = parent::getFieldForm($field, $value, $viewDatas, $extras); break; } return $form; } // public function getFieldView(string $field, array $viewDatas, array $extras = []): string { $value = $viewDatas['entity']->$field ?? ""; switch ($field) { case 'payment_date': case 'start_at': case 'end_at': $value = $value ? date("Y-m-d", strtotime($value)) : ""; break; default: $value = parent::getFieldView($field, $viewDatas, $extras); break; } return $value; } }