payment: note that Stripe has instituted an additional 1% fee for non-US cards
[hcoop/portal.git] / contact.mlt
CommitLineData
ee587f7f 1<% @header[("title", ["Contact information"])];
d6223be9 2
ee587f7f 3ref showNormal = true;
d6223be9 4
ee587f7f
AC
5if $"cmd" = "add" then
6 val id = Contact.addContact (Init.getUserId(), Web.stoi ($"knd"), $"v", Contact.privFromInt (Web.stoi ($"priv"))) %>
b6dd1aaf 7 <h3>Contact added</h3>
6e8dc436
AC
8
9<% elseif $"mod" <> "" then
10 showNormal := false;
11 val id = Web.stoi ($"mod");
12 val cont = Contact.lookupContact id %>
13
b6dd1aaf 14<h3>Modify contact entry</h3>
6e8dc436 15
a4ccdb5e 16<form action="contact" method="post">
6e8dc436 17<input type="hidden" name="save" value="<% id %>">
b6dd1aaf
AC
18<table class="blanks">
19<tr> <td>Kind:</td> <td><select name="knd">
6e8dc436
AC
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>
b6dd1aaf
AC
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">
6e8dc436
AC
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"))} %>
b6dd1aaf 38 <h3>Contact entry saved</h3>
6e8dc436
AC
39
40<% elseif $"del" <> "" then
41 showNormal := false;
42 val id = Web.stoi ($"del");
43 val cont = Contact.lookupContact id %>
b6dd1aaf 44 <h3>Are you sure you want to delete contact entry "<% Web.html (#v cont) %>"?</h3>
6e8dc436
AC
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 %>
b6dd1aaf 51 <h3>Contact entry "<% Web.html (#v cont) %>" deleted</h3>
6e8dc436 52
ee587f7f
AC
53<% end;
54
55if showNormal then %>
56
b6dd1aaf 57<h3>Add new contact information</h3>
ee587f7f 58
a4ccdb5e 59<form action="contact" method="post">
ee587f7f 60<input type="hidden" name="cmd" value="add">
b6dd1aaf
AC
61<table class="blanks">
62<tr> <td>Kind:</td> <td><select name="knd">
ee587f7f
AC
63<% foreach kind in Contact.listKinds () do %>
64 <option value="<% #id kind %>"><% Web.html (#name kind) %></option>
65<% end %>
66</select></td> </tr>
10e55875 67<tr> <td>Value:</td> <td><input name="v" required="required"></td> </tr>
b6dd1aaf 68<tr> <td>Readable by:</td> <td><select name="priv">
ee587f7f
AC
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
b6dd1aaf 77<h3>Your contact information</h3>
ee587f7f 78
b6dd1aaf 79<table class="blanks">
ee587f7f 80<% foreach (kind, cont) in Contact.listUserContacts (Init.getUserId(), Contact.ADMINS) do %>
b6dd1aaf 81 <tr> <td><% Web.html (#name kind) %>:</td>
6e8dc436
AC
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>
ee587f7f
AC
89<% end %>
90</table>
91
92<% end %>
d6223be9
AC
93
94<% @footer[] %>