Added to base model
This commit is contained in:
+125
-2
@@ -26,13 +26,136 @@ class userSignUp extends baseModel
|
||||
added timestamp without time zone DEFAULT now()
|
||||
);
|
||||
*/
|
||||
public function startSignUp($in)
|
||||
public function startSignUp($in)
|
||||
{
|
||||
$signup_mode = $in['mode'];
|
||||
switch($signup_mode){
|
||||
case 'START':
|
||||
return $this-> registerAccount($in);
|
||||
break;
|
||||
|
||||
case 'VERIFY':
|
||||
return $this-> verifyAccount($in);
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function verifyAccount($in)
|
||||
{
|
||||
$insert_id=0;
|
||||
$error_msg='';
|
||||
$status=0;
|
||||
$valid_call = true;
|
||||
$sqlQ = "";
|
||||
$dat=[];
|
||||
|
||||
$username = $in['username'];
|
||||
$uuid = $in['pend_uid'];
|
||||
$randomText = $in['random_text'];
|
||||
|
||||
log_message('critical', $username );
|
||||
|
||||
|
||||
|
||||
if( $username=='' || $uuid =='' || $randomText =='' ){
|
||||
$valid_call=false;
|
||||
$error_msg='Invalid call for verify';
|
||||
$status=-1;
|
||||
}
|
||||
|
||||
$sqlQ = "SELECT * FROM members WHERE username='".$in["username"]."' ";
|
||||
$query = $this->db->query($sqlQ);
|
||||
if($query && count($query->getResultArray())== 0 ){
|
||||
|
||||
}
|
||||
else{
|
||||
$valid_call=false;
|
||||
$error_msg='Unable to continue';
|
||||
$status=-1;
|
||||
}
|
||||
if ($valid_call){
|
||||
$sqlQ = "SELECT * FROM members_pending WHERE username='".$username."' AND random_text='$randomText' AND uuid='$uuid' AND status IN(0,1)";
|
||||
$query = $this->db->query($sqlQ);
|
||||
if($query){
|
||||
$dat = $query->getResultArray()[0];
|
||||
// let see if we already have this account
|
||||
$inData =[
|
||||
'username'=> $username,
|
||||
'email'=> $dat["email"],
|
||||
'password'=> $dat["password"],
|
||||
'firstname'=> $dat["firstname"],
|
||||
'lastname'=> $dat["lastname"]
|
||||
];
|
||||
$sqlQ = "UPDATE members_pending SET status = 1 WHERE username='".$username."' AND status IN(0)";
|
||||
$this->db->query($sqlQ);
|
||||
$insert_id = $this->insert_db($inData, 'members');
|
||||
if( $insert_id>=0){ // for now
|
||||
|
||||
$status=100;
|
||||
$sqlQ = "UPDATE members_pending SET status = 5 WHERE username='".$username."' AND status IN(0,1)";
|
||||
$this->db->query($sqlQ);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
// $passEnr = $this->encryptmd5($in["password"]);
|
||||
// $randomText = rand(1010101,999999);// rand(1010101,999999);
|
||||
// $inData =[
|
||||
// 'username'=> $in["username"],
|
||||
// 'email'=> $in["email"],
|
||||
// 'password'=> $passEnr,
|
||||
// 'firstname'=> $in["firstname"],
|
||||
// 'lastname'=> $in["lastname"],
|
||||
// 'random_text' => $randomText
|
||||
// ];
|
||||
|
||||
//$insert_id = $this->insert_db($inData, 'members_pending');
|
||||
// if( $insert_id>=0){ // for now
|
||||
// $sqlQ = "SELECT id AS insert_id,uuid FROM members_pending WHERE username='".$in["username"]."' AND random_text='$randomText' AND password='$passEnr' LIMIT 1";
|
||||
// $query = $this->db->query($sqlQ);
|
||||
// $dat = $query->getResultArray();
|
||||
// $insert_id = $dat[0]['insert_id'];
|
||||
// $uuid = $dat[0]['uuid'];
|
||||
// $status=1;
|
||||
// }
|
||||
/*
|
||||
mermsemr_dev=> \d members
|
||||
Table "public.members"
|
||||
Column | Type | Collation | Nullable | Default
|
||||
------------+-----------------------------+-----------+----------+-------------------------------------
|
||||
id | integer | | not null | nextval('members_id_seq'::regclass)
|
||||
username | character varying(50) | | not null |
|
||||
firstname | character varying(50) | | |
|
||||
lastname | character varying(50) | | |
|
||||
email | character varying(50) | | |
|
||||
phone | character varying(25) | | |
|
||||
password | character varying(100) | | |
|
||||
status | integer | | | 1
|
||||
added | timestamp without time zone | | | now()
|
||||
loc | inet | | |
|
||||
last_login | timestamp without time zone | | |
|
||||
acc_link | character varying(15) | | |
|
||||
gender | character varying(2) | | | 'U'::character varying
|
||||
dob | timestamp without time zone | | |
|
||||
uuid | uuid | | | gen_random_uui
|
||||
*/
|
||||
return $inx = [
|
||||
'status' => $status,
|
||||
'error_msg' => $error_msg,
|
||||
'raw_data' => $in,
|
||||
];
|
||||
|
||||
}
|
||||
public function registerAccount($in)
|
||||
{
|
||||
$insert_id=0;
|
||||
$uuid='';
|
||||
$status=0;
|
||||
$passEnr = $this->encryptmd5($in["password"]);
|
||||
$randomText = rand(1010101,999999);// rand(1010101,999999);
|
||||
$randomText = rand(101010,999999);// rand(1010101,999999);
|
||||
$inData =[
|
||||
'username'=> $in["username"],
|
||||
'email'=> $in["email"],
|
||||
|
||||
Reference in New Issue
Block a user