forked from extern/egroupware
* Mail: Add set flags action into mail filters
This commit is contained in:
parent
551d797cb6
commit
2af7775aa2
@ -392,6 +392,9 @@ class Script
|
||||
if (preg_match("/discard/i",$rule['action'])) {
|
||||
$newruletext .= "discard;";
|
||||
}
|
||||
if (preg_match("/flags/i",$rule['action'])) {
|
||||
$newruletext .= "addflag \"".$rule['action_arg']."\";";
|
||||
}
|
||||
if ($rule['keep']) $newruletext .= "\n\tkeep;";
|
||||
if (!$rule['unconditional']) $newruletext .= "\n}";
|
||||
|
||||
@ -556,6 +559,8 @@ class Script
|
||||
if ($this->extensions['body']) $newscripthead .= ",\"body\"";
|
||||
if ($this->extensions['date']) $newscripthead .= ",\"date\"";
|
||||
if ($this->extensions['relational']) $newscripthead .= ",\"relational\"";
|
||||
if ($this->extensions['variables']) $newscripthead .= ",\"variables\"";
|
||||
if ($this->extensions['imap4flags']) $newscripthead .= ",\"imap4flags\"";
|
||||
|
||||
if ($this->emailNotification && $this->emailNotification['status'] == 'on') $newscripthead .= ',"'.($this->extensions['enotify']?'e':'').'notify"'.($this->extensions['variables']?',"variables"':''); // Added email notifications
|
||||
$newscripthead .= "];\n\n";
|
||||
@ -566,6 +571,9 @@ class Script
|
||||
{
|
||||
$newscripthead .= "require [\"vacation\"";
|
||||
if ($this->extensions['regex'] && $regexused) $newscripthead .= ",\"regex\"";
|
||||
if ($this->extensions['date']) $newscripthead .= ",\"date\"";
|
||||
if ($this->extensions['relational']) $newscripthead .= ",\"relational\"";
|
||||
|
||||
$closeRequired=true;
|
||||
}
|
||||
if ($this->emailNotification && $this->emailNotification['status'] == 'on')
|
||||
|
@ -252,6 +252,10 @@ class mail_sieve
|
||||
break;
|
||||
case 'reject':
|
||||
$content['action_reject_text'] = $rules['action_arg'];
|
||||
break;
|
||||
case 'flags':
|
||||
$content['action_flags_list'] = explode(' ', $rules['action_arg']);
|
||||
break;
|
||||
}
|
||||
$content['anyof'] = $rules['anyof'] != 0?1:0;
|
||||
}
|
||||
@ -302,10 +306,15 @@ class mail_sieve
|
||||
break;
|
||||
case 'reject':
|
||||
$newRule['action_arg'] = $content['action_reject_text'];
|
||||
break;
|
||||
case 'flags':
|
||||
$newRule['action_arg'] = implode(' ', $content['action_flags_list']);
|
||||
break;
|
||||
}
|
||||
unset($newRule['action_folder_text']);
|
||||
unset($newRule['action_address_text']);
|
||||
unset($newRule['action_reject_text']);
|
||||
unset($newRule['action_flags_list']);
|
||||
|
||||
$newRule['flg'] = 0 ;
|
||||
if( $newRule['continue'] ) { $newRule['flg'] += 1; }
|
||||
|
@ -98,6 +98,13 @@
|
||||
<radio label="Discard message" id="action" options="discard"/>
|
||||
<description/>
|
||||
</row>
|
||||
<row>
|
||||
<radio label="set flags" id="action" options="flags"/>
|
||||
<taglist id="action_flags_list">
|
||||
<option value="\\Flagged">Flagged</option>
|
||||
<option value="\\Deleted">Deleted</option>
|
||||
</taglist>
|
||||
</row>
|
||||
<row>
|
||||
<description value="(*) Please consider, forward to multiple addresses will not work if number of addresses exceeds the Limit. For most mail Servers the limit is 4 by default, please contact your mail server administrator for further info."/>
|
||||
</row>
|
||||
|
Loading…
Reference in New Issue
Block a user