Make deletion checking work right; add mailmanHcoop
authoradamch <adamch>
Sat, 17 Nov 2007 22:12:00 +0000 (22:12 +0000)
committeradamch <adamch>
Sat, 17 Nov 2007 22:12:00 +0000 (22:12 +0000)
lib/hcoop.dtl
src/domain.sml

index d9fe950..755949d 100644 (file)
@@ -6,3 +6,6 @@ extern type homedir_path;
 extern val home : homedir_path -> your_path;
 {{Shortcut to denote a subdirectory of your home directory}}
 
+val mailmanHcoop = mailmanWebHost "lists.hcoop.net";
+{{Configure your domain to have its Mailman mailing lists served on the web at
+  lists.hcoop.net.}}
index ebd7a2b..e0a3520 100644 (file)
@@ -431,7 +431,7 @@ fun findDiffs (prefixes, site, dom, acts) =
                            loopReal acts
                        else
                            loopReal ((site, dom, realPath, Modify' {src = tmp, dst = real}) :: acts)
-                   else if List.exists (fn prefix => String.isPrefix prefix realPath) prefixes then
+                   else if List.exists (fn prefix => String.isPrefix prefix real) prefixes then
                        loopReal ((site, dom, realPath, Delete' real) :: acts)
                    else
                        loopReal acts
@@ -659,13 +659,16 @@ fun handleSite (site, files) =
 
 val () = Env.registerPost (fn () =>
                              let
-                                 val prefixes = List.map (fn dom =>
-                                                             let
-                                                                 val pieces = String.tokens (fn ch => ch = #".") dom
-                                                                 val path = String.concatWith "/" (rev pieces)
-                                                             in
-                                                                 Config.resultRoot ^ "/" ^ path ^ "/"
-                                                             end) (!seenDomains)
+                                 val prefixes = List.concat
+                                                    (List.map (fn dom =>
+                                                                  let
+                                                                      val pieces = String.tokens (fn ch => ch = #".") dom
+                                                                      val path = String.concatWith "/" (rev pieces)
+                                                                  in
+                                                                      List.map (fn node =>
+                                                                                   Config.resultRoot ^ "/" ^ node ^ "/" ^ path ^ "/")
+                                                                               nodes
+                                                                  end) (!seenDomains))
                                                                  
                                  val diffs = findAllDiffs prefixes