From b646e8b22b3cd05ed90726442943fb4e1ebf6bde Mon Sep 17 00:00:00 2001 From: Bart Jaskulski <bartek.jaskulski@wpdesk.net> Date: Mon, 6 Sep 2021 16:19:09 +0200 Subject: [PATCH] feat: add email input field --- src/Field/InputEmailField.php | 22 ++++++++++++++++++++++ src/Sanitizer/EmailSanitizer.php | 12 ++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 src/Field/InputEmailField.php create mode 100644 src/Sanitizer/EmailSanitizer.php diff --git a/src/Field/InputEmailField.php b/src/Field/InputEmailField.php new file mode 100644 index 0000000..ee18412 --- /dev/null +++ b/src/Field/InputEmailField.php @@ -0,0 +1,22 @@ +<?php + +namespace WPDesk\Forms\Field; + +use WPDesk\Forms\Sanitizer; +use WPDesk\Forms\Sanitizer\EmailSanitizer; + +class InputEmailField extends BasicField { + public function __construct() { + parent::__construct(); + $this->set_default_value( '' ); + $this->set_attribute( 'type', 'email' ); + } + + public function get_sanitizer(): Sanitizer { + return new EmailSanitizer(); + } + + public function get_template_name(): string { + return 'input-text'; + } +} diff --git a/src/Sanitizer/EmailSanitizer.php b/src/Sanitizer/EmailSanitizer.php new file mode 100644 index 0000000..1a51a78 --- /dev/null +++ b/src/Sanitizer/EmailSanitizer.php @@ -0,0 +1,12 @@ +<?php + +namespace WPDesk\Forms\Sanitizer; + +use WPDesk\Forms\Sanitizer; + +class EmailSanitizer implements Sanitizer { + public function sanitize( $value ): string { + return sanitize_email( $value ); + } + +} -- GitLab