Fixing problems various in membership application and addition
[bpt/portal.git] / app / join.mlt
CommitLineData
a90da8b1
AC
1<% @header [("title", ["Apply for membership"])] %>
2
3<% if $"cmd" = "app" then
f3f3ad24 4 val minor = $"minor" <> "";
a90da8b1
AC
5 val name = $"name";
6 val rname = $"rname";
f3f3ad24 7 val gname = $"gname";
a90da8b1
AC
8 val email = $"email";
9 val forward = $"forward" <> "on";
10 val uses = $"uses";
11 val other = $"other";
12
f3f3ad24 13 if $"agree" <> "on" then
336c1154 14 %><h3>You must accept the Terms of Service!</h3><%
f3f3ad24 15 elseif name = "" then
336c1154 16 %><h3>Please enter a username</h3><%
a90da8b1 17 elseif rname = "" then
336c1154 18 %><h3>Please enter the potential member's name</h3><%
f3f3ad24 19 elseif (iff minor then gname = "" else false) then
336c1154 20 %><h3>Please enter your name, as legal guardian<b></h3><%
a90da8b1 21 elseif email = "" then
336c1154 22 %><h3>Please enter your contact e-mail address</h3><%
a90da8b1 23 elseif uses = "" then
336c1154 24 %><h3>Please enter your proposed uses</h3><%
96bd398e 25 elseif not (App.validUsername name) then
336c1154 26 %><h3>Invalid requested username</h3><%
a90da8b1 27 elseif App.userExists name then
336c1154 28 %><h3>That username is already in use.</b><h3><%
a90da8b1 29 elseif not (App.validEmail email) then
336c1154 30 %><h3>Invalid e-mail address</h3><%
eea7b531 31 else switch App.apply { name = name, rname = rname, email = email,
a2d53da2 32 gname = (case gname of "" => NONE | _ => SOME gname),
d5f8418b
AC
33 forward = forward, uses = uses, other = other,
34 paypal = (case $"paypal" of "" => NONE | s => SOME s),
35 checkout = (case $"checkout" of "" => NONE | s => SOME s) } of
eea7b531
AC
36 NONE => %><h3>Error sending confirmation e-mail</h3><%
37 | SOME unix_passwd =>
38 %><h3>Application recorded</h3>
0c4ae840 39 Check your e-mail for a message with further instructions. <h1>Save this password to use to access your new account if your application is approved</h1>:
eea7b531
AC
40 <blockquote><tt><% Web.html unix_passwd %></tt></blockquote><%
41 end
a90da8b1 42 end
f3f3ad24
AC
43else
44 val minor = $"minor" <> "" %>
a90da8b1
AC
45
46<form action="join" method="post">
47<input type="hidden" name="cmd" value="app">
336c1154 48<table class="blanks">
807e73d0
AC
49<tr> <td width="25%">Desired username:</td> <td width="75%"><input name="name"><br>
50 Please 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.<br>
51 You don't need to worry about whether or not the username you want is already taken. This application system will let you know if that is the case. You can probably use a shorter and simpler name than you are accustomed to getting at larger services, so we encourage you to try such names first.</td> </tr>
52<tr> <td>&nbsp;</td> <td>&nbsp;</td> </tr>
f3f3ad24 53<% if minor then %>
807e73d0
AC
54<tr> <td>New member's "real" name:</td> <td><input name="rname" size="50"></td> </tr>
55<tr> <td>Legal guardian's name:</td> <td><input name="gname"><br> Please enter your full name, as you would on a normal, legally binding contract.</td></tr>
f3f3ad24 56<% else %>
807e73d0 57<tr> <td>Your "real" name:</td> <td><input name="rname"><br> Please enter your full name, as you would on a normal, legally binding contract.</td></tr>
f3f3ad24 58<% end %>
807e73d0 59<tr> <td>&nbsp;</td> <td>&nbsp;</td> </tr>
d5f8418b 60<tr> <td>Contact e-mail address</td> <td><input name="email" size="50"></td> </tr>
807e73d0 61<tr> <td>&nbsp;</td> <td>&nbsp;</td> </tr>
d5f8418b
AC
62<tr> <td><a href="http://www.paypal.com/">PayPal</a> account e-mail:</td> <td><input name="paypal" size="50"></td> </tr>
63<tr> <td><a href="http://checkout.google.com/">Google Checkout</a> account e-mail:</td> <td><input name="checkout" size="50"><br>
64 These payment service provider e-mail addresses are optional. You will probably end up using one or the other of these providers if your application is approved, and entering here the e-mail address that you've used to sign up with that provider will help us process your payment accurately and promptly. E-mail addresses you enter here should match those seen by recipients of payments that you send.</td> </tr>
807e73d0 65<tr> <td>&nbsp;</td> <td>&nbsp;</td> </tr>
d5f8418b 66<tr> <td><input type="checkbox" name="forward"></td> <td>Check this box if you would like to use HCoop as your primary e-mail provider.<br>
f0fc5bd9 67 If you don't select this option and you are approved to join, e-mail to your HCoop account will be forwarded to the contact address you provided above (without preserving a local copy on HCoop servers).<br>
d5f8418b 68 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>
807e73d0 69<tr> <td>&nbsp;</td> <td>&nbsp;</td> </tr>
d5f8418b 70<tr> <td>How do you plan to use a HCoop membership?</td> <td><textarea name="uses" rows="5" cols="80" wrap="soft"></textarea></td> </tr>
336c1154 71<tr> <td>Any other information about yourself</td> <td><textarea name="other" rows="5" cols="80" wrap="soft"></textarea></td> </tr>
a90da8b1 72</table>
f3f3ad24 73
1d2cae17
AC
74<br><hr><br>
75
76You must agree to the following terms to be considered for membership:
77
f3f3ad24
AC
78<h2><b>Terms of Service Agreement</b></h2>
79
80<% App.readTosBody () %>
81
82<br><hr><br>
83
84<input type="checkbox" name="agree">
85<% if minor then App.readTosMinorAgree () else App.readTosAgree () end %>
86
87<br><br><input type="submit" value="Apply">
88
a90da8b1
AC
89</form>
90
91<% end %>
92
807e73d0 93<% @footer[] %>