PluginProbe
Bit Form – Contact Form, Payment Forms, Multi Step Forms, Calculator & Custom Form Builder / 2.9.1
Bit Form – Contact Form, Payment Forms, Multi Step Forms, Calculator & Custom Form Builder v2.9.1
V-3.3.0 3.2.2 3.2.1 3.2.0 3.1.4 3.1.3 3.1.2 3.1.1 3.1.0 V3.0.3 V3.0.2 -3.0.1 V_3.0.0 1.1.1 1.1.8 1.2 1.3 1.4 1.4.18 1.5.2 1.9 2.0 2.10.0 2.10.1 2.10.2 All 137 releases
← All changes | includes/Frontend/Form/View/Theme/ThemeBase.php +32 -67 3.1.22.9.1 View file →
@@ -1,9 +1,9 @@
1 1 <?php
2 2
3 3 namespace BitCode\BitForm\Frontend\Form\View\Theme;
4 4
5 -use BitCode\BitForm\Frontend\Form\View\Theme\Fields\AddressField;
5 +use BitCode\BitForm\Frontend\Form\View\Theme\Fields\AdvanceFileUpField;
6 6 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\ButtonField;
7 7 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\CheckBoxField;
8 8 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\CountryField;
9 9 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\CurrencyField;
@@ -9,25 +9,23 @@
9 9 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\CurrencyField;
10 10 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\DecisionBoxField;
11 11 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\DividerField;
12 12 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\DropdownField;
13 -use BitCode\BitForm\Frontend\Form\View\Theme\Fields\FieldWithChild;
14 13 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\FileUploadField;
15 -use BitCode\BitForm\Frontend\Form\View\Theme\Fields\GDPRAgreementField;
16 -use BitCode\BitForm\Frontend\Form\View\Theme\Fields\HCaptchaField;
17 -use BitCode\BitForm\Frontend\Form\View\Theme\Fields\HiddenField;
18 14 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\HTMLField;
19 15 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\HtmlSelectField;
20 16 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\ImageField;
21 17 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\ImageSelectField;
18 +use BitCode\BitForm\Frontend\Form\View\Theme\Fields\PayPalField;
22 19 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\PhoneNumberField;
23 20 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\RadioBoxField;
24 21 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\RatingField;
22 +use BitCode\BitForm\Frontend\Form\View\Theme\Fields\RazorPayField;
25 23 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\RecaptchaV2Field;
26 24 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\RepeaterField;
27 25 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\SectionField;
28 -use BitCode\BitForm\Frontend\Form\View\Theme\Fields\SliderField;
29 -use BitCode\BitForm\Frontend\Form\View\Theme\Fields\SpacerField;
26 +use BitCode\BitForm\Frontend\Form\View\Theme\Fields\SignatureField;
27 +use BitCode\BitForm\Frontend\Form\View\Theme\Fields\StripeField;
30 28 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\TextAreaField;
31 29 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\TextField;
32 30 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\TitleField;
33 31 use BitCode\BitForm\Frontend\Form\View\Theme\Fields\TurnstileField;
@@ -77,9 +75,13 @@
77 75 // </div>
78 76 // ERRORHTML;
79 77 // }
80 78
81 - return sprintf('<div class="btcd-fld-itm %1$s %2$s">%3$s</div>', $rowID, $isHidden, $fieldHTML);
79 + return <<<INPUTWRAPPER
80 +<div class="btcd-fld-itm $rowID $isHidden">
81 + $fieldHTML
82 +</div>
83 +INPUTWRAPPER;
82 84
83 85 // return $fieldHTML;
84 86 }
85 87
@@ -84,15 +86,14 @@
84 86 }
85 87
86 88 protected function getField($field, $rowID, $field_name, $form_atomic_Cls_map, $error = null, $value = null, $formID = null)
87 89 {
88 - // Pro-only fields ship in the Bit Form Pro plugin. In the free plugin, we avoid rendering Pro implementations.
89 - $proMissingHtml = '<div class="bf-pro-field-missing"> <!-- Require Bit Form Pro --> </div>';
90 -
91 90 switch ($field->typ) {
92 91 case 'text':
93 92 case 'username':
94 93 case 'number':
94 + case 'password':
95 + case 'email':
95 96 case 'url':
96 97 case 'date':
97 98 case 'datetime-local':
98 99 case 'time':
@@ -99,18 +100,10 @@
99 100 case 'month':
100 101 case 'week':
101 102 case 'color':
102 103 return TextField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
103 - case 'password':
104 - case 'email':
105 - case 'name':
106 - return FieldWithChild::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
107 - case 'address':
108 - return AddressField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
109 104 case 'textarea':
110 105 return TextAreaField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
111 - case 'range':
112 - return SliderField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
113 106 case 'check':
114 107 // return $this->checkBox($field, $rowID, $field_name, $formID, $error, $value);
115 108 return CheckBoxField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
116 109 case 'radio':
@@ -127,46 +120,21 @@
127 120 case 'recaptcha':
128 121 return RecaptchaV2Field::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
129 122 case 'turnstile':
130 123 return TurnstileField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
131 - case 'hcaptcha':
132 - return HCaptchaField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
133 124 case 'decision-box':
134 125 // return $this->decisionBox($field, $rowID, $field_name, $formID, $error, $value);
135 126 return DecisionBoxField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
136 - case 'gdpr':
137 - return GDPRAgreementField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
138 127 case 'html':
139 128 // return $this->html($field, $rowID, $field_name, $formID, $error, $value);
140 129 return HTMLField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
141 - case 'shortcode':
142 - if (class_exists('\BitCode\BitFormPro\Frontend\Form\View\Theme\Fields\ShortcodeField')) {
143 - return \BitCode\BitFormPro\Frontend\Form\View\Theme\Fields\ShortcodeField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
144 - }
145 - return $proMissingHtml;
146 - case 'hidden':
147 - return HiddenField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
148 130 case 'paypal':
149 - if (class_exists('\BitCode\BitFormPro\Frontend\Form\View\Theme\Fields\PayPalField')) {
150 - return \BitCode\BitFormPro\Frontend\Form\View\Theme\Fields\PayPalField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
151 - }
152 - return $proMissingHtml;
131 + return PayPalField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
153 132 case 'stripe':
154 - if (class_exists('\BitCode\BitFormPro\Frontend\Form\View\Theme\Fields\StripeField')) {
155 - return \BitCode\BitFormPro\Frontend\Form\View\Theme\Fields\StripeField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
156 - }
157 - return $proMissingHtml;
158 - case 'mollie':
159 - if (class_exists('\BitCode\BitFormPro\Frontend\Form\View\Theme\Fields\MollieField')) {
160 - return \BitCode\BitFormPro\Frontend\Form\View\Theme\Fields\MollieField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
161 - }
162 - return $proMissingHtml;
133 + return StripeField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
163 134 case 'razorpay':
164 135 // return $this->razorPay($field, $rowID, $field_name, $formID, $error, $value);
165 - if (class_exists('\BitCode\BitFormPro\Frontend\Form\View\Theme\Fields\RazorPayField')) {
166 - return \BitCode\BitFormPro\Frontend\Form\View\Theme\Fields\RazorPayField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
167 - }
168 - return $proMissingHtml;
136 + return RazorPayField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
169 137 // case 'submit':
170 138 // return $this->submitBtns($field, $rowID, $field_name, $formID, $error, $value);
171 139 case 'button':
172 140 // return $this->button($field, $rowID, $field_name, $formID, $error, $value);
@@ -176,10 +144,8 @@
176 144 return TitleField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
177 145 case 'divider':
178 146 // return $this->button($field, $rowID, $field_name, $formID, $error, $value);
179 147 return DividerField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
180 - case 'spacer':
181 - return SpacerField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
182 148 case 'country':
183 149 return CountryField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
184 150 case 'currency':
185 151 return CurrencyField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
@@ -185,12 +151,9 @@
185 151 return CurrencyField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
186 152 case 'phone-number':
187 153 return PhoneNumberField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
188 154 case 'advanced-file-up':
189 - if (class_exists('\BitCode\BitFormPro\Frontend\Form\View\Theme\Fields\AdvanceFileUpField')) {
190 - return \BitCode\BitFormPro\Frontend\Form\View\Theme\Fields\AdvanceFileUpField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
191 - }
192 - return $proMissingHtml;
155 + return AdvanceFileUpField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
193 156 case 'image':
194 157 return ImageField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
195 158 case 'section':
196 159 return SectionField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $this->_formViewerInstance, $this->_nestedLayout, $error, $value);
@@ -196,27 +159,29 @@
196 159 return SectionField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $this->_formViewerInstance, $this->_nestedLayout, $error, $value);
197 160 case 'repeater':
198 161 return RepeaterField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $this->_formViewerInstance, $this->_nestedLayout, $error, $value);
199 162 case 'signature':
200 - if (class_exists('\BitCode\BitFormPro\Frontend\Form\View\Theme\Fields\SignatureField')) {
201 - return \BitCode\BitFormPro\Frontend\Form\View\Theme\Fields\SignatureField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
202 - }
203 - return $proMissingHtml;
204 - case 'email-otp':
205 - if (class_exists('\BitCode\BitFormPro\Frontend\Form\View\Theme\Fields\EmailOtpField')) {
206 - return \BitCode\BitFormPro\Frontend\Form\View\Theme\Fields\EmailOtpField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
207 - }
208 - return $proMissingHtml;
163 + return SignatureField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
209 164 case 'rating':
210 165 return RatingField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
211 166 case 'image-select':
212 167 return ImageSelectField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
213 - case 'advanced-datetime':
214 - if (class_exists('\BitCode\BitFormPro\Frontend\Form\View\Theme\Fields\AdvanceDateTimeField')) {
215 - return \BitCode\BitFormPro\Frontend\Form\View\Theme\Fields\AdvanceDateTimeField::init($field, $rowID, $field_name, $form_atomic_Cls_map, $formID, $error, $value);
216 - }
217 - return $proMissingHtml;
218 168 default:
219 169 break;
220 170 }
171 + }
172 +
173 + protected function setTag($tag, $value, $attr = null)
174 + {
175 + echo "<$tag $attr>" . esc_html($value) . "</$tag>";
176 + }
177 +
178 + protected function setAttribute($attr, $value = null)
179 + {
180 + echo " $attr='" . esc_attr($value) . "' ";
181 + }
182 +
183 + protected function setSingleValuedAttribute($attr)
184 + {
185 + echo " $attr ";
221 186 }
222 187 }