[ 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 Inventory_ProductsPopup_View extends Vtiger_Popup_View { 12 13 /** 14 * Function returns module name for which Popup will be initialized 15 * @param type $request 16 */ 17 function getModule($request) { 18 return 'Products'; 19 } 20 21 function process (Vtiger_Request $request) { 22 $viewer = $this->getViewer ($request); 23 $companyDetails = Vtiger_CompanyDetails_Model::getInstanceById(); 24 $companyLogo = $companyDetails->getLogo(); 25 26 $this->initializeListViewContents($request, $viewer); 27 28 $viewer->assign('COMPANY_LOGO',$companyLogo); 29 $moduleName = 'Inventory'; 30 $viewer->assign('MODULE_NAME',$moduleName); 31 $viewer->view('Popup.tpl', $moduleName); 32 } 33 34 /* 35 * Function to initialize the required data in smarty to display the List View Contents 36 */ 37 public function initializeListViewContents(Vtiger_Request $request, Vtiger_Viewer $viewer) { 38 //src_module value is added to just to stop showing inactive products 39 $request->set('src_module', $request->getModule()); 40 41 $moduleName = $this->getModule($request); 42 $cvId = $request->get('cvid'); 43 $pageNumber = $request->get('page'); 44 $orderBy = $request->get('orderby'); 45 $sortOrder = $request->get('sortorder'); 46 $sourceModule = $request->get('src_module'); 47 $sourceField = $request->get('src_field'); 48 $sourceRecord = $request->get('src_record'); 49 $searchKey = $request->get('search_key'); 50 $searchValue = $request->get('search_value'); 51 $currencyId = $request->get('currency_id'); 52 53 //To handle special operation when selecting record from Popup 54 $getUrl = $request->get('get_url'); 55 56 //Check whether the request is in multi select mode 57 $multiSelectMode = $request->get('multi_select'); 58 if(empty($multiSelectMode)) { 59 $multiSelectMode = false; 60 } 61 62 if(empty($cvId)) { 63 $cvId = '0'; 64 } 65 if(empty ($pageNumber)) { 66 $pageNumber = '1'; 67 } 68 69 $pagingModel = new Vtiger_Paging_Model(); 70 $pagingModel->set('page', $pageNumber); 71 72 $moduleModel = Vtiger_Module_Model::getInstance($moduleName); 73 $listViewModel = Vtiger_ListView_Model::getInstanceForPopup($moduleName); 74 $recordStructureInstance = Vtiger_RecordStructure_Model::getInstanceForModule($moduleModel); 75 76 if(!empty($orderBy)) { 77 $listViewModel->set('orderby', $orderBy); 78 $listViewModel->set('sortorder', $sortOrder); 79 } 80 if(!empty($sourceModule)) { 81 $listViewModel->set('src_module', $sourceModule); 82 $listViewModel->set('src_field', $sourceField); 83 $listViewModel->set('src_record', $sourceRecord); 84 } 85 if((!empty($searchKey)) && (!empty($searchValue))) { 86 $listViewModel->set('search_key', $searchKey); 87 $listViewModel->set('search_value', $searchValue); 88 } 89 90 $productModel = Vtiger_Module_Model::getInstance('Products'); 91 if(!$this->listViewHeaders) { 92 $this->listViewHeaders = $listViewModel->getListViewHeaders(); 93 } 94 95 if(!$this->listViewEntries && $productModel->isActive()) { 96 $this->listViewEntries = $listViewModel->getListViewEntries($pagingModel); 97 } 98 99 if(!$productModel->isActive()){ 100 $this->listViewEntries = array(); 101 $viewer->assign('LBL_MODULE_DISABLED', true); 102 } 103 104 foreach ($this->listViewEntries as $key => $listViewEntry) { 105 $productId = $listViewEntry->getId(); 106 $subProducts = $listViewModel->getSubProducts($productId); 107 if($subProducts) { 108 $listViewEntry->set('subProducts', $subProducts); 109 } 110 } 111 112 $noOfEntries = count($this->listViewEntries); 113 114 if(empty($sortOrder)) { 115 $sortOrder = "ASC"; 116 } 117 if($sortOrder == "ASC") { 118 $nextSortOrder = "DESC"; 119 $sortImage = "downArrowSmall.png"; 120 }else { 121 $nextSortOrder = "ASC"; 122 $sortImage = "upArrowSmall.png"; 123 } 124 $viewer->assign('MODULE', $moduleName); 125 $viewer->assign('RELATED_MODULE', $moduleName); 126 $viewer->assign('SOURCE_MODULE', $sourceModule); 127 $viewer->assign('SOURCE_FIELD', $sourceField); 128 $viewer->assign('SOURCE_RECORD', $sourceRecord); 129 130 $viewer->assign('SEARCH_KEY', $searchKey); 131 $viewer->assign('SEARCH_VALUE', $searchValue); 132 133 $viewer->assign('ORDER_BY',$orderBy); 134 $viewer->assign('SORT_ORDER',$sortOrder); 135 $viewer->assign('NEXT_SORT_ORDER',$nextSortOrder); 136 $viewer->assign('SORT_IMAGE',$sortImage); 137 $viewer->assign('GETURL', $getUrl); 138 $viewer->assign('CURRENCY_ID', $currencyId); 139 140 $viewer->assign('RECORD_STRUCTURE_MODEL', $recordStructureInstance); 141 $viewer->assign('RECORD_STRUCTURE', $recordStructureInstance->getStructure()); 142 143 $viewer->assign('PAGING_MODEL', $pagingModel); 144 $viewer->assign('PAGE_NUMBER',$pageNumber); 145 146 $viewer->assign('LISTVIEW_ENTRIES_COUNT',$noOfEntries); 147 $viewer->assign('LISTVIEW_HEADERS', $this->listViewHeaders); 148 $viewer->assign('LISTVIEW_ENTRIES', $this->listViewEntries); 149 150 if (PerformancePrefs::getBoolean('LISTVIEW_COMPUTE_PAGE_COUNT', false)) { 151 if(!$this->listViewCount){ 152 $this->listViewCount = $listViewModel->getListViewCount(); 153 } 154 $totalCount = $this->listViewCount; 155 $pageLimit = $pagingModel->getPageLimit(); 156 $pageCount = ceil((int) $totalCount / (int) $pageLimit); 157 158 if($pageCount == 0){ 159 $pageCount = 1; 160 } 161 $viewer->assign('PAGE_COUNT', $pageCount); 162 $viewer->assign('LISTVIEW_COUNT', $totalCount); 163 } 164 165 $viewer->assign('MULTI_SELECT', $multiSelectMode); 166 $viewer->assign('CURRENT_USER_MODEL', Users_Record_Model::getCurrentUserModel()); 167 $viewer->assign('TARGET_MODULE', $moduleName); 168 $viewer->assign('MODULE', $request->getModule()); 169 $viewer->assign('GETURL', 'getTaxesURL'); 170 $viewer->assign('VIEW', 'ProductsPopup'); 171 } 172 173 /** 174 * Function to get the list of Script models to be included 175 * @param Vtiger_Request $request 176 * @return <Array> - List of Vtiger_JsScript_Model instances 177 */ 178 function getHeaderScripts(Vtiger_Request $request) { 179 $headerScriptInstances = parent::getHeaderScripts($request); 180 181 $moduleName = $request->getModule(); 182 $modulePopUpFile = 'modules.'.$moduleName.'.resources.Popup'; 183 unset($headerScriptInstances[$modulePopUpFile]); 184 185 $jsFileNames = array('modules.Inventory.resources.Popup'); 186 $jsFileNames[] = $modulePopUpFile; 187 $jsScriptInstances = $this->checkAndConvertJsScripts($jsFileNames); 188 $headerScriptInstances = array_merge($headerScriptInstances, $jsScriptInstances); 189 190 return $headerScriptInstances; 191 } 192 193 }
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 |