aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMilan Crha <mcrha@redhat.com>2012-02-08 01:42:39 +0800
committerMilan Crha <mcrha@redhat.com>2012-02-08 01:43:28 +0800
commit569cdde1969873a46b8674223343c51342db8771 (patch)
treea1fb0081d87dd3d4c90432095a940eea77eeb8fb
parent023c86423ced0e78f97786650720afa4958c15a7 (diff)
downloadgsoc2013-evolution-569cdde1969873a46b8674223343c51342db8771.tar
gsoc2013-evolution-569cdde1969873a46b8674223343c51342db8771.tar.gz
gsoc2013-evolution-569cdde1969873a46b8674223343c51342db8771.tar.bz2
gsoc2013-evolution-569cdde1969873a46b8674223343c51342db8771.tar.lz
gsoc2013-evolution-569cdde1969873a46b8674223343c51342db8771.tar.xz
gsoc2013-evolution-569cdde1969873a46b8674223343c51342db8771.tar.zst
gsoc2013-evolution-569cdde1969873a46b8674223343c51342db8771.zip
Bug #391472 - Add ability to match headers by words
-rw-r--r--mail/em-filter-i18n.h2
-rw-r--r--mail/filtertypes.xml24
-rw-r--r--mail/searchtypes.xml24
-rw-r--r--mail/vfoldertypes.xml24
4 files changed, 74 insertions, 0 deletions
diff --git a/mail/em-filter-i18n.h b/mail/em-filter-i18n.h
index 4173b6656e..5acf5efd15 100644
--- a/mail/em-filter-i18n.h
+++ b/mail/em-filter-i18n.h
@@ -16,6 +16,7 @@ gchar *s = N_("Deleted");
gchar *s = N_("does not contain");
gchar *s = N_("does not end with");
gchar *s = N_("does not exist");
+gchar *s = N_("does not have words");
gchar *s = N_("does not return");
gchar *s = N_("does not sound like");
gchar *s = N_("does not start with");
@@ -27,6 +28,7 @@ gchar *s = N_("exists");
gchar *s = N_("Expression");
gchar *s = N_("Follow Up");
gchar *s = N_("Forward to");
+gchar *s = N_("has words");
gchar *s = N_("Important");
gchar *s = N_("is");
gchar *s = N_("is after");
diff --git a/mail/filtertypes.xml b/mail/filtertypes.xml
index 3e9bd08343..c655c32cb8 100644
--- a/mail/filtertypes.xml
+++ b/mail/filtertypes.xml
@@ -401,6 +401,18 @@
(match-all (not (header-contains "Subject" ${subject})))
</code>
</option>
+ <option value="has-words">
+ <title>has words</title>
+ <code>
+ (match-all (header-has-words "Subject" ${subject}))
+ </code>
+ </option>
+ <option value="not has-words">
+ <title>does not have words</title>
+ <code>
+ (match-all (not (header-has-words "Subject" ${subject})))
+ </code>
+ </option>
<option value="is">
<title>is</title>
<code>
@@ -469,6 +481,18 @@
(match-all (not (header-contains ${header-field} ${word})))
</code>
</option>
+ <option value="has-words">
+ <title>has words</title>
+ <code>
+ (match-all (header-has-words ${header-field} ${word}))
+ </code>
+ </option>
+ <option value="not has-words">
+ <title>does not have words</title>
+ <code>
+ (match-all (not (header-has-words ${header-field} ${word})))
+ </code>
+ </option>
<option value="is">
<title>is</title>
<code>
diff --git a/mail/searchtypes.xml b/mail/searchtypes.xml
index bac9794e63..c74f58cbf7 100644
--- a/mail/searchtypes.xml
+++ b/mail/searchtypes.xml
@@ -339,6 +339,18 @@
(match-all (not (header-contains "Subject" ${subject})))
</code>
</option>
+ <option value="has-words">
+ <title>has words</title>
+ <code>
+ (match-all (header-has-words "Subject" ${subject}))
+ </code>
+ </option>
+ <option value="not has-words">
+ <title>does not have words</title>
+ <code>
+ (match-all (not (header-has-words "Subject" ${subject})))
+ </code>
+ </option>
<option value="is">
<title>is</title>
<code>
@@ -395,6 +407,18 @@
(match-all (not (header-contains ${header-field} ${word})))
</code>
</option>
+ <option value="has-words">
+ <title>has words</title>
+ <code>
+ (match-all (header-has-words ${header-field} ${word}))
+ </code>
+ </option>
+ <option value="not has-words">
+ <title>does not have words</title>
+ <code>
+ (match-all (not (header-has-words ${header-field} ${word})))
+ </code>
+ </option>
<option value="is">
<title>is</title>
<code>
diff --git a/mail/vfoldertypes.xml b/mail/vfoldertypes.xml
index b2189c569a..59dc96227c 100644
--- a/mail/vfoldertypes.xml
+++ b/mail/vfoldertypes.xml
@@ -339,6 +339,18 @@
(match-all (not (header-contains "Subject" ${subject})))
</code>
</option>
+ <option value="has-words">
+ <title>has words</title>
+ <code>
+ (match-all (header-has-words "Subject" ${subject}))
+ </code>
+ </option>
+ <option value="not has-words">
+ <title>does not have words</title>
+ <code>
+ (match-all (not (header-has-words "Subject" ${subject})))
+ </code>
+ </option>
<option value="is">
<title>is</title>
<code>
@@ -395,6 +407,18 @@
(match-all (not (header-contains ${header-field} ${word})))
</code>
</option>
+ <option value="has-words">
+ <title>has words</title>
+ <code>
+ (match-all (header-has-words ${header-field} ${word}))
+ </code>
+ </option>
+ <option value="not has-words">
+ <title>does not have words</title>
+ <code>
+ (match-all (not (header-has-words ${header-field} ${word})))
+ </code>
+ </option>
<option value="is">
<title>is</title>
<code>