[ 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.0 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 Accounts_TransferOwnership_Action extends Vtiger_Action_Controller { 12 13 function checkPermission(Vtiger_Request $request) { 14 $moduleName = $request->getModule(); 15 $moduleModel = Vtiger_Module_Model::getInstance($moduleName); 16 $currentUserPriviligesModel = Users_Privileges_Model::getCurrentUserPrivilegesModel(); 17 18 if(!$currentUserPriviligesModel->hasModuleActionPermission($moduleModel->getId(), 'Save')) { 19 throw new AppException(vtranslate($moduleName).' '.vtranslate('LBL_NOT_ACCESSIBLE')); 20 } 21 } 22 23 public function process(Vtiger_Request $request) { 24 $module = $request->getModule(); 25 $moduleModel = Vtiger_Module_Model::getInstance($module); 26 $transferOwnerId = $request->get('transferOwnerId'); 27 $record = $request->get('record'); 28 if(empty($record)) 29 $recordIds = $this->getBaseModuleRecordIds($request); 30 else 31 $recordIds[] = $record; 32 $relatedModuleRecordIds = $moduleModel->getRelatedModuleRecordIds($request, $recordIds); 33 foreach ($recordIds as $key => $recordId) { 34 array_push($relatedModuleRecordIds, $recordId); 35 } 36 array_merge($relatedModuleRecordIds, $recordIds); 37 $moduleModel->transferRecordsOwnership($transferOwnerId, $relatedModuleRecordIds); 38 39 $response = new Vtiger_Response(); 40 $response->setResult(true); 41 $response->emit(); 42 } 43 44 protected function getBaseModuleRecordIds(Vtiger_Request $request) { 45 $cvId = $request->get('viewname'); 46 $module = $request->getModule(); 47 $selectedIds = $request->get('selected_ids'); 48 $excludedIds = $request->get('excluded_ids'); 49 if(!empty($selectedIds) && $selectedIds != 'all') { 50 if(!empty($selectedIds) && count($selectedIds) > 0) { 51 return $selectedIds; 52 } 53 } 54 55 if($selectedIds == 'all'){ 56 $customViewModel = CustomView_Record_Model::getInstanceById($cvId); 57 if($customViewModel) { 58 return $customViewModel->getRecordIds($excludedIds, $module); 59 } 60 } 61 return array(); 62 } 63 64 public function validateRequest(Vtiger_Request $request) { 65 $request->validateWriteAccess(); 66 } 67 }
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 |