<?php
$error = NULL;
if ($_POST) {
+ global $User;
if (!empty($User)) {
$_REQUEST['login'] = $User['name'];
}
function mailform($input = [])
{
$source = empty($input['subject']) ? 'reactie' : $input['subject'];
+ $rcpt = 'info@'.$_SERVER['HTTP_HOST'];
+ $subject = "Formulier {$_SERVER['HTTP_HOST']}: $source";
+
if (!$input) {
return 'Geen gegevens ontvangen. Probeer het nog eens.';
}
-if ($source != 'bbq') {
+
+switch ($source) {
+ case 'melding':
+ if (empty($input['login'])) {
+ return "Inloggen is verplicht om een melding te plaatsen.";
+ }
+ if (empty($input['body'])) {
+ return "Geen bericht opgegeven.";
+ }
+ break;
+ case 'bbq':
+ if (empty($input['naam']) or empty($input['huis'])) {
+ return 'De bedoeling is juist dat je opgeeft wie er komt.';
+ }
+ $rcpt .= ', Heleen <heleen.terlouw.2910@gmail.com>';
+ break;
+ default:
if (empty($input['email']) or !preg_match('/.+@.+\..+/', $input['email'])) {
return 'Een geldig e-mailadres is verplicht zodat we antwoord kunnen geven.';
}
}
}
- $rcpt = 'info@'.$_SERVER['HTTP_HOST'];
- $subject = "Formulier {$_SERVER['HTTP_HOST']}: $source";
$reply = preg_match('/\A\w+@\w+\.[a-z]+\z/', @$input['email'])
- ? $input['email'] : $rcpt;
+ ? $input['email'] : 'noreply@'.$_SERVER['HTTP_HOST'];
$header = "From: $reply";
foreach (array(
}
$origin = $_SERVER['REMOTE_ADDR'];
- $origin .= sprintf(' (%s)', gethostbyaddr($origin));
+ if ($resolved = @gethostbyaddr($origin) and $resolved !== $origin) {
+ $origin .= sprintf(' (%s)', gethostbyaddr($origin));
+ }
$body = "Ingevuld vanaf $origin:\r\n\r\n";
foreach ($input as $k => $v) {
case 'bbq':
print "<p>Bedankt voor je deelname. Tot ziens!</p>";
break;
+ case 'melding':
+ print "<p>Bedankt voor de melding. Na goedkeuring zal het hier geplaatst worden.</p>";
+ break;
default:
print '<p>Bedankt voor uw reactie!</p>';
}