bernd commited on 2012-02-25 15:16:45
Zeige 4 geänderte Dateien mit 217 Einfügungen und 13 Löschungen.
git-svn-id: https://svn.schokokeks.org/repos/tools/webinterface/trunk@2209 87cf0b9e-d624-0410-a070-f6ee81989793
... | ... |
@@ -23,6 +23,7 @@ else { |
23 | 23 |
} |
24 | 24 |
|
25 | 25 |
|
26 |
+$is_autoresponder = is_array($account['autoresponder']); |
|
26 | 27 |
$is_forward = (count($account['forwards']) > 0); |
27 | 28 |
$is_mailbox = ($account['password'] != NULL || $id == 0); |
28 | 29 |
$numforwards = max(count($account['forwards']), 1); |
... | ... |
@@ -70,6 +71,16 @@ output("<script type=\"text/javascript\"> |
70 | 71 |
parent = document.getElementById('forward_config'); |
71 | 72 |
parent.appendChild(DIV); |
72 | 73 |
} |
74 |
+ |
|
75 |
+ function toggleDisplay(checkbox_id, item_id) |
|
76 |
+ { |
|
77 |
+ if (document.getElementById(checkbox_id).checked == true) { |
|
78 |
+ document.getElementById(item_id).style.display = 'block'; |
|
79 |
+ } else { |
|
80 |
+ document.getElementById(item_id).style.display = 'none'; |
|
81 |
+ } |
|
82 |
+ } |
|
83 |
+ |
|
73 | 84 |
</script> |
74 | 85 |
"); |
75 | 86 |
|
... | ... |
@@ -85,27 +96,108 @@ if ($is_mailbox and ($account['password'] != '')) |
85 | 96 |
} |
86 | 97 |
|
87 | 98 |
$form .= " |
88 |
- <p><input type=\"checkbox\" id=\"mailbox\" name=\"mailbox\" value=\"yes\" ".($is_mailbox ? 'checked="checked" ' : '')." /><label for=\"mailbox\"> <strong>In Mailbox speichern</strong></label></p> |
|
89 |
- <p style=\"margin-left: 2em;\" id=\"mailbox_options\">Passwort für Abruf: <input type=\"password\" id=\"password\" name=\"password\" value=\"{$password_value}\" />{$password_message}</p>"; |
|
99 |
+ <p><input onchange=\"toggleDisplay('mailbox', 'mailbox_options')\" type=\"checkbox\" id=\"mailbox\" name=\"mailbox\" value=\"yes\" ".($is_mailbox ? 'checked="checked" ' : '')." /><label for=\"mailbox\"> <strong>In Mailbox speichern</strong></label></p> |
|
100 |
+ <div style=\"margin-left: 2em;".($is_mailbox ? '' : ' display: none;')."\" id=\"mailbox_options\"> |
|
101 |
+ <p>Passwort für Abruf: <input type=\"password\" id=\"password\" name=\"password\" value=\"{$password_value}\" />{$password_message}</p>"; |
|
90 | 102 |
|
91 |
-$form.= "<p style=\"margin-left: 2em;\" class=\"spamfilter_options\">Unerwünschte E-Mails (Spam, Viren) in diesem Postfach ".html_select('spamfilter_action', array("none" => 'nicht filtern', "folder" => 'in Unterordner »Spam« ablegen', "tag" => 'markieren und zustellen', "delete" => 'nicht zustellen (löschen)'), $account['spamfilter'])."</p>"; |
|
103 |
+$form.= "<p class=\"spamfilter_options\">Unerwünschte E-Mails (Spam, Viren) in diesem Postfach ".html_select('spamfilter_action', array("none" => 'nicht filtern', "folder" => 'in Unterordner »Spam« ablegen', "tag" => 'markieren und zustellen', "delete" => 'nicht zustellen (löschen)'), $account['spamfilter'])."</p>"; |
|
92 | 104 |
|
93 | 105 |
$quota = config('vmail_basequota'); |
94 | 106 |
if ($is_mailbox and $account['quota']) { |
95 | 107 |
$quota = $account['quota']; |
96 | 108 |
} |
97 | 109 |
|
98 |
-$form .= "<p style=\"margin-left: 2em;\" class=\"quota_options\">Größe des Postfachs: <input type=\"text\" id=\"quota\" name=\"quota\" value=\"{$quota}\" /> MB<br /><span style=\"font-size: 80%\"><em>Hinweis: Die Differenz zwischen dem hier gesetzten Wert und dem Sockelbetrag von ".config('vmail_basequota')." MB wird vom Speicherplatz Ihres Benutzer-Kontos abgezogen.</em></span></p>"; |
|
110 |
+$form .= "<p class=\"quota_options\">Größe des Postfachs: <input type=\"text\" id=\"quota\" name=\"quota\" value=\"{$quota}\" /> MB<br /><span style=\"font-size: 80%\"><em>Hinweis: Die Differenz zwischen dem hier gesetzten Wert und dem Sockelbetrag von ".config('vmail_basequota')." MB wird vom Speicherplatz Ihres Benutzer-Kontos abgezogen.</em></span></p>"; |
|
99 | 111 |
|
100 | 112 |
$quota_notify = ($account['quota_threshold'] >= 0) ? ' checked="checked" ' : ''; |
101 | 113 |
$quota_threshold = ($account['quota_threshold'] >= 0) ? $account['quota_threshold'] : ''; |
102 |
-$form .= "<p style=\"margin-left: 2em;\" class=\"quota_options\"><input type=\"checkbox\" id=\"quota_notify\" name=\"quota_notify\" value=\"1\" {$quota_notify} /><label for=\"quota_notify\">Benachrichtigung wenn weniger als</label> <input type=\"text\" name=\"quota_threshold\" id=\"quota_threshold\" value=\"{$quota_threshold}\" /> MB Speicherplatz zur Verfügung stehen.</p>"; |
|
114 |
+$form .= "<p class=\"quota_options\"><input type=\"checkbox\" id=\"quota_notify\" name=\"quota_notify\" value=\"1\" {$quota_notify} /><label for=\"quota_notify\">Benachrichtigung wenn weniger als</label> <input type=\"text\" name=\"quota_threshold\" id=\"quota_threshold\" value=\"{$quota_threshold}\" /> MB Speicherplatz zur Verfügung stehen.</p>"; |
|
115 |
+ |
|
116 |
+$form .= "</div>"; |
|
117 |
+ |
|
118 |
+ |
|
119 |
+ |
|
120 |
+ |
|
121 |
+$form .= "<p><input onchange=\"toggleDisplay('autoresponder', 'autoresponder_config')\" type=\"checkbox\" id=\"autoresponder\" name=\"autoresponder\" value=\"yes\" ".($is_autoresponder ? 'checked="checked" ' : '')." /><label for=\"autoresponder\"> <strong>Automatische Antwort versenden</strong></label></p>"; |
|
122 |
+ |
|
123 |
+$form .= "<div style=\"margin-left: 2em;".($is_autoresponder ? '' : ' display: none;')."\" id=\"autoresponder_config\">"; |
|
124 |
+ |
|
125 |
+$ar = $account['autoresponder']; |
|
126 |
+if (! $ar) { |
|
127 |
+ $ar = empty_autoresponder_config(); |
|
128 |
+} |
|
129 |
+ |
|
130 |
+if ($ar['valid_until'] != NULL && $ar['valid_until'] < date('Y-m-d')) { |
|
131 |
+ // Daten sind Restbestand von einem früheren Einsatz des Autoresponders |
|
132 |
+ $ar['valid_from'] = NULL; |
|
133 |
+ $ar['valid_until'] = NULL; |
|
134 |
+} |
|
135 |
+$valid_from_now_checked = ($ar['valid_from'] <= date('Y-m-d H:i:s') || $ar['valid_from'] == NULL) ? ' checked="checked"' : ''; |
|
136 |
+$valid_from_future_checked = ($ar['valid_from'] > date('Y-m-d H:i:s')) ? ' checked="checked"' : ''; |
|
137 |
+$startdate = $ar['valid_from']; |
|
138 |
+if (! $startdate) { |
|
139 |
+ $startdate = date('Y-m-d', time() + 1*24*60*60); |
|
140 |
+} |
|
141 |
+$form .= "<p><input type=\"radio\" name=\"ar_valid_from\" value=\"now\" id=\"ar_valid_from_now\"{$valid_from_now_checked} /> <label for=\"ar_valid_from_now\">Ab sofort</label><br />". |
|
142 |
+ "<input type=\"radio\" name=\"ar_valid_from\" value=\"future\" id=\"ar_valid_from_future\"{$valid_from_future_checked} /> <label for=\"ar_valid_from_future\">Erst ab dem </label>". |
|
143 |
+ html_datepicker("ar_valid_from", strtotime($startdate))."</p>"; |
|
144 |
+ |
|
145 |
+$valid_until_infinity_checked = ($ar['valid_until'] == NULL) ? ' checked="checked"' : ''; |
|
146 |
+$valid_until_date_checked = ($ar['valid_until'] != NULL) ? ' checked="checked"' : ''; |
|
147 |
+$enddate = $ar['valid_until']; |
|
148 |
+if (! $enddate) { |
|
149 |
+ $enddate = date('Y-m-d', time() + 7*24*60*60); |
|
150 |
+} |
|
151 |
+$form .= "<h4>Deaktivierung</h4>"; |
|
152 |
+$form .= "<p><input type=\"radio\" name=\"ar_valid_until\" value=\"infinity\" id=\"ar_valid_until_infinity\"{$valid_until_infinity_checked} /> <label for=\"ar_valid_until_infinity\">Unbefristet</label><br />". |
|
153 |
+ "<input type=\"radio\" name=\"ar_valid_until\" value=\"date\" id=\"ar_valid_until_date\"{$valid_until_date_checked} /> <label for=\"ar_valid_until_date\">Keine Antworten mehr versenden ab dem </label>". |
|
154 |
+ html_datepicker("ar_valid_until", strtotime($enddate))."</p>"; |
|
155 |
+ |
|
156 |
+ |
|
157 |
+$subject = $ar['subject']; |
|
158 |
+if ($subject == NULL) |
|
159 |
+ $subject = ''; |
|
160 |
+$ar_subject_default_checked = ($subject == NULL) ? ' checked="checked"' : ''; |
|
161 |
+$ar_subject_custom_checked = ($subject) ? ' checked="checked"' : ''; |
|
162 |
+$form .= "<h4>Betreffzeile der automatischen Antwort</h4>". |
|
163 |
+ "<p><input type=\"radio\" name=\"ar_subject\" value=\"default\" id=\"ar_subject_default\"{$ar_subject_default_checked} /> ". |
|
164 |
+ "<label for=\"ar_subject_default\">Automatisch (Re: <em><Betreff der Originalnachricht></em>)</label><br />". |
|
165 |
+ "<input type=\"radio\" name=\"ar_subject\" value=\"custom\" id=\"ar_subject_custom\"{$ar_subject_custom_checked} /> ". |
|
166 |
+ "<label for=\"ar_subject_custom\">Anderer Betreff:</label> <input type=\"text\" name=\"ar_subject_value\" id=\"ar_subject_value\" value=\"{$subject}\"/></p>"; |
|
167 |
+ |
|
168 |
+$message = $ar['message']; |
|
169 |
+$form .= "<h4>Inhalt der automatischen Antwort</h4>". |
|
170 |
+ "<p><textarea cols=\"80\" rows=\"10\" name=\"ar_message\" id=\"ar_message\">".$ar['message']."</textarea></p>"; |
|
171 |
+$quote = $ar['quote']; |
|
172 |
+if (! $quote) |
|
173 |
+ $quote = 'none'; |
|
174 |
+$form .= "<p><label for=\"ar_quote\">Originalnachricht des Absenders </label>". |
|
175 |
+ html_select('ar_quote', array("none" => 'nicht in Antwort einschließen', |
|
176 |
+ "inline" => 'zitieren (max. 50 Zeilen)', |
|
177 |
+ "attach" => 'vollständig als Anhang beifügen'), $quote)."</p>"; |
|
178 |
+ |
|
179 |
+ |
|
180 |
+$ar_from_default_checked = ($ar['fromname'] == NULL) ? ' checked="checked"' : ''; |
|
181 |
+$ar_from_custom_checked = ($ar['fromname'] != NULL) ? ' checked="checked"' : ''; |
|
182 |
+$fromname = $ar['fromname']; |
|
183 |
+$form .= "<h4>Absender der automatischen Antwort</h4>". |
|
184 |
+ "<p><input type=\"radio\" name=\"ar_from\" value=\"default\" id=\"ar_from_default\"{$ar_from_default_checked} /> <label for=\"ar_from_default\">Nur E-Mail-Adresse</label><br />". |
|
185 |
+ "<input type=\"radio\" name=\"ar_from\" value=\"custom\" id=\"ar_from_custom\"{$ar_from_custom_checked} /> <label for=\"ar_from_custom\">Mit Name: </label> ". |
|
186 |
+ "<input type=\"text\" name=\"ar_fromname\" id=\"ar_fromname\" value=\"{$fromname}\"/></p>"; |
|
103 | 187 |
|
104 | 188 |
|
105 |
-$form .= "<p><input type=\"checkbox\" id=\"forward\" name=\"forward\" value=\"yes\" ".($is_forward ? 'checked="checked" ' : '')." /><label for=\"forward\"> <strong>Weiterleitung an andere E-Mail-Adressen</strong></label></p>"; |
|
106 | 189 |
|
107 | 190 |
|
108 |
-$form .= "<div style=\"margin-left: 2em;\" id=\"forward_config\">"; |
|
191 |
+$form .= '</div>'; |
|
192 |
+ |
|
193 |
+ |
|
194 |
+ |
|
195 |
+ |
|
196 |
+ |
|
197 |
+$form .= "<p><input onchange=\"toggleDisplay('forward', 'forward_config')\" type=\"checkbox\" id=\"forward\" name=\"forward\" value=\"yes\" ".($is_forward ? 'checked="checked" ' : '')." /><label for=\"forward\"> <strong>Weiterleitung an andere E-Mail-Adressen</strong></label></p>"; |
|
198 |
+ |
|
199 |
+ |
|
200 |
+$form .= "<div style=\"margin-left: 2em;".($is_forward ? '' : ' display: none;')."\" id=\"forward_config\">"; |
|
109 | 201 |
|
110 | 202 |
if ($is_forward) |
111 | 203 |
{ |
... | ... |
@@ -126,10 +218,10 @@ else |
126 | 218 |
</div>\n"; |
127 | 219 |
} |
128 | 220 |
|
129 |
-$form .= '</div>'; |
|
221 |
+$form .= '<p>[ <a href="#" onclick="moreForward();">mehr Empfänger</a> ]</p> |
|
222 |
+</div>'; |
|
130 | 223 |
|
131 |
-$form .= '<p style="margin-left: 2em;">[ <a href="#" onclick="moreForward();">mehr Empfänger</a> ]</p> |
|
132 |
- <p><input type="submit" value="Speichern" />    '.internal_link('vmail', 'Abbrechen').'</p>'; |
|
224 |
+$form .= '<p><input type="submit" value="Speichern" />    '.internal_link('vmail', 'Abbrechen').'</p>'; |
|
133 | 225 |
|
134 | 226 |
output(html_form('vmail_edit_mailbox', 'save', 'action=edit'.($id != 0 ? '&id='.$id : ''), $form)); |
135 | 227 |
|
... | ... |
@@ -17,18 +17,36 @@ function empty_account() |
17 | 17 |
'spamexpire' => 7, |
18 | 18 |
'quota' => config('vmail_basequota'), |
19 | 19 |
'quota_threshold' => 20, |
20 |
- 'forwards' => array() |
|
20 |
+ 'forwards' => array(), |
|
21 |
+ 'autoresponder' => NULL |
|
21 | 22 |
); |
22 | 23 |
return $account; |
23 | 24 |
|
24 | 25 |
} |
25 | 26 |
|
27 |
+function empty_autoresponder_config() |
|
28 |
+{ |
|
29 |
+ $ar = array( |
|
30 |
+ 'valid_from' => date( 'Y-m-d H:i:s' ), |
|
31 |
+ 'valid_until' => NULL, |
|
32 |
+ 'fromname' => NULL, |
|
33 |
+ 'fromaddr' => NULL, |
|
34 |
+ 'subject' => NULL, |
|
35 |
+ 'message' => 'Danke für Ihre E-Mail. |
|
36 |
+Ich bin aktuell nicht im Büro und werde Ihre Nachricht erst nach meiner Rückkehr beantworten. |
|
37 |
+Ihre E-Mail wird nicht weitergeleitet.', |
|
38 |
+ 'quote' => NULL |
|
39 |
+ ); |
|
40 |
+ return $ar; |
|
41 |
+} |
|
42 |
+ |
|
43 |
+ |
|
26 | 44 |
function get_account_details($id, $checkuid = true) |
27 | 45 |
{ |
28 | 46 |
$id = (int) $id; |
29 | 47 |
$uid = (int) $_SESSION['userinfo']['uid']; |
30 | 48 |
$uid_check = ($checkuid ? "useraccount='{$uid}' AND " : ""); |
31 |
- $result = db_query("SELECT id, local, domain, password, spamfilter, forwards, server, quota, quota_used, quota_threshold from mail.v_vmail_accounts WHERE {$uid_check}id={$id} LIMIT 1"); |
|
49 |
+ $result = db_query("SELECT id, local, domain, password, spamfilter, forwards, autoresponder, server, quota, COALESCE(quota_used, 0) AS quota_used, quota_threshold from mail.v_vmail_accounts WHERE {$uid_check}id={$id} LIMIT 1"); |
|
32 | 50 |
if (mysql_num_rows($result) == 0) |
33 | 51 |
system_failure('Ungültige ID oder kein eigener Account'); |
34 | 52 |
$acc = empty_account(); |
... | ... |
@@ -44,6 +62,14 @@ function get_account_details($id, $checkuid = true) |
44 | 62 |
array_push($acc['forwards'], array("id" => $item['id'], 'spamfilter' => $item['spamfilter'], 'destination' => $item['destination'])); |
45 | 63 |
} |
46 | 64 |
} |
65 |
+ if ($acc['autoresponder'] > 0) { |
|
66 |
+ $result = db_query("SELECT id, IF(valid_from IS NULL OR valid_from > NOW() OR valid_until < NOW(), 0, 1) AS active, valid_from, valid_until, fromname, fromaddr, subject, message, quote FROM mail.vmail_autoresponder WHERE account={$acc['id']}"); |
|
67 |
+ $item = mysql_fetch_assoc($result); |
|
68 |
+ DEBUG($item); |
|
69 |
+ $acc['autoresponder'] = $item; |
|
70 |
+ } else { |
|
71 |
+ $acc['autoresponder'] = NULL; |
|
72 |
+ } |
|
47 | 73 |
if ($acc['quota_threshold'] === NULL) { |
48 | 74 |
$acc['quota_threshold'] = -1; |
49 | 75 |
} |
... | ... |
@@ -188,6 +214,27 @@ function save_vmail_account($account) |
188 | 214 |
} |
189 | 215 |
} |
190 | 216 |
|
217 |
+ if (is_array($account['autoresponder'])) { |
|
218 |
+ $ar = $account['autoresponder']; |
|
219 |
+ $valid_from = maybe_null($ar['valid_from']); |
|
220 |
+ $valid_until = maybe_null($ar['valid_until']); |
|
221 |
+ $fromname = maybe_null( mysql_real_escape_string($ar['fromname']) ); |
|
222 |
+ $fromaddr = NULL; |
|
223 |
+ if ($ar['fromaddr']) { |
|
224 |
+ $fromaddr = mysql_real_escape_string(check_emailaddr($ar['fromaddr'])); |
|
225 |
+ } |
|
226 |
+ $fromaddr = maybe_null( $fromaddr ); |
|
227 |
+ $subject = maybe_null( mysql_real_escape_string($ar['subject'])); |
|
228 |
+ $message = mysql_real_escape_string($ar['message']); |
|
229 |
+ $quote = "'inline'"; |
|
230 |
+ if ($ar['quote'] == 'attach') |
|
231 |
+ $quote = "'attach'"; |
|
232 |
+ elseif ($ar['quote'] == NULL) |
|
233 |
+ $quote = 'NULL'; |
|
234 |
+ db_query("REPLACE INTO mail.vmail_autoresponder (account, valid_from, valid_until, fromname, fromaddr, subject, message, quote) ". |
|
235 |
+ "VALUES ({$account['id']}, {$valid_from}, {$valid_until}, {$fromname}, {$fromaddr}, {$subject}, '{$message}', {$quote})"); |
|
236 |
+ } |
|
237 |
+ |
|
191 | 238 |
$password='NULL'; |
192 | 239 |
if ($account['password'] != '') |
193 | 240 |
{ |
... | ... |
@@ -311,7 +358,7 @@ Wussten Sie schon, dass Sie auf mehrere Arten Ihre E-Mails abrufen können? |
311 | 358 |
} |
312 | 359 |
|
313 | 360 |
// Update Mail-Quota-Cache |
314 |
- $result = db_query("SELECT useraccount, server, SUM(quota-(SELECT value FROM misc.config WHERE `key`='vmail_basequota')) AS quota, SUM(GREATEST(quota_used-(SELECT value FROM misc.config WHERE `key`='vmail_basequota'), 0)) AS used FROM mail.v_vmail_accounts GROUP BY useraccount, server"); |
|
361 |
+ $result = db_query("SELECT useraccount, server, SUM(quota-(SELECT value FROM misc.config WHERE `key`='vmail_basequota')) AS quota, SUM(GREATEST(quota_used-(SELECT value FROM misc.config WHERE `key`='vmail_basequota'), 0)) AS used FROM mail.v_vmail_accounts WHERE useraccount=".$uid." GROUP BY useraccount, server"); |
|
315 | 362 |
while ($line = mysql_fetch_assoc($result)) { |
316 | 363 |
if ($line['quota'] !== NULL) { |
317 | 364 |
db_query("REPLACE INTO mail.vmailquota (uid, server, quota, used) VALUES ('{$line['useraccount']}', '{$line['server']}', '{$line['quota']}', '{$line['used']}')"); |
... | ... |
@@ -41,6 +41,54 @@ if ($_GET['action'] == 'edit') |
41 | 41 |
$account['quota_threshold'] = $_POST['quota_threshold']; |
42 | 42 |
} |
43 | 43 |
|
44 |
+ |
|
45 |
+ |
|
46 |
+ $ar = empty_autoresponder_config(); |
|
47 |
+ $valid_from_date = time(); |
|
48 |
+ $valid_until_date = NULL; |
|
49 |
+ if (isset($_POST['ar_valid_from_day']) && isset($_POST['ar_valid_from_month']) && isset($_POST['ar_valid_from_year'])) { |
|
50 |
+ $valid_from_date = strtotime($_POST['ar_valid_from_year'].'-'.$_POST['ar_valid_from_month'].'-'.$_POST['ar_valid_from_day']); |
|
51 |
+ } |
|
52 |
+ if (isset($_POST['ar_valid_until_day']) && isset($_POST['ar_valid_until_month']) && isset($_POST['ar_valid_until_year'])) { |
|
53 |
+ $valid_until_date = strtotime($_POST['ar_valid_until_year'].'-'.$_POST['ar_valid_until_month'].'-'.$_POST['ar_valid_until_day']); |
|
54 |
+ } |
|
55 |
+ if (isset($_POST['ar_valid_from']) && ($_POST['ar_valid_from'] == 'now' || $valid_from_date < time())) { |
|
56 |
+ $valid_from_date = time(); |
|
57 |
+ } |
|
58 |
+ $ar['valid_from'] = date('Y-m-d', $valid_from_date); |
|
59 |
+ $ar['valid_until'] = date('Y-m-d', $valid_until_date); |
|
60 |
+ if (!isset($_POST['autoresponder']) || $_POST['autoresponder'] != 'yes') { |
|
61 |
+ $ar['valid_from'] = NULL; |
|
62 |
+ } |
|
63 |
+ if (isset($_POST['ar_valid_until']) && ($_POST['ar_valid_until'] == 'infinity' || $valid_until_date < time())) { |
|
64 |
+ $ar['valid_until'] = NULL; |
|
65 |
+ } |
|
66 |
+ |
|
67 |
+ if (isset($_POST['ar_subject']) && $_POST['ar_subject'] == 'custom' && isset($_POST['ar_subject_value']) && chop($_POST['ar_subject_value']) != '') { |
|
68 |
+ $ar['subject'] = filter_input_general( chop($_POST['ar_subject_value']) ); |
|
69 |
+ } |
|
70 |
+ |
|
71 |
+ if (isset($_POST['ar_message'])) { |
|
72 |
+ $ar['message'] = filter_input_general( $_POST['ar_message'] ); |
|
73 |
+ } |
|
74 |
+ |
|
75 |
+ if (isset($_POST['ar_quote'])) { |
|
76 |
+ if ($_POST['ar_quote'] == 'inline') { |
|
77 |
+ $ar['quote'] = 'inline'; |
|
78 |
+ } |
|
79 |
+ if ($_POST['ar_quote'] == 'attach') { |
|
80 |
+ $ar['quote'] = 'attach'; |
|
81 |
+ } |
|
82 |
+ } |
|
83 |
+ |
|
84 |
+ if (isset($_POST['ar_from']) && $_POST['ar_from'] == 'custom' && isset($_POST['ar_fromname'])) { |
|
85 |
+ $ar['fromname'] = filter_input_general( $_POST['ar_fromname']); |
|
86 |
+ } |
|
87 |
+ |
|
88 |
+ $account['autoresponder'] = $ar; |
|
89 |
+ |
|
90 |
+ |
|
91 |
+ |
|
44 | 92 |
if (isset($_POST['forward']) && $_POST['forward'] == 'yes') |
45 | 93 |
{ |
46 | 94 |
$num = 1; |
... | ... |
@@ -80,6 +80,23 @@ if (count($sorted_by_domains) > 0) |
80 | 80 |
} |
81 | 81 |
array_push($actions, "Ablegen in Mailbox ({$spam})<br />".$quotachart); |
82 | 82 |
} |
83 |
+ if ($acc['autoresponder']) { |
|
84 |
+ $now = date( 'Y-m-d H:i:s' ); |
|
85 |
+ $valid_from = $acc['autoresponder']['valid_from']; |
|
86 |
+ $valid_until = $acc['autoresponder']['valid_until']; |
|
87 |
+ if ($valid_from == NULL) { |
|
88 |
+ // Autoresponder abgeschaltet |
|
89 |
+ array_push($actions, "<strike>Automatische Antwort versenden</strike> (Abgeschaltet)"); |
|
90 |
+ } elseif ($valid_from > $now) { |
|
91 |
+ array_push($actions, "<strike>Automatische Antwort versenden</strike> (Wird aktiviert am {$valid_from})"); |
|
92 |
+ } elseif ($valid_until == NULL) { |
|
93 |
+ array_push($actions, "Automatische Antwort versenden (Unbefristet)"); |
|
94 |
+ } elseif ($valid_until > $now) { |
|
95 |
+ array_push($actions, "Automatische Antwort versenden (Wird deaktiviert am {$valid_until})"); |
|
96 |
+ } elseif ($valid_until < $now) { |
|
97 |
+ array_push($actions, "<strike>Automatische Antwort versenden</strike> (Automatisch abgeschaltet seit {$valid_until})"); |
|
98 |
+ } |
|
99 |
+ } |
|
83 | 100 |
foreach ($acc['forwards'] AS $fwd) |
84 | 101 |
{ |
85 | 102 |
$spam = 'ohne Spamfilter'; |
86 | 103 |