. */ include_once 'inc/class.page.php'; /* Make sure we start our own named session and to not let securimage create its own :-p */ page::session_start(); if ($use_captcha) { require_once 'securimage/securimage.php'; $securimage = new Securimage(); } $feedbackpage = page::page_create('Feedback'); $feedbackpage->head(); if (isset($_GET['success'])) { echo '
Thanks for helping make SlatePermutate better. Your feedback is greatly appreciated.
' . PHP_EOL . 'We will attempt to respond via email if your feedback lends itself to a response.
' . PHP_EOL; $feedbackpage->foot(); exit(); } $subject = '[SlatePermutate] - Feedback'; $ip = $_SERVER['REMOTE_ADDR']; $httpagent = $_SERVER['HTTP_USER_AGENT']; $user_supplied_params = array('fromdom', 'nameis', 'visitormail', 'school', 'feedback', 'rating', 'referrer'); foreach ($user_supplied_params as $var) { if (isset($_POST[$var])) ${$var} = $_POST[$var]; else /* Obviously, the user has not actually */ page::redirect('feedback.php'); } $school_id = isset($_SESSION['school']) ? $_SESSION['school'] : ''; $saved_schedules = array(); if (!empty($_SESSION['saved'])) foreach ($_SESSION['saved'] as $key => $val) $saved_schedules[] = $key; $saved_schedules = implode(', ', $saved_schedules); $reject = FALSE; $messages = ''; if (preg_match('/https?:/i', $feedback)) { $messages .= 'Please do not include URLs in your submission!
' . PHP_EOL; $reject = TRUE; } if (empty($visitormail) || !preg_match('/^[^@]+@[^@]+\.[^@]+$/', $visitormail) || !($visitormail = filter_var($visitormail, FILTER_VALIDATE_EMAIL))) { $messages .= 'Please enter a valid e-mail address.
' . PHP_EOL; $reject = TRUE; } if(empty($nameis) || empty($feedback) || empty($visitormail)) { $messages .= 'You must fill in in all of the fields.
' . PHP_EOL; $reject = TRUE; } /** Check the captcha */ if ($use_captcha) { if (empty($_REQUEST['captcha_code']) || !$securimage->check($_REQUEST['captcha_code'])) { $messages .= 'Your captcha response was incorrect or expired.
'; $reject = TRUE; } } $success = FALSE; if (!$reject) { $feedback = stripcslashes($feedback); $message = gmdate('l, F j, Y, g:i a') ." From: $nameis <$visitormai> School: $school ($school_id)\n Rating: $rating Feedback: $feedback \n IP = $ip Browser = $httpagent Deployment = $fromdom Referrer = $referrer saved_schedules = $saved_schedules "; $from = "From: $visitormail\r\n"; /* $feedback_emails has its default set in inc/class.page.inc, can be set in config.inc */ foreach($feedback_emails as $toaddr) { $success = mail($toaddr, $subject, $message, $from); if (!$success) { $messages .= 'This Slate Permutate installation is misconfigured and unable to send email. Please contact the administrator of this website using a more direct means if possible.
' . PHP_EOL; } } if($feedback_disk_log) { $file = fopen($feedback_disk_log_file,'a') or die("Can't open file."); fwrite($file, $message . "----------------------------------------\n"); fclose($file); } } if ($success) page::redirect('feedback-submit.php?success'); else echo 'Consider the error messages, then ', '.
'); $feedbackpage->foot();