[ Index ]

PHP Cross Reference of vtigercrm-6.1.0

title

Body

[close]

/modules/Vtiger/views/ -> EmailsRelatedModulePopup.php (source)

   1  <?php
   2  /*+**********************************************************************************
   3   * The contents of this file are subject to the vtiger CRM Public License Version 1.1
   4   * ("License"); You may not use this file except in compliance with the License
   5   * The Original Code is:  vtiger CRM Open Source
   6   * The Initial Developer of the Original Code is vtiger.
   7   * Portions created by vtiger are Copyright (C) vtiger.
   8   * All Rights Reserved.
   9   ************************************************************************************/
  10  
  11  class Vtiger_EmailsRelatedModulePopup_View extends Vtiger_Popup_View {
  12      
  13  	function process (Vtiger_Request $request) {
  14          $viewer = $this->getViewer ($request);
  15          $moduleName = $request->getModule();
  16          $companyDetails = Vtiger_CompanyDetails_Model::getInstanceById();
  17          $companyLogo = $companyDetails->getLogo();
  18  
  19          $this->initializeListViewContents($request, $viewer);
  20  
  21          $viewer->assign('MODULE_NAME',$moduleName);
  22          $viewer->assign('COMPANY_LOGO',$companyLogo);
  23  
  24  
  25          $viewer->view('Popup.tpl', $moduleName);
  26      }
  27      
  28      /*
  29       * Function to initialize the required data in smarty to display the List View Contents
  30       */
  31  	public function initializeListViewContents(Vtiger_Request $request, Vtiger_Viewer $viewer) {
  32          $moduleName = $this->getModule($request);
  33          $cvId = $request->get('cvid');
  34          $pageNumber = $request->get('page');
  35          $orderBy = $request->get('orderby');
  36          $sortOrder = $request->get('sortorder');
  37          $sourceModule = $request->get('src_module');
  38          $sourceField = $request->get('src_field');
  39          $sourceRecord = $request->get('src_record');
  40          $searchKey = $request->get('search_key');
  41          $searchValue = $request->get('search_value');
  42          $currencyId = $request->get('currency_id');
  43          $selectedFields=$request->get('selectedFields'); 
  44          if(!empty($selectedFields)){
  45              foreach($selectedFields as $key=>$value){  
  46                  $selectFields[$value]=$value;  
  47              }  
  48          }
  49          $view = $request->get('view');
  50  
  51          //To handle special operation when selecting record from Popup
  52          $getUrl = $request->get('get_url');
  53  
  54          //Enable multiselect mode for email related popup
  55          $multiSelectMode = true;
  56  
  57          if(empty($cvId)) {
  58              $cvId = '0';
  59          }
  60          if(empty ($pageNumber)){
  61              $pageNumber = '1';
  62          }
  63  
  64          $pagingModel = new Vtiger_Paging_Model();
  65          $pagingModel->set('page', $pageNumber);
  66  
  67          $moduleModel = Vtiger_Module_Model::getInstance($moduleName);
  68          $listViewModel = Vtiger_ListView_Model::getInstanceForPopup($moduleName);
  69          $recordStructureInstance = Vtiger_RecordStructure_Model::getInstanceForModule($moduleModel);
  70  
  71          $primaryEmailFieldName = 'email';
  72          if ($moduleName == 'Accounts' || $moduleName == 'Users') {
  73              $primaryEmailFieldName = 'email1';
  74          }
  75          
  76          $listViewModel->extendPopupFields(array($primaryEmailFieldName=>$primaryEmailFieldName));
  77          
  78          if(!empty($orderBy)) {
  79              $listViewModel->set('orderby', $orderBy);
  80              $listViewModel->set('sortorder', $sortOrder);
  81          }
  82          if(!empty($sourceModule)) {
  83              $listViewModel->set('src_module', $sourceModule);
  84              $listViewModel->set('src_field', $sourceField);
  85              $listViewModel->set('src_record', $sourceRecord);
  86          }
  87          if((!empty($searchKey)) && (!empty($searchValue)))  {
  88              $listViewModel->set('search_key', $searchKey);
  89              $listViewModel->set('search_value', $searchValue);
  90          }
  91  
  92          if(!$this->listViewHeaders){
  93              $this->listViewHeaders = $listViewModel->getListViewHeaders();
  94          }
  95          if(!$this->listViewEntries){
  96              $this->listViewEntries = $listViewModel->getListViewEntries($pagingModel);
  97          }
  98          $noOfEntries = count($this->listViewEntries);
  99  
 100          if(empty($sortOrder)){
 101              $sortOrder = "ASC";
 102          }
 103          if($sortOrder == "ASC"){
 104              $nextSortOrder = "DESC";
 105              $sortImage = "downArrowSmall.png";
 106          }else{
 107              $nextSortOrder = "ASC";
 108              $sortImage = "upArrowSmall.png";
 109          }
 110          $viewer->assign('MODULE', $moduleName);
 111  
 112                  $viewer->assign('SELECT_FIELDS',$selectFields); 
 113          $viewer->assign('SOURCE_MODULE', $sourceModule);
 114          $viewer->assign('SOURCE_FIELD', $sourceField);
 115          $viewer->assign('SOURCE_RECORD', $sourceRecord);
 116          $viewer->assign('VIEW', $view);
 117  
 118          $viewer->assign('SEARCH_KEY', $searchKey);
 119          $viewer->assign('SEARCH_VALUE', $searchValue);
 120  
 121          $viewer->assign('ORDER_BY',$orderBy);
 122          $viewer->assign('SORT_ORDER',$sortOrder);
 123          $viewer->assign('NEXT_SORT_ORDER',$nextSortOrder);
 124          $viewer->assign('SORT_IMAGE',$sortImage);
 125          $viewer->assign('GETURL', $getUrl);
 126          $viewer->assign('CURRENCY_ID', $currencyId);
 127  
 128          $viewer->assign('RECORD_STRUCTURE_MODEL', $recordStructureInstance);
 129          $viewer->assign('RECORD_STRUCTURE', $recordStructureInstance->getStructure());
 130  
 131          $viewer->assign('PAGING_MODEL', $pagingModel);
 132          $viewer->assign('PAGE_NUMBER',$pageNumber);
 133  
 134          $viewer->assign('LISTVIEW_ENTRIES_COUNT',$noOfEntries);
 135          $viewer->assign('LISTVIEW_HEADERS', $this->listViewHeaders);
 136          $viewer->assign('LISTVIEW_ENTRIES', $this->listViewEntries);
 137          
 138          if (PerformancePrefs::getBoolean('LISTVIEW_COMPUTE_PAGE_COUNT', false)) {
 139              if(!$this->listViewCount){
 140                  $this->listViewCount = $listViewModel->getListViewCount();
 141              }
 142              $totalCount = $this->listViewCount;
 143              $pageLimit = $pagingModel->getPageLimit();
 144              $pageCount = ceil((int) $totalCount / (int) $pageLimit);
 145  
 146              if($pageCount == 0){
 147                  $pageCount = 1;
 148              }
 149              $viewer->assign('PAGE_COUNT', $pageCount);
 150              $viewer->assign('LISTVIEW_COUNT', $totalCount);
 151          }
 152  
 153          $viewer->assign('MULTI_SELECT', $multiSelectMode);
 154          $viewer->assign('PRIMARY_EMAIL_FIELD_NAME', $primaryEmailFieldName);
 155          $viewer->assign('CURRENT_USER_MODEL', Users_Record_Model::getCurrentUserModel());
 156      }
 157      
 158      /**
 159       * Function to get the list of Script models to be included
 160       * @param Vtiger_Request $request
 161       * @return <Array> - List of Vtiger_JsScript_Model instances
 162       */
 163  	function getHeaderScripts(Vtiger_Request $request) {
 164          $headerScriptInstances = parent::getHeaderScripts($request);
 165          $moduleName = $request->getModule();
 166  
 167          $jsFileNames = array(
 168              'modules.Vtiger.resources.EmailsRelatedPopup'
 169          );
 170  
 171          $jsScriptInstances = $this->checkAndConvertJsScripts($jsFileNames);
 172          $headerScriptInstances = array_merge($headerScriptInstances, $jsScriptInstances);
 173          return $headerScriptInstances;
 174      }
 175  }


Generated: Fri Nov 28 20:08:37 2014 Cross-referenced by PHPXref 0.7.1