From df9acbc3e12018155e7ba647dbb1a3153c807ea1 Mon Sep 17 00:00:00 2001 From: Marcin Kolanko <marcin@inspirelabs.pl> Date: Wed, 24 Jun 2020 12:42:39 +0000 Subject: [PATCH] added button form field --- src/Field/ButtonField.php | 15 ++++++++++ templates/button.php | 63 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 78 insertions(+) create mode 100644 src/Field/ButtonField.php create mode 100644 templates/button.php diff --git a/src/Field/ButtonField.php b/src/Field/ButtonField.php new file mode 100644 index 0000000..ba31ead --- /dev/null +++ b/src/Field/ButtonField.php @@ -0,0 +1,15 @@ +<?php + +namespace DropshippingXmlVendor\WPDesk\Forms\Field; + +class ButtonField extends \DropshippingXmlVendor\WPDesk\Forms\Field\NoValueField +{ + public function get_template_name() + { + return 'button'; + } + public function get_type() + { + return 'button'; + } +} diff --git a/templates/button.php b/templates/button.php new file mode 100644 index 0000000..f451255 --- /dev/null +++ b/templates/button.php @@ -0,0 +1,63 @@ +<?php +/** + * @var \WPDesk\Forms\Field $field + * @var \WPDesk\View\Renderer\Renderer $renderer + * @var string $name_prefix + * @var string $value + * + * @var string $template_name Real field template. + * + */ +?> + +<button + <?php +if ($field->has_classes()) { + ?>class="<?php + echo \esc_attr($field->get_classes()); + ?>"<?php +} +?> + <?php +foreach ($field->get_attributes([]) as $key => $val) { + ?> + <?php + echo $key; + ?>="<?php + echo \esc_attr($val); + ?>" + <?php +} +?> + type="<?php +echo \esc_attr($field->get_type()); +?>" + name="<?php +echo \esc_attr($name_prefix); +?>[<?php +echo \esc_attr($field->get_name()); +?>]" + id="<?php +echo \esc_attr($field->get_id()); +?>" + value="<?php +echo \esc_html($value); +?>" + <?php +if ($field->is_required()) { + ?>required="required"<?php +} +?> + <?php +if ($field->is_disabled()) { + ?>disabled="disabled"<?php +} +?> + <?php +if ($field->is_readonly()) { + ?>readonly="readonly"<?php +} +?> + > +<?php echo \esc_html($field->get_label()); ?> +</button> -- GitLab