Commit | Line | Data |
---|---|---|
7fe9f9f1 | 1 | <?php\r |
2 | function register() {\r | |
3 | global $db, $error;\r | |
4 | \r | |
5 | $content = mysql_real_escape_string(strip_tags(trim($_POST['reg_content'])));\r | |
6 | $email = mysql_real_escape_string(strip_tags(trim($_POST['reg_email'])));\r | |
7 | $login = mysql_real_escape_string(strip_tags(trim($_POST['reg_login'])));\r | |
945c8fc4 | 8 | $xmpp = mysql_real_escape_string(strtolower(strip_tags(trim($_POST['reg_login']))));\r |
7fe9f9f1 | 9 | $pass = mysql_real_escape_string($_POST['reg_pass']);\r |
10 | $pass2 = mysql_real_escape_string($_POST['reg_pass2']);\r | |
11 | \r | |
12 | if (empty($login)) {\r | |
13 | $error = 'please enter your nick name';\r | |
14 | return false;\r | |
15 | }\r | |
16 | elseif (empty($email)) {\r | |
17 | $error = 'please enter your email address';\r | |
18 | return false;\r | |
19 | }\r | |
20 | elseif (preg_match('/^(.+?)@(.+?)\.([a-z]{2,4})$/', $email) == false) {\r | |
21 | $error = 'please enter correct mail';\r | |
22 | return false;\r | |
23 | }\r | |
24 | elseif (empty($content)) {\r | |
25 | $error = 'please write something about you';\r | |
26 | return false;\r | |
27 | }\r | |
28 | elseif (strlen($pass) < 5) {\r | |
29 | $error = 'password toooooooo short, (<5)';\r | |
30 | return false;\r | |
31 | }\r | |
32 | elseif ($pass != $pass2) {\r | |
33 | $error = 'passwords do not match';\r | |
34 | return false;\r | |
35 | }\r | |
36 | \r | |
37 | $set = $db->query(sprintf('select login from users where \r | |
945c8fc4 | 38 | login = "%s" or email = "%s" or xmpp = "%s"', $login, $email, $xmpp));\r |
7fe9f9f1 | 39 | if ($set->getNumRows() > 0) {\r |
945c8fc4 | 40 | $error = sprintf('No-no, user with this nick/email is already registered');\r |
7fe9f9f1 | 41 | return false;\r |
42 | }\r | |
43 | \r | |
1b5b2327 | 44 | // registration clause // XXX hard coded, registration text\r |
8630d217 | 45 | $qr_rc = $db->query('select node_content from nodes where node_id = '.REGISTRATION_TEXT_NODE);\r |
7fe9f9f1 | 46 | $qr_rc->next();\r |
47 | \r | |
48 | $params['node_content'] = sprintf('<i>%s</i><br />%s<br />\r | |
49 | E-mail address:: %s',\r | |
50 | $qr_rc->getString('node_content'),\r | |
51 | $content,\r | |
52 | $email);\r | |
53 | // XXX hard-coded\r | |
8630d217 | 54 | $params['node_parent'] = UNVERIFIED_REGISTRATIONS_NODE; // registrations_noverified forum\r |
7fe9f9f1 | 55 | $params['node_name'] = 'request for access';\r |
56 | $params['flag'] = 'registration';\r | |
57 | $user_id = nodes::addNode($params);\r | |
58 | $q = sprintf('update nodes set node_system_access = "private" where node_id = %d', $user_id);\r | |
59 | $db->update($q);\r | |
60 | \r | |
61 | $pass = md5($pass);\r | |
62 | $vercode = substr( md5( uniqid( rand() ) ), rand(0, 7), 23);\r | |
63 | $q = sprintf('insert into users set password = "%s", user_id = %d,\r | |
64 | header_id = 2091520, login = "%s", email = "%s",\r | |
945c8fc4 H |
65 | hash = "%s", xmpp="%s"',\r |
66 | $pass, $user_id, $login, $email, $vercode, $xmpp);\r | |
7fe9f9f1 | 67 | $db->query($q); // XXX rewrite\r |
68 | $emailtext = sprintf(\r | |
69 | 'Vitaj %s! Prave som sa s radostou dozvedel, ze si vyplnil(a)\r | |
1b5b2327 | 70 | registracny formular na stranke '.SYSTEM_URL.' a chces sa stat\r |
7fe9f9f1 | 71 | clenom tejto komunity.\r |
72 | Budem sa snazit urobit tento pokec trosku dlhsi,\r | |
73 | lebo v povodnej kratkej forme ho pohlcuju spamfiltre, takze\r | |
74 | ospravedln nasledujuce blabla a moj typicky atypicky zmysel\r | |
75 | pre cierny humor, kedze sluzi ku dobrej veci :)\r | |
76 | Pri registracii ti bol prideleny verifikacny kod.\r | |
77 | Ten kod znie "%s" [bez uvodzoviek].\r | |
1b5b2327 | 78 | Ten musis zadat na adresu '.SYSTEM_URL.'/id/1976899/, kde \r |
7fe9f9f1 | 79 | vyplnis formular s tvojim nickom a verifkacnym kodom.\r |
80 | Od tej chvile bude tvoja ziadost volne pristupna\r | |
81 | uz zaregistrovanym clenom, ktori o nej budu hlasovat.\r | |
4b313ce7 | 82 | Pocet hlasov aby sa ziadosti vyhovelo je x.\r |
7fe9f9f1 | 83 | Deadline na nazbieranie je 1 tyzden.\r |
84 | Takze fakticky dufam ze si o sebe napisal(a) nieco inteligentne :)\r | |
85 | \r | |
86 | Prajem pekny zvysok dna',\r | |
87 | $login, $vercode);\r | |
88 | // edit by br\r | |
89 | $headers = 'From: kyberia@'. SYSTEM_URL . "\r\n" . 'X-Mailer: PHP';\r | |
90 | mail($email, SYSTEM_URL.' verification code', $emailtext, $headers);\r | |
91 | $error = '<h2>Request saved, verification code sent, please check your e-mail.<h2>';\r | |
92 | \r | |
93 | return false;\r | |
94 | }\r | |
95 | ?>\r |