public static function formToString(WpProQuiz_Model_Form $form, $str) { switch ($form->getType()) { case WpProQuiz_Model_Form::FORM_TYPE_TEXT: case WpProQuiz_Model_Form::FORM_TYPE_TEXTAREA: case WpProQuiz_Model_Form::FORM_TYPE_EMAIL: case WpProQuiz_Model_Form::FORM_TYPE_NUMBER: case WpProQuiz_Model_Form::FORM_TYPE_RADIO: case WpProQuiz_Model_Form::FORM_TYPE_SELECT: return esc_html($str); break; case WpProQuiz_Model_Form::FORM_TYPE_CHECKBOX: return $str == '1' ? __('ticked', 'wp-pro-quiz') : __('not ticked', 'wp-pro-quiz'); break; case WpProQuiz_Model_Form::FORM_TYPE_YES_NO: return $str == 1 ? __('Yes') : __('No'); break; case WpProQuiz_Model_Form::FORM_TYPE_DATE: return empty($str) ? '' : date_format(date_create($str), get_option('date_format')); break; } return ''; }
private function createFormModel($xml) { $form = new WpProQuiz_Model_Form(); $attr = $xml->attributes(); if ($attr !== null) { $form->setType($attr->type); $form->setRequired($attr->required == 'true'); $form->setFieldname($attr->fieldname); } if (isset($xml->formData)) { $d = array(); foreach ($xml->formData as $data) { $v = trim((string) $data); if ($v !== '') { $d[] = $v; } } $form->setData($d); } return $form; }