/** * Renders page sections * * @access public * @return void */ public static function renderSections() { $first = true; $out = ''; foreach (MthemeCore::$options as $option) { if ($option['type'] == 'section') { if ($first) { $first = false; } else { $out .= '</div>'; } $out .= '<div class="mtheme-section" id="' . mtheme_sanitize_key($option['name']) . '"><h2>' . $option['title'] . '</h2>'; } else { $option['id'] = MTHEME_PREFIX . $option['id']; $out .= self::renderOption($option); } } $out .= '</div>'; echo mtheme_html($out); }
/** * Submits form data * * @access public * @return void */ public static function submitData() { self::refresh(); parse_str($_POST['data'], $data); /*var_dump($data);die();*/ if (isset($data['slug']) && self::isActive($data['slug'])) { foreach (self::$data[$data['slug']]['fields'] as $field) { $ID = mtheme_sanitize_key($field['name']); $field['name'] = mtheme_get_string($ID, 'name', $field['name']); $field['optional'] = mtheme_get_string($ID, 'options', $field['options']); if (empty($data[$ID]) && $field['required'] == 'yes' && $field['type'] != 'select') { MthemeInterface::$messages[] = $field['name'] . ' ' . __('is required', 'mtheme'); } else { if ($field['type'] == 'number' && !is_numeric($data[$ID])) { MthemeInterface::$messages[] = $field['name'] . ' ' . __('can only contain numbers', 'mtheme'); } if ($field['type'] == 'email' && !is_email($data[$ID])) { MthemeInterface::$messages[] = __('You have entered an invalid email address', 'mtheme'); } } } if (isset(self::$data[$data['slug']]['captcha'])) { session_start(); $posted_code = md5($data['captcha']); $session_code = $_SESSION['captcha']; if ($session_code != $posted_code) { MthemeInterface::$messages[] = __('The verification code is incorrect', 'mtheme'); } } if (!empty(MthemeInterface::$messages)) { MthemeInterface::renderMessages(); } else { $admin_email = MthemeCore::getOption('reg_admin_email'); if (empty($admin_email)) { $admin_email = get_option('admin_email'); } $subject = __('Contact', 'mtheme'); $message = 'Dear Admin,<br/>'; foreach (self::$data[$data['slug']]['fields'] as $field) { $ID = mtheme_sanitize_key($field['name']); $field['name'] = mtheme_get_string($ID, 'name', $field['name']); if ($field['type'] == 'select') { $field['options'] = mtheme_get_string($ID, 'options', $field['options']); $items = explode(',', $field['options']); if (isset($items[$data[$ID] - 1])) { $data[$ID] = $items[$data[$ID] - 1]; } else { $data[$ID] = '–'; } } $message .= $field['name'] . ': ' . $data[$ID] . '<br />'; } if (mtheme_mail($admin_email, $subject, $message) && isset(self::$data[$data['slug']]['message'])) { $message = mtheme_get_string($data['slug'], 'message', self::$data[$data['slug']]['message']); if (empty($message)) { MthemeInterface::$messages[] = 'Your message has been sent.'; } else { MthemeInterface::$messages[] = $message; } MthemeInterface::renderMessages(true); } else { MthemeInterface::$messages[] = "Email could not send."; MthemeInterface::renderMessages(); } } } die; }