Skip to content

Commit

Permalink
fix(Workflow) show permission message when trying to delete a workflo…
Browse files Browse the repository at this point in the history
…w user does not have access to
  • Loading branch information
joebordes committed Oct 31, 2021
1 parent 40e22c2 commit 4ddab26
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 8 deletions.
17 changes: 11 additions & 6 deletions modules/com_vtiger_workflow/VTWorkflowManager.inc
Expand Up @@ -366,12 +366,17 @@ class VTWorkflowManager {
public function delete($id) {
global $current_user;
$dwf = is_admin($current_user) ? '!=1' : '=2';
$this->adb->pquery(
'DELETE FROM com_vtiger_workflowtasks WHERE workflow_id IN
(SELECT workflow_id FROM com_vtiger_workflows WHERE workflow_id=? AND (defaultworkflow IS NULL OR defaultworkflow'.$dwf.'))',
array($id)
);
$this->adb->pquery('DELETE FROM com_vtiger_workflows WHERE workflow_id=? AND (defaultworkflow IS NULL OR defaultworkflow'.$dwf.')', array($id));
$count = $this->adb->pquery('SELECT count(*) FROM com_vtiger_workflows WHERE workflow_id=? AND (defaultworkflow IS NULL OR defaultworkflow'.$dwf.')', array($id));
$count = (int)$this->adb->query_result($count, 0, 0);
if ($count) {
$this->adb->pquery(
'DELETE FROM com_vtiger_workflowtasks WHERE workflow_id IN
(SELECT workflow_id FROM com_vtiger_workflows WHERE workflow_id=? AND (defaultworkflow IS NULL OR defaultworkflow'.$dwf.'))',
array($id)
);
$this->adb->pquery('DELETE FROM com_vtiger_workflows WHERE workflow_id=? AND (defaultworkflow IS NULL OR defaultworkflow'.$dwf.')', array($id));
}
return $count;
}

public function newWorkflow($moduleName) {
Expand Down
8 changes: 6 additions & 2 deletions modules/com_vtiger_workflow/deleteworkflow.php
Expand Up @@ -24,8 +24,12 @@ function vtDeleteWorkflow($adb, $request) {
}

$wm = new VTWorkflowManager($adb);
$wm->delete($request['workflow_id']);

$affected = $wm->delete($request['workflow_id']);
if ($affected==0) {
$errorUrl = $module->errorPageUrl(getTranslatedString('LBL_PERMISSION', $module->name));
$util->redirectTo($errorUrl, getTranslatedString('LBL_PERMISSION', $module->name));
return;
}
if (isset($request['return_url'])) {
$returnUrl=$request['return_url'];
} else {
Expand Down

0 comments on commit 4ddab26

Please sign in to comment.