diff --git a/src/Field/BasicField.php b/src/Field/BasicField.php index 67aa662baf08eab438f519c72eb98833d663b053..3e34ff9508edc1367947ebd479c7aad8e93e5a99 100644 --- a/src/Field/BasicField.php +++ b/src/Field/BasicField.php @@ -29,6 +29,7 @@ abstract class BasicField implements Field { 'description' => '', 'description_tip' => '', 'data' => [], + 'type' => 'text', ]; public function should_override_form_template(): bool { @@ -36,7 +37,13 @@ abstract class BasicField implements Field { } public function get_type(): string { - return 'text'; + return $this->meta['type']; + } + + public function set_type( string $type ): Field { + $this->meta['type'] = $type; + + return $this; } public function get_validator(): Validator { diff --git a/src/Field/SelectField.php b/src/Field/SelectField.php index 2162753879b5bfee5a62be28f4e5ccafa3d9b46c..04d290cfe922ab32cc7979f51ebf9c3138e3b730 100644 --- a/src/Field/SelectField.php +++ b/src/Field/SelectField.php @@ -6,6 +6,10 @@ use WPDesk\Forms\Field; class SelectField extends BasicField { + public function get_type(): string { + return 'select'; + } + public function get_template_name(): string { return 'select'; } diff --git a/src/Field/TextAreaField.php b/src/Field/TextAreaField.php index f22b2bb28a58b06d2c4545b86507a182b013df61..81ed137d0afa1149a69a88a17075a7ddc020a90e 100644 --- a/src/Field/TextAreaField.php +++ b/src/Field/TextAreaField.php @@ -4,6 +4,10 @@ namespace WPDesk\Forms\Field; class TextAreaField extends BasicField { + public function get_type(): string { + return 'textarea'; + } + public function get_template_name(): string { return 'textarea'; } diff --git a/src/Field/TimepickerField.php b/src/Field/TimepickerField.php index 0d5f0e3191e5f43fbdd49e98415b8f5f49bdf489..f1bf91aae3dde56c7a855370acc2ba6517746854 100644 --- a/src/Field/TimepickerField.php +++ b/src/Field/TimepickerField.php @@ -7,6 +7,10 @@ use WPDesk\Forms\Serializer\JsonSerializer; class TimepickerField extends BasicField { + public function get_type(): string { + return 'time'; + } + public function has_serializer(): bool { return true; }