<?php

declare(strict_types=1);

namespace prj\ex\inputs\app;

use \tts\INPUTS;
use \tts\FIELD_FILTER;
use \tts\HTML_FLAG;
use \tts\DB_FILTER;

use \tts\use_io as IO;

class home_in {

    /*
     * Validation_rules: required, email, valid_email_domain, 
     * min, max, between, same, secure (password), alphanumeric
     * number_range: X, X
     * greater_than
     * less_than
     */
    
    public static function name_demo(): array {
        \tts\safer_io::init_json(); // Staticly set JSON data if any
        
    $required_post_string_field = new IO();
    $required_post_string_field->input_type = INPUTS::post;
    $required_post_string_field->field_filter = FIELD_FILTER::raw_string;
    $required_post_string_field->escape_html = HTML_FLAG::escape;
    $required_post_string_field->validation_rule = 'required|max: 75';
    $required_post_string_field->use_db_filter = DB_FILTER::OFF;
    $required_post_string_field->skip_the_db = false;

    $adult_post_int_age_field = new IO();
    $adult_post_int_age_field->input_type = INPUTS::post;
    $adult_post_int_age_field->field_filter = FIELD_FILTER::integer_number;
    $adult_post_int_age_field->validation_rule = 'greater_than: 18';
    $adult_post_int_age_field->validation_message = ['greater_than' => 'The %s must be an Adult over %d!'];
        
        return [
            'first_name' => $required_post_string_field,
            'last_name'  => $required_post_string_field,
            'age' => $adult_post_int_age_field
        ];
    }

}