369e1577 |
1 | <% @header[("title", ["Contact information"])]; |
46b0c2df |
2 | |
369e1577 |
3 | ref showNormal = true; |
46b0c2df |
4 | |
369e1577 |
5 | if $"cmd" = "add" then |
6 | val id = Contact.addContact (Init.getUserId(), Web.stoi ($"knd"), $"v", Contact.privFromInt (Web.stoi ($"priv"))) %> |
1fe415e0 |
7 | <h3>Contact added</h3> |
45f95cf5 |
8 | |
9 | <% elseif $"mod" <> "" then |
10 | showNormal := false; |
11 | val id = Web.stoi ($"mod"); |
12 | val cont = Contact.lookupContact id %> |
13 | |
1fe415e0 |
14 | <h3>Modify contact entry</h3> |
45f95cf5 |
15 | |
add44c00 |
16 | <form action="contact" method="post"> |
45f95cf5 |
17 | <input type="hidden" name="save" value="<% id %>"> |
1fe415e0 |
18 | <table class="blanks"> |
19 | <tr> <td>Kind:</td> <td><select name="knd"> |
45f95cf5 |
20 | <% foreach kind in Contact.listKinds () do %> |
21 | <option value="<% #id kind %>"<% if #knd cont = #id kind then %> selected<% end %>><% Web.html (#name kind) %></option> |
22 | <% end %> |
23 | </select></td> </tr> |
1fe415e0 |
24 | <tr> <td>Value:</td> <td><input name="v" value="<% Web.html (#v cont) %>"></td> </tr> |
25 | <tr> <td>Readable by:</td> <td><select name="priv"> |
45f95cf5 |
26 | <option value="0"<% if #priv cont = Contact.PUBLIC then %> selected<% end %>>Anyone</option> |
27 | <option value="1"<% if #priv cont = Contact.MEMBERS then %> selected<% end %>>Members only</option> |
28 | <option value="2"<% if #priv cont = Contact.ADMINS then %> selected<% end %>>Admins only</option> |
29 | </select></td> </tr> |
30 | <tr> <td><input type="submit" value="Save"></td> </tr> |
31 | </table> |
32 | </form> |
33 | |
34 | <% elseif $"save" <> "" then |
35 | val id = Web.stoi ($"save"); |
36 | val cont = Contact.lookupContact id; |
37 | Contact.modContact {cont with knd = Web.stoi ($"knd"), v = $"v", priv = Contact.privFromInt (Web.stoi ($"priv"))} %> |
1fe415e0 |
38 | <h3>Contact entry saved</h3> |
45f95cf5 |
39 | |
40 | <% elseif $"del" <> "" then |
41 | showNormal := false; |
42 | val id = Web.stoi ($"del"); |
43 | val cont = Contact.lookupContact id %> |
1fe415e0 |
44 | <h3>Are you sure you want to delete contact entry "<% Web.html (#v cont) %>"?</h3> |
45f95cf5 |
45 | <a href="contact?del2=<% id %>">Yes, delete "<% Web.html (#v cont) %>"!</a> |
46 | |
47 | <% elseif $"del2" <> "" then |
48 | val id = Web.stoi ($"del2"); |
49 | val cont = Contact.lookupContact id; |
50 | Contact.deleteContact id %> |
1fe415e0 |
51 | <h3>Contact entry "<% Web.html (#v cont) %>" deleted</h3> |
45f95cf5 |
52 | |
369e1577 |
53 | <% end; |
54 | |
55 | if showNormal then %> |
56 | |
1fe415e0 |
57 | <h3>Add new contact information</h3> |
369e1577 |
58 | |
add44c00 |
59 | <form action="contact" method="post"> |
369e1577 |
60 | <input type="hidden" name="cmd" value="add"> |
1fe415e0 |
61 | <table class="blanks"> |
62 | <tr> <td>Kind:</td> <td><select name="knd"> |
369e1577 |
63 | <% foreach kind in Contact.listKinds () do %> |
64 | <option value="<% #id kind %>"><% Web.html (#name kind) %></option> |
65 | <% end %> |
66 | </select></td> </tr> |
1fe415e0 |
67 | <tr> <td>Value:</td> <td><input name="v"></td> </tr> |
68 | <tr> <td>Readable by:</td> <td><select name="priv"> |
369e1577 |
69 | <option value="0">Anyone</option> |
70 | <option value="1" selected>Members only</option> |
71 | <option value="2">Admins only</option> |
72 | </select></td> </tr> |
73 | <tr> <td><input type="submit" value="Add"></td> </tr> |
74 | </table> |
75 | </form> |
76 | |
1fe415e0 |
77 | <h3>Your contact information</h3> |
369e1577 |
78 | |
1fe415e0 |
79 | <table class="blanks"> |
369e1577 |
80 | <% foreach (kind, cont) in Contact.listUserContacts (Init.getUserId(), Contact.ADMINS) do %> |
1fe415e0 |
81 | <tr> <td><% Web.html (#name kind) %>:</td> |
45f95cf5 |
82 | <td><% Contact.format (kind, cont) %></td> |
83 | <td><i><% switch #priv cont of |
84 | Contact.PUBLIC => %>Public<% |
85 | | Contact.MEMBERS => %>Members only<% |
86 | | Contact.ADMINS => %>Admins only<% |
87 | end %></i></td> |
88 | <td><a href="contact?mod=<% #id cont %>">[Modify]</a> <a href="contact?del=<% #id cont %>">[Delete]</a></tr> |
369e1577 |
89 | <% end %> |
90 | </table> |
91 | |
92 | <% end %> |
46b0c2df |
93 | |
94 | <% @footer[] %> |