| 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/b2bzend/application/controllers/ |
Upload File : |
<?php
/**
* Copyright 2013 Catabatic Automation Technology Pvt Ltd.
* All rights reserved
*
* @description: Travel_Model_TblLead.php, Leads Model. 2016/06/16 16:30
* @author: Shakti Rana <shakti@catpl.co.in>
*/
class LeadController extends Catabatic_ValidateAdmin
{
const CONST_SOURCE_ADMIN = 3;
protected $intLoggedinUserId;
protected $InfoSourceSysId = 0;
protected $intLoggedinUserGroupSysId = 0;
protected $intLoggedinUserAgencySysId = 0;
protected $intLoggedinUserTrxCurrency = 0;
public function init()
{
parent::init();
$this->model = @$this->modelName ? new $this->modelName() : null;
$request = Zend_Controller_Front::getInstance()->getRequest();
$this->baseUrl = $request->getScheme() . '://' . $request->getHttpHost();
$sessionLogin_user = new Zend_Session_Namespace('sessionLogin_user');
$this->intLoggedinUserId = $sessionLogin_user->intLoggedinUserId;
$this->InfoSourceSysId = self::CONST_SOURCE_ADMIN;// Source - Agent
}
public function indexAction(){
}
/**
* Permission Action. Renders the list of permissions.
*/
public function permissionAction() {
$permissionModel = new Travel_Model_TblLead();
$params = $this->getRequest()->getParams();
$sql = "SELECT TOP 1 TBA.AgencySysId, Title, AgencyType, TBA.Address, TBAU.UserSysId, TBAU.EmailId, TBAU.UserRole, PrimaryContactNo
FROM TB_Agency_User AS TBAU
LEFT JOIN TB_Agency AS TBA
ON TBA.AgencySysId = TBAU.AgencySysId
AND TBA.AgencySysId={$params['AgencySysId']}
WHERE TBA.AgencySysId > 0
ORDER BY TBA.AgencySysId DESC";
$leadDetail = $permissionModel->getLeadList($sql);
if($leadDetail[0]['UserRole'] && $leadDetail[0]['UserSysId'])
{
// List of Roles of the Agency.
$leadDetail[0]['role'] = $permissionModel->getRole($leadDetail[0]['UserRole'],$leadDetail[0]['AgencySysId']);
$this->view->leadDetail = $leadDetail;
$this->subSystemType = $subSystemType = 2;//B2B System
//List of Modules & Sub Modules.
$permissionListArray = $permissionModel->getPermissionList($subSystemType);
foreach($permissionListArray as $permissionList)
{
if(!@$permissionList['ParentModule'])
{
$permissionModulesArray[] = $this->getList($permissionModel, $permissionListArray, $permissionList);
}
}
$this->view->permissionModulesArray = $permissionModulesArray;
/**
* Count of Components os a module/submodule.
*/
$maxComponent = $permissionModel->getComponents();
//$this->view->maxComponent = $maxComponent[0]['COUNT'];
$this->view->maxComponent = count($maxComponent);
$this->view->permissionModel = $permissionModel;
$this->view->componentTitles = $permissionModel->getComponentTitle();
$query = "SELECT ModuleType,ComponentType FROM TB_Agency_UserRole_Permission WHERE AgencySysId =".$leadDetail[0]['AgencySysId']." AND RoleSysId=".$leadDetail[0]['UserRole']." AND SubSystemType=".$subSystemType;
$rolePermissionArray = $permissionModel->executeQuery($query);
$selectedComponents = array();
foreach($rolePermissionArray as $rolePermission)
{
$selectedComponents[] = $rolePermission['ModuleType']."_".$rolePermission['ComponentType'];
}
$this->view->selectedComponents = $selectedComponents;
}
}
/**
* getList. Generate the hirerachy of the arrays.
*
* @param array $permissionListArray
* @param array $permissionList
* @return array
*/
public function getList($permissionModel, $permissionListArray, $permissionList)
{
foreach($permissionListArray as $list){
if($permissionList['ModuleType'] == $list['ParentModule'])
{
//$list['Components'] = $permissionModel->getComponents($list);
$nodeArray = $this->getList($permissionModel, $permissionListArray, $list);
$permissionList['ChildModule'][] = $nodeArray;
}
}
return $permissionList;
}
/**
* List of Agency/Partners.
*/
public function listAction()
{
$leadModel = new Travel_Model_TblLead();
$leadListArray = $leadModel->getLeadList();
$data = range(0, count($leadListArray));
$paginator = Zend_Paginator::factory($leadListArray);
//$pageNo = $this->getRequest()->getParams() ? $this->getRequest()->getParams() : 0;
// $pageNo = @$_POST['page'] ? $_POST['page'] : 0;
// $paginator->setCurrentPageNumber($pageNo);
// $paginator->setItemCountPerPage(25);
$page=$this->_getParam('page',1);
$paginator = Zend_Paginator::factory($leadListArray);
$paginator->setItemCountPerPage(GRID_PER_PAGE_RECORD_COUNT);
$paginator->setCurrentPageNumber($page);
$this->view->paginator = $paginator;
$this->view->leadListArray = $paginator;
$this->view->controller = $this;
}
/**
* Save Module permission(s) for default agent/partner of the agency.
*/
public function savemoduleAction()
{
$RWUADMask = 5; //Fix this after understanding the requirement @SHAKTIRANA.
$postDataArray = $_POST;
$agencySysId = $_POST['AgencySysId'];
$subSystemType = $_POST['SubSystemType'];
$roleSysId = $_POST['RoleSysId'];
$modules = @$_POST['modulecheckbox'];
$insertValues = null;
$modules = array();
$arrayKeys = array_keys($_POST);
foreach($arrayKeys as $key)
{
$keyString = strstr($key, 'componentscheckbox_');
if($keyString)
{
$keyId = explode('_', $keyString);
$modules[] = $keyId[1];
}
}
$permissionModel = new Travel_Model_TblLead();
foreach($modules as $moduleId)
{
$permissionData = array_fill(0, 5, 0);
foreach($_POST["componentscheckbox_$moduleId"] as $value)
{
$insertValues .= $insertValues ? ', ' : $insertValues;
$dateTime = date('Y-m-d H:i:s');
$moduleComponentCondition = @$componentType ? " AND ModuleType=$moduleId AND ComponentType=$value" : "";
$permissionModel->executeQuery("DELETE FROM TB_Agency_UserRole_Permission WHERE AgencySysId=$agencySysId AND RoleSysId=$roleSysId AND SubSystemType=$subSystemType $moduleComponentCondition");
/*
$insertValues = array( 'AgencySysId'=>$agencySysId,
'RoleSysId' => $roleSysId,
'SubSystemType'=>$subSystemType,
'ModuleType'=>$moduleId,
'ComponentType'=>$value,
'RWUADMask'=>10101,
'UpdateDate'=>"$dateTime",
'CreateDate'=>"$dateTime",
'IsActive'=>1);
$permissionModel->db->insert('TB_Agency_UserRole_Permission', $insertValues);
}
}
*/
/*Another approach to insert all vlaues into db. Please remove if execute insert query not work. @SHAKTIRANA */
$insertValues .= "($agencySysId, $roleSysId, $subSystemType, $moduleId, $value, 10101, '$dateTime', '$dateTime', 1)";
}
}
$insertQuery = "INSERT INTO TB_Agency_UserRole_Permission values $insertValues";
$permissionModel->executeQuery($insertQuery);
/*Another Approach Ends.*/
}
/**
* Delete Action.
*
* @param string $whereCondition
* @param string $url
* @param string $messageKey
*/
public function deleteAction()
{
$this->_helper->layout->disableLayout();
$this->_helper->viewRenderer->setNoRender(true);
$model = new Travel_Model_TblAgency();
$agencyId = $this->getRequest()->getParam('AgencySysId');
$isRecordDeleted = $model->deleteRecord(" AgencySysId = $agencyId", 'TB_Agency');
$message = @$isRecordDeleted ? "Agency deleted successfully." : "Agency deletion failed.";
$this->_helper->flashMessenger->addMessage($message);
if(@$isRecordDeleted)
{
$this->_helper->redirector('list', 'lead');
}
}
/**
* Deactivate Hotel Action.
*/
public function deactivateAction()
{
$this->_helper->layout->disableLayout();
$this->_helper->viewRenderer->setNoRender(true);
$objHotel = new Travel_Model_TblAgency();
$agencyId = $this->getRequest()->getParam('id');
$isDeactive = $objHotel->setActiveDeactive(" AgencySysId=$agencyId", "TB_Agency", 0);
$message = @$isDeactive ? "Agency deactivated successfully." : "Agency deactivation failed.";
$this->_helper->flashMessenger->addMessage($message);
if(@$isDeactive)
{
$this->_redirect('/lead/list');
}
}
/**
* Activate Hotel Action.
*/
public function activateAction()
{
$this->tableName = 'TB_IC_Accomdation';
$this->_helper->layout->disableLayout();
$this->_helper->viewRenderer->setNoRender(true);
$objHotel = new Travel_Model_TblAgency();
$agencyId = $this->getRequest()->getParam('id');
$isActive = $objHotel->setActiveDeactive(" AgencySysId=$agencyId", "TB_Agency", 1);
$message = @$isRecordDeleted ? "Agency activated successfully." : "Agency activation failed.";
$this->_helper->flashMessenger->addMessage($message);
if(@$isActive)
{
$this->_redirect('/lead/list');
}
}
}