]> git.ozlabs.org Git - ccan/blob - web/requestid.php
web: handle symlinks in bzrbrowse.cgi, fix images.
[ccan] / web / requestid.php
1 <?php
2 session_start();
3 include('logo.html');
4 include('menulist.html');
5 include('configuration');
6 include('functions.php');
7
8 if(isset($_POST['submit'])) {
9         $name = $_REQUEST['name'];
10         $email = $_REQUEST['email'];
11         $website = $_REQUEST['website'];
12         $accountid = $_REQUEST['accountid'];
13         $description = $_REQUEST['description'];
14         if(trim($name) == '') {
15                 $errmsg = 'Please enter your name';
16         }
17         else if(trim($email) == '') {
18                 $errmsg = 'Please enter your email address';
19         }
20         else if(!isEmail($email)) {
21                 $errmsg = 'Your email address is not valid';
22         }
23         else if(trim($accountid) == '') {
24                 $errmsg = 'Please enter your account id';
25         }       
26         else if(strlen($accountid) < 4 || strlen($accountid) > 16)      {
27                 $errmsg = 'account id should have length between 4 and 16';
28         }
29         else if(trim($accountid) != '') {
30                 $handle = sqlite3_open($db) or die("Could not open database");
31                 $query = "SELECT * FROM users where username=\"$accountid\"";
32                 $result = sqlite3_query($handle, $query) or die("Error in query: ".sqlite3_error($handle));
33                 
34                 if (($row = sqlite3_fetch_array($result)) != '') { 
35                         $errmsg = 'Desired id already exist. Please enter different Desired id.';
36                 }
37         } 
38         else if(trim($description) == '') {
39                 $errmsg = 'Please enter your description';
40         }
41         else if(strlen($description) < 20) {
42                 $errmsg = 'Description should atleast be 20 characters';        
43         }
44 }
45  
46 if(trim($errmsg) != '' || !isset($_POST['submit'])) {
47 ?>
48                 <h3 class="firstheader" align="center">Request CCAN account</h3> 
49                 <div align="center" class="errmsg"><font color="RED"><?=$errmsg;?></font></div>
50                 <form method="post" action="requestid.php">
51                 <table align="center" width="70%" border="0" bgcolor="999999" cellpadding="4" cellspacing="1">
52                 <tr align="left" bgcolor="lightgray">
53                 <td> <p>Full name: </p> <p><input name="name" type="text" value="<?=$name;?>"/></p> </td>
54                 </tr>
55                 <tr align="left" bgcolor="silver">
56                 <td> <p>Email: </p>     <p><input name="email" type="text" value="<?=$email;?>"/> <br /></p>    </td>
57                 </tr>
58                 <tr align="left" bgcolor="lightgray">
59                 <td> <p>Desired ID: </p><p><input name="accountid" type="text" value="<?=$accountid;?>"/><br /></p></td>
60                 </tr>
61                 <tr align="left" bgcolor="silver">
62                 <td><p> Web Site[Optional]: </p><p><input name="website" type="text" value="<?=$website;?>"/><br /></p></td>
63                 </tr>
64                 <tr align="left" bgcolor="lightgray">
65                 <td><p> A short description of what you are planning to contribute: </p>
66                         <p><textarea name="description" rows="10" cols="70" value="<?=$description;?>"> </textarea></p>
67                 </td>
68                 </tr>
69                 <tr align="center">
70                 <td> <input type="submit" name="submit" value="Request Account"/> </td>
71                 </tr>
72                 </table>
73                 </form><hr>
74 <?php
75 }
76
77 else {
78 $handle = sqlite3_open($db) or die("Could not open database");
79 $query = "insert into users values(\"".$name."\",\"".$email."\",\"".$accountid."\",\"".$website."\",\"".$description."\",\"false\" ,\"false\")";
80 $result = sqlite3_exec($handle, $query) or die("Error in query: ".sqlite3_error($handle));
81
82 $subject = "Approval of ccan account";
83 $message = "There is new request for ccan account id.\n\n Please use the following link to approve http://ccan.ozlabs.org/dinesh/approval.php?accountid=".$accountid;
84 mail(getccanadmin($db), $subject, $message, "From: $email");
85 ?>
86         </br><div>Thank you for registering with CCAN. You will get the password to your mail after approval.</div>
87 <?php
88 }
89
90 function isEmail($email)
91 {
92         return(preg_match("/^[-_.[:alnum:]]+@((([[:alnum:]]|[[:alnum:]][[:alnum:]-]*[[:alnum:]])\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)$|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i"
93                         ,$email));
94 }
95 ?>