Check for empty file paths
[hcoop/portal.git] / init.sig
index 360b94e..1c5f0a2 100644 (file)
--- a/init.sig
+++ b/init.sig
@@ -11,7 +11,7 @@ signature INIT = sig
     val emailSuffix : string
 
     type user = {id : int, name : string, rname : string, bal : int, joined : C.timestamp,
-                app : int}
+                app : int, shares : int}
 
     val rowError : string * C.value list -> 'a
 
@@ -30,10 +30,12 @@ signature INIT = sig
 
     val lookupUser : int -> user
     val listUsers : unit -> user list
-    val addUser : string * string * int * int -> int
-    (* Pass name, real name, and balance ID *)
+    val addUser : string * string * int * int * int -> int
+    (* Pass name, real name, balance ID, and share count *)
     val modUser : user -> unit
     val deleteUser : int -> string
+    val byPledge : unit -> user list
+    val unmigratedUsers : unit -> user list
 
     val validUsername : string -> bool
     val userNameToId : string -> int option
@@ -47,4 +49,14 @@ signature INIT = sig
     val dateString : unit -> string
 
     val grandfatherUsers : unit -> unit
+
+    type node = {id : int, name : string, descr : string, debian : string}
+
+    val listNodes : unit -> node list
+    val nodeName : int -> string
+    val nodeDebian : int -> string
+
+    val explain : exn -> string
+    val tokens : unit -> string
+    val tokensForked : unit -> unit
 end