blob: 3fa396f57b7c6044855dee43e006cb24123ef16b (
plain) (
tree)
|
|
<?xml version="1.0"?>
<filterdescription>
<partset>
<part name="sender">
<title>Sender</title>
<input type="optionlist" name="sender-type">
<option value="contains">
<title>contains</title>
<code>
(match-all (header-contains "From" ${sender}))
</code>
</option>
<option value="not contains">
<title>does not contain</title>
<code>
(match-all (not (header-contains "From" ${sender})))
</code>
</option>
<option value="is">
<title>is</title>
<code>
(match-all (header-matches "From" ${sender}))
</code>
</option>
<option value="is not">
<title>is not</title>
<code>
(match-all (not (header-matches "From" ${sender})))
</code>
</option>
<option value="starts with">
<title>starts with</title>
<code>
(match-all (header-starts-with "From" ${sender}))
</code>
</option>
<option value="not starts with">
<title>does not start with</title>
<code>
(match-all (not (header-starts-with "From" ${sender})))
</code>
</option>
<option value="ends with">
<title>ends with</title>
<code>
(match-all (header-ends-with "From" ${sender}))
</code>
</option>
<option value="not ends with">
<title>does not end with</title>
<code>
(match-all (not (header-ends-with "From" ${sender})))
</code>
</option>
<option value="matches soundex">
<title>sounds like</title>
<code>
(match-all (header-soundex "From" ${sender}))
</code>
</option>
<option value="not match soundex">
<title>does not sound like</title>
<code>
(match-all (not (header-soundex "From" ${sender})))
</code>
</option>
<option value="matches regex">
<title>matches regex</title>
<code>
(match-all (header-regex "From" ${sender}))
</code>
</option>
<option value="not match regex">
<title>does not match regex</title>
<code>
(match-all (not (header-regex "From" ${sender})))
</code>
</option>
</input>
<input type="string" name="sender"/>
</part>
<part name="to">
<title>Recipients</title>
<input type="optionlist" name="recipient-type">
<option value="contains">
<title>contains</title>
<code>
(match-all (or (header-contains "To" ${recipient})
(header-contains "Cc" ${recipient})))
</code>
</option>
<option value="not contains">
<title>does not contain</title>
<code>
(match-all (not (or
(header-contains "To" ${recipient})
(header-contains "Cc" ${recipient}))))
</code>
</option>
<option value="is">
<title>is</title>
<code>
(match-all (or (header-matches "To" ${recipient})
(header-matches "Cc" ${recipient})))
</code>
</option>
<option value="is not">
<title>is not</title>
<code>
(match-all (not (or
(header-matches "To" ${recipient})
(header-matches "Cc" ${recipient}))))
</code>
</option>
<option value="starts with">
<title>starts with</title>
<code>
(match-all (or (header-starts-with "To" ${recipient})
(header-starts-with "Cc" ${recipient})))
</code>
</option>
<option value="not starts with">
<title>does not start with</title>
<code>
(match-all (not (or
(header-starts-with "To" ${recipient})
(header-starts-with "Cc" ${recipient}))))
</code>
</option>
<option value="ends with">
<title>ends with</title>
<code>
(match-all (or (header-ends-with "To" ${recipient})
(header-ends-with "Cc" ${recipient})))
</code>
</option>
<option value="not ends with">
<title>does not end with</title>
<code>
(match-all (not (or
(header-ends-with "To" ${recipient})
(header-ends-with "Cc" ${recipient}))))
</code>
</option>
<option value="matches soundex">
<title>sounds like</title>
<code>
(match-all (or (header-soundex "To" ${recipient})
(header-soundex "Cc" ${recipient})))
</code>
</option>
<option value="not match soundex">
<title>does not sound like</title>
<code>
(match-all (not (or
(header-soundex "To" ${recipient})
(header-soundex "Cc" ${recipient}))))
</code>
</option>
<option value="matches regex">
<title>matches regex</title>
<code>
(match-all (or (header-regex "To" ${recipient})
(header-regex "Cc" ${recipient})))
</code>
</option>
<option value="not match regex">
<title>does not match regex</title>
<code>
(match-all (not (or
(header-regex "To" ${recipient})
(header-regex "Cc" ${recipient}))))
</code>
</option>
</input>
<input type="address" name="recipient"/>
</part>
<part name="subject">
<title>Subject</title>
<input type="optionlist" name="subject-type">
<option value="contains">
<title>contains</title>
<code>
(match-all (header-contains "Subject" ${subject}))
</code>
</option>
<option value="not contains">
<title>does not contain</title>
<code>
(match-all (not (header-contains "Subject" ${subject})))
</code>
</option>
<option value="is">
<title>is</title>
<code>
(match-all (header-matches "Subject" ${subject}))
</code>
</option>
<option value="is not">
<title>is not</title>
<code>
(match-all (not (header-matches "Subject" ${subject}))
</code>
</option>
<option value="starts with">
<title>starts with</title>
<code>
(match-all (header-starts-with "Subject" ${subject}))
</code>
</option>
<option value="not starts with">
<title>does not start with</title>
<code>
(match-all (not (header-starts-with "Subject" ${subject}))
</code>
</option>
<option value="ends with">
<title>ends with</title>
<code>
(match-all (header-ends-with "Subject" ${subject}))
</code>
</option>
<option value="not ends with">
<title>does not end with</title>
<code>
(match-all (not (header-ends-with "Subject" ${subject}))
</code>
</option>
<option value="matches soundex">
<title>sounds like</title>
<code>
(match-all (header-soundex "Subject" ${subject}))
</code>
</option>
<option value="not match soundex">
<title>does not sound like</title>
<code>
(match-all (not (header-soundex "Subject" ${subject})))
</code>
</option>
<option value="matches regex">
<title>matches regex</title>
<code>
(match-all (header-regex "Subject" ${subject}))
</code>
</option>
<option value="not match regex">
<title>does not match regex</title>
<code>
(match-all (not (header-regex "Subject" ${subject}))
</code>
</option>
</input>
<input type="string" name="subject"/>
</part>
<part name="header">
<title>Specific header</title>
<input type="string" name="header-field"/>
<input type="optionlist" name="header-type">
<option value="contains">
<title>contains</title>
<code>
(match-all (header-contains ${header-field} ${word}))
</code>
</option>
<option value="not contains">
<title>does not contain</title>
<code>
(match-all (not (header-contains ${header-field} ${word})))
</code>
</option>
<option value="is">
<title>is</title>
<code>
(match-all (header-matches ${header-field} ${word}))
</code>
</option>
<option value="is not">
<title>is not</title>
<code>
(match-all (not (header-matches ${header-field} ${word}))
</code>
</option>
<option value="starts with">
<title>starts with</title>
<code>
(match-all (header-starts-with ${header-field} ${word}))
</code>
</option>
<option value="not starts with">
<title>does not start with</title>
<code>
(match-all (not (header-starts-with ${header-field} ${word}))
</code>
</option>
<option value="ends with">
<title>ends with</title>
<code>
(match-all (header-ends-with ${header-field} ${word}))
</code>
</option>
<option value="not ends with">
<title>does not end with</title>
<code>
(match-all (not (header-ends-with ${header-field} ${word}))
</code>
</option>
<option value="exists">
<title>exists</title>
<code>
(match-all (header-exists ${header-field}))
</code>
</option>
<option value="not exists">
<title>does not exist</title>
<code>
(match-all (not (header-exists ${header-field}))
</code>
</option>
<option value="matches soundex">
<title>sounds like</title>
<code>
(match-all (header-soundex ${header-field} ${word}))
</code>
</option>
<option value="not match soundex">
<title>does not sound like</title>
<code>
(match-all (not (header-soundex ${header-field} ${word})))
</code>
</option>
<option value="matches regex">
<title>matches regex</title>
<code>
(match-all (header-regex ${header-field} ${word}))
</code>
</option>
<option value="not match regex">
<title>does not match regex</title>
<code>
(match-all (not (header-regex ${header-field} ${word}))
</code>
</option>
</input>
<input type="string" name="word"/>
</part>
<part name="body">
<title>Message Body</title>
<input type="optionlist" name="body-type">
<option value="contains">
<title>contains</title>
<code>
(body-contains ${word})
</code>
</option>
<option value="not contains">
<title>does not contain</title>
<code>
(not (body-contains ${word}))
</code>
</option>
<option value="matches regex">
<title>matches regex</title>
<code>
(body-regex ${word})
</code>
</option>
<option value="not match regex">
<title>does not match regex</title>
<code>
(not (body-regex ${word}))
</code>
</option>
</input>
<input type="string" name="word"/>
</part>
<part name="sexp">
<title>Expression</title>
<input type="code" name="code"/>
</part>
<part name="sent-date">
<title>Date sent</title>
<input type="optionlist" name="date-spec-type">
<option value="is">
<title>is</title>
<code>
(match-all (= (get-sent-date) ${versus}))
</code>
</option>
<option value="is-not">
<title>is not</title>
<code>
(match-all (not (= (get-sent-date) ${versus})))
</code>
</option>
<option value="before">
<title>was before</title>
<code>
(match-all (< (get-sent-date) ${versus}))
</code>
</option>
<option value="after">
<title>was after</title>
<code>
(match-all (> (get-sent-date) ${versus}))
</code>
</option>
</input>
<input type="datespec" name="versus">
</input>
</part>
<part name="recv-date">
<title>Date received</title>
<input type="optionlist" name="date-spec-type">
<option value="is">
<title>is</title>
<code>
(match-all (= (get-received-date) ${versus}))
</code>
</option>
<option value="is-not">
<title>is not</title>
<code>
(match-all (not (= (get-received-date) ${versus})))
</code>
</option>
<option value="before">
<title>was before</title>
<code>
(match-all (< (get-received-date) ${versus}))
</code>
</option>
<option value="after">
<title>was after</title>
<code>
(match-all (> (get-received-date) ${versus}))
</code>
</option>
</input>
<input type="datespec" name="versus">
</input>
</part>
<part name="score">
<title>Priority</title>
<input type="optionlist" name="score-type">
<option value="less-than">
<title>is</title>
<code>
(match-all (= (get-score) ${versus}))
</code>
</option>
<option value="is-not">
<title>is not</title>
<code>
(match-all (not (= (get-score) ${versus})))
</code>
</option>
<option value="greater-than">
<title>is greater than</title>
<code>
(match-all (> (get-score) ${versus}))
</code>
</option>
<option value="less-than">
<title>is less than</title>
<code>
(match-all (< (get-score) ${versus}))
</code>
</option>
</input>
<input type="score" name="versus">
</input>
</part>
<part name="source">
<title>Source</title>
<input type="optionlist" name="url-type">
<option value="is">
<title>is</title>
<code>
(match-all (= (get-source) ${source}))
</code>
</option>
<option value="is-not">
<title>is not</title>
<code>
(match-all (not (= (get-source) ${source})))
</code>
</option>
</input>
<input type="url" name="source">
</input>
</part>
</partset>
<actionset>
<part name="copy-to-folder">
<title>Copy to Folder</title>
<code>(copy-to ${folder})</code>
<input type="folder" name="folder"/>
</part>
<part name="move-to-folder">
<title>Move to Folder</title>
<code>(move-to ${folder})</code>
<input type="folder" name="folder"/>
</part>
<part name="forward-to">
<title>Forward to Address</title>
<code>(forward-to ${address})</code>
<input type="address" name="address"/>
</part>
<part name="delete">
<title>Delete</title>
<code>(delete)</code>
</part>
<part name="stop">
<title>Stop Processing</title>
<code>(stop)</code>
</part>
<part name="colour">
<title>Assign Colour</title>
<code>(set-colour ${colour})</code>
<input type="colour" name="colour"/>
</part>
<part name="score">
<title>Assign Score</title>
<code>(set-score ${score})</code>
<input type="score" name="score"/>
</part>
<part name="flag">
<title>Set Flag</title>
<input type="optionlist" name="flag-type">
<option value="answered">
<title>Answered</title>
<code>
(set-flag 1)
</code>
</option>
<option value="deleted">
<title>Deleted</title>
<code>
(set-flag 2)
</code>
</option>
<option value="draft">
<title>Draft</title>
<code>
(set-flag 4)
</code>
</option>
<option value="flagged">
<title>Flagged</title>
<code>
(set-flag 8)
</code>
</option>
<option value="seen">
<title>Seen</title>
<code>
(set-flag 16)
</code>
</option>
</input>
</part>
</actionset>
</filterdescription>
|