/** * * @throws EE_Error * @return string of html to display the field */ function display() { if (!$this->_input instanceof EE_Form_Input_With_Options_Base) { throw new EE_Error(sprintf(__('Can not use Radio Button Display Strategy with an input that doesn\'t have options', 'event_espresso'))); } $this->_input->set_label_sizes(); $label_size_class = $this->_input->get_label_size_class(); $html = ''; foreach ($this->_input->options() as $value => $display_text) { $value = $this->_input->get_normalization_strategy()->unnormalize($value); $html_id = $this->_append_chars($this->_input->html_id(), '-') . sanitize_key($value); $html .= EEH_HTML::nl(0, 'radio'); $html .= '<label for="' . $html_id . '"'; $html .= ' id="' . $html_id . '-lbl"'; $html .= ' class="ee-radio-label-after' . $label_size_class . '">'; $html .= EEH_HTML::nl(1, 'radio'); $html .= '<input id="' . $html_id . '"'; $html .= ' name="' . $this->_input->html_name() . '"'; $html .= ' class="' . $this->_input->html_class() . '"'; $html .= ' style="' . $this->_input->html_style() . '"'; $html .= ' type="radio"'; $html .= ' value="' . esc_attr($value) . '"'; $html .= $this->_input->raw_value() === $value ? ' checked="checked"' : ''; $html .= '> '; $html .= $display_text; $html .= EEH_HTML::nl(-1, 'radio') . '</label>'; } $html .= EEH_HTML::div('', '', 'clear-float'); $html .= EEH_HTML::divx(); return $html; }
/** * * @throws EE_Error * @return string of html to display the field */ public function display() { $input = $this->get_input(); $input->set_label_sizes(); $label_size_class = $input->get_label_size_class(); $html = ''; foreach ($input->options() as $value => $display_text) { $value = $input->get_normalization_strategy()->unnormalize($value); $html_id = $this->get_sub_input_id($value); $html .= EEH_HTML::nl(0, 'radio'); $html .= '<label for="' . $html_id . '"'; $html .= ' id="' . $html_id . '-lbl"'; $html .= ' class="ee-radio-label-after' . $label_size_class . '">'; $html .= EEH_HTML::nl(1, 'radio'); $html .= '<input id="' . $html_id . '"'; $html .= ' name="' . $input->html_name() . '"'; $html .= ' class="' . $input->html_class() . '"'; $html .= ' style="' . $input->html_style() . '"'; $html .= ' type="radio"'; $html .= ' value="' . esc_attr($value) . '"'; $html .= $input->raw_value() === $value ? ' checked="checked"' : ''; $html .= ' ' . $this->_input->other_html_attributes(); $html .= '> '; $html .= $display_text; $html .= EEH_HTML::nl(-1, 'radio') . '</label>'; } $html .= EEH_HTML::div('', '', 'clear-float'); $html .= EEH_HTML::divx(); return $html; }
/** * closing div tag for a form * @return string */ public function layout_form_end() { return EEH_HTML::divx($this->_form_section->html_id(), $this->_form_section->html_class()); }
public static function display_add_new_state_micro_form(EE_Form_Section_Proper $question_group_reg_form) { // only add the 'new_state_micro_form' when displaying reg forms, // not during processing since we process the 'new_state_micro_form' in it's own AJAX request $action = EE_Registry::instance()->REQ->get('action', ''); if ($action === 'process_reg_step' || $action === 'update_reg_step') { return $question_group_reg_form; } // is the "state" question in this form section? $input = $question_group_reg_form->get_subsection('state'); // we're only doing this for state select inputs if ($input instanceof EE_State_Select_Input) { // load helpers EE_Registry::instance()->load_helper('HTML'); // grab any set values from the request $country_name = str_replace('state', 'new_state_country', $input->html_name()); $state_name = str_replace('state', 'new_state_name', $input->html_name()); $abbrv_name = str_replace('state', 'new_state_abbrv', $input->html_name()); $new_state_submit_id = str_replace('state', 'new_state', $input->html_id()); $country_options = array(); $countries = EEM_Country::instance()->get_all_countries(); if (!empty($countries)) { foreach ($countries as $country) { if ($country instanceof EE_Country) { $country_options[$country->ID()] = $country->name(); } } } $new_state_micro_form = new EE_Form_Section_Proper(array('name' => 'new_state_micro_form', 'html_id' => 'new_state_micro_form', 'layout_strategy' => new EE_No_Layout(), 'subsections' => array('add_new_state' => new EE_Hidden_Input(array('html_name' => str_replace('state', 'add_new_state', $input->html_name()), 'html_id' => str_replace('state', 'add_new_state', $input->html_id()), 'default' => 0)), 'click_here_link' => new EE_Form_Section_HTML(apply_filters('FHEE__EED_Add_New_State__display_add_new_state_micro_form__click_here_link', EEH_HTML::link('', __('click here to add a new state/province', 'event_espresso'), '', 'display-' . $input->html_id(), 'ee-form-add-new-state-lnk display-the-hidden smaller-text hide-if-no-js', '', 'rel="' . $input->html_id() . '"'))), 'add_new_state_micro_form' => new EE_Form_Section_HTML(apply_filters('FHEE__EED_Add_New_State__display_add_new_state_micro_form__add_new_state_micro_form', EEH_HTML::div('', $input->html_id() . '-dv', 'ee-form-add-new-state-dv', 'display: none;') . EEH_HTML::h6(__('If your State/Province does not appear in the list above, you can easily add it by doing the following:', 'event_espresso')) . EEH_HTML::ul() . EEH_HTML::li(__('first select the Country that your State/Province belongs to', 'event_espresso')) . EEH_HTML::li(__('enter the name of your State/Province', 'event_espresso')) . EEH_HTML::li(__('enter a two to six letter abbreviation for the name of your State/Province', 'event_espresso')) . EEH_HTML::li(__('click the ADD button', 'event_espresso')) . EEH_HTML::ulx())), 'new_state_country' => new EE_Country_Select_Input($country_options, array('html_name' => $country_name, 'html_id' => str_replace('state', 'new_state_country', $input->html_id()), 'html_class' => $input->html_class() . ' new-state-country', 'html_label_text' => __('New State/Province Country', 'event_espresso'), 'default' => EE_Registry::instance()->REQ->get($country_name, ''), 'required' => false)), 'new_state_name' => new EE_Text_Input(array('html_name' => $state_name, 'html_id' => str_replace('state', 'new_state_name', $input->html_id()), 'html_class' => $input->html_class() . ' new-state-state', 'html_label_text' => __('New State/Province Name', 'event_espresso'), 'default' => EE_Registry::instance()->REQ->get($state_name, ''), 'required' => false)), 'spacer' => new EE_Form_Section_HTML(EEH_HTML::br()), 'new_state_abbrv' => new EE_Text_Input(array('html_name' => $abbrv_name, 'html_id' => str_replace('state', 'new_state_abbrv', $input->html_id()), 'html_class' => $input->html_class() . ' new-state-abbrv', 'html_label_text' => __('New State/Province Abbreviation', 'event_espresso'), 'html_other_attributes' => 'size="24"', 'default' => EE_Registry::instance()->REQ->get($abbrv_name, ''), 'required' => false)), 'add_new_state_submit_button' => new EE_Form_Section_HTML(apply_filters('FHEE__EED_Add_New_State__display_add_new_state_micro_form__add_new_state_submit_button', EEH_HTML::nbsp(3) . EEH_HTML::link('', __('ADD', 'event_espresso'), '', 'submit-' . $new_state_submit_id, 'ee-form-add-new-state-submit button button-secondary', '', 'rel="' . $new_state_submit_id . '"'))), 'add_new_state_extra' => new EE_Form_Section_HTML(apply_filters('FHEE__EED_Add_New_State__display_add_new_state_micro_form__add_new_state_extra', EEH_HTML::br(2) . EEH_HTML::div('', '', 'small-text') . EEH_HTML::strong(__('Don\'t know your State/Province Abbreviation?', 'event_espresso')) . EEH_HTML::br() . sprintf(__('You can look here: %s, for a list of Countries and links to their State/Province Abbreviations ("Subdivisions assigned codes" column).', 'event_espresso'), EEH_HTML::link('http://en.wikipedia.org/wiki/ISO_3166-2', 'http://en.wikipedia.org/wiki/ISO_3166-2', '', '', 'ee-form-add-new-state-wiki-lnk')) . EEH_HTML::divx() . EEH_HTML::br() . EEH_HTML::link('', __('cancel new state/province', 'event_espresso'), '', 'hide-' . $input->html_id(), 'ee-form-cancel-new-state-lnk smaller-text', '', 'rel="' . $input->html_id() . '"') . EEH_HTML::divx() . EEH_HTML::br()))))); $question_group_reg_form->add_subsections(array('new_state_micro_form' => $new_state_micro_form), 'state', false); } return $question_group_reg_form; }