init_constants(); } private function init_constants(){ $this->field_props = $this->get_field_form_props(); } private function get_field_types(){ return array( 'text' => 'Text', 'checkbox' => 'Checkbox', 'select' => 'Select', 'radio' => 'Radio', ); } public function get_field_form_props(){ $field_types = $this->get_field_types(); $validations = array( '' => '', 'email' => 'Email', 'phone' => 'Phone', 'url' => 'Url', ); $custom_validators = THWCFD_Utils::get_settings('custom_validators'); if(is_array($custom_validators)){ foreach( $custom_validators as $vname => $validator ) { $validations[$vname] = $validator['label']; } } $confirm_validators = THWCFD_Utils::get_settings('confirm_validators'); if(is_array($confirm_validators)){ foreach( $confirm_validators as $vname => $validator ) { $validations[$vname] = $validator['label']; } } return array( 'name' => array('type'=>'text', 'name'=>'name', 'label'=>'Name', 'required'=>1, 'hint_text'=>'The field name is considered its unique identifier. Ensure it is not repeated across different sections.'), 'type' => array('type'=>'select', 'name'=>'type', 'label'=>'Field Type', 'required'=>1, 'options'=>$field_types, 'onchange'=>"thwcfdFieldTypeChangeListner(this, 'block')"), 'value' => array('type'=>'text', 'name'=>'value', 'label'=>'Default Value'), 'placeholder' => array('type'=>'text', 'name'=>'placeholder', 'label'=>'Placeholder'), 'validate' => array('type'=>'select', 'name'=>'validate', 'label'=>'Validations', 'placeholder'=>'Select validations', 'options'=>$validations), 'cssclass' => array('type'=>'text', 'name'=>'cssclass', 'label'=>'Wrapper Class', 'placeholder'=>'Separate classes with comma', 'value'=>''), 'order_meta' => array('type'=>'checkbox', 'name'=>'order_meta', 'label'=>'Order Meta Data', 'value'=>'yes', 'checked'=>1), 'user_meta' => array('type'=>'checkbox', 'name'=>'user_meta', 'label'=>'User Meta Data', 'value'=>'yes', 'checked'=>0), 'checked' => array('type'=>'checkbox', 'name'=>'checked', 'label'=>'Checked by default', 'value'=>'yes', 'checked'=>1), 'required' => array('type'=>'checkbox', 'name'=>'required', 'label'=>'Required', 'value'=>'yes', 'checked'=>0, 'status'=>1), 'clear' => array('type'=>'checkbox', 'name'=>'clear', 'label'=>'Clear Row', 'value'=>'yes', 'checked'=>0, 'status'=>1), 'enabled' => array('type'=>'checkbox', 'name'=>'enabled', 'label'=>'Enabled', 'value'=>'yes', 'checked'=>1, 'status'=>1), 'show_in_email' => array('type'=>'checkbox', 'name'=>'show_in_email', 'label'=>'Display in Admin Emails', 'value'=>'yes', 'checked'=>1), 'show_in_email_customer' => array('type'=>'checkbox', 'name'=>'show_in_email_customer', 'label'=>'Display in Customer Emails', 'value'=>'yes', 'checked'=>1), 'show_in_order' => array('type'=>'checkbox', 'name'=>'show_in_order', 'label'=>'Display in Admin Order Details', 'value'=>'yes', 'checked'=>1), 'show_in_thank_you_page' => array('type'=>'checkbox', 'name'=>'show_in_thank_you_page', 'label'=>'Display in Customer Order Details', 'value'=>'yes', 'checked'=>1), 'show_in_my_account_page' => array('type'=>'checkbox', 'name'=>'show_in_my_account_page', 'label'=>'Display in My Account Page', 'value'=>'yes', 'checked'=>0), 'title' => array('type'=>'text', 'name'=>'title', 'label'=>'Label', 'required'=>1), 'title_class' => array('type'=>'text', 'name'=>'title_class', 'label'=>'Label Class', 'placeholder'=>'Separate classes with comma'), 'autocomplete' => array('type'=>'text', 'name'=>'autocomplete', 'label'=>'Autocomplete'), 'country_field' => array('type'=>'text', 'name'=>'country_field', 'label'=>'Country Field Name'), 'country' => array('type'=>'text', 'name'=>'country', 'label'=>'Country'), ); } public function get_field_form_props_display(){ return array( 'name' => array('name'=>'name', 'type'=>'text'), 'type' => array('name'=>'type', 'type'=>'select'), 'title' => array('name'=>'title', 'type'=>'text', 'len'=>40), 'placeholder' => array('name'=>'placeholder', 'type'=>'text', 'len'=>30), 'validate' => array('name'=>'validate', 'type'=>'text'), 'required' => array('name'=>'required', 'type'=>'checkbox', 'status'=>1), 'enabled' => array('name'=>'enabled', 'type'=>'checkbox', 'status'=>1), ); } public function output_field_forms( $section = '' ){ $this->output_field_form_pp($section); $this->output_form_fragments($section); } private function output_field_form_pp( $section = ''){ ?>
output_popup_form_fields( $section ); ?> ?>
render_form_tab_main_title('Basic Details'); ?>
render_form_fragment_general($section); ?>
render_form_tab_main_title('Display Settings'); ?>
render_form_elm_row($this->field_props['cssclass']); //$this->render_form_elm_row($this->field_props['input_class']); //$this->render_form_elm_row($this->field_props['title_class']); $this->render_form_elm_row_cb($this->field_props['show_in_email']); $this->render_form_elm_row_cb($this->field_props['show_in_email_customer']); $this->render_form_elm_row_cb($this->field_props['show_in_order']); $this->render_form_elm_row_cb($this->field_props['show_in_thank_you_page']); ?>
render_form_tab_main_title('Tooltip Details'); ?>
render_form_elm_row($this->field_props['tooltip']); $this->render_form_elm_row($this->field_props['tooltip_size']); $this->render_form_elm_row_cp($this->field_props['tooltip_color']); $this->render_form_elm_row_cp($this->field_props['tooltip_bg_color']); //$this->render_form_elm_row_cp($this->field_props['tooltip_border_color']); ?>
'Text', 'checkbox' => 'Checkbox', 'select' => 'Select', ); $ad_field_props_type = array('type'=>'select', 'name'=>'type', 'label'=>'Field Type', 'required'=>1, 'options'=>$address_field_types, 'onchange'=>"thwcfdFieldTypeChangeListner(this, 'block')"); $field_props_type = $section === 'address' ? $ad_field_props_type : $this->field_props['type']; ?>
render_form_elm_row($field_props_type); $this->render_form_elm_row($this->field_props['name']); ?>
render_form_field_inputtext($section); $this->render_form_field_select($section ); $this->render_form_field_radio($section); $this->render_form_field_checkbox( $section ); $this->render_form_field_default(); } private function render_form_field_inputtext( $section = '' ){ ?> render_form_elm_row($this->field_props['title']); if( $section != 'address' ){ $this->render_form_elm_row($this->field_props['value']); } $this->render_form_elm_row($this->field_props['validate']); $this->render_form_elm_row_cb($this->field_props['required']); $this->render_form_elm_row_cb($this->field_props['enabled']); $this->render_form_elm_row_cb($this->field_props['order_meta'], array(), $section); $this->render_form_elm_row_cb($this->field_props['user_meta'], array(), $section); ?> render_form_elm_row($this->field_props['title']); $this->render_form_elm_row($this->field_props['description']); if( $section != 'address' ){ $this->render_form_elm_row($this->field_props['value']); } //$this->render_form_elm_row($this->field_props['placeholder']); $this->render_form_elm_row($this->field_props['maxlength']); $this->render_form_elm_row($this->field_props['validate']); $this->render_form_elm_row_cb($this->field_props['required']); $this->render_form_elm_row_cb($this->field_props['enabled']); $this->render_form_elm_row_cb($this->field_props['order_meta']); $this->render_form_elm_row_cb($this->field_props['user_meta']); ?> render_form_elm_row($this->field_props['title']); //$this->render_form_elm_row($this->field_props['description']); if( $section != 'address' ){ $this->render_form_elm_row($this->field_props['value']); } $this->render_form_elm_row($this->field_props['placeholder']); $this->render_form_elm_row_cb($this->field_props['required']); $this->render_form_elm_row_cb($this->field_props['enabled']); $this->render_form_elm_row_cb($this->field_props['order_meta'], array(), $section); $this->render_form_elm_row_cb($this->field_props['user_meta'], array(), $section); //$this->render_form_elm_row_cb($this->field_props['disable_select2']); $this->render_form_fragment_h_spacing(); $this->render_form_fragment_options(); ?> render_form_elm_row($this->field_props['title']); //$this->render_form_elm_row($this->field_props['description']); if( $section != 'address' ){ $this->render_form_elm_row($this->field_props['value']); } $this->render_form_elm_row_cb($this->field_props['required']); $this->render_form_elm_row_cb($this->field_props['enabled']); $this->render_form_elm_row_cb($this->field_props['order_meta']); $this->render_form_elm_row_cb($this->field_props['user_meta']); $this->render_form_fragment_h_spacing(); $this->render_form_fragment_options(); ?> field_props['value']; $value_props['label'] = __('Value', 'woo-checkout-field-editor-pro'); ?> render_form_elm_row($this->field_props['title']); //$this->render_form_elm_row($this->field_props['description']); //$this->render_form_elm_row($value_props); if( $section != 'address' ){ $this->render_form_elm_row_cb($this->field_props['checked']); } $this->render_form_elm_row_cb($this->field_props['required']); $this->render_form_elm_row_cb($this->field_props['enabled']); $this->render_form_elm_row_cb($this->field_props['order_meta'], array(), $section); $this->render_form_elm_row_cb($this->field_props['user_meta'], array(), $section); ?> render_form_elm_row($this->field_props['title']); $this->render_form_elm_row($this->field_props['description']); $this->render_form_elm_row($this->field_props['value']); $this->render_form_elm_row($this->field_props['placeholder']); $this->render_form_elm_row($this->field_props['validate']); $this->render_form_elm_row_cb($this->field_props['required']); $this->render_form_elm_row_cb($this->field_props['enabled']); $this->render_form_elm_row_cb($this->field_props['order_meta']); $this->render_form_elm_row_cb($this->field_props['user_meta']); ?> render_form_elm_row($this->field_props['title']); $this->render_form_elm_row($this->field_props['description']); $this->render_form_elm_row($this->field_props['country_field']); $this->render_form_elm_row($this->field_props['value']); $this->render_form_elm_row($this->field_props['placeholder']); $this->render_form_elm_row($this->field_props['validate']); $this->render_form_elm_row_cb($this->field_props['required']); $this->render_form_elm_row_cb($this->field_props['enabled']); $this->render_form_elm_row_cb($this->field_props['order_meta']); $this->render_form_elm_row_cb($this->field_props['user_meta']); ?> render_form_elm_row($this->field_props['title']); //$this->render_form_elm_row($this->field_props['description']); $this->render_form_elm_row($this->field_props['value']); //$this->render_form_elm_row($this->field_props['placeholder']); //$this->render_form_elm_row($this->field_props['maxlength']); $this->render_form_elm_row($this->field_props['validate']); $this->render_form_elm_row_cb($this->field_props['required']); $this->render_form_elm_row_cb($this->field_props['enabled']); $this->render_form_elm_row_cb($this->field_props['order_meta']); $this->render_form_elm_row_cb($this->field_props['user_meta']); ?> render_form_fragment_tooltip(); ?>
+x