]> andersk Git - moira.git/blobdiff - gen/tsm.gen
New strategy: use Pro*C so it's less absymally slow.
[moira.git] / gen / tsm.gen
index 2674471770a3599fc4e69a4ceb9c5abfa65a5d34..977cf586d194d0b223fed146d937ebbc350ff5e3 100755 (executable)
@@ -25,6 +25,37 @@ $sth0->execute;
 while (($root_list_id, $hostname) = $sth0->fetchrow_array) {
     open(OUT, ">$outdir/$hostname");
 
+    $sth = $dbh->prepare("SELECT l.name, l.gid FROM list l " .
+                        "WHERE l.list_id = " . 
+                        $dbh->quote($root_list_id)) || 
+                        exit $MR_DBMS_ERR;
+    $sth->execute;
+
+    while (($name, $gid) = $sth->fetchrow_array) {
+       $row = "$name:$gid:";
+       $row =~ s/\0//g;
+       print OUT $row;
+       $maybecomma = "";
+    }
+
+    $sth = $dbh->prepare("SELECT u.login FROM users u, imembers i " .
+                        "WHERE i.list_id = " . $dbh->quote($root_list_id) .
+                        "AND i.direct = 1 " .
+                        "AND i.member_type = 'USER' " .
+                        "AND u.users_id = i.member_id") || exit $MR_DBMS_ERR;
+    $sth->execute;
+
+    while (($login) = $sth->fetchrow_array) { 
+       $row = "$maybecomma$login";
+       $row =~ s/\0//g;
+       print OUT $row;
+       $maybecomma = ",";
+    }
+
+    $row = "\n";
+    $row =~ s/\0//g;
+    print OUT $row;
+
     $sth = $dbh->prepare("SELECT l.name, l.gid FROM list l, imembers i " .
                         "WHERE i.list_id = " . $dbh->quote($root_list_id) .
                         "AND i.member_type = 'LIST' " .
@@ -53,7 +84,6 @@ while (($root_list_id, $hostname) = $sth0->fetchrow_array) {
                                                  "WHERE users_id = " . 
                                                  $dbh->quote($id)) ||
                                                      exit $MR_DBMS_ERR;
-               $member = $member . "\@mit.edu";
            }
            elsif ($type eq "STRING") {
                ($member) = $dbh->selectrow_array("SELECT string " .
This page took 0.045749 seconds and 4 git commands to generate.