403Webshell
Server IP : 103.234.187.230  /  Your IP : 216.73.216.216
Web Server : Apache
System : Linux lserver42043-ind.megavelocity.net 3.10.0-1160.108.1.el7.x86_64 #1 SMP Thu Jan 25 16:17:31 UTC 2024 x86_64
User : apache ( 48)
PHP Version : 7.4.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /var/www/html/junkdata/bookmytrip/application/controllers/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/html/junkdata/bookmytrip/application/controllers/CustomerController.php 23-2-2021
<?php

/***************************************************************
 * Catabatic Technology Pvt. Ltd.
 * File Name     : CustomerController.php
 * File Desc.    : Customer controller for home page front end
 * Created By    : Piyush Tiwari <piyush@catpl.co.in>
 * Created Date  : 05 Sep 2018
 * Updated Date  : 05 Sep 2018
 ***************************************************************/



class CustomerController extends Zend_Controller_Action
{

    protected $objMdl;
    protected $tablename;

    protected $objHelperGeneral;
    protected $per_page_record;
    protected $_session;
    protected $_sessionSocial;
    protected $_sessionSocialFB;
    public $customerbookinglistAPIUrl;
    protected $objHelperLoginwithGoogle;
    protected $objHelperLoginwithFacebook;

    public $contactEmail;



    public function init()
    {

        $aConfig = $this->getInvokeArg('bootstrap')->getOptions();
        $BootStrap  = $aConfig['bootstrap'];

        $this->siteName = $BootStrap['siteName'];
        $this->baseUrl  = $BootStrap['siteUrl'];
        $this->gtxbaseUrl   = $BootStrap['gtxBtoBsite'];
        $this->contactEmail = $BootStrap['contactEmail'];
        $this->gtxagencysysid       = $BootStrap['gtxagencysysid']; // get gtxagencysysid from application config
        $this->gtxagentsysid       = $BootStrap['gtxagentsysid']; // get gtxagentsysid from application config        
        $this->objMdl   = new Admin_Model_CRUD();
        $this->_user = new Zend_Session_Namespace('User');
        $this->_sessionSocial = new Zend_Session_Namespace('SocialGoogle');
        $this->_sessionSocialFB = new Zend_Session_Namespace('SocialFacebook');
        $this->tablename    = "TB_TBB2C_Packages_Master";
        $this->tablenameTes = "tbl_testimonials";
        $this->hotelTypeArr = ['Standard', 'Deluxe', 'Luxury'];
        $this->objHelperGeneral = $this->_helper->General;
        $this->objHelperLoginwithGoogle = $this->_helper->LoginwithGoogle;
        $this->per_page_record = 50;
        $this->_resetsession = new Zend_Session_Namespace('UserResetEmail');
        $this->customerauthlogin = API_CUSTOMER_AUTH_LOGIN; // from constant file
        $this->customerauthloginSocial = API_AGENT_AUTH_LOGIN_SOCIAL; // from constant file
        $this->customerauthsignup = API_CUSTOMER_AUTH_SIGNUP; // from constant file
        $this->customerbookinglistAPIUrl = API_CUSTOMER_LIST; // from constant file
        $this->customerbookingFlightAPIUrl = API_CUSTOMER_FLIGHTLIST; // from constant file
        $this->customerFlightInvoiceAPIUrl = API_CUSTOMER_FLIGHTINVOICE; // from constant file
        $this->customerFlightVoucherAPIUrl = API_CUSTOMER_FLIGHTVOUCHER; // from constant file
        $this->customerprofileAPIUrl = API_CUSTOMER_PROFILE; // from constant file
        $this->customerprofilebyemailMobileAPIUrl = API_CUSTOMER_PROFILE_BYEMAIL_MOBILE; // from constant file
        $this->customerchangepasswordAPIUrl = API_CUSTOMER_CHANGEPASSWORD; // from constant file
        $this->customerforgotpasswordAPIUrl = API_CUSTOMER_FORGOTPASSWORD; // from constant file
        $this->customerupdateforgotpasswordAPIUrl = API_CUSTOMER_UPDATE_FORGOTPASSWORD; // from constant file
        $this->customerupdateprofilePIUrl = API_CUSTOMER_UPDATE_PROFILE; // from constant file
        $this->getcitylistAPIUrl = API_CUSTOMER_CITYLIST; // from constant file
        $this->salutation = ARR_SALUTION; // from constant file

    }


    public function indexAction()
    {
        die('index');
    }

    public function agencycustomerloginAction()
    {
        header('Access-Control-Allow-Origin: *');
        if ($this->getRequest()->isPost()) {
            $data = $this->getRequest()->getParams();
            //  echo"<pre>";print_r($data);die;
            $apiData = array(
                'userName' => $data['userName'],
                'userPassword' => $data['userPassword'],
                'AgencySysId' => $this->gtxagencysysid
            );

            try {
                $curl_p = curl_init($this->customerauthlogin);
                curl_setopt($curl_p, CURLOPT_POST, true);
                curl_setopt($curl_p, CURLOPT_POSTFIELDS, http_build_query($apiData));
                curl_setopt($curl_p, CURLOPT_RETURNTRANSFER, true);
                curl_setopt($curl_p, CURLOPT_SSL_VERIFYPEER, false);
                curl_setopt($curl_p, CURLOPT_TIMEOUT, 300);
                $response = curl_exec($curl_p);
                curl_close($curl_p);
            } catch (Exception $error) {
                $this->view->error_msg = $error->getMessage();
                die;
            }

            $response_decode   = Zend_Json::decode($response, true);
            //echo "<pre>";print_r($response_decode);die('fsdfdsfdsf');
            if ($response_decode == 1) {
                $reply = ['status' => false, 'message' => 'Invalid login credentials'];
                echo Zend_Json::encode($reply);
                exit;
            } elseif ($response_decode == 2) {
                $reply = ['status' => false, 'message' => 'Your account is inactive. Please Contact to the administrator.'];
                echo Zend_Json::encode($reply);
                exit;
            } else {
                echo Zend_Json::encode($response_decode);
                exit;
            }
        } else {
            die('oops wrong request');
        }
    }


