Commit | Line | Data |
---|---|---|
5a2812ca AC |
1 | signature SUPPORT = |
2 | sig | |
3 | datatype status = | |
4 | NEW | |
5 | | PENDING | |
6 | | CLOSED | |
7 | ||
8 | type category = { id : int, grp : int, name : string, descr : string } | |
9 | type issue = { id : int, usr : int, cat : int, title : string, priv : bool, status : status, stamp : Init.C.timestamp } | |
10 | type post = { id : int, usr : int, iss : int, body : string, stamp : Init.C.timestamp } | |
11 | type subscription = { usr : int, cat : int } | |
12 | ||
13 | val lookupCategory : int -> category | |
14 | val listCategories : unit -> category list | |
15 | val listCategoriesWithSubscriptions : int -> (bool * category) list | |
16 | val addCategory : int * string * string -> int | |
17 | val modCategory : category -> unit | |
18 | val deleteCategory : int -> unit | |
19 | ||
20 | val lookupIssue : int -> issue | |
21 | val listIssues : unit -> issue list | |
1cb3df3f AC |
22 | val listCategoryIssues : int -> issue list |
23 | val listOpenCategoryIssues : int * int -> issue list | |
24 | val listOpenCategoryIssuesAdmin : int -> issue list | |
5a2812ca AC |
25 | val addIssue : int * int * string * bool * status -> int |
26 | val modIssue : issue -> unit | |
27 | val deleteIssue : int -> unit | |
28 | ||
29 | val lookupPost : int -> post | |
edeb626e | 30 | val listPosts : int -> (string * post) list |
5a2812ca AC |
31 | val addPost : int * int * string -> int |
32 | val modPost : post -> unit | |
33 | val deletePost : int -> unit | |
34 | ||
35 | val subscribed : subscription -> bool | |
36 | val subscribe : subscription -> unit | |
37 | val unsubscribe : subscription -> unit | |
1cb3df3f AC |
38 | |
39 | val validTitle : string -> bool | |
edeb626e AC |
40 | val allowedToSee : int -> bool |
41 | val allowedToEdit : int -> bool | |
42 | ||
43 | val notifyCreation : int -> bool | |
44 | val notifyPost : int -> bool | |
45 | val notifyStatus : int * status * status * int -> bool | |
5a2812ca | 46 | end |