]> Git — Sourcephile - sourcephile-nix.git/blob - machines/mermet/dovecot/sieve/global/list.sieve
nix: servers.nix -> machines.nix
[sourcephile-nix.git] / machines / mermet / dovecot / sieve / global / list.sieve
1 require [ "date", "envelope", "fileinto", "mailbox", "subaddress", "variables" ];
2
3 #if currentdate :matches "year" "*" { set "year" "${1}"; }
4 #if currentdate :matches "month" "*" { set "month" "${1}"; }
5
6 if exists "X-MC-User" {
7 if header :matches "From" "*<*@*.asso.fr>*" {
8 fileinto :create "Listes+${3}";
9 stop;
10 }
11 elsif header :matches "From" "*<*@*.*>*" {
12 fileinto :create "Listes+${3}+${2}";
13 stop;
14 }
15 }
16 elsif exists "List-Id" {
17 if header :matches "List-Id" "*<*.*.*.*>*" {
18 if allof (not string :is "${2}" "", not string :is "${3}" "", not string :is "${4}" "") {
19 fileinto :create "Listes+${4}+${3}+${2}";
20 stop;
21 }
22 }
23 elsif header :matches "List-Id" "*<*.*.*>*" {
24 if allof (not string :is "${2}" "", not string :is "${3}" "") {
25 fileinto :create "Listes+${3}+${2}";
26 stop;
27 }
28 }
29 }
30
31 if envelope :matches :detail "TO" "*" { set "extension" "${1}"; }
32 if not string :is "${extension}" "" {
33 fileinto :create "Listes+${extension}";
34 stop;
35 }