    public function usersignupAction()
    {
        header('Access-Control-Allow-Origin: *');
        if ($this->getRequest()->isPost()) {
            $data = $this->getRequest()->getParams();
            //echo"<pre>";print_r($data);die;
            $contactDetail_mail = Zend_Controller_Action_HelperBroker::getStaticHelper('Custom')->getContactDetailForFooter();
            $objFlight = new Travel_Model_FlightMaster();
            $IsExistcustomer = $objFlight->GetCustomerData('tbl_customer', null, $data['mobilenum'], $data['EmailId']);

            if ($IsExistcustomer) {
                $reply = ['status' => false, 'message' => 'User is already registered with these records use another mobile number and email id'];
                echo Zend_Json::encode($reply);
                exit;
            }
            // echo"<pre>";print_r($IsExistcustomer);die;
            if ($data['password'] !== $data['copassword']) {
                $reply = ['status' => false, 'message' => "Confirm password does't matched"];
                echo Zend_Json::encode($reply);
                exit;
            }
            if (isset($data['firstName'])) {
                $fbid = $data['fbid'];
            } else {
                $fbid = "";
            }
            $apiData = array(
                'fname' => $data['firstName'],
                'lname' => $data['lastName'],
                'customerEmail' => $data['EmailId'],
                'countrycode' => $data['countrycode'],
                'mobilenumber' => $data['mobilenum'],
                'source' => '',
                'password' => $data['password'],
                'AgencySysId' => $this->gtxagencysysid,
                'AgentSysId' => $this->gtxagentsysid
            );
            //echo '<pre>';print_r($apiData);die('dd');
            try {
                $curl_p = curl_init($this->customerauthsignup);
                curl_setopt($curl_p, CURLOPT_POST, true);
                curl_setopt($curl_p, CURLOPT_POSTFIELDS, http_build_query($apiData));
                curl_setopt($curl_p, CURLOPT_RETURNTRANSFER, true);
                curl_setopt($curl_p, CURLOPT_SSL_VERIFYPEER, false);
                curl_setopt($curl_p, CURLOPT_TIMEOUT, 300);
                $response = curl_exec($curl_p);
                curl_close($curl_p);
            } catch (Exception $error) {
                $this->view->error_msg = $error->getMessage();
                die;
            }

            $response_decode   = Zend_Json::decode($response, true);
            //  echo "<pre>";print_r($response_decode);die;
            if ($response_decode['CustomerSysId'] == '' || empty($response_decode['CustomerSysId'])) {
                $reply = ['status' => false, 'message' => 'Email id "is already registered". Please sign in or use forgot password to generate new.'];
                echo Zend_Json::encode($reply);
                exit;
            } else {
                $signup_data = array(
                    'CustomerSysId' => base64_decode($response_decode['CustomerSysId']),
                    'EmailId' => $data['EmailId'],
                    'fbid' => $fbid,
                    'AgencySysId' => $this->gtxagencysysid,
                    'FirstName' => $response_decode['fname'],
                    'LastName' => $response_decode['lname'],
                    'Password' => md5($data['password']),
                    'Contacts' => ($response_decode['mobilenumber']),
                );

                $arrCustomer = array(
                    'fbid' => $fbid,
                    'FirstName' => $data['firstName'],
                    'LastName' => $data['lastName'],
                    'GTX_customerSysId' => base64_decode($response_decode['CustomerSysId']),
                    'EmailId' => $data['EmailId'],
                    'countryCode' => $data['countrycode'],
                    'Contacts' => $data['mobilenum'],
                    'paxType' => 1,
                    'Salutation' => 1,
                    'Password' => md5($data['password']),
                    'AgencySysId' => $this->gtxagencysysid,
                );

                if ($IsExistcustomer) {
                    $where = "CustomerSysId =? " . $IsExistcustomer['CustomerSysId']; //exit;
                    $this->objMdl->rv_update('tbl_customer', $arrCustomer, $where);
                } else {
                    //$data = $objFlight->InsertFlightData('tbl_customer',$arrCustomer);
                    $this->objMdl->rv_insert('tbl_customer', $arrCustomer);
                    //die($data);
                }

                $subject = "Register successful";
                $message = '<table width="610" border="0" align="center" cellpadding="15" cellspacing="0">
                            <tr><td style="background:#f17524;"><table width="610" border="0" cellspacing="0" cellpadding="0">

                            <tr><td valign="top" bgcolor="#FFFFFF"><table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
                            <tr><td colspan="2" align="center" style=" padding:18px 40px;vertical-align: middle;"><img src="' . $this->baseUrl . 'public/images/logo.png" /></td>
                              </tr> <tr><td>&nbsp;</td></tr>
                                    <tr><td><span style="font:bold 14px Tahoma, Geneva, sans-serif;">Dear Customer,</span></td>
                                    </tr><tr><td>&nbsp;</td></tr>
                                    <tr><td ><span style="font:bold 14px Tahoma, Geneva, sans-serif;">Greetings from ' . $this->siteName . '.</span></td>
                                    </tr><tr> <td>&nbsp;</td></tr>
                                    </tr><tr> <td>Your registration has been successful!</td></tr>
                                    </tr><tr> <td>&nbsp;</td></tr>
                                    
                                    <tr><td><table width="100%" border="0" cellspacing="0" cellpadding="0">
                                                <tr><td width="60%" align="left" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
                                                            <tr><td style="color:#7f7f7f; font:normal 14px Tahoma, Geneva, sans-serif;">Email Id: ' . $data['EmailId'] . '</td>
                                                            </tr><tr><td style="color:#7f7f7f; font:normal 14px Tahoma, Geneva, sans-serif;">Password : ' . $data['password'] . '</td>
                                                            </tr><tr><td>&nbsp;</td> </tr></table></td></tr></table></td>
                                    </tr><tr><td ><span style="font:normal 14px Tahoma, Geneva, sans-serif;">In case of any assistance please feel free to reach us by email at ' . $contactDetail_mail['email'] . '  or call us at ' . $contactDetail_mail['phone'] . '</span></td>
                                    </tr><tr> <td>&nbsp;</td></tr><tr><td>&nbsp;</td></tr>
                                    
                                    <tr> <td ><span style="font:normal 14px Tahoma, Geneva, sans-serif;">Regards,</span></td>
                                    </tr><tr><td>&nbsp;</td>
                                    </tr><tr><td ><span style="font:normal 14px Tahoma, Geneva, sans-serif;">' . $this->siteName . '</span></td>
                                    </tr> <tr> <td>&nbsp;</td></tr></table></td></tr></table></td></tr></table>';




                $configs = [
                    'to' => $data['EmailId'],
                    //                    'to' => 'mangal@catpl.co.in',
                    'fromName' => $this->siteName,
                    'fromEmail' => $contactDetail_mail['email'],
                    'subject' => $subject,
                    'bodyHtml' => $message,
                ];

                $this->_helper->General->mailSentByElastice($configs, 'Registration');

                $reply = ['status' => true, 'data' => $signup_data, 'message' => 'Register successfully. please wait redirecting for first time login!'];
                echo Zend_Json::encode($reply);
                exit;
            }
        } else {
            die('oops wrong request');
        }
    }

