Commit | Line | Data |
---|---|---|
208e2cbc AC |
1 | signature INIT = sig |
2 | structure C : SQL_CLIENT | |
3 | ||
e84acecc | 4 | val scratchDir : string |
edeb626e | 5 | val urlPrefix : string |
6f91863c | 6 | val boardEmail : string |
edeb626e | 7 | |
208e2cbc | 8 | exception Access of string |
f3f3ad24 | 9 | exception NeedTos |
208e2cbc | 10 | |
93f77ca7 AC |
11 | val emailSuffix : string |
12 | ||
f3f3ad24 AC |
13 | type user = {id : int, name : string, rname : string, bal : int, joined : C.timestamp, |
14 | app : int} | |
208e2cbc | 15 | |
ee587f7f AC |
16 | val rowError : string * C.value list -> 'a |
17 | ||
18 | val mkUserRow : C.value list -> user | |
208e2cbc AC |
19 | |
20 | (* Open or close a session, wrapped in a transaction *) | |
21 | val init : unit -> unit | |
22 | val done : unit -> unit | |
23 | ||
ee587f7f | 24 | val nextSeq : C.conn * string -> int |
208e2cbc AC |
25 | |
26 | (* Fun with users *) | |
27 | ||
28 | val lookupUser : int -> user | |
29 | val listUsers : unit -> user list | |
f3f3ad24 | 30 | val addUser : string * string * int * int -> int |
208e2cbc AC |
31 | (* Pass name, real name, and balance ID *) |
32 | val modUser : user -> unit | |
33 | val deleteUser : int -> string | |
34 | ||
35 | val validUsername : string -> bool | |
36 | val userNameToId : string -> int option | |
37 | ||
38 | val getDb : unit -> C.conn | |
39 | ||
40 | val getUser : unit -> user | |
41 | val getUserId : unit -> int | |
42 | val getUserName : unit -> string | |
98a5f121 AC |
43 | |
44 | val dateString : unit -> string | |
f3f3ad24 AC |
45 | |
46 | val grandfatherUsers : unit -> unit | |
93f77ca7 | 47 | end |