if ( isset($data['settings']['temp_mask']) && $data['settings']['temp_mask'] != 'custom' ) { $data['attributes']['data-mask'] = $data['settings']['temp_mask']; } if(ArrayHelper::get($data, 'settings.temp_mask') == 'custom') { if(ArrayHelper::get($data, 'settings.data-mask-reverse') == 'yes') { $data['attributes']['data-mask-reverse'] = 'true'; } if(ArrayHelper::get($data, 'settings.data-clear-if-not-match') == 'yes') { $data['attributes']['data-clear-if-not-match'] = 'true'; } } if(isset($data['attributes']['data-mask'])) { wp_enqueue_script( 'jquery-mask', $this->app->publicUrl('libs/jquery.mask.min.js'), array('jquery'), false, true ); } if($data['element'] == 'input_number' || $data['element'] == 'custom_payment_component') { if( ArrayHelper::get($data, 'settings.calculation_settings.status') && $formula = ArrayHelper::get($data, 'settings.calculation_settings.formula') ) { $data['attributes']['data-calculation_formula'] = $formula; $data['attributes']['class'] .= ' ff_has_formula'; $data['attributes']['readonly'] = true; $data['attributes']['type'] = 'text'; add_filter('fluentform_form_class', function ($css_class , $targetForm) use ($form) { if($targetForm->id == $form->id) { $css_class .= ' ff_calc_form'; } return $css_class; }, 10, 2); do_action('ff_rendering_calculation_form', $form, $data); } else { if(!apply_filters('fluentform_disable_inputmode', false)) { $data['attributes']['inputmode'] = 'numeric'; } } if($step = ArrayHelper::get($data, 'settings.number_step')) { $data['attributes']['step'] = $step; } else if(ArrayHelper::get($data, 'attributes.type') == 'number') { $data['attributes']['step'] = 'any'; } $min = ArrayHelper::get($data, 'settings.validation_rules.min.value'); if($min || $min == 0) { $data['attributes']['min'] = $min; } if($max = ArrayHelper::get($data, 'settings.validation_rules.max.value')) { $data['attributes']['max'] = $max; } } // For hidden input if ($data['attributes']['type'] == 'hidden') { echo "buildAttributes($data['attributes'], $form).">"; return; } if($tabIndex = \FluentForm\App\Helpers\Helper::getNextTabIndex()) { $data['attributes']['tabindex'] = $tabIndex; } $data['attributes']['class'] = @trim('ff-el-form-control '. $data['attributes']['class']); $data['attributes']['id'] = $this->makeElementId($data, $form); $elMarkup = $this->buildInputGroup($data, $form); $html = $this->buildElementMarkup($elMarkup, $data, $form); echo apply_filters('fluenform_rendering_field_html_'.$elementName, $html, $data, $form); } private function buildInputGroup($data, $form) { $input = "buildAttributes($data['attributes'], $form).">"; $prefix = ArrayHelper::get($data, 'settings.prefix_label'); $suffix = ArrayHelper::get($data, 'settings.suffix_label'); if($prefix || $suffix) { $wrapper = '