PayPal link mentioned in reminder e-mails
[hcoop/portal.git] / init.sig
CommitLineData
208e2cbc
AC
1signature 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 19
dda99898
AC
20 (* Direct access to database connections *)
21 val conn : unit -> C.conn
22
208e2cbc
AC
23 (* Open or close a session, wrapped in a transaction *)
24 val init : unit -> unit
25 val done : unit -> unit
26
ee587f7f 27 val nextSeq : C.conn * string -> int
208e2cbc
AC
28
29 (* Fun with users *)
30
31 val lookupUser : int -> user
32 val listUsers : unit -> user list
f3f3ad24 33 val addUser : string * string * int * int -> int
208e2cbc
AC
34 (* Pass name, real name, and balance ID *)
35 val modUser : user -> unit
36 val deleteUser : int -> string
37
38 val validUsername : string -> bool
39 val userNameToId : string -> int option
40
41 val getDb : unit -> C.conn
42
43 val getUser : unit -> user
44 val getUserId : unit -> int
45 val getUserName : unit -> string
98a5f121
AC
46
47 val dateString : unit -> string
f3f3ad24
AC
48
49 val grandfatherUsers : unit -> unit
93f77ca7 50end