payment: note that Stripe has instituted an additional 1% fee for non-US cards
[hcoop/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>
b7b8862b 39 Check your e-mail for a message with further instructions.
f8f485d8 40 <div class="warning">
b7b8862b 41 <h1>Initial Password</h1>
10e55875
CE
42 <h2>Save this password to access your new account if your application is approved:</h2>
43 <blockquote><tt style="font-size: larger;"><% Web.html unix_passwd %></tt></blockquote>
b7b8862b
CE
44
45 <p>The above password is the initial password for your
46 account and should be changed upon first login. If you
47 lose the password, <strong>you will be unable to access
48 your new account</strong> without admin intervention.</p>
49
50 </div>
017059c4
AC
51 <p><b>If you don't receive a confirmation e-mail message</b>, then something is wrong, and don't expect any further progress to be made on your application unless you contact <a href="mailto:admins@hcoop.net">admins@hcoop.net</a> describing the problem. Before doing so, make sure our confirmation message didn't end up filtered as "spam."</p>
52 <% end
a90da8b1 53 end
f3f3ad24
AC
54else
55 val minor = $"minor" <> "" %>
a90da8b1
AC
56
57<form action="join" method="post">
58<input type="hidden" name="cmd" value="app">
ee549ad1 59
336c1154 60<table class="blanks">
c42ac4e0
CE
61<tr> <td width="25%">Desired username:</td> <td width="75%"><input name="name" max="12" min="2" type="text" required="required"><br>
62 Please follow usual UNIX conventions, including limiting yourself to lowercase letters and between 2 and 12 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>
807e73d0
AC
63 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>
64<tr> <td>&nbsp;</td> <td>&nbsp;</td> </tr>
f3f3ad24 65<% if minor then %>
ee549ad1
CE
66<tr> <td>New member's "real" name:</td> <td><input name="rname" size="50" required="required"></td> </tr>
67<tr> <td>Legal guardian's name:</td> <td><input name="gname" required="required"><br> Please enter your full name, as you would on a normal, legally binding contract.</td></tr>
f3f3ad24 68<% else %>
ee549ad1 69<tr> <td>Your "real" name:</td> <td><input name="rname" required="required"><br> Please enter your full name, as you would on a normal, legally binding contract.</td></tr>
f3f3ad24 70<% end %>
807e73d0 71<tr> <td>&nbsp;</td> <td>&nbsp;</td> </tr>
ee549ad1
CE
72<tr> <td>Contact e-mail address</td> <td><input name="email" required="required"
73 size="50" type="email"> <span style="color:red">If you are using GMail
13f4f111
CE
74 whitelist <tt>join@hcoop.net</tt> to ensure receipt of the
75 confirmation message.</span></td> </tr>
807e73d0 76<tr> <td>&nbsp;</td> <td>&nbsp;</td> </tr>
ee549ad1 77<tr> <td><a href="http://www.paypal.com/">PayPal</a> account e-mail:</td> <td><input name="paypal" size="50">
d5f8418b 78 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 79<tr> <td>&nbsp;</td> <td>&nbsp;</td> </tr>
d5f8418b 80<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 81 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 82 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 83<tr> <td>&nbsp;</td> <td>&nbsp;</td> </tr>
ee549ad1 84<tr> <td>How do you plan to use a HCoop membership?</td> <td><textarea name="uses" rows="5" cols="80" wrap="soft" required="required"></textarea></td> </tr>
336c1154 85<tr> <td>Any other information about yourself</td> <td><textarea name="other" rows="5" cols="80" wrap="soft"></textarea></td> </tr>
a90da8b1 86</table>
f3f3ad24 87
1d2cae17
AC
88<br><hr><br>
89
90You must agree to the following terms to be considered for membership:
91
f3f3ad24
AC
92<h2><b>Terms of Service Agreement</b></h2>
93
94<% App.readTosBody () %>
95
96<br><hr><br>
97
ee549ad1 98<input type="checkbox" name="agree" required="required">
f3f3ad24
AC
99<% if minor then App.readTosMinorAgree () else App.readTosAgree () end %>
100
101<br><br><input type="submit" value="Apply">
102
a90da8b1
AC
103</form>
104
105<% end %>
106
807e73d0 107<% @footer[] %>