Change Webalizer config to live in AFS
[hcoop/domtool2.git] / src / plugins / webalizer.sml
index f88f2ff..61d2b08 100644 (file)
@@ -24,22 +24,31 @@ val files = ref ([] : TextIO.outstream list)
 val write = ref (fn _ : string => ())
 
 val () = Apache.registerPre
-        (fn {nodes, id, hostname} =>
+        (fn {user, nodes, id, hostname} =>
             let
-                val fds = map (fn node => Domain.domainFile {node = node,
-                                                             name = id ^ ".wbl"}) nodes
+                val fds = map (fn node =>
+                                  let
+                                      val fd = Domain.domainFile {node = node,
+                                                                  name = id ^ ".wbl"}
+                                  in
+                                      TextIO.output (fd, "LogFile\t");
+                                      TextIO.output (fd, Config.homeBase);
+                                      TextIO.output (fd, "/apache/log/");
+                                      TextIO.output (fd, node);
+                                      TextIO.output (fd, hostname);
+                                      TextIO.output (fd, "/access.log\nOutputDir\t");
+                                      TextIO.output (fd, Config.Webalizer.outputDir);
+                                      TextIO.output (fd, "/");
+                                      TextIO.output (fd, node);
+                                      TextIO.output (fd, "/");
+                                      TextIO.output (fd, id);
+                                      TextIO.output (fd, "\n");
+                                      fd
+                                  end) nodes
             in
                 files := fds;
                 write := (fn s => app (fn fd => TextIO.output (fd, s)) fds);
-                !write "LogFile\t";
-                !write Config.Apache.logDir;
-                !write "/";
-                !write hostname;
-                !write "/access.log\nOutputDir\t";
-                !write Config.Webalizer.outputDir;
-                !write "/";
-                !write id;
-                !write "\nHostname\t";
+                !write "Hostname\t";
                 !write hostname;
                 !write "\nHideSite\t";
                 !write hostname;
@@ -93,12 +102,7 @@ val () = Slave.registerFileHandler (fn fs =>
                                                         if Posix.FileSys.access (dir, []) then
                                                             ()
                                                         else
-                                                            Posix.FileSys.mkdir (dir, Posix.FileSys.S.flags
-                                                                                          [Posix.FileSys.S.iroth,
-                                                                                           Posix.FileSys.S.ixoth,
-                                                                                           Posix.FileSys.S.irwxu,
-                                                                                           Posix.FileSys.S.irgrp,
-                                                                                           Posix.FileSys.S.iwgrp])
+                                                            OS.FileSys.mkDir dir
                                                     end))
                                             | _ => ()
                                       end)