2 error_reporting(E_ERROR | E_PARSE);
4 require_once(
"./basicstrap.php");
10 $log=$logman->getSignedUser();
12 'called'=>$_POST[
'atype'],
13 'date'=>date(
'Y-m-d'),
16 if($_POST[
'atype']!=
'')
20 switch($ajax[
'atype'])
23 $logman->openTable(
'users');
24 if(filter_var($ajax[$ajax[
'atype'].
'email'],FILTER_VALIDATE_EMAIL))
26 $status[
'user']=$logman->output(
"`login`='".strtolower($ajax[$ajax[
'atype'].
'email']).
"' AND `pass`=MD5('".$ajax[$ajax[
'atype'].
'pass'].
"')",
"`id` ASC",1);
27 if($status[
'user'][
'line'][1][0]>0)
29 $status[
'status']=
'authorized';
32 $_SESSION[
'userid']=$status[
'user'][
'line'][1][0];
33 $_SESSION[
'login']=$status[
'user'][
'line'][1][3];
34 $_SESSION[
'email']=$status[
'user'][
'line'][1][5];
35 $_SESSION[
'perm']=$status[
'user'][
'line'][1][8];
36 $_SESSION[
'sessionid']=session_id();
37 $_SESSION[
'start']=date(
'Y-m-d H:i:s');
38 if($status[
'user'][
'line'][1][1]==
'first_use')
40 $_SESSION[
'tutorial']=
true;
44 $_SESSION[
'tutorial']=
false;
46 $logman->update(
'`id`='.$status[
'user'][
'line'][1][0],
"`sign`='".$_SESSION[
'sessionid'].
"'");
50 $status[
'status'] =
'unauthorized';
51 $status[
'code'] = 404;
54 $status[
'status'] =
'invalid';
55 $status[
'code'] = 403;
59 $logman->openTable(
'users');
60 if(filter_var($_POST[$ajax[
'atype'].
'email'], FILTER_VALIDATE_EMAIL))
62 if($_POST[$ajax[
'atype'].
'pass']===$_POST[$ajax[
'atype'].
'rtp'])
64 $status[
'user']=$logman->output(
"`login`='".strtolower($ajax[$ajax[
'atype'].
'email']).
"'",
"`id` ASC",1);
65 if(empty($status[
'user'][
'line'][1][0]))
68 $name = explode(
" ",$_POST[$ajax[
'atype'].
'fullname']);
69 $logman->insert(
"'first_use',0,'" . strtolower($_POST[$ajax[
'atype'].
'email']) .
"',MD5('" . $_POST[$ajax[
'atype'].
'pass'] .
"'),'" . strtolower($_POST[$ajax[
'atype'].
'email']) .
"','" . $logman->clean(ucwords(strtolower($name[0]))) .
"','" . $logman->clean(ucwords(strtolower($name[1]))) .
"',1000,'" . $log[
'external_ip'] .
":" . $log[
'port'] .
"','" . $log[
'agent'] .
"',DATE(NOW()),TIME(NOW())");
70 $status[
'status'] =
'ok';
71 $status[
'code'] = 200;
72 }
catch (Exception $e) {
73 $status[
'status'] =
'failed';
74 $status[
'code'] = 417;
79 $status[
'status'] =
'exist';
80 $status[
'code'] = 409;
85 $status[
'status'] =
'conflict pass retype';
86 $status[
'code'] = 409.1;
89 $status[
'status'] =
'invalid';
90 $status[
'code'] = 403;
94 $_POST[
'email']=$_POST[$ajax[
'atype'].
'email'];
95 $status=$logman->forgot();
96 if($status[
'code']===200)
98 $log=$logman->getSignedUser();
99 $logman->openTable(
'users');
100 $logman->update(
"`email`='{$_POST['email']}'",
"`sign`='change_pass',`pass`=MD5('{$status['confirm-code']}'),`ip`='".$log[
'external_ip'].
":".$log[
'port'].
"',`agent`='".$log[
'agent'].
"',`date`='".$status[
'date'].
"',`time`='".$status[
'time'].
"'");
101 $email->to($_POST[
'email']);
102 $email->from(
'info@'.$_SERVER[
'SERVER_NAME']);
103 $email->subject(
'New password - '.$_SERVER[
'SERVER_NAME']);
105 $emailhead->encode();
106 $email->body($emailhead->save().
"<body><p>Hello {$_POST['email']},</p><p>your new password is <b>{$status['confirm-code']}</b>.</p></body></html>");
110 case 'install::first_info':
112 case 'install::automatic_validation':
114 case 'install::create_fs':
116 case 'install::create_db':
120 $status[
'status'] =
'not acceptable';
121 $status[
'code'] = 405;
124 unset($status[
'user']);
125 print json_encode($status);