[ Index ] |
PHP Cross Reference of vtigercrm-6.1.0 |
[Summary view] [Print] [Text view]
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 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Fri Nov 28 20:08:37 2014 | Cross-referenced by PHPXref 0.7.1 |