[ Index ]

PHP Cross Reference of vtigercrm-6.1.0

title

Body

[close]

/pkg/vtiger/modules/Webforms/settings/views/ -> Edit.php (source)

   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 Settings_Webforms_Edit_View extends Settings_Vtiger_Index_View {
  12  
  13  	public function checkPermission(Vtiger_Request $request) {
  14          parent::checkPermission($request);
  15  
  16          $moduleModel = Vtiger_Module_Model::getInstance($request->getModule());
  17          $currentUserPrivilegesModel = Users_Privileges_Model::getCurrentUserPrivilegesModel();
  18  
  19          if (!$currentUserPrivilegesModel->hasModulePermission($moduleModel->getId())) {
  20              throw new AppException('LBL_PERMISSION_DENIED');
  21          }
  22      }
  23  
  24  	public function process(Vtiger_Request $request) {
  25          $recordId = $request->get('record');
  26          $qualifiedModuleName = $request->getModule(false);
  27          $mode = '';
  28          $selectedFieldsList = $allFieldsList = array();
  29          $viewer = $this->getViewer($request);
  30          $supportedModules = Settings_Webforms_Module_Model::getSupportedModulesList();
  31  
  32          if ($recordId) {
  33              $recordModel = Settings_Webforms_Record_Model::getInstanceById($recordId, $qualifiedModuleName);
  34              $selectedFieldsList = $recordModel->getSelectedFieldsList();
  35              
  36              $sourceModule = $recordModel->get('targetmodule');
  37              $mode = 'edit';
  38          } else {
  39              $recordModel = Settings_Webforms_Record_Model::getCleanInstance($qualifiedModuleName);
  40              $sourceModule = $request->get('sourceModule');
  41              if (!$sourceModule) {
  42                  $sourceModule = reset(array_keys($supportedModules));
  43              }
  44              $recordModel->set('targetmodule',$sourceModule);
  45          }
  46          if(!$supportedModules[$sourceModule]){
  47              $message = vtranslate('LBL_ENABLE_TARGET_MODULES_FOR_WEBFORM',$qualifiedModuleName);
  48              $viewer->assign('MESSAGE', $message);
  49              $viewer->view('OperationNotPermitted.tpl', 'Vtiger');
  50              return false;
  51          }
  52  
  53          $allFieldsList = $recordModel->getAllFieldsList($sourceModule);
  54          $recordStructure = Vtiger_RecordStructure_Model::getInstanceFromRecordModel($recordModel, Vtiger_RecordStructure_Model::RECORD_STRUCTURE_MODE_EDIT);
  55  
  56          $viewer->assign('MODE', $mode);
  57          $viewer->assign('RECORD_ID', $recordId);
  58          $viewer->assign('RECORD_MODEL', $recordModel);
  59          $viewer->assign('MODULE', $qualifiedModuleName);
  60          $viewer->assign('QUALIFIED_MODULE', $qualifiedModuleName);
  61  
  62          $viewer->assign('SOURCE_MODULE', $sourceModule);
  63          $viewer->assign('ALL_FIELD_MODELS_LIST', $allFieldsList);
  64          $viewer->assign('SELECTED_FIELD_MODELS_LIST', $selectedFieldsList);
  65          $viewer->assign('RECORD_STRUCTURE_MODEL', $recordStructure);
  66          $viewer->assign('RECORD_STRUCTURE', $recordStructure->getStructure());
  67          $viewer->assign('USER_MODEL', Users_Record_Model::getCurrentUserModel());
  68          
  69          $viewer->view('EditView.tpl', $qualifiedModuleName);
  70      }
  71  
  72      /**
  73       * Function to get the list of Script models to be included
  74       * @param Vtiger_Request $request
  75       * @return <Array> - List of Vtiger_JsScript_Model instances
  76       */
  77  	function getHeaderScripts(Vtiger_Request $request) {
  78          $headerScriptInstances = parent::getHeaderScripts($request);
  79          $moduleName = $request->getModule();
  80  
  81          $jsFileNames = array(
  82              "modules.Settings.$moduleName.resources.Field",
  83              "modules.Settings.$moduleName.resources.Edit"
  84          );
  85  
  86          $jsScriptInstances = $this->checkAndConvertJsScripts($jsFileNames);
  87          $headerScriptInstances = array_merge($headerScriptInstances, $jsScriptInstances);
  88          return $headerScriptInstances;
  89      }
  90  
  91  }


Generated: Fri Nov 28 20:08:37 2014 Cross-referenced by PHPXref 0.7.1