diff --git a/server/conf/sieve_filter.master b/server/conf/sieve_filter.master index 2b4a9fc2f8dcbc49c7cc17e43d5c013d7ff20b3b..3bd42ed17f85105dca64639f2fe6e7afc64e0668 100644 --- a/server/conf/sieve_filter.master +++ b/server/conf/sieve_filter.master @@ -31,6 +31,6 @@ if header :contains "X-Spam-Flag" "YES" { } vacation :days 1 :subject "Out of office reply" - # :addresses ["test@test.int", "till@test.int"] + ""; diff --git a/server/plugins-available/maildeliver_plugin.inc.php b/server/plugins-available/maildeliver_plugin.inc.php index 39e6a4c0d9c67034bd425a9f62fabe08fb6dbebf..61cca83537f70c989edd2c415f0586474b0b5bd8 100644 --- a/server/plugins-available/maildeliver_plugin.inc.php +++ b/server/plugins-available/maildeliver_plugin.inc.php @@ -118,7 +118,21 @@ class maildeliver_plugin { $data["new"]["autoresponder_text"] = str_replace("\"","'",$data["new"]["autoresponder_text"]); $tpl->setVar('autoresponder_text',$data["new"]["autoresponder_text"]); - + + //* Set alias addresses for autoresponder + $sql = "SELECT * FROM mail_forwarding WHERE type = 'alias' AND destination = '".$app->db->quote($data["new"]["email"])."'"; + $records = $app->db->queryAllRecords($sql); + $addresses = ''; + if(is_array($records)) { + $addresses .= ':addresses ['; + foreach($records as $rec) { + $addresses .= '"'.$rec['source'].'",'; + } + $addresses = substr($addresses,0,-1); + $addresses .= ']'; + } + $tpl->setVar('addresses',$addresses); + file_put_contents($sieve_file,$tpl->grab()); unset($tpl);