Low balance reminders
[hcoop/zz_old/portal.git] / app / join.mlt
CommitLineData
20a679fc 1<% @header [("title", ["Apply for membership"])] %>
2
3<% if $"cmd" = "app" then
5146e435 4 val minor = $"minor" <> "";
20a679fc 5 val name = $"name";
6 val rname = $"rname";
5146e435 7 val gname = $"gname";
20a679fc 8 val email = $"email";
9 val forward = $"forward" <> "on";
10 val uses = $"uses";
11 val other = $"other";
12
5146e435 13 if $"agree" <> "on" then
14 %><h3><b>You must accept the Terms of Service!</b></h3><%
15 elseif name = "" then
20a679fc 16 %><h3><b>Please enter a username</b></h3><%
17 elseif rname = "" then
5146e435 18 %><h3><b>Please enter the potential member's name</b></h3><%
19 elseif (iff minor then gname = "" else false) then
20 %><h3><b>Please enter your name, as legal guardian<b></h3><%
20a679fc 21 elseif email = "" then
22 %><h3><b>Please enter your contact e-mail address</b></h3><%
23 elseif uses = "" then
24 %><h3><b>Please enter your proposed uses</b></h3><%
25 elseif not (App.validUser name) then
26 %><h3><b>Invalid requested username</b></h3><%
27 elseif App.userExists name then
28 %><h3><b>That username is already in use.</b><h3><%
29 elseif not (App.validEmail email) then
30 %><h3><b>Invalid e-mail address</b></h3><%
31 elseif not (App.apply { name = name, rname = rname, email = email,
5146e435 32 gname = (case gname of "" => NONE | _ => SOME gname),
20a679fc 33 forward = forward, uses = uses, other = other }) then
34 %><h3><b>Error sending confirmation e-mail</b></h3><%
35 else
36 %><h3><b>Application recorded</b></h3>
37 Check your e-mail for a message with further instructions.<%
38 end
5146e435 39else
40 val minor = $"minor" <> "" %>
20a679fc 41
42<form action="join" method="post">
43<input type="hidden" name="cmd" value="app">
44<table>
45<tr> <td align="right" valign="top"><b>Desired username</b>:</td> <td><input name="name"><br>
fd650826 46 You should follow usual UNIX conventions, including limiting yourself to lowercase letters and at most 8 characters. It's helpful to pick a name you wouldn't mind using to identify yourself to both strangers and friends. Something based on your "real" name is a safe bet.</td> </tr>
5146e435 47<% if minor then %>
48<tr> <td align="right"><b>New member's "real" name</b>:</td> <td><input name="rname"></td> </tr>
49<tr> <td align="right"><b>Legal guardian's name</b>:</td> <td><input name="gname"></td> </tr>
50<% else %>
20a679fc 51<tr> <td align="right"><b>Your "real" name</b>:</td> <td><input name="rname"></td> </tr>
5146e435 52<% end %>
20a679fc 53<tr> <td align="right"><b>Contact e-mail address</b></td> <td><input name="email"></td> </tr>
54<tr> <td align="right" valign="top"><input type="checkbox" name="forward"></td> <td>Check this box if you would like to use hcoop as your primary e-mail provider.<br>
55 If you don't select this option and you are approved to join, e-mail to your account will be forwarded to the address you provide here.<br>
5146e435 56 You can change this option later, but we'll probably have helpful things to e-mail you as soon as you join. It's important that we be able to reach members reliably, so please don't decide to use us as your primary e-mail provider unless you can commit to checking your hcoop mailbox just as often as any other personal accounts you have.</td> </tr>
20a679fc 57<tr> <td align="right" valign="top"><b>How do you plan to use a hcoop membership?</b></td> <td><textarea name="uses" rows="5" cols="80" wrap="soft"></textarea></td> </tr>
58<tr> <td align="right" valign="top"><b>Any other information about yourself</b></td> <td><textarea name="other" rows="5" cols="80" wrap="soft"></textarea></td> </tr>
20a679fc 59</table>
5146e435 60
fd650826 61<br><hr><br>
62
63You must agree to the following terms to be considered for membership:
64
5146e435 65<h2><b>Terms of Service Agreement</b></h2>
66
67<% App.readTosBody () %>
68
69<br><hr><br>
70
71<input type="checkbox" name="agree">
72<% if minor then App.readTosMinorAgree () else App.readTosAgree () end %>
73
74<br><br><input type="submit" value="Apply">
75
20a679fc 76</form>
77
78<% end %>
79
80<% @footer[] %>