fixed issue with tool visibility
This commit is contained in:
		
							parent
							
								
									d06035f1ce
								
							
						
					
					
						commit
						b99aa5729d
					
				| 
						 | 
				
			
			@ -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
 | 
			
		||||
  - Support multiple configurations for same account type
 | 
			
		||||
  - PHP 7.1 compatibility
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -4,7 +4,7 @@ namespace LAM\TOOLS\SERVER_INFO;
 | 
			
		|||
$Id$
 | 
			
		||||
 | 
			
		||||
  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
 | 
			
		||||
  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
 | 
			
		||||
	 */
 | 
			
		||||
	function getRequiresPasswordChangeRights() {
 | 
			
		||||
		return true;
 | 
			
		||||
		return false;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -496,11 +496,12 @@ for ($r = 0; $r < (sizeof($tools) / 4); $r++) {
 | 
			
		|||
		}
 | 
			
		||||
		$tool = $tools[($r * 4) + $c];
 | 
			
		||||
		$toolClass = get_class($tool);
 | 
			
		||||
		$toolName = substr($toolClass, strrpos($toolClass, '\\') + 1);
 | 
			
		||||
		$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;
 | 
			
		||||
		}
 | 
			
		||||
		$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->addNewLine();
 | 
			
		||||
| 
						 | 
				
			
			@ -761,7 +762,9 @@ function checkInput() {
 | 
			
		|||
	$tools = getTools();
 | 
			
		||||
	$toolSettings = array();
 | 
			
		||||
	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')) {
 | 
			
		||||
			$toolSettings[$toolConfigID] = 'true';
 | 
			
		||||
		}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -86,7 +86,8 @@ $toolSettings = $_SESSION['config']->getToolSettings();
 | 
			
		|||
// sort tools
 | 
			
		||||
$toSort = array();
 | 
			
		||||
for ($i = 0; $i < sizeof($availableTools); $i++) {
 | 
			
		||||
	$myTool = new $availableTools[$i]();
 | 
			
		||||
	$toolClass = $availableTools[$i];
 | 
			
		||||
    $myTool = new $toolClass();
 | 
			
		||||
	if ($myTool->getRequiresWriteAccess() && !checkIfWriteAccessIsAllowed()) {
 | 
			
		||||
		continue;
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			@ -98,7 +99,8 @@ for ($i = 0; $i < sizeof($availableTools); $i++) {
 | 
			
		|||
		continue;
 | 
			
		||||
	}
 | 
			
		||||
	// 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;
 | 
			
		||||
	}
 | 
			
		||||
	$toSort[$availableTools[$i]] = $myTool->getPosition();
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -77,7 +77,9 @@ for ($i = 0; $i < sizeof($tools); $i++) {
 | 
			
		|||
		continue;
 | 
			
		||||
	}
 | 
			
		||||
	// 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;
 | 
			
		||||
	}
 | 
			
		||||
	// add tool
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue