Commit b554a98e authored by Côme Chilliet's avatar Côme Chilliet
Browse files

:ambulance: fix(webservice): Check if tab activation is disabled

issue #4036
Showing with 9 additions and 0 deletions
+9 -0
...@@ -283,6 +283,11 @@ class fdRPCService ...@@ -283,6 +283,11 @@ class fdRPCService
return array('errors' => array('Tab '.$tab.' is not activated on "'.$dn.'", can’t remove it')); return array('errors' => array('Tab '.$tab.' is not activated on "'.$dn.'", can’t remove it'));
} elseif (!$tabobject->by_object[$tab]->acl_is_removeable()) { } elseif (!$tabobject->by_object[$tab]->acl_is_removeable()) {
return array('errors' => array('You don\'t have sufficient rights to disable tab "'.$tab.'"')); return array('errors' => array('You don\'t have sufficient rights to disable tab "'.$tab.'"'));
} else {
list($disabled, $buttonText, $text) = $tabobject->by_object[$tab]->getDisplayHeaderInfos();
if ($disabled) {
return array('errors' => array($text));
}
} }
$_POST = array($tab.'_modify_state' => 1); $_POST = array($tab.'_modify_state' => 1);
$tabobject->save_object(); $tabobject->save_object();
...@@ -438,6 +443,10 @@ class fdRPCService ...@@ -438,6 +443,10 @@ class fdRPCService
$tabobject->by_object[$tab]->displayHeader && $tabobject->by_object[$tab]->displayHeader &&
!$tabobject->by_object[$tab]->is_account !$tabobject->by_object[$tab]->is_account
) { ) {
list($disabled, $buttonText, $text) = $tabobject->by_object[$tab]->getDisplayHeaderInfos();
if ($disabled) {
return array('errors' => array($text));
}
if ($tabobject->by_object[$tab]->acl_is_createable()) { if ($tabobject->by_object[$tab]->acl_is_createable()) {
$tabobject->by_object[$tab]->is_account = TRUE; $tabobject->by_object[$tab]->is_account = TRUE;
} else { } else {
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment