summaryrefslogtreecommitdiff
path: root/.config/imapfilter/inria.lua
diff options
context:
space:
mode:
Diffstat (limited to '.config/imapfilter/inria.lua')
-rwxr-xr-x.config/imapfilter/inria.lua27
1 files changed, 27 insertions, 0 deletions
diff --git a/.config/imapfilter/inria.lua b/.config/imapfilter/inria.lua
new file mode 100755
index 0000000..b8ea7f1
--- /dev/null
+++ b/.config/imapfilter/inria.lua
@@ -0,0 +1,27 @@
+package.path = package.path .. ";" .. os.getenv("XDG_CONFIG_HOME") .. "/imapfilter/?.lua"
+
+require 'imapfilter-common'
+require 'collaborators'
+require 'accounts'
+
+inria = get_inria_handle()
+ensl = get_ensl_handle()
+
+mails = inria['INBOX']:select_all()
+
+-- reforwarding of mails that should have been sent to ensl account
+
+igitlab = mails:match_from('gitlab')
+igitlab:move_messages(ensl['INBOX'])
+
+collaborators = get_collaborators()
+
+for i,c in pairs(collaborators) do
+ c_pat = case_insensitive_pattern(".*" .. c["first"] .. "[. ]" .. c["last"] .. ".*")
+ to_move = mails:match_from(c_pat) + mails:match_to(c_pat)
+ to_move:move_messages(ensl['INBOX'])
+
+ c_pat = case_insensitive_pattern(".*" .. c["last"] .. "[. ]" .. c["first"] .. ".*")
+ to_move = mails:match_from(c_pat) + mails:match_to(c_pat)
+ to_move:move_messages(ensl['INBOX'])
+end