[ 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 Invoice_MassSave_Action extends Inventory_MassSave_Action { 12 13 public function process(Vtiger_Request $request) { 14 $moduleName = $request->getModule(); 15 $recordModels = $this->getRecordModelsFromRequest($request); 16 17 foreach($recordModels as $recordId => $recordModel) { 18 if(Users_Privileges_Model::isPermitted($moduleName, 'Save', $recordId)) { 19 //Inventory line items getting wiped out 20 $_REQUEST['action'] = 'MassEditSave'; 21 $recordModel->save(); 22 } 23 } 24 25 $response = new Vtiger_Response(); 26 $response->setResult(true); 27 $response->emit(); 28 } 29 30 /** 31 * Function to get the record model based on the request parameters 32 * @param Vtiger_Request $request 33 * @return Vtiger_Record_Model or Module specific Record Model instance 34 */ 35 public function getRecordModelsFromRequest(Vtiger_Request $request) { 36 $moduleName = $request->getModule(); 37 $moduleModel = Vtiger_Module_Model::getInstance($moduleName); 38 39 $recordIds = $this->getRecordsListFromRequest($request); 40 $recordModels = array(); 41 42 $fieldModelList = $moduleModel->getFields(); 43 foreach($recordIds as $recordId) { 44 $recordModel = Vtiger_Record_Model::getInstanceById($recordId, $moduleModel); 45 $recordModel->set('id', $recordId); 46 $recordModel->set('mode', 'edit'); 47 48 foreach ($fieldModelList as $fieldName => $fieldModel) { 49 $fieldValue = $request->get($fieldName, null); 50 $fieldDataType = $fieldModel->getFieldDataType(); 51 52 if($fieldDataType == 'time') { 53 $fieldValue = Vtiger_Time_UIType::getTimeValueWithSeconds($fieldValue); 54 } else if($fieldDataType === 'date') { 55 $fieldValue = $fieldModel->getUITypeModel()->getDBInsertValue($fieldValue); 56 } 57 58 if(isset($fieldValue) && $fieldValue != null && !is_array($fieldValue)) { 59 $fieldValue = trim($fieldValue); 60 $recordModel->set($fieldName, $fieldValue); 61 } 62 } 63 $recordModels[$recordId] = $recordModel; 64 } 65 return $recordModels; 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 |