diff --git a/modules/Settings/LayoutEditor/actions/Block.php b/modules/Settings/LayoutEditor/actions/Block.php index e9235fe21a6f8db2f3745ed97f9a061c1c1c4398..ea3345a8ddb7d8bc25e890aed0fddaf27632e0c2 100644 --- a/modules/Settings/LayoutEditor/actions/Block.php +++ b/modules/Settings/LayoutEditor/actions/Block.php @@ -80,8 +80,8 @@ class Settings_LayoutEditor_Block_Action extends Settings_Vtiger_Index_Action { $response = new Vtiger_Response(); $blockId = $request->get('blockid'); $checkIfFieldsExists = Vtiger_Block_Model::checkFieldsExists($blockId); - if($checkIfFieldsExists) { - $response->setError('502','Fields exists for the block'); + if(!$checkIfFieldsExists) { + $response->setError('502','Fields not exists for the block'); $response->emit(); return; } @@ -95,7 +95,7 @@ class Settings_LayoutEditor_Block_Action extends Settings_Vtiger_Index_Action { $sourceModule = $blockInstance->get('module')->name; $blockLabel = $blockInstance->get('label'); $blockInstance->delete(false); - Settings_LayoutEditor_Module_Model::removeLabelFromLangFile($sourceModule, $blockLabel); +// Settings_LayoutEditor_Module_Model::removeLabelFromLangFile($sourceModule, $blockLabel); $response->setResult(array('success'=>true)); }catch(Exception $e) { $response->setError($e->getCode(),$e->getMessage()); diff --git a/modules/Settings/LayoutEditor/actions/Field.php b/modules/Settings/LayoutEditor/actions/Field.php index a5dcaaf3a99d77f29e4b78fa60b4b82f1fbf4c35..7d6b1c5ce630863baf8ce44562e9a264b8a76c40 100644 --- a/modules/Settings/LayoutEditor/actions/Field.php +++ b/modules/Settings/LayoutEditor/actions/Field.php @@ -153,7 +153,7 @@ class Settings_LayoutEditor_Field_Action extends Settings_Vtiger_Index_Action { $fieldLabel = array_merge(array($fieldLabel),$pickListValues); } $fieldInstance->delete(); - Settings_LayoutEditor_Module_Model::removeLabelFromLangFile($sourceModule, $fieldLabel); +// Settings_LayoutEditor_Module_Model::removeLabelFromLangFile($sourceModule, $fieldLabel); //we should delete any update field workflow associated with custom field $moduleName = $fieldInstance->getModule()->getName(); Settings_Workflows_Record_Model::deleteUpadateFieldWorkflow($moduleName, $fieldInstance->getFieldName()); diff --git a/modules/Settings/Leads/views/MappingDetail.php b/modules/Settings/Leads/views/MappingDetail.php index 77629b1a0af064385fca77981f3713196c2d1670..fa4e0d875d4695d4920378cd268761c713faf10a 100644 --- a/modules/Settings/Leads/views/MappingDetail.php +++ b/modules/Settings/Leads/views/MappingDetail.php @@ -10,12 +10,14 @@ class Settings_Leads_MappingDetail_View extends Settings_Vtiger_Index_View { + public function requiresPermission(\Vtiger_Request $request) { + $permissions = parent::requiresPermission($request); + $permissions[] = array('module_parameter' => 'module', 'action' => 'DetailView'); + return $permissions; + } + function checkPermission(Vtiger_Request $request) { - parent::checkPermission($request); - $sourceModule = 'Leads'; - if(!vtlib_isModuleActive($sourceModule)){ - throw new AppException(vtranslate('LBL_PERMISSION_DENIED', $sourceModule)); - } + return parent::checkPermission($request); } public function process(Vtiger_Request $request) { diff --git a/modules/Settings/Leads/views/MappingEdit.php b/modules/Settings/Leads/views/MappingEdit.php index 1a40efe56dbdd42ee0b341e1b8480f918d6034c2..2a7fc890950d2f1db067e1dd78d79ea2fe472f7d 100644 --- a/modules/Settings/Leads/views/MappingEdit.php +++ b/modules/Settings/Leads/views/MappingEdit.php @@ -10,7 +10,17 @@ class Settings_Leads_MappingEdit_View extends Settings_Vtiger_Index_View { - public function process(Vtiger_Request $request) { + public function requiresPermission(\Vtiger_Request $request) { + $permissions = parent::requiresPermission($request); + $permissions[] = array('module_parameter' => 'module', 'action' => 'DetailView'); + return $permissions; + } + + function checkPermission(Vtiger_Request $request) { + return parent::checkPermission($request); + } + + public function process(Vtiger_Request $request) { $qualifiedModuleName = $request->getModule(false); $viewer = $this->getViewer($request); diff --git a/modules/Settings/Profiles/actions/Save.php b/modules/Settings/Profiles/actions/Save.php index 2629c3df9558375d888119e7b46d6c9c16efdd6c..c5e99d771e82cdbe32bdfd6b00e5cdb585979d88 100644 --- a/modules/Settings/Profiles/actions/Save.php +++ b/modules/Settings/Profiles/actions/Save.php @@ -11,10 +11,12 @@ class Settings_Profiles_Save_Action extends Vtiger_Action_Controller { public function checkPermission(Vtiger_Request $request) { + parent::checkPermission($request); $currentUser = Users_Record_Model::getCurrentUserModel(); if(!$currentUser->isAdminUser()) { throw new AppException(vtranslate('LBL_PERMISSION_DENIED')); } + return true; } public function process(Vtiger_Request $request) { diff --git a/modules/Settings/Roles/actions/Save.php b/modules/Settings/Roles/actions/Save.php index 20e6d9446a0b3a6f580d3d434b88ddc1e6e43219..62124df5dd03a3815b90262f311bfb90b1e17aa9 100644 --- a/modules/Settings/Roles/actions/Save.php +++ b/modules/Settings/Roles/actions/Save.php @@ -11,10 +11,12 @@ class Settings_Roles_Save_Action extends Vtiger_Action_Controller { public function checkPermission(Vtiger_Request $request) { + parent::checkPermission($request); $currentUser = Users_Record_Model::getCurrentUserModel(); if(!$currentUser->isAdminUser()) { throw new AppException(vtranslate('LBL_PERMISSION_DENIED')); } + return true; } public function process(Vtiger_Request $request) { diff --git a/modules/Settings/Roles/views/Popup.php b/modules/Settings/Roles/views/Popup.php index 69c86d4269fc0ca30d8176a4c381ddd882816a34..8dd3f3cec10ce213e39e45d74dddea645aad9446 100644 --- a/modules/Settings/Roles/views/Popup.php +++ b/modules/Settings/Roles/views/Popup.php @@ -11,10 +11,12 @@ class Settings_Roles_Popup_View extends Vtiger_Footer_View { public function checkPermission(Vtiger_Request $request) { + parent::checkPermission($request); $currentUser = Users_Record_Model::getCurrentUserModel(); if(!$currentUser->isAdminUser()) { throw new AppException(vtranslate('LBL_PERMISSION_DENIED', 'Vtiger')); } + return true; } function process (Vtiger_Request $request) { diff --git a/modules/Settings/Tags/views/EditAjax.php b/modules/Settings/Tags/views/EditAjax.php index 92894059b7e1675699ec4a1210616f7afecc3872..436aaf9eb39c44fb86ca444c3a1d1ae49376b1da 100644 --- a/modules/Settings/Tags/views/EditAjax.php +++ b/modules/Settings/Tags/views/EditAjax.php @@ -10,10 +10,6 @@ class Settings_Tags_EditAjax_View extends Settings_Vtiger_IndexAjax_View { - public function checkPermission(Vtiger_Request $request) { - return true; - } - public function process(Vtiger_Request $request) { $viewer = $this->getViewer($request); $qualifiedName = $request->getModule(false); diff --git a/modules/Settings/Vtiger/views/Index.php b/modules/Settings/Vtiger/views/Index.php index e95e8046f488db1b255ec605ce07e4a081ecf19e..013896bafcc475ccd03eecab2184ca6bbec72d9f 100644 --- a/modules/Settings/Vtiger/views/Index.php +++ b/modules/Settings/Vtiger/views/Index.php @@ -15,10 +15,12 @@ class Settings_Vtiger_Index_View extends Vtiger_Basic_View { } function checkPermission(Vtiger_Request $request) { + parent::checkPermission($request); $currentUserModel = Users_Record_Model::getCurrentUserModel(); if(!$currentUserModel->isAdminUser()) { throw new AppException(vtranslate('LBL_PERMISSION_DENIED', 'Vtiger')); } + return true; } public function preProcess (Vtiger_Request $request, $display=true) { diff --git a/modules/Settings/Workflows/actions/SaveWorkflow.php b/modules/Settings/Workflows/actions/SaveWorkflow.php index 20e37414a35f87dac5f667bad5475c3886198c6c..6ac8eaa6a105bad9380442389606a3c2b2fb8515 100644 --- a/modules/Settings/Workflows/actions/SaveWorkflow.php +++ b/modules/Settings/Workflows/actions/SaveWorkflow.php @@ -10,10 +10,6 @@ class Settings_Workflows_SaveWorkflow_Action extends Vtiger_Action_Controller { - public function checkPermission(Vtiger_Request $request) { - - } - public function process(Vtiger_Request $request) { $recordId = $request->get('record'); $summary = $request->get('summary'); diff --git a/modules/Vtiger/views/ShowWidget.php b/modules/Vtiger/views/ShowWidget.php index 79f0a0bfeca563b36e2a8407f6e748d685107662..5c5cfdf1dc7a9c0ba7a2c120893929b5cba36138 100644 --- a/modules/Vtiger/views/ShowWidget.php +++ b/modules/Vtiger/views/ShowWidget.php @@ -10,8 +10,16 @@ class Vtiger_ShowWidget_View extends Vtiger_IndexAjax_View { - function checkPermission(Vtiger_Request $request) { - return true; + public function requiresPermission(Vtiger_Request $request){ + $permissions = parent::requiresPermission($request); + if($request->get('module') != 'Dashboard'){ + $request->set('custom_module', 'Dashboard'); + $permissions[] = array('module_parameter' => 'custom_module', 'action' => 'DetailView'); + }else{ + $permissions[] = array('module_parameter' => 'module', 'action' => 'DetailView'); + } + + return $permissions; } function process(Vtiger_Request $request) { diff --git a/modules/Vtiger/views/TagCloudSearchAjax.php b/modules/Vtiger/views/TagCloudSearchAjax.php index 3056ad150245f63a873e6c04874c72936f9bd889..3ed74b21d880947b52ebe5876a2631e69631e0ed 100644 --- a/modules/Vtiger/views/TagCloudSearchAjax.php +++ b/modules/Vtiger/views/TagCloudSearchAjax.php @@ -10,7 +10,18 @@ class Vtiger_TagCloudSearchAjax_View extends Vtiger_IndexAjax_View { - function process(Vtiger_Request $request) { + public function requiresPermission(Vtiger_Request $request){ + $permissions = parent::requiresPermission($request); + if($request->get('module') != 'Dashboard'){ + $request->set('custom_module', 'Dashboard'); + $permissions[] = array('module_parameter' => 'custom_module', 'action' => 'DetailView'); + } + + return $permissions; + } + + + function process(Vtiger_Request $request) { $tagId = $request->get('tag_id'); $taggedRecords = Vtiger_Tag_Model::getTaggedRecords($tagId);