getModule(); if (!(Users_Privileges_Model::isPermitted($moduleName, 'EditView'))) { throw new AppException(vtranslate('LBL_PERMISSION_DENIED', $moduleName)); } } public function process(Vtiger_Request $request) { $moduleName = $request->getModule(); $recordModel = Vtiger_Record_Model::getCleanInstance($moduleName); $moduleModel = $recordModel->getModule(); $fieldList = $moduleModel->getFields(); $requestFieldList = array_intersect_key($request->getAll(), $fieldList); foreach($requestFieldList as $fieldName => $fieldValue){ $fieldModel = $fieldList[$fieldName]; if($fieldModel->isEditable()) { $recordModel->set($fieldName, $fieldModel->getDBInsertValue($fieldValue)); } } $recordStructureInstance = Vtiger_RecordStructure_Model::getInstanceFromRecordModel($recordModel, Vtiger_RecordStructure_Model::RECORD_STRUCTURE_MODE_QUICKCREATE); $picklistDependencyDatasource = Vtiger_DependencyPicklist::getPicklistDependencyDatasource($moduleName); $viewer = $this->getViewer($request); $viewer->assign('PICKIST_DEPENDENCY_DATASOURCE',Zend_Json::encode($picklistDependencyDatasource)); $viewer->assign('CURRENTDATE', date('Y-n-j')); $viewer->assign('MODULE', $moduleName); $viewer->assign('SINGLE_MODULE', 'SINGLE_'.$moduleName); $viewer->assign('MODULE_MODEL', $moduleModel); $viewer->assign('RECORD_STRUCTURE_MODEL', $recordStructureInstance); $viewer->assign('RECORD_STRUCTURE', $recordStructureInstance->getStructure()); $viewer->assign('USER_MODEL', Users_Record_Model::getCurrentUserModel()); $viewer->assign('SCRIPTS', $this->getHeaderScripts($request)); $viewer->assign('MAX_UPLOAD_LIMIT_MB', Vtiger_Util_Helper::getMaxUploadSize()); $viewer->assign('MAX_UPLOAD_LIMIT', vglobal('upload_maxsize')); echo $viewer->view('QuickCreate.tpl',$moduleName,true); } public function getHeaderScripts(Vtiger_Request $request) { $moduleName = $request->getModule(); $jsFileNames = array( "modules.$moduleName.resources.Edit" ); $jsScriptInstances = $this->checkAndConvertJsScripts($jsFileNames); return $jsScriptInstances; } public function validateRequest(Vtiger_Request $request) { $request->validateWriteAccess(); } }