X-Git-Url: http://git.shiar.net/minimedit.git/blobdiff_plain/1d85c53f907993e804703f3670f2bd59be396a66..1f8560a20d5d1aa8886688bd7553b8a8fd704fff:/contact.php diff --git a/contact.php b/contact.php index 5c4c962..9d0b1bc 100644 --- a/contact.php +++ b/contact.php @@ -1,25 +1,52 @@ $error

\n\n"; + } } 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.'; } + +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 '; + break; + default: if (empty($input['email']) or !preg_match('/.+@.+\..+/', $input['email'])) { - return 'Een geldig e-mailadres is verplicht. Ga terug en probeer het nog eens.'; + return 'Een geldig e-mailadres is verplicht zodat we antwoord kunnen geven.'; } if (isset($input['naam']) and empty($input['naam'])) { - return 'Er ontbraken vereiste gegevens. Ga terug en probeer het nog eens.'; + return 'Geef ook een naam waarmee we u kunnen aanspreken.'; } +} - $rcpt = 'info@covexcelsiorleiderdorp.nl'; - $subject = "Formulier $_SERVER[HTTP_HOST]: $source"; - $reply = preg_match('/\A\w+@\w+\.[a-z]+\z/', $input['email']) - ? $input['email'] : $rcpt; + $reply = preg_match('/\A\w+@\w+\.[a-z]+\z/', @$input['email']) + ? $input['email'] : 'noreply@'.$_SERVER['HTTP_HOST']; $header = "From: $reply"; foreach (array( @@ -31,7 +58,9 @@ function mailform($input = []) } $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) { @@ -42,9 +71,18 @@ function mailform($input = []) if (!$sent) return 'Helaas ging er iets mis bij het doorvoeren. Probeer het later nog eens.'; - if ($source == 'bestelling') + switch ($source) { + case 'bestelling': print '

Bedankt voor uw bestelling. U ontvangt z.s.m. de bevestiging van deze bestelling via uw opgegeven e-mailadres.

'; - else + break; + case 'bbq': + print "

Bedankt voor je deelname. Tot ziens!

"; + break; + case 'melding': + print "

Bedankt voor de melding. Na goedkeuring zal het hier geplaatst worden.

"; + break; + default: print '

Bedankt voor uw reactie!

'; + } return; }