Join script should rule out retired usernames master origin
authorAdam Chlipala <adamc@hcoop.net>
Tue, 2 Feb 2010 13:19:21 +0000 (13:19 +0000)
committerAdam Chlipala <adamc@hcoop.net>
Tue, 2 Feb 2010 13:19:21 +0000 (13:19 +0000)
app/app.sml

index bbc12fa..911b5cb 100644 (file)
@@ -176,7 +176,9 @@ fun validEmail s =
        | _ => false)
 
 fun userExists name =
-    (Posix.SysDB.getpwnam name; true) handle OS.SysErr _ => false
+    case C.oneOrNoRows (getDb ()) ($`SELECT id FROM WebUser WHERE name = ^(C.stringToSql name)`) of
+       SOME _ => true
+      | NONE => (Posix.SysDB.getpwnam name; true) handle OS.SysErr _ => false
 
 fun confirm (id, passwd) =
     let