[ Index ] |
PHP Cross Reference of vtigercrm-6.1.0 |
[Summary view] [Print] [Text view]
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 }
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 |