<?php if (empty($_REQUEST['mailformid'])) { http_response_code(404); Typeframe::Redirect('Invalid request.', TYPEF_WEB_DIR . '/', -1); return; } $mailform = Model_Mailform::Get($_REQUEST['mailformid']); if (!$mailform->exists()) { http_response_code(404); Typeframe::Redirect('Invalid mailform specified.', TYPEF_WEB_DIR . '/', -1); return; } $pm->setVariable('mailform', $mailform); if ($_SERVER['REQUEST_METHOD'] == 'POST') { $formHandler = new Form_Handler_Mailform($mailform['formfields'], $mailform['captcha']); if ($formHandler->validate()) { // Collect the form and submission data $inputs = $formHandler->input(); $submission = array(); foreach ($mailform['formfields'] as $field) { $submission[$field['key']] = $field; $submission[$field['key']]['value'] = $inputs[$field['key']]; } // Log the submission $log = Model_Mailform_Log::Create(); $log['mailformid'] = @$_REQUEST['mailformid']; $log['submission'] = $submission; $log['referrer'] = @$_SESSION['external_referrer']; $log->save(); $pm->setVariable('submission', $submission);
<?php if ($_SERVER['REQUEST_METHOD'] == 'POST') { header('Content-Type: text/json'); $fields = array(); $mailform = Model_Mailform::Get($_REQUEST['mailformid']); foreach ($mailform['formfields'] as $field) { if (isset($_POST[$field['key']])) { $fields[] = $field; } } $handler = new Form_Handler_Mailform($fields); if ($handler->validate()) { echo "true"; } else { echo json_encode($handler->errors()); } exit; }