Open Sencillo  2015.107
Long live the simplicity of PHP
 All Data Structures Namespaces Functions Pages
/home/peter/git/OpenSencillo/ajax.slot.php
1 <?php
2 error_reporting(E_ERROR | E_PARSE);
3 session_start();
4 require("./basicstrap.php");
5 require("./fw_libraries/login.management.logman.php");
6 
7 $logman=new logMan;
8 /*if($logman->install()===false)
9 {
10  die('sys:complete_failure');
11 }*/
12 $log=$logman->getSignedUser();
13 $status=array(
14  'called'=>$_POST['atype'],
15  'data'=>date('Y-m-d'),
16  'time'=>date('H:i:s')
17 );
18 if($_POST['atype']!='')
19 {
20  $ajax=$_POST;
21 }
22 switch($ajax['atype'])
23 {
24  case 'login':
25  //TODO
26  // login system
27  $logman->openTable('users');
28  if(filter_var($ajax['email'],FILTER_VALIDATE_EMAIL))
29  {
30  if($logman->output("`login`='".strtolower($ajax['email'])."' AND `pass`=MD5('".$ajax['pass']."')","`id` ASC",1)!=false)
31  {
32  $status['status']='authorized';
33  $status['code']=202;
34  $status['user']=$logman->output("`login`='".strtolower($ajax['email'])."' AND `pass`=MD5('".$ajax['pass']."')","`id` ASC",1);
35 
36  $_SESSION['userid']=$status['user']['line'][1]['id'];
37  $_SESSION['login']=$status['user']['line'][1]['login'];
38  $_SESSION['email']=$status['user']['line'][1]['email'];
39  $_SESSION['perm']=$status['user']['line'][1]['perm'];
40  $_SESSION['sessionid']=session_id();
41  $_SESSION['start']=date('Y-m-d H:i:s');
42  if($status['user']['line'][1]['sign']=='first_use')
43  {
44  $_SESSION['tutorial']=true;
45  }
46  else
47  {
48  $_SESSION['tutorial']=false;
49  }
50  $logman->update('`id`='.$status['user']['line'][1]['id'],"`sign`='".$_SESSION['sessionid']."'");
51 
52  unset($status['user']['line']);
53  }
54  else
55  {
56  $status['status']='unauthorized';
57  $status['code']=404;
58  }
59  }
60  else
61  {
62  $status['status']='invalid';
63  $status['code']=403;
64  }
65  break;
66  case 'ereg':
67  //TODO
68  // move to logman addNewUser($pass,$perm)
69  $logman->openTable('users');
70  if(filter_var($_POST['email'],FILTER_VALIDATE_EMAIL))
71  {
72  if($logman->output("`login`='".$_POST['email']."'","`id` ASC",1)==false)
73  {
74  try
75  {
76  $logman->insert("'first_use',0,'".strtolower($_POST['email'])."',MD5('".$_POST['pass']."'),'".strtolower($_POST['email'])."','".$logman->clean(ucwords(strtolower($_POST['fname'])))."','".$logman->clean(ucwords(strtolower($_POST['lname'])))."',1000,'".$log['external_ip'].":".$log['port']."','".$log['agent']."',DATE(NOW()),TIME(NOW())");
77  $status['status']='ok';
78  $status['code']=200;
79  }
80  catch(Exception $e)
81  {
82  $status['status']='failed';
83  $status['code']=417;
84  }
85  }
86  else
87  {
88  $status['status']='exist';
89  $status['code']=409;
90  }
91  }
92  else
93  {
94  $status['status']='invalid';
95  $status['code']=403;
96  }
97  break;
98  case 'fgot':
99  //TODO
100  // forgot pass
101  break;
102 }
103 print json_encode($status);
104 ?>