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