    public function myprofileAction()
    {
        $this->checklogin();
        $salutation = unserialize($this->salutation);
        //echo"<pre>";print_r($salutation);die;
        //echo"<pre>";print_r($_SESSION['User']['session']);die;
        //echo"<pre>";print_r($this->_user->session);die;
        //echo"<pre>";print_r($this->_sessionSocialFB->_sessionSocialFB);die;
        //echo"<pre>";print_r($_SESSION);die;

        $apiData = array(
            "CustomerSysId" => $_SESSION['User']['session']['CustomerSysId'],
            "AgencySysId" => $_SESSION['User']['session']['AgencySysId']
        );
        // echo"<pre>"; print_r($_SESSION['User']['session']);die;
        $email = $_SESSION['User']['session']['EmailId'];
        $ContactNo1 = $_SESSION['User']['session']['ContactNo1'];
        try {
            $curl = curl_init($this->customerbookinglistAPIUrl);
            curl_setopt($curl, CURLOPT_POST, true);
            curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($apiData));
            curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
            $response = curl_exec($curl);

            curl_close($curl);
        } catch (Exception $error) {
            $this->view->error_msg = $error->getMessage();
            die;
        }
        //die($this->customerbookingFlightAPIUrl);
        //echo"<pre>";print_r($apiData);die;
        try {
            $curl = curl_init($this->customerbookingFlightAPIUrl);
            curl_setopt($curl, CURLOPT_POST, true);
            curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($apiData));
            curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
            $responseFlight = curl_exec($curl);

            curl_close($curl);
        } catch (Exception $error) {
            $this->view->error_msg = $error->getMessage();
            die;
        }


        //        For profile
        try {
            $curl_p = curl_init($this->customerprofileAPIUrl);
            curl_setopt($curl_p, CURLOPT_POST, true);
            curl_setopt($curl_p, CURLOPT_POSTFIELDS, http_build_query($apiData));
            curl_setopt($curl_p, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($curl_p, CURLOPT_SSL_VERIFYPEER, false);
            curl_setopt($curl_p, CURLOPT_TIMEOUT, 300);
            $response_pro = curl_exec($curl_p);
            curl_close($curl_p);
        } catch (Exception $error) {
            $this->view->error_msg = $error->getMessage();
            die;
        }

        $objFlight = new Travel_Model_FlightMaster();

        //$CustomerData = $objFlight->GetCustomerData('tbl_customer',null,$this->_user->session['ContactNo1'],$this->_user->session['EmailId'],$this->gtxagencysysid);
        //$CustomerData = $this->objMdl->rv_select_all('tbl_customer', ['CustomerSysId'], ['EmailId' => $this->_user->session['EmailId'], 'Contacts'=>$this->_user->session['ContactNo1'],'IsMarkForDel' => 0], ['CustomerSysId' => 'DESC']);

        $cussysid = (int) $this->_user->session['CustomerSysId'];

        $CustomerData = $this->objMdl->selectOne('tbl_customer', ['*'], ['GTX_customerSysId' => $cussysid, 'IsMarkForDel' => 0, 'IsActive' => 1]);
        $customersysid = $CustomerData->CustomerSysId;
       
       // echo"<pre>";print_r($customersysid);die;
        $currentDate = date('Y-m-d');

        $CustomerMember = $this->objMdl->rv_select_all('tbl_customer_member', ['CustomerMemberSysId'], ['CustomerSysId' => $customersysid, 'IsMarkForDel' => 0], ['CustomerMemberSysId' => 'DESC']);
        //echo"<pre>";print_r($customersysid);die;
        $customerArr = [];
        if ($CustomerMember) {
            foreach ($CustomerMember as $k => $val) {
                $customerArr[$k] = $val['CustomerMemberSysId'];
            }
            $customerArr[$k + 1] = $CustomerData['CustomerSysId'];
        }



        $hotel_booking = $objFlight->getHotelsBookingList('tbl_hotel_booking', $CustomerData['CustomerSysId']);

        $objFlight = new Travel_Model_FlightMaster();
        //$hotel_booking = $objFlight->getHotelsBookingList('tbl_hotel_booking',$customerArr);
        //echo"<pre>";print_r($customerArr);die;

        // $flight_booking = $objFlight->getFlightBookingList('tbl_flight_booking',$customerArr);
        // die($customersysid);
        //$flight_booking = $this->objMdl->rv_select_row('tbl_flight_booking', ['*'], ['CustomerSysId' => $customersysid], ['CustomerSysId' => 'DESC']);
        //echo"<pre>";print_r($flight_booking);die;
        // $flight_booki = $objFlight->getFlightBookingList('tbl_flight_booking', $customerArr, $currentDate);
        // $count = 0;
        // $flight_booking = array();
        // foreach ($flight_booki as $flightb) {
        //     //echo"<pre>";print_r($flightb);die;
        //     if ($flightb['CustomerSysId'] == $customersysid) {
        //         $flight_booking[] = $flightb;
        //     }
        //     $count++;
        // }

        $flight_booking = $objFlight->getFlightBookingListCustomer('tbl_flight_booking', $customerArr);
       //echo"<pre>";print_r($flight_booking);die;
        $Post_flight_booking = $objFlight->getFlightBookingList('tbl_flight_booking', $customerArr, $currentDate);

        // $flight_booking = $this->objMdl->rv_select_all('tbl_flight_booking', ['id','apiTraceId','JourneyType','created_at','CustomerSysId','TotalFlightMembers','AgencySysId','PNR_Number','BookingId','TravelDate','DestAirportCode','SourceAirportCode','status'], [array('CustomerSysId' => $customerArr), 'IsMarkForDel' => 0, 'status' => 1], ['id' => 'DESC']);
        // $Post_flight_booking = $this->objMdl->rv_select_all('tbl_flight_booking', ['id','apiTraceId','JourneyType','created_at','CustomerSysId','TotalFlightMembers','AgencySysId','PNR_Number','BookingId','TravelDate','DestAirportCode','SourceAirportCode','status'], [array('CustomerSysId' => $customerArr), 'TravelDate <' => $currentDate, 'IsMarkForDel' => 0], ['id' => 'DESC']);
        //$Cancel_flight_booking = $this->objMdl->rv_select_all('tbl_flight_booking', ['id','apiTraceId','JourneyType','created_at','CustomerSysId','TotalFlightMembers','AgencySysId','PNR_Number','BookingId','TravelDate','DestAirportCode','SourceAirportCode','status'], [array('CustomerSysId' => $customerArr), 'IsMarkForDel' => 0,'status!' => 1], ['id' => 'DESC']);
        $page = $this->_getParam('page', 1);
        $resultset = Zend_Paginator::factory($flight_booking);

        $resultset->setItemCountPerPage($this->per_page_record);
        $resultset->setCurrentPageNumber($page);

        //echo '<pre>';print_r($flight_booking);die;
        # End : Pagination
        //echo"<pre>";print_r($resultset);die;
        $this->view->per_page_record = $this->per_page_record;
        $this->view->page = $page;
        $this->view->resultset = $resultset;
        //echo '<pre>';print_r($customerArr);die;
        // $objCar = new Car_Model_CarMaster();

        $carsearch['email'] = $email;
        //$car_booking = $objCar->getCarBookingList('tbl_car_booking',$carsearch);
        //echo"<pre>";print_r();die;
        $result = array();
        $decodeJSON   = Zend_Json::decode($response, true);
        $decode_profile   = Zend_Json::decode($response_pro, true);
        $responseFlight   = Zend_Json::decode($responseFlight, true);
        if (count($decodeJSON['getdata']) > 0) {
            foreach ($decodeJSON['getdata'] as $key => $val) {
                $RoomInfoJson   = Zend_Json::decode($val['RoomInfoJson'], true);
                $result[] = [
                    'all' => $val,
                    'roominfo' => $RoomInfoJson
                ];
            }
        }
        //die($this->_user->session['CustomerSysId']);
        $customerQueryData = $this->objMdl->rv_select_all('tbl_my_query', ['*'], ['CustomerSysId' => $this->_user->session['CustomerSysId'], 'IsMarkForDel' => 0], ['query_id' => 'DESC']);

        $bookconfirm = new Zend_Session_Namespace('bookingconfirm');
        //echo"<pre>";print_r($bookconfirm->params);die;
        $bookconfirm->params = $car_booking;
        $this->view->CarData = $car_booking;
        $this->view->customerQueryData = $customerQueryData;
        $this->view->alldata = $result;
        $this->view->responseFlight = $responseFlight;
        $this->view->salutation = $salutation;
        $this->view->profile = $decode_profile['profile'];
        $this->view->countryArr = $decode_profile['countryArr'];
    }

    public function updateprofileAction()
    {
        $this->checklogin();
        if ($this->getRequest()->isPost()) {
            $this->checklogin();
            $data = $this->getRequest()->getParams();
            $DOB = (isset($data['DOB']) && !empty($data['DOB']) ? explode('/', $data['DOB']) : explode('/', '01/01/1900'));
            $PAE = (isset($data['PassportExpiry']) && !empty($data['PassportExpiry']) ? explode('/', $data['PassportExpiry']) : explode('/', '01/01/1900'));
            $MAR = (isset($data['MarriageAnniversary']) && !empty($data['MarriageAnniversary']) ? explode('/', $data['MarriageAnniversary']) : explode('/', '01/01/1900'));
            $apiData = array(
                'Title' => $data['title'],
                'FirstName' => $data['FirstName'],
                'LastName' => $data['LastName'],
                'contacts' => $data['contacts'],
                'PassportNo' => $data['PassportNo'],
                'PassportExpiry' => $PAE[2] . '-' . $PAE[1] . '-' . $PAE[0],
                'DOB' => $DOB[2] . '-' . $DOB[1] . '-' . $DOB[0],
                'MarriageAnniversary' => $MAR[2] . '-' . $MAR[1] . '-' . $MAR[0],
                "CustomerSysId" => $this->_user->session['CustomerSysId'],
                "AgencySysId" => $this->gtxagencysysid,
                "country" => $data['country'],
                "city" => $data['city']
            );
            //            echo '<pre>';print_r($apiData);die;
            try {
                $curl_p = curl_init($this->customerupdateprofilePIUrl);
                curl_setopt($curl_p, CURLOPT_POST, true);
                curl_setopt($curl_p, CURLOPT_POSTFIELDS, http_build_query($apiData));
                curl_setopt($curl_p, CURLOPT_RETURNTRANSFER, true);
                curl_setopt($curl_p, CURLOPT_SSL_VERIFYPEER, false);
                curl_setopt($curl_p, CURLOPT_TIMEOUT, 300);
                $response_pro = curl_exec($curl_p);
                curl_close($curl_p);
            } catch (Exception $error) {
                $this->view->error_msg = $error->getMessage();
                die;
            }
            //            print_r($response_pro);die;
            if ($response_pro == 1) {
                $reply = ['status' => true, 'message' => 'Your Profile has been successfully updated.'];
                echo Zend_Json::encode($reply);
                exit;
            } else {
                $reply = ['status' => false, 'message' => 'Unable to update your profile. try again'];
                echo Zend_Json::encode($reply);
                exit;
            }
        }
    }

    public function getcitylistAction()
    {
        if ($this->getRequest()->isPost()) {
            $this->checklogin();
            $param = $this->getRequest()->getParams();
            $apiData = array(
                "country" => $param['country']
            );
            try {
                $curl = curl_init($this->getcitylistAPIUrl);
                curl_setopt($curl, CURLOPT_POST, true);
                curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($apiData));
                curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
                curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
                $response = curl_exec($curl);
                curl_close($curl);
            } catch (Exception $error) {
                $this->view->error_msg = $error->getMessage();
                die;
            }
            $ResponseDecode   = Zend_Json::decode($response, true);
            $reply = ['status' => true, 'message' => 'Getting city list please wait...', 'countryId' => $ResponseDecode];
            echo Zend_Json::encode($reply);
            exit;
        }
    }

    public function changepasswordAction()
    {
        if ($this->getRequest()->isPost()) {
            $this->checklogin();
            $param = $this->getRequest()->getParams();
            $apiData = array(
                "cpass" => $param['cpass'],
                "npass" => $param['npass'],
                "copass" => $param['copass'],
                "CustomerSysId" => $this->_user->session['CustomerSysId'],
                "AgencySysId" => $this->gtxagencysysid,
            );
            //echo '<pre>';print_r($apiData);die;
            try {
                $curl = curl_init($this->customerchangepasswordAPIUrl);
                curl_setopt($curl, CURLOPT_POST, true);
                curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($apiData));
                curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
                curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
                $response = curl_exec($curl);
                curl_close($curl);
            } catch (Exception $error) {
                $this->view->error_msg = $error->getMessage();
                die;
            }
            //            echo '<pre>';print_r($response);die;
            if ($response == 1) {
                $reply = ['status' => false, 'message' => 'Old password does not match'];
                echo Zend_Json::encode($reply);
                exit;
            } else if ($response == 2) {
                $reply = ['status' => false, 'message' => 'Confirm password does not match with new password'];
                echo Zend_Json::encode($reply);
                exit;
            } else if ($response == 3) {
                $reply = ['status' => true, 'message' => 'Password has been changed successfully.'];
                echo Zend_Json::encode($reply);
                exit;
            } else {
                $reply = ['status' => false, 'message' => 'Oops there is no response'];
                echo Zend_Json::encode($reply);
                exit;
            }
        }
    }

    /**
     * forgotpassword() method is used to B2B customer can forgot password
     * @param Null
     * @return Array 
     */
    public function forgotpasswordAction()
    {
        if ($this->getRequest()->isPost()) {
            $param = $this->getRequest()->getParams();
            $contactDetail_mail = Zend_Controller_Action_HelperBroker::getStaticHelper('Custom')->getContactDetailForFooter();

            $apiData = array(
                "forget" => $param['forget'],
                "AgencySysId" => $this->gtxagencysysid,
                "type" => 1
            );

            try {
                $curl = curl_init($this->customerforgotpasswordAPIUrl);
                curl_setopt($curl, CURLOPT_POST, true);
                curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($apiData));
                curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
                curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
                $response = curl_exec($curl);
                curl_close($curl);
            } catch (Exception $error) {
                $this->view->error_msg = $error->getMessage();
                die;
            }
            $ResponseDecode   = Zend_Json::decode($response, true);
            //echo '<pre>';print_r($ResponseDecode);die;
            if ($ResponseDecode['status'] == 1) {
                $datetime = date('d-m-y h:i:s');
                $time_str = strtotime($datetime);
                $token = md5($ResponseDecode['data']['CustomerSysId']);
                $CustomerSysId = base64_encode($ResponseDecode['data']['CustomerSysId']);
                $EmailId = $ResponseDecode['data']['EmailId'];
                $FirstName = $ResponseDecode['data']['FirstName'];
                $CheckEmailId = base64_encode($ResponseDecode['data']['EmailId']);
                $AgencySysId = $ResponseDecode['data']['AgencySysId'];

                $reseturlclick = $this->baseUrl . "customer/checkresetlink?token=$token&ag=$AgencySysId&eid=$CheckEmailId&CTR=$time_str&cd=$CustomerSysId";
                //echo '<pre>';print_r($ResponseDecode);die;
                $name = $FirstName;
                $customer_email = $EmailId;
                $from_email = $contactDetail_mail['email'];

                $subject = "Password Change Request ";
                $message = "Hello $name<br><br>";
                $message .= "Greetings from $this->siteName team.<br><br>";
                $message .= "It is our pleasure to fulfill your request for new password.<br><br>";
                $message .= "To change your account password at $this->siteName please click this link or copy and paste the following link into your browser. This link expire within 10 minutes: <br><br>";
                $message .= " <a href='$reseturlclick'>Click here to reset your password</a> <br><br><br>";
                $message .= "Thank you for customer with us.<br><br>";
                $message .= "$this->siteName Team.";

                $configs = [
                    'to' => $customer_email,
                    'fromName' => $this->siteName,
                    'fromEmail' => $from_email,
                    'subject' => $subject,
                    'bodyHtml' => $message,
                ];

                // $this->_helper->General->mailSentByElastice( $configs , 'Forgot' );
                // Mail it
                $reply = ['status' => true, 'message' => 'Email has been sent successfully.'];
                echo Zend_Json::encode($reply);
                exit;
            } else {
                $reply = ['status' => false, 'message' => 'Invalid email. Please try again.'];
                echo Zend_Json::encode($reply);
                exit;
            }
        } else {
            echo 'Oops wrong request';
            exit;
        }
    }

    public function checkresetlinkAction()
    {
        if ($_SESSION['User']['session']) {
            $this->_redirect('customer/myprofile');
        }
        $param = $this->getRequest()->getParams();
        //echo "<pre>";print_r($param);die;
        $datetime = date('d-m-y h:i:s');
        $seconds = strtotime($datetime) - ($param['CTR']);
        $days    = floor($seconds / 86400);
        $hours   = floor(($seconds - ($days * 86400)) / 3600);
        $minutes = floor(($seconds - ($days * 86400) - ($hours * 3600)) / 60);
        //if($minutes <= 10){
        $eid = base64_decode($param['eid']);
        $cd = base64_decode($param['cd']);
        $token = ($param['token']);
        $ag = ($param['ag']);
        $SubmitData = array(
            "eid" => $eid,
            "cd" => $cd,
            "ag" => $ag,
            "token" => $token,
            "CTR" => $param['CTR']
        );
        $this->_resetsession->resetpass = $SubmitData;
        $this->_redirect('customer/resetpassword');
        //}else{
        //  die('Oops your reset password link is expired!! try again.');
        //}

    }

    public function resetpasswordAction()
    {
        //print_r($_SESSION['UserResetEmail']);die;
        if (isset($_SESSION['UserResetEmail']['resetpass'])) {

            $datetime = date('d-m-y h:i:s');
            $seconds = strtotime($datetime) - ($_SESSION['UserResetEmail']['resetpass']['CTR']);
            $days    = floor($seconds / 86400);
            $hours   = floor(($seconds - ($days * 86400)) / 3600);
            $minutes = floor(($seconds - ($days * 86400) - ($hours * 3600)) / 60);
            //if($minutes <= 10){
            $this->view->data = $_SESSION['UserResetEmail']['resetpass'];
            //}else{
            // $this->_redirect('customer/unsetresetdata'); 
            //}
            if ($this->getRequest()->isPost()) {
                $param = $this->getRequest()->getParams();
                $apiData = array(
                    "npass" => $param['npass'],
                    "copass" => $param['copass'],
                    "email" => $_SESSION['UserResetEmail']['resetpass']['eid'],
                    "CustomerSysId" => $_SESSION['UserResetEmail']['resetpass']['cd'],
                    "AgencySysId" => $_SESSION['UserResetEmail']['resetpass']['ag']
                );

                try {
                    $curl = curl_init($this->customerupdateforgotpasswordAPIUrl);
                    curl_setopt($curl, CURLOPT_POST, true);
                    curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($apiData));
                    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
                    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
                    $response = curl_exec($curl);
                    curl_close($curl);
                } catch (Exception $error) {
                    $this->view->error_msg = $error->getMessage();
                    die;
                }
                //print_r($response);die;
                if ($response == 4) {
                    $reply = ['status' => false, 'message' => 'All field required!!'];
                    echo Zend_Json::encode($reply);
                    exit;
                } elseif ($response == 3) {
                    $reply = ['status' => false, 'message' => 'Confirm password does not match with new password'];
                    echo Zend_Json::encode($reply);
                    exit;
                } elseif ($response == 2) {
                    $reply = ['status' => false, 'message' => 'Password update not response!!'];
                    echo Zend_Json::encode($reply);
                    exit;
                } elseif ($response == 1) {
                    $reply = ['status' => true, 'message' => 'Password has been reset successfully. Now Login and continue.'];
                    echo Zend_Json::encode($reply);
                    exit;
                } else {
                    $reply = ['status' => false, 'message' => 'Oops there is no response'];
                    echo Zend_Json::encode($reply);
                    exit;
                }
                //print_r($response);die;
            }
        } else {
            echo ('Oops! There seems to be some problem in processing your request!');
            exit;
        }

        //print_r($_SESSION['UserResetEmail']['resetpass']);

        //exit;

        //print_r($param);die;
    }

    public function unsetresetdataAction()
    {
        $storage = new Zend_Session_Namespace('UserResetEmail');
        $storage->unsetAll();
        $this->_redirect('/');
    }

    public function unsetdataAction()
    {
        $storage = new Zend_Session_Namespace('User');
        $storage->unsetAll();
        $this->_redirect('/');
    }

    /**
     * checklogin() method is used to check admin logedin or not
     * @param Null
     * @return Array 
     */
    public function checklogin()
    {
        /*************** check admin identity ************/
        if (!$_SESSION['User']['session']) {
            $this->_redirect('/');
        }
    }

    /******Google authentication code by sibo*****/
    public function loginwithGoogleAction()
    {
        $Loginwithgoogle = $this->objHelperLoginwithGoogle->Loginwithgoogle();
        //echo"<pre>"; print_r($Loginwithgoogle);die('dd');
        $this->_redirect($Loginwithgoogle);
    }

    public function googleAuthenticationAction()
    {

        $userData = $this->objHelperLoginwithGoogle->redirectgoogle();
        $apiData = array(
            'id' => $userData['id'],
            'email' => $userData['email'],
            'gender' => $userData['gender'],
            'picture' => $userData['picture'],
            'familyName' => $userData['familyName'],
            'givenName' => $userData['givenName'],

        );

        if (isset($userData['email']) && !empty($userData['email'])) {
            $mail = $userData['email'];
            $customerdata = $this->objMdl->rv_select_row('tbl_customer', ['EmailId', 'Contacts'], ['EmailId' => $mail, 'IsMarkForDel' => 0], ['CustomerSysId' => 'DESC']);
        }

        //$this->_sessionSocial->sessionSocial = $apiData;
        //$this->_user->session = $apiData;
        if (isset($customerdata['EmailId']) && !empty($customerdata['EmailId']) && isset($customerdata['Contacts']) && !empty($customerdata['Contacts'])) {
            $this->_sessionSocial->sessionSocial = $apiData;
            $this->_redirect('customer/login');
        } else {
            $apiData = array(
                'id' => $userData['id'],
                'email' => $userData['email'],
                'gender' => $userData['gender'],
                'picture' => $userData['picture'],
                'familyName' => $userData['familyName'],
                'givenName' => $userData['givenName'],

            );
            $this->_sessionSocial->sessionSocial = $apiData;
            //$this->_user->session = $apiData;
            $this->_redirect('customer/social-register');
        }
    }

    public function loginAction()
    {

        if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on') {
            $urlcurrent = "https://";
        } else {
            $urlcurrent = "http://";
        }
        $urlcurrent .= $_SERVER['HTTP_HOST'];

        $urlcurrent .= $_SERVER['REQUEST_URI'];

        if (isset($this->_sessionSocial->sessionSocial) && !empty($this->_sessionSocial->sessionSocial)) {
            $password = rand(10000, 100000);
            //        $storage = new Zend_Session_Namespace('Social');
            //        $storage->unsetAll(); 
            //        $this->_redirect('/');
            $apiData = array(
                'fname' => $this->_sessionSocial->sessionSocial['givenName'],
                'lname' => $this->_sessionSocial->sessionSocial['familyName'],
                'customerEmail' => $this->_sessionSocial->sessionSocial['email'],
                'countrycode' => '91',
                'mobilenumber' => '',
                'source' => '',
                'password' => $password,
                'AgencySysId' => $this->gtxagencysysid,
                'AgentSysId' => $this->gtxagentsysid
            );
            //echo '<pre>';print_r($apiData);die;
            $this->view->apiData = $apiData;
            // echo '<pre>';print_r($apiData);die;
            //if($this->getRequest()->isPost()){
            $param = $this->getRequest()->getParams();
            //echo '<pre>';print_r($param);die;
            $apiDataLogin = array(
                'fname' => $this->_sessionSocial->sessionSocial['givenName'],
                'lname' => $this->_sessionSocial->sessionSocial['familyName'],
                'customerEmail' => $this->_sessionSocial->sessionSocial['email'],
                'countrycode' => isset($param['ountryCode']) ? $param['ountryCode'] : '',
                'mobilenumber' => isset($param['mobilenumber']) ? $param['mobilenumber'] : '',
                'source' => '',
                'password' => date('d-m-y h:s:i'),
                'AgencySysId' => $this->gtxagencysysid,
                'AgentSysId' => $this->gtxagentsysid
            );
            //echo '<pre>';print_r($apiDataLogin);die;
            try {
                $curl_p = curl_init($this->customerauthsignup);
                curl_setopt($curl_p, CURLOPT_POST, true);
                curl_setopt($curl_p, CURLOPT_POSTFIELDS, http_build_query($apiDataLogin));
                curl_setopt($curl_p, CURLOPT_RETURNTRANSFER, true);
                curl_setopt($curl_p, CURLOPT_SSL_VERIFYPEER, false);
                curl_setopt($curl_p, CURLOPT_TIMEOUT, 300);
                $response = curl_exec($curl_p);
                curl_close($curl_p);
            } catch (Exception $error) {
                $this->view->error_msg = $error->getMessage();
                die;
            }
            $response_decode   = Zend_Json::decode($response, true);

            if ($response_decode['CustomerSysId'] == '' || empty($response_decode['CustomerSysId'])) {
                $datas = array(
                    'CustomerEmail' => $response_decode['customerEmail'],
                    'CustomerMobile' => $response_decode['mobilenumber'],
                    'AgencySysId' => $this->gtxagencysysid,
                );
                try {
                    $curl_p = curl_init($this->customerprofilebyemailMobileAPIUrl);
                    curl_setopt($curl_p, CURLOPT_POST, true);
                    curl_setopt($curl_p, CURLOPT_POSTFIELDS, http_build_query($datas));
                    curl_setopt($curl_p, CURLOPT_RETURNTRANSFER, true);
                    curl_setopt($curl_p, CURLOPT_SSL_VERIFYPEER, false);
                    curl_setopt($curl_p, CURLOPT_TIMEOUT, 300);
                    $response_user = curl_exec($curl_p);
                    curl_close($curl_p);
                } catch (Exception $error) {
                    $this->view->error_msg = $error->getMessage();
                    die;
                }

                $users_decode   = Zend_Json::decode($response_user, true);

                if ($users_decode['status'] == '1') {
                    $Login_Data = array(
                        'userName' => $users_decode['profile']['EmailId'],
                        'userPassword' => $users_decode['profile']['Password'],
                        'AgencySysId' => $this->gtxagencysysid
                    );
                }
            } else {
                //echo '<pre>';print_r($response_decode);die('ff');
                if ($response_decode['status'] == 'success') {
                    $Login_Data = array(
                        'userName' => $response_decode['customerEmail'],
                        'userPassword' => $response_decode['_token'],
                        'AgencySysId' => $this->gtxagencysysid
                    );
                }
            }
            try {
                $curl_p = curl_init($this->customerauthloginSocial);
                curl_setopt($curl_p, CURLOPT_POST, true);
                curl_setopt($curl_p, CURLOPT_POSTFIELDS, http_build_query($Login_Data));
                curl_setopt($curl_p, CURLOPT_RETURNTRANSFER, true);
                curl_setopt($curl_p, CURLOPT_SSL_VERIFYPEER, false);
                curl_setopt($curl_p, CURLOPT_TIMEOUT, 300);
                $response = curl_exec($curl_p);
                curl_close($curl_p);
            } catch (Exception $error) {
                $this->view->error_msg = $error->getMessage();
                die;
            }
            $response_login_decode   = Zend_Json::decode($response, true);
            //echo '<pre>';print_r($response_login_decode );die;
            if ($response_login_decode == 2) {
                $reply = ['status' => false, 'message' => 'Your account is inactive. Please Contact to the administrator.'];
                echo Zend_Json::encode($reply);
                exit;
            } else {
                $this->_user->session = $response_login_decode;
                $this->_redirect($urlcurrent);
                echo Zend_Json::encode($response_login_decode);
                exit;
            }
            // }
            //echo '<pre>';print_r($response_decode);die('ff');
        } else {
            die('Access Denied');
        }
    }


    public function loginfacebookAction()
    {

        if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on') {
            $urlcurrent = "https://";
        } else {
            $urlcurrent = "http://";
        }
        $urlcurrent .= $_SERVER['HTTP_HOST'];

        $urlcurrent .= $_SERVER['REQUEST_URI'];

        if (isset($this->_sessionSocialFB->_sessionSocialFB) && !empty($this->_sessionSocialFB->_sessionSocialFB)) {

            $apiData = array(
                'fname' => $this->_sessionSocialFB->_sessionSocialFB['givenName'],
                'lname' => $this->_sessionSocialFB->_sessionSocialFB['familyName'],
                'customerEmail' => $this->_sessionSocialFB->_sessionSocialFB['email'],
                'fbid' => $this->_sessionSocialFB->_sessionSocialFB['id'],
                'countrycode' => $this->_sessionSocialFB->_sessionSocialFB['countryCode'],
                'Contacts' => $this->_sessionSocialFB->_sessionSocialFB['phone'],
                'source' => '',
                'password' => $this->_sessionSocialFB->_sessionSocialFB['password'],
                'AgencySysId' => $this->gtxagencysysid,
                'AgentSysId' => $this->gtxagentsysid
            );



            $apiData['customerEmail'] = $this->_sessionSocialFB->_sessionSocialFB['email'];
            $apiData['Contacts'] = $this->_sessionSocialFB->_sessionSocialFB['phone'];
            $apiData['countrycode'] = $this->_sessionSocialFB->_sessionSocialFB['countryCode'];
            $apiData['password'] = $this->_sessionSocialFB->_sessionSocialFB['password'];
            //echo"<pre>";print_r($apiData);die;
            $this->view->apiData = $apiData;

            try {
                $curl_p = curl_init($this->customerauthsignup);
                curl_setopt($curl_p, CURLOPT_POST, true);
                curl_setopt($curl_p, CURLOPT_POSTFIELDS, http_build_query($apiData));
                curl_setopt($curl_p, CURLOPT_RETURNTRANSFER, true);
                curl_setopt($curl_p, CURLOPT_SSL_VERIFYPEER, false);
                curl_setopt($curl_p, CURLOPT_TIMEOUT, 300);
                $response = curl_exec($curl_p);
                curl_close($curl_p);
            } catch (Exception $error) {
                $this->view->error_msg = $error->getMessage();
                die;
            }
            $response_decode   = Zend_Json::decode($response, true);


            //echo '<pre>';print_r($response_decode);die('ff');
            if ($response_decode['CustomerSysId'] == '' || empty($response_decode['CustomerSysId'])) {
                $datas = array(
                    'CustomerEmail' => $response_decode['customerEmail'],
                    'CustomerMobile' => $response_decode['mobilenumber'],
                    'AgencySysId' => $this->gtxagencysysid,
                );
                try {
                    $curl_p = curl_init($this->customerprofilebyemailMobileAPIUrl);
                    curl_setopt($curl_p, CURLOPT_POST, true);
                    curl_setopt($curl_p, CURLOPT_POSTFIELDS, http_build_query($datas));
                    curl_setopt($curl_p, CURLOPT_RETURNTRANSFER, true);
                    curl_setopt($curl_p, CURLOPT_SSL_VERIFYPEER, false);
                    curl_setopt($curl_p, CURLOPT_TIMEOUT, 300);
                    $response_user = curl_exec($curl_p);
                    curl_close($curl_p);
                } catch (Exception $error) {
                    $this->view->error_msg = $error->getMessage();
                    die;
                }
                $users_decode   = Zend_Json::decode($response_user, true);

                if ($users_decode['status'] == '1') {
                    $Login_Data = array(
                        'userName' => $users_decode['profile']['EmailId'],
                        'userPassword' => $users_decode['profile']['Password'],
                        'AgencySysId' => $this->gtxagencysysid
                    );
                }
            } else {
                //echo '<pre>';print_r($response_decode);die('ff');
                if ($response_decode['status'] == 'success') {
                    $Login_Data = array(
                        'userName' => $response_decode['customerEmail'],
                        'userPassword' => $response_decode['_token'],
                        'AgencySysId' => $this->gtxagencysysid
                    );
                }
            }
            try {
                $curl_p = curl_init($this->customerauthloginSocial);
                curl_setopt($curl_p, CURLOPT_POST, true);
                curl_setopt($curl_p, CURLOPT_POSTFIELDS, http_build_query($Login_Data));
                curl_setopt($curl_p, CURLOPT_RETURNTRANSFER, true);
                curl_setopt($curl_p, CURLOPT_SSL_VERIFYPEER, false);
                curl_setopt($curl_p, CURLOPT_TIMEOUT, 300);
                $response = curl_exec($curl_p);
                curl_close($curl_p);
            } catch (Exception $error) {
                $this->view->error_msg = $error->getMessage();
                die;
            }
            $response_login_decode   = Zend_Json::decode($response, true);
            if ($response_login_decode == 2) {
                $reply = ['status' => false, 'message' => 'Your account is inactive. Please Contact to the administrator.'];
                echo Zend_Json::encode($reply);
                exit;
            } else {


                $this->_user->session = $response_login_decode;
                $this->_redirect($urlcurrent);
                echo Zend_Json::encode($response_login_decode);
                exit;
            }
            //echo '<pre>';print_r($response_decode);die('ff');
        } else {
            die('Access Denied');
        }
    }




    /*******Login with Facebook*********/

    //     public function loginwithFacebookAction()
    //    {
    //        $Loginwithgoogle = $this->objHelperLoginwithFacebook->Loginwithfacebook();

    //        print_r($Loginwithgoogle);die('dd');
    //         $this->_redirect($Loginwithgoogle);
    //    }


    public function facebookAuthenticationAction()
    {

        if ($this->getRequest()->isPost()) {
            $param = $this->getRequest()->getParams();

            $response = json_encode($param);

            $strFilePath = "customer/facebook/" . date('Y-m-d-H-i-s') . '_' . "_login_response";
            Zend_Controller_Action_HelperBroker::getStaticHelper("General")->createApiCallLogs($strFilePath, $response);

            $fbmail = $param['femail'];
            //echo"<pre>";print_r($param);die;

            if (!empty($fbmail)) {
                $customerdata = $this->objMdl->rv_select_row('tbl_customer', ['EmailId', 'Contacts', 'FirstName', 'LastName', 'Password', 'countryCode'], ['EmailId' => $param['femail'], 'IsMarkForDel' => 0], ['CustomerSysId' => 'DESC']);
            } elseif (isset($param['fbid']) && !empty($param['fbid'])) {
                $fbid = $param['fbid'];
                $customerdata = $this->objMdl->rv_select_row('tbl_customer', ['EmailId', 'Contacts', 'FirstName', 'LastName', 'Password', 'countryCode'], ['fbid' => $fbid, 'IsMarkForDel' => 0], ['CustomerSysId' => 'DESC']);
            }

            if (isset($customerdata['EmailId']) && !empty($customerdata['EmailId'])) {
                //echo"<pre>";print_r($customerdata);die;
                $apiDatalogin = array(
                    'id' => $param['fbid'],
                    'email' => $customerdata['EmailId'],
                    'phone' => $customerdata['Contacts'],
                    'picture' => $param['profilephoto'],
                    'familyName' => $customerdata['FirstName'],
                    'givenName' => $customerdata['LastName'],
                    'password' => $customerdata['Password'],
                    'countryCode' => $customerdata['countryCode'],

                );
                $this->_sessionSocialFB->_sessionSocialFB = $apiDatalogin;
                //$this->_user->session = $apiDatalogin;
                $this->_redirect('customer/loginfacebook');
            } else {
                $apiDatalogin = array(
                    'id' => $param['fbid'],
                    'email' => $param['femail'],
                    'picture' => $param['profilephoto'],
                    'familyName' => $param['ffirst_name'],
                    'givenName' => $param['flast_name'],
                );

                $this->_sessionSocialFB->_sessionSocialFB = $apiDatalogin;
                //$this->_user->session = $apiDatalogin;
                $this->_redirect('customer/social-register');
            }
        }
    }

    public function customerloginAction()
    {
        $request = Zend_Controller_Front::getInstance()->getRequest();
        if ($this->getRequest()->isPost()) {
            $data = $request->getPost();
            //echo '<pre>';print_r($data);die('dd');
            $this->_user->session = $data;
            $response = array('status' => true, 'msg' => 'success');
            echo json_encode($response);
            exit;
        }
    }

    public function logoutAction()
    {
        $storage = new Zend_Session_Namespace('User');
        $storage->unsetAll();
        $redirecturl = $_SERVER['HTTP_REFERER'];
        // echo"<pre>";print_r($_SERVER['HTTP_REFERER']);die;
        $this->_redirect($redirecturl);
    }

    public function socialRegisterAction()
    {
        //echo"<pre>";print_r($this->_sessionSocialFB->_sessionSocialFB);die;
        //$this->_sessionSocial->sessionSocial;
        //$this->_sessionSocialFB->_sessionSocialFB

        //echo"<pre>";print_r($this->_sessionSocialFB->_sessionSocialFB);die;
        if (isset($this->_sessionSocialFB->_sessionSocialFB['givenName']) && !empty($this->_sessionSocialFB->_sessionSocialFB['givenName'])) {
            $apiData = array(
                'fid' => $this->_sessionSocialFB->_sessionSocialFB['id'],
                'fname' => $this->_sessionSocialFB->_sessionSocialFB['givenName'],
                'lname' => $this->_sessionSocialFB->_sessionSocialFB['familyName'],
                'Contacts' => $this->_sessionSocialFB->_sessionSocialFB['phone'],
                'customerEmail' => $this->_sessionSocialFB->_sessionSocialFB['email'],
                'password' => date('d-m-y h:s:i'),
            );
        } else {
            $apiData = array(
                'fid' => '',
                'fname' => $this->_sessionSocial->sessionSocial['familyName'],
                'lname' => $this->_sessionSocial->sessionSocial['givenName'],
                'Contacts' => $this->_sessionSocial->sessionSocial['phone'],
                'customerEmail' => $this->_sessionSocial->sessionSocial['email'],
                'password' => date('d-m-y h:s:i'),
            );
        }
        // echo"<pre>";print_r($apiData);die;
        $this->view->apiData = $apiData;
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit