private function showFormBox() { $info = '<div class="wpProQuiz_invalidate">' . __('You must fill out this field.', 'wp-pro-quiz') . '</div>'; $validateText = array(WpProQuiz_Model_Form::FORM_TYPE_NUMBER => __('You must specify a number.', 'wp-pro-quiz'), WpProQuiz_Model_Form::FORM_TYPE_TEXT => __('You must specify a text.', 'wp-pro-quiz'), WpProQuiz_Model_Form::FORM_TYPE_EMAIL => __('You must specify an email address.', 'wp-pro-quiz'), WpProQuiz_Model_Form::FORM_TYPE_DATE => __('You must specify a date.', 'wp-pro-quiz')); ?> <div class="wpProQuiz_forms"> <table> <tbody> <?php $index = 0; foreach ($this->forms as $form) { /* @var $form WpProQuiz_Model_Form */ $id = 'forms_' . $this->quiz->getId() . '_' . $index++; $name = 'wpProQuiz_field_' . $form->getFormId(); ?> <tr> <td> <?php echo '<label for="' . $id . '">'; echo esc_html($form->getFieldname()); echo $form->isRequired() ? '<span class="wpProQuiz_required">*</span>' : ''; echo '</label>'; ?> </td> <td> <?php switch ($form->getType()) { case WpProQuiz_Model_Form::FORM_TYPE_TEXT: case WpProQuiz_Model_Form::FORM_TYPE_EMAIL: case WpProQuiz_Model_Form::FORM_TYPE_NUMBER: echo '<input name="' . $name . '" id="' . $id . '" type="text" ', 'data-required="' . (int) $form->isRequired() . '" data-type="' . $form->getType() . '" data-form_id="' . $form->getFormId() . '">'; break; case WpProQuiz_Model_Form::FORM_TYPE_TEXTAREA: echo '<textarea rows="5" cols="20" name="' . $name . '" id="' . $id . '" ', 'data-required="' . (int) $form->isRequired() . '" data-type="' . $form->getType() . '" data-form_id="' . $form->getFormId() . '"></textarea>'; break; case WpProQuiz_Model_Form::FORM_TYPE_CHECKBOX: echo '<input name="' . $name . '" id="' . $id . '" type="checkbox" value="1"', 'data-required="' . (int) $form->isRequired() . '" data-type="' . $form->getType() . '" data-form_id="' . $form->getFormId() . '">'; break; case WpProQuiz_Model_Form::FORM_TYPE_DATE: echo '<div data-required="' . (int) $form->isRequired() . '" data-type="' . $form->getType() . '" class="wpProQuiz_formFields" data-form_id="' . $form->getFormId() . '">'; echo WpProQuiz_Helper_Until::getDatePicker(get_option('date_format', 'j. F Y'), $name); echo '</div>'; break; case WpProQuiz_Model_Form::FORM_TYPE_RADIO: echo '<div data-required="' . (int) $form->isRequired() . '" data-type="' . $form->getType() . '" class="wpProQuiz_formFields" data-form_id="' . $form->getFormId() . '">'; if ($form->getData() !== null) { foreach ($form->getData() as $data) { echo '<label>'; echo '<input name="' . $name . '" type="radio" value="' . esc_attr($data) . '"> ', esc_html($data); echo '</label> '; } } echo '</div>'; break; case WpProQuiz_Model_Form::FORM_TYPE_SELECT: if ($form->getData() !== null) { echo '<select name="' . $name . '" id="' . $id . '" ', 'data-required="' . (int) $form->isRequired() . '" data-type="' . $form->getType() . '" data-form_id="' . $form->getFormId() . '">'; echo '<option value=""></option>'; foreach ($form->getData() as $data) { echo '<option value="' . esc_attr($data) . '">', esc_html($data), '</option>'; } echo '</select>'; } break; case WpProQuiz_Model_Form::FORM_TYPE_YES_NO: echo '<div data-required="' . (int) $form->isRequired() . '" data-type="' . $form->getType() . '" class="wpProQuiz_formFields" data-form_id="' . $form->getFormId() . '">'; echo '<label>'; echo '<input name="' . $name . '" type="radio" value="1"> ', __('Yes', 'wp-pro-quiz'); echo '</label> '; echo '<label>'; echo '<input name="' . $name . '" type="radio" value="0"> ', __('No', 'wp-pro-quiz'); echo '</label> '; echo '</div>'; break; } if (isset($validateText[$form->getType()])) { echo '<div class="wpProQuiz_invalidate">' . $validateText[$form->getType()] . '</div>'; } else { echo '<div class="wpProQuiz_invalidate">' . __('You must fill out this field.', 'wp-pro-quiz') . '</div>'; } ?> </td> </tr> <?php } ?> </tbody> </table> </div> <?php }