public function showFieldLayout(Vtiger_Request $request) { $sourceModule = $request->get('sourceModule'); $menuModelsList = Vtiger_Module_Model::getQuickCreateModules(); if (empty($sourceModule)) { //To get the first element $firstElement = reset($menuModelsList); $sourceModule = array($firstElement->get('name')); } else { $sourceModule = array($sourceModule); } $quickCreateContents = array(); if (in_array('Calendar', $sourceModule)) { $sourceModule = array('Calendar', 'Events'); } foreach ($sourceModule as $module) { $recordModel = Vtiger_Record_Model::getCleanInstance($module); $recordStructureInstance = Vtiger_RecordStructure_Model::getInstanceFromRecordModel($recordModel, Vtiger_RecordStructure_Model::RECORD_STRUCTURE_MODE_QUICKCREATE); $quickCreateContents[$module] = $recordStructureInstance->getStructure(); } $qualifiedModule = $request->getModule(false); $viewer = $this->getViewer($request); $viewer->assign('SELECTED_MODULE_NAME', $sourceModule[0]); $viewer->assign('SUPPORTED_MODULES', $menuModelsList); $viewer->assign('USER_MODEL', Users_Record_Model::getCurrentUserModel()); $viewer->assign('RECORDS_STRUCTURE', $quickCreateContents); $viewer->assign('QUALIFIED_MODULE', $qualifiedModule); $viewer->view('Index.tpl', $qualifiedModule); }
public function getConfig($id, $module, $baseModule) { $db = PearDatabase::getInstance(); $modulesQuickCreate = Vtiger_Module_Model::getQuickCreateModules(true); $modules = []; foreach ($modulesQuickCreate as $moduleName => $moduleModel) { $quickCreateModule = $moduleModel->isQuickCreateSupported(); $singularLabel = $moduleModel->getSingularLabelKey(); if ($singularLabel == 'SINGLE_Calendar') { $singularLabel = 'LBL_EVENT_OR_TASK'; } if ($quickCreateModule == 1) { $modules[$moduleName] = $singularLabel; } } return array('modules' => $modules); }