From 563d413be761234847d58f41e06bbb74fee7cb3b Mon Sep 17 00:00:00 2001 From: Patrick Canterino Date: Mon, 9 Jan 2012 18:29:46 +0000 Subject: [PATCH] Mails koennen nun nach dem Versenden auf der Festplatte gespeichert werden. Es wird entweder eine definierte Zahl oder alle Mails aufbewahrt. --- form-email/config.php | 9 +++++++- form-email/mailer.php | 53 +++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 59 insertions(+), 3 deletions(-) diff --git a/form-email/config.php b/form-email/config.php index e53dcc0..814a96a 100644 --- a/form-email/config.php +++ b/form-email/config.php @@ -6,7 +6,7 @@ # Konfiguration fuer Form E-Mail # # Autor: Patrick Canterino -# Letzte Aenderung: 27.12.2011 +# Letzte Aenderung: 09.01.2012 # # Copyright (C) 2002-2012 Patrick Canterino # @@ -80,6 +80,13 @@ function prepare_beruf($content) { $check_referer = 0; $referer_ok = ''; +# Mails speichern + +$store_mails = 1; +$store_mails_dir = 'stored_mails'; +$store_mails_prefix = 'feml_'; +$store_mails_max = 10; + # Captcha $captcha_enable = 0; diff --git a/form-email/mailer.php b/form-email/mailer.php index 5ad8407..b3955bb 100644 --- a/form-email/mailer.php +++ b/form-email/mailer.php @@ -7,7 +7,7 @@ # geschrieben wurde. # # Autor: Patrick Canterino -# Letzte Aenderung: 02.01.2012 +# Letzte Aenderung: 09.01.2012 # # Copyright (C) 2002-2012 Patrick Canterino # @@ -241,8 +241,10 @@ $subject = preg_replace("/\015\012|\012|\015/",' ',$subject); # Uhrzeit formatieren +$timestamp = time(); + date_default_timezone_set($timezone); -$time = strftime($timeformat); +$time = strftime($timeformat,$timestamp); # Header der Mail @@ -348,6 +350,53 @@ for($x=0;$x 0) { + $dp = opendir($store_mails_dir); + + while($stored_mail_file = readdir($dp)) { + if($stored_mail_file != '.' && $stored_mail_file != '..' && substr($stored_mail_file,0,strlen($store_mails_prefix)) == $store_mails_prefix) { + $stored_mail_files[$store_mails_dir.'/'.$stored_mail_file] = filemtime($store_mails_dir.'/'.$stored_mail_file); + } + } + + closedir($dp); + + arsort($stored_mail_files); + + #print sizeof($stored_mail_files); + + #print_r($stored_mail_files); + + $x = 0; + + foreach(array_keys($stored_mail_files) as $stored_mail_filename) { + $x++; + + if($x > $store_mails_max) { + unlink($stored_mail_filename); + } + } + } +} + if($captcha_enable) session_destroy(); # Mail wurde erfolgreich versendet, also wird die Dankesseite angezeigt -- 2.34.1