|
@@ -1,26 +1,3 @@
|
|
|
-if($FORWARD)
|
|
|
-{
|
|
|
- MLIST="$LISTDIR/alist"
|
|
|
- gdbmopen($MLIST, "R")
|
|
|
- ORGANIZER=gdbmfetch(tolower($FROM))
|
|
|
- gdbmclose
|
|
|
-
|
|
|
- if ($ORGANIZER eq "")
|
|
|
- {
|
|
|
- SLIST="$LISTDIR/alist"
|
|
|
- to "!"
|
|
|
- }
|
|
|
-
|
|
|
- #
|
|
|
- # ORGANIZERS ONLY
|
|
|
- #
|
|
|
- FROM=$ORGANIZER
|
|
|
- MLIST="$LISTDIR/mlist"
|
|
|
- gdbmopen($MLIST, "R")
|
|
|
- TO=gdbmfetch($TOALIAS)
|
|
|
- gdbmclose
|
|
|
- to "!"
|
|
|
-}
|
|
|
if (!$CONTINUE)
|
|
|
{
|
|
|
foreach /^(To|Cc):\s+(.*)\s+\<$ORGANIZERGROUPREGEX\>$/
|
|
@@ -30,20 +7,56 @@ if (!$CONTINUE)
|
|
|
CONTINUE=1
|
|
|
TOORGANIZER=1
|
|
|
MAILGROUP=$ORGANIZERGROUP
|
|
|
- SUBJECT="Crop Swap Notice"
|
|
|
}
|
|
|
elsif($CONTINUE)
|
|
|
{
|
|
|
+ NOFORWARD=$FROM
|
|
|
+ SUBJECT="Crop Swap Query"
|
|
|
+ SLIST="$LISTDIR/alist"
|
|
|
+
|
|
|
gdbmopen($MLIST, "R")
|
|
|
ALIAS=gdbmfetch(tolower($FROM))
|
|
|
+ gdbmclose
|
|
|
if ($ALIAS eq "")
|
|
|
{
|
|
|
- gdbmclose
|
|
|
- #
|
|
|
- # TODO: test this works at all
|
|
|
- FROM=$FROM
|
|
|
- SLIST="$LISTDIR/alist"
|
|
|
- to "!"
|
|
|
+ #
|
|
|
+ # TODO: test this works at all
|
|
|
+ # should at least drop list headers
|
|
|
+ FROM=$FROM
|
|
|
+ to "!"
|
|
|
}
|
|
|
+
|
|
|
+ #
|
|
|
+ # Registered senders only
|
|
|
+ include "$FILTERDIR/subscriptions"
|
|
|
+
|
|
|
+ gdbmopen($SLIST, "R")
|
|
|
+ if (gdbmfetch(tolower($FROM)) ne "SUBSCRIBE")
|
|
|
+ {
|
|
|
+ gdbmclose
|
|
|
+ #
|
|
|
+ # TODO: test this works at all
|
|
|
+ # should at least drop list headers
|
|
|
+ FROM=$FROM
|
|
|
+ to "!"
|
|
|
+ }
|
|
|
+ gdbmclose
|
|
|
+
|
|
|
+ MLIST="$LISTDIR/alist"
|
|
|
+ gdbmopen($MLIST, "R")
|
|
|
+ ORGANIZER=gdbmfetch(tolower($FROM))
|
|
|
gdbmclose
|
|
|
+
|
|
|
+ if ($ORGANIZER eq "")
|
|
|
+ {
|
|
|
+ FROM=$ALIAS
|
|
|
+ to "!"
|
|
|
+ }
|
|
|
+
|
|
|
+ #
|
|
|
+ # Organizers only
|
|
|
+ FROM=$ORGANIZER
|
|
|
+ SUBJECT="Crop Swap Notice"
|
|
|
+ SLIST="$LISTDIR/slist"
|
|
|
+ to "!"
|
|
|
}
|