File: /home/cafsindia/allyindian_com/backend/customers/sbltt_lib/sbltt_session.php
<?php
/**********************************************************
Filename: sbltt_session.php
Description: session related operations
Author: Jaffer
Created on: NOV, 09 2018
Approved on:
Reviewed on:
------------------------------------------------------------
Modification Details
Changed by:
------------------------------------------------------------
**********************************************************/
class sbltt_session {
private $dbObj = null;
function __construct() {
$this->dbConnection();
}
function __destruct() {
unset($this->dbObj);
}
function dbConnection() {
$this->dbObj = sblttObject::newObject('sbltt_db');
$this->dbObj->open_db();
}
function get_value($key){
$value = "";
if(isset($_SESSION[$key]))
$value = $_SESSION[$key];
return $value;
}
function set_value($key,$value) {
if(isset($_SESSION[$key]))
$_SESSION[$key] = $value;
}
function add_value($key,$value){
if(!isset($_SESSION[$key]))
$_SESSION[$key] = $value;
}
function startSession() {
if(!isset($_SESSION['sbltt_web'])) {
session_start();
$_SESSION['sbltt_web'] = "v0.1";
$this->add_value("session_id",$this->unique_code("SBLTT"));
$this->add_value("cust_id",0);
}
}
function is_session_exist(){
$cust_id = $this->get_value("cust_id");
$session_info = $this->dbObj->query("customers","custid = '$cust_id'");
$num_rows = $this->dbObj->num_rows($session_info);
//echo $num_rows; die;
if((int)$num_rows === 1){
$libObject = sblttObject::newObject('sbltt_customer');
$libObject->get_cust_info("$cust_id");
return $libObject;
}else{
$libObject = sblttObject::newObject("sbltt_db");
return $libObject;
}
}
function save_session($cust_id){
if($this->sbltt_session_exist()) {
$this->set_value('cust_id',$cust_id);
}
}
function sbltt_session_exist() {
if(isset($_SESSION['sbltt_web'])) {
if((isset($_SESSION["session_id"])) && (isset($_SESSION["cust_id"])))
return true;
}
return false;
}
function unique_code($code="UN") {
$YearMap = array('2018'=>'A','2019'=>'B','2020'=>'C','2021'=>'D','2022'=>'E','2023'=>'F','2024'=>'G','2025'=>'H','2026'=>'I','2027'=>'J','2028'=>'K','2029'=>'L');
$MonthMap = array('1'=>'J','2'=>'K','3'=>'L','4'=>'M','5'=>'N','6'=>'O','7'=>'P','8'=>'Q','9'=>'R','10'=>'S','11'=>'T','12'=>'U');
$DayMap = array('1'=>'A','2'=>'B','3'=>'C','4'=>'D','5'=>'E','6'=>'F','7'=>'G','8'=>'H','9'=>'I','10'=>'J','11'=>'K','12'=>'L','13'=>'M','14'=>'N','15'=>'O','16'=>'P','17'=>'Q','18'=>'R','19'=>'S','20'=>'T','21'=>'U','22'=>'V','23'=>'W','24'=>'X','25'=>'Y','26'=>'Z','27'=>'1','28'=>'2','29'=>'3','30'=>'4','31'=>'5');
$HourMap = array('0'=>'A','1'=>'B','2'=>'C','3'=>'D','4'=>'E','5'=>'F','6'=>'G','7'=>'H','8'=>'I','9'=>'J','10'=>'K','11'=>'L','12'=>'M','13'=>'N','14'=>'O','15'=>'P','16'=>'Q','17'=>'R','18'=>'S','19'=>'T','20'=>'U','21'=>'V','22'=>'W','23'=>'X');
$loctime = time();
$unq4 = substr($loctime,-4,4);
$unq2 = mt_rand(10,99);
$xunq2 = mt_rand(10,99);
$year = $YearMap[ltrim(date('Y'), '0')];
$month = $MonthMap[ltrim(date('n'), '0')];
$day = $DayMap[ltrim(date('j'), '0')];
$hr = ltrim(date('H'), '0');
if($hr == "")
$hr = "0";
$hour = $HourMap[$hr];
$uniqueCode = $code. $year . $month . $day . $hour. $unq4 . $unq2 . $xunq2;
return $uniqueCode;
}
function logout_session() {
if(isset($_SESSION['sbltt_web'])) {
$session_id = $this->get_value("session_id");
$cust_id = $this->get_value("cust_id");
//$this->clear_session($cust_id);
if(isset($_SESSION['session_id'])){
unset($_SESSION['session_id']);
}
if(isset($_SESSION['cust_id'])){
unset($_SESSION['cust_id']);
}
if(isset($_SESSION['sbltt_web'])){
unset($_SESSION['sbltt_web']);
}
if(isset($_SESSION['discount'])){
unset($_SESSION['discount']);
}
if(isset($_SESSION['package_id'])){
unset($_SESSION['package_id']);
}
if(isset($_SESSION['package_date'])){
unset($_SESSION['package_date']);
}
if(isset($_SESSION['trip_id'])){
unset($_SESSION['trip_id']);
}
}
}
//Set Customer
function set_custid($order_id){
$cust_info = $this->dbObj->query("pnrnogen","orderid = '$order_id'");
$cust_rslt = $this->dbObj->result($cust_info);
$cust_id = $cust_rslt[0]->custid;
$this->add_value("cust_id",$cust_id);
$this->add_value("orderid",$order_id);
}
}
?>