fixed issue with tool visibility

This commit is contained in:
Roland Gruber 2017-07-16 20:48:46 +02:00
parent d06035f1ce
commit b99aa5729d
5 changed files with 20 additions and 8 deletions

View File

@ -1,3 +1,8 @@
July 2017 6.0.1
- Fixed bugs:
-> Configuration file fills up with empty values
-> Tool visibility settings
26.06.2017 6.0 26.06.2017 6.0
- Support multiple configurations for same account type - Support multiple configurations for same account type
- PHP 7.1 compatibility - PHP 7.1 compatibility

View File

@ -4,7 +4,7 @@ namespace LAM\TOOLS\SERVER_INFO;
$Id$ $Id$
This code is part of LDAP Account Manager (http://www.ldap-account-manager.org/) This code is part of LDAP Account Manager (http://www.ldap-account-manager.org/)
Copyright (C) 2009 - 2016 Roland Gruber Copyright (C) 2009 - 2017 Roland Gruber
This program is free software; you can redistribute it and/or modify This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -78,7 +78,7 @@ class toolServerInformation implements \LAMTool {
* @return boolean true if password change rights are needed * @return boolean true if password change rights are needed
*/ */
function getRequiresPasswordChangeRights() { function getRequiresPasswordChangeRights() {
return true; return false;
} }
/** /**

View File

@ -496,11 +496,12 @@ for ($r = 0; $r < (sizeof($tools) / 4); $r++) {
} }
$tool = $tools[($r * 4) + $c]; $tool = $tools[($r * 4) + $c];
$toolClass = get_class($tool); $toolClass = get_class($tool);
$toolName = substr($toolClass, strrpos($toolClass, '\\') + 1);
$selected = false; $selected = false;
if (isset($toolSettings['tool_hide_' . $toolClass]) && ($toolSettings['tool_hide_' . $toolClass] === 'true')) { if (isset($toolSettings['tool_hide_' . $toolName]) && ($toolSettings['tool_hide_' . $toolName] === 'true')) {
$selected = true; $selected = true;
} }
$toolSettingsContent->addElement(new htmlTableExtendedInputCheckbox('tool_hide_' . $toolClass, $selected, $tool->getName(), null, false)); $toolSettingsContent->addElement(new htmlTableExtendedInputCheckbox('tool_hide_' . $toolName, $selected, $tool->getName(), null, false));
$toolSettingsContent->addElement(new htmlSpacer('10px', null)); $toolSettingsContent->addElement(new htmlSpacer('10px', null));
} }
$toolSettingsContent->addNewLine(); $toolSettingsContent->addNewLine();
@ -761,7 +762,9 @@ function checkInput() {
$tools = getTools(); $tools = getTools();
$toolSettings = array(); $toolSettings = array();
for ($i = 0; $i < sizeof($tools); $i++) { for ($i = 0; $i < sizeof($tools); $i++) {
$toolConfigID = 'tool_hide_' . $tools[$i]; $toolClass = $tools[$i];
$toolName = substr($toolClass, strrpos($toolClass, '\\') + 1);
$toolConfigID = 'tool_hide_' . $toolName;
if ((isset($_POST[$toolConfigID])) && ($_POST[$toolConfigID] == 'on')) { if ((isset($_POST[$toolConfigID])) && ($_POST[$toolConfigID] == 'on')) {
$toolSettings[$toolConfigID] = 'true'; $toolSettings[$toolConfigID] = 'true';
} }

View File

@ -86,7 +86,8 @@ $toolSettings = $_SESSION['config']->getToolSettings();
// sort tools // sort tools
$toSort = array(); $toSort = array();
for ($i = 0; $i < sizeof($availableTools); $i++) { for ($i = 0; $i < sizeof($availableTools); $i++) {
$myTool = new $availableTools[$i](); $toolClass = $availableTools[$i];
$myTool = new $toolClass();
if ($myTool->getRequiresWriteAccess() && !checkIfWriteAccessIsAllowed()) { if ($myTool->getRequiresWriteAccess() && !checkIfWriteAccessIsAllowed()) {
continue; continue;
} }
@ -98,7 +99,8 @@ for ($i = 0; $i < sizeof($availableTools); $i++) {
continue; continue;
} }
// check if hidden by config // check if hidden by config
if (isset($toolSettings['tool_hide_' . get_class($myTool)]) && ($toolSettings['tool_hide_' . get_class($myTool)] == 'true')) { $toolName = substr($toolClass, strrpos($toolClass, '\\') + 1);
if (isset($toolSettings['tool_hide_' . $toolName]) && ($toolSettings['tool_hide_' . $toolName] == 'true')) {
continue; continue;
} }
$toSort[$availableTools[$i]] = $myTool->getPosition(); $toSort[$availableTools[$i]] = $myTool->getPosition();

View File

@ -77,7 +77,9 @@ for ($i = 0; $i < sizeof($tools); $i++) {
continue; continue;
} }
// check if hidden by config // check if hidden by config
if (isset($toolSettings['tool_hide_' . get_class($tools[$i])]) && ($toolSettings['tool_hide_' . get_class($tools[$i])] == 'true')) { $className = get_class($tools[$i]);
$toolName = substr($className, strrpos($className, '\\') + 1);
if (isset($toolSettings['tool_hide_' . $toolName]) && ($toolSettings['tool_hide_' . $toolName] == 'true')) {
continue; continue;
} }
// add tool // add tool