chiark / gitweb /
Use message number for reject publish filename if available
[modbot-mtm.git] / xlog / bin / record
index 1ba50b70ae543452a6e303297dbc9fcb0225a0e6..7b6cf6035f796b2ca0fed0f17c08fc08db55a623 100755 (executable)
@@ -112,7 +112,10 @@ sub parse_mailout () {
            $message .= $line;
        }
        chomp;
-       $f{Event}= "notify $'" if m/^X-Webstump-Event:\s*/i; #';
+        if (m/^X-Webstump-Event:\s*(?:\[(\d+)\])?\s*/i) { #';
+            $f{Event}= "notify $'";
+            $f{MessageNum}= $1 if defined $1;
+        }
        last if m/^$/;
     }
     while (<STDIN>) {
@@ -133,7 +136,7 @@ $f{Now}= time;
 
 if ($publish_rejections &&
     $f{Event} =~ m/^notify reject /) {
-    $f{CopyRef}= $f{MessageID};
+    $f{CopyRef}= $f{MessageNum} || $f{MessageID};
     $f{CopyRef} =~ s/\W/ sprintf '-%02x', ord($&) /ge;
     open I, ">$dir/public/nr-$f{CopyRef}.txt" or die $!;
     print I $message or die $!;