[ Index ]

PHP Cross Reference of vtigercrm-6.1.0

title

Body

[close]

/modules/Settings/Picklist/views/ -> IndexAjax.php (source)

   1  <?php
   2  
   3  /*+**********************************************************************************
   4   * The contents of this file are subject to the vtiger CRM Public License Version 1.1
   5   * ("License"); You may not use this file except in compliance with the License
   6   * The Original Code is:  vtiger CRM Open Source
   7   * The Initial Developer of the Original Code is vtiger.
   8   * Portions created by vtiger are Copyright (C) vtiger.
   9   * All Rights Reserved.
  10   ************************************************************************************/
  11  
  12  class Settings_Picklist_IndexAjax_View extends Settings_Vtiger_IndexAjax_View {
  13  
  14      function __construct() {
  15          parent::__construct();
  16          $this->exposeMethod('showEditView');
  17          $this->exposeMethod('showDeleteView');
  18          $this->exposeMethod('getPickListDetailsForModule');
  19          $this->exposeMethod('getPickListValueForField');
  20          $this->exposeMethod('getPickListValueByRole');
  21          $this->exposeMethod('showAssignValueToRoleView');
  22      }
  23  
  24      public function process(Vtiger_Request $request) {
  25          $mode = $request->get('mode');
  26          if($this->isMethodExposed($mode)) {
  27              $this->invokeExposedMethod($mode, $request);
  28          }
  29      }
  30  
  31      public function showEditView(Vtiger_Request $request) {
  32          $module = $request->get('source_module');
  33          $pickListFieldId = $request->get('pickListFieldId');
  34          $fieldModel = Settings_Picklist_Field_Model::getInstance($pickListFieldId);
  35          $valueToEdit = $request->getRaw('fieldValue');
  36  
  37          $selectedFieldEditablePickListValues = $fieldModel->getEditablePicklistValues($fieldModel->getName());
  38          $selectedFieldNonEditablePickListValues = $fieldModel->getNonEditablePicklistValues($fieldModel->getName());
  39      //    $selectedFieldAllPickListValues =  array_map('Vtiger_Util_Helper::toSafeHTML', $selectedFieldAllPickListValues);
  40          $qualifiedName = $request->getModule(false);
  41          $viewer = $this->getViewer($request);
  42          $moduleName = $request->getModule();
  43          $viewer->assign('SOURCE_MODULE', $module);
  44          $viewer->assign('SOURCE_MODULE_NAME',$module);
  45          $viewer->assign('FIELD_MODEL',$fieldModel);
  46          $viewer->assign('FIELD_VALUE',$valueToEdit);
  47          $viewer->assign('SELECTED_PICKLISTFIELD_EDITABLE_VALUES',$selectedFieldEditablePickListValues);
  48          $viewer->assign('SELECTED_PICKLISTFIELD_NON_EDITABLE_VALUES',$selectedFieldNonEditablePickListValues);
  49          $viewer->assign('MODULE',$moduleName);
  50          $viewer->assign('QUALIFIED_MODULE',$qualifiedName);
  51          echo $viewer->view('EditView.tpl', $qualifiedName, true);
  52      }
  53  
  54      public function showDeleteView(Vtiger_Request $request) {
  55          $module = $request->get('source_module');
  56          $pickListFieldId = $request->get('pickListFieldId');
  57          $fieldModel = Settings_Picklist_Field_Model::getInstance($pickListFieldId);
  58          $valueToDelete = $request->get('fieldValue');
  59  
  60          $selectedFieldEditablePickListValues = $fieldModel->getEditablePicklistValues($fieldModel->getName());
  61          $selectedFieldNonEditablePickListValues = $fieldModel->getNonEditablePicklistValues($fieldModel->getName());
  62          $selectedFieldEditablePickListValues =  array_map('Vtiger_Util_Helper::toSafeHTML', $selectedFieldEditablePickListValues);
  63          if(!empty($selectedFieldNonEditablePickListValues)) {
  64              $selectedFieldNonEditablePickListValues =  array_map('Vtiger_Util_Helper::toSafeHTML', $selectedFieldNonEditablePickListValues);
  65          }
  66  
  67          // merge the non-editable picklist value also with editable values, so that deleted value can be replaced with either of them.
  68                  if(!empty($selectedFieldNonEditablePickListValues)){
  69                      $selectedFieldEditablePickListValues = array_merge($selectedFieldEditablePickListValues, $selectedFieldNonEditablePickListValues);
  70                  }
  71  
  72          $qualifiedName = $request->getModule(false);
  73          $viewer = $this->getViewer($request);
  74          $moduleName = $request->getModule();
  75          $viewer->assign('SOURCE_MODULE', $module);
  76          $viewer->assign('SOURCE_MODULE_NAME',$module);
  77          $viewer->assign('FIELD_MODEL',$fieldModel);
  78  
  79          $viewer->assign('MODULE',$moduleName);
  80          $viewer->assign('QUALIFIED_MODULE',$qualifiedName);
  81          $viewer->assign('SELECTED_PICKLISTFIELD_EDITABLE_VALUES',$selectedFieldEditablePickListValues);
  82          $viewer->assign('SELECTED_PICKLISTFIELD_NON_EDITABLE_VALUES',$selectedFieldNonEditablePickListValues);
  83          $viewer->assign('FIELD_VALUES',array_map('Vtiger_Util_Helper::toSafeHTML', $valueToDelete));
  84          echo $viewer->view('DeleteView.tpl', $qualifiedName, true);
  85      }
  86  
  87      public function getPickListDetailsForModule(Vtiger_Request $request) {
  88          $sourceModule = $request->get('source_module');
  89          $moduleModel = Settings_Picklist_Module_Model::getInstance($sourceModule);
  90          //TODO: see if you needs to optimize this , since its will gets all the fields and filter picklist fields
  91          $pickListFields = $moduleModel->getFieldsByType(array('picklist','multipicklist'));
  92  
  93          $qualifiedName = $request->getModule(false);
  94  
  95          $viewer = $this->getViewer($request);
  96          $viewer->assign('PICKLIST_FIELDS',$pickListFields);
  97          $viewer->assign('SELECTED_MODULE_NAME',$sourceModule);
  98          $viewer->assign('QUALIFIED_MODULE',$qualifiedName);
  99          $viewer->view('ModulePickListDetail.tpl',$qualifiedName);
 100      }
 101  
 102      public function getPickListValueForField(Vtiger_Request $request) {
 103          $sourceModule = $request->get('source_module');
 104          $pickFieldId = $request->get('pickListFieldId');
 105          $fieldModel = Settings_Picklist_Field_Model::getInstance($pickFieldId);
 106  
 107          $moduleName = $request->getModule();
 108          $qualifiedName = $request->getModule(false);
 109  
 110          $selectedFieldAllPickListValues = Vtiger_Util_Helper::getPickListValues($fieldModel->getName());
 111          $viewer = $this->getViewer($request);
 112          $viewer->assign('SELECTED_PICKLIST_FIELDMODEL',$fieldModel);
 113          $viewer->assign('SELECTED_MODULE_NAME',$sourceModule);
 114          $viewer->assign('MODULE',$moduleName);
 115          $viewer->assign('QUALIFIED_MODULE',$qualifiedName);
 116          $viewer->assign('ROLES_LIST', Settings_Roles_Record_Model::getAll());
 117          $viewer->assign('SELECTED_PICKLISTFIELD_ALL_VALUES',$selectedFieldAllPickListValues);
 118          $viewer->view('PickListValueDetail.tpl',$qualifiedName);
 119      }
 120  
 121  
 122      public function getPickListValueByRole(Vtiger_Request $request) {
 123          $sourceModule = $request->get('source_module');
 124          $pickFieldId = $request->get('pickListFieldId');
 125          $fieldModel = Settings_Picklist_Field_Model::getInstance($pickFieldId);
 126          $moduleName = $request->getModule();
 127          $qualifiedName = $request->getModule(false);
 128  
 129          $userSelectedRoleId = $request->get('rolesSelected');
 130  
 131          $pickListValuesForRole = $fieldModel->getPicklistValues(array($userSelectedRoleId),'CONJUNCTION');
 132          $pickListValuesForRole = array_map('Vtiger_Util_Helper::toSafeHTML', $pickListValuesForRole);
 133          $allPickListValues = Vtiger_Util_Helper::getPickListValues($fieldModel->getName());
 134          $allPickListValues =  array_map('Vtiger_Util_Helper::toSafeHTML', $allPickListValues);
 135  
 136          $viewer = $this->getViewer($request);
 137          $viewer->assign('SELECTED_PICKLIST_FIELDMODEL',$fieldModel);
 138          $viewer->assign('SELECTED_MODULE_NAME',$sourceModule);
 139          $viewer->assign('MODULE',$moduleName);
 140          $viewer->assign('QUALIFIED_MODULE',$qualifiedName);
 141          $viewer->assign('ROLE_PICKLIST_VALUES',$pickListValuesForRole);
 142          $viewer->assign('ALL_PICKLIST_VALUES', $allPickListValues);
 143          $viewer->view('PickListValueByRole.tpl',$qualifiedName);
 144      }
 145  
 146       /**
 147       * Function which will assign existing values to the roles
 148       * @param Vtiger_Request $request
 149       */
 150      public function showAssignValueToRoleView(Vtiger_Request $request) {
 151          $sourceModule = $request->get('source_module');
 152          $pickFieldId = $request->get('pickListFieldId');
 153          $fieldModel = Settings_Picklist_Field_Model::getInstance($pickFieldId);
 154  
 155          $moduleName = $request->getModule();
 156          $qualifiedName = $request->getModule(false);
 157  
 158          $selectedFieldAllPickListValues = Vtiger_Util_Helper::getPickListValues($fieldModel->getName());
 159          $selectedFieldAllPickListValues =  array_map('Vtiger_Util_Helper::toSafeHTML', $selectedFieldAllPickListValues);
 160          $viewer = $this->getViewer($request);
 161          $viewer->assign('SELECTED_PICKLIST_FIELDMODEL',$fieldModel);
 162          $viewer->assign('SELECTED_MODULE_NAME',$sourceModule);
 163          $viewer->assign('MODULE',$moduleName);
 164          $viewer->assign('QUALIFIED_MODULE',$qualifiedName);
 165          $viewer->assign('ROLES_LIST', Settings_Roles_Record_Model::getAll());
 166          $viewer->assign('SELECTED_PICKLISTFIELD_ALL_VALUES',$selectedFieldAllPickListValues);
 167          $viewer->view('AssignValueToRole.tpl',$qualifiedName);
 168      }
 169  }


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