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