|
|
|
|
@ -15,35 +15,37 @@ use \CodeHydrater\enums\view_type as ViewType; |
|
|
|
|
use \CodeHydrater\form_builder\html_form as Form; |
|
|
|
|
|
|
|
|
|
class val_tests_out { |
|
|
|
|
private static function build_form(array $a): ?string { |
|
|
|
|
private static function build_form(array $input): array { |
|
|
|
|
$div_class = $input['classes']['div_class'] ?? ""; |
|
|
|
|
$form_builder = new Form(); |
|
|
|
|
$form_builder->set_escape(false); |
|
|
|
|
$form_builder->open(options: ['autocomplete'=>'off']); |
|
|
|
|
$form_builder->fieldset_open(['style'=>'width: 200px;']); |
|
|
|
|
$form_builder->legend("News Letter"); |
|
|
|
|
$form_builder->build_group($a); |
|
|
|
|
$form_builder->open_div(['class'=>$a['div-class']]); |
|
|
|
|
$data = $form_builder->build_group($input); |
|
|
|
|
$form_builder->open_div(['class'=>$div_class]); |
|
|
|
|
$form_builder->submit("go", ['class'=>'btn btn-primary']); |
|
|
|
|
$form_builder->close_div(); |
|
|
|
|
$form_builder->fieldset_close(); |
|
|
|
|
$form_builder->close(); |
|
|
|
|
return $form_builder->get_output(); |
|
|
|
|
$out = $form_builder->get_output(); |
|
|
|
|
return ['out'=>$out, 'errors'=>$data['errors'], 'html_output'=>$data['html_output'], 'headers'=>$data['headers']]; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public static function entry(object $app, array $input): array { |
|
|
|
|
$a = SafeIO::build_html($input); |
|
|
|
|
$build = self::build_form($input); |
|
|
|
|
|
|
|
|
|
$did_submit = ($input['method'] === "POST"); |
|
|
|
|
// $name = $app->request->get_post_data()->get("name") ?? "Annon."; |
|
|
|
|
|
|
|
|
|
$twig_data = [ |
|
|
|
|
'form_builder' => self::build_form($a), |
|
|
|
|
'form_builder' => $build['out'], |
|
|
|
|
'table_options' => ['helper' => 'single-row','escape' => false], |
|
|
|
|
'safe_html' => $a['html'], |
|
|
|
|
'safe_html' => $build['html_output'], |
|
|
|
|
'did_submit' => $did_submit, |
|
|
|
|
'table_headers' => $a['headers'], |
|
|
|
|
'table_headers' => $build['headers'], |
|
|
|
|
// 'safe_name' => \CodeHydrater\bootstrap\safer_io::h($name), |
|
|
|
|
'a_errors' => $a['errors'], |
|
|
|
|
'a_errors' => $build['errors'], |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
$app->view->set('twig_data', $twig_data); |
|
|
|
|
|