<?php namespace LAM\TOOLS\TESTS; /* $Id$ This code is part of LDAP Account Manager (http://www.ldap-account-manager.org/) Copyright (C) 2009 - 2016 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 the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ /** * This file includes the test tool specification. * * @author Roland Gruber * @package tools */ /** * Tests page * * @package tools */ class toolTests implements \LAMTool { /** * Returns the name of the tool. * * @return string name */ function getName() { return _("Tests"); } /** * returns a description text for the tool. * * @return string description */ function getDescription() { return _("Here you can test if certain LAM features work on your installation."); } /** * Returns a link to the tool page (relative to templates/). * * @return string link */ function getLink() { return "tests/index.php"; } /** * Returns if the tool requires write access to LDAP. * * @return boolean true if write access is needed */ function getRequiresWriteAccess() { return true; } /** * Returns if the tool requires password change rights. * * @return boolean true if password change rights are needed */ function getRequiresPasswordChangeRights() { return true; } /** * Returns the link to the tool image (relative to graphics/) * * @return string image URL */ function getImageLink() { return 'tests.png'; } /** * Returns the prefered position of this tool on the tools page. * The position may be between 0 and 1000. 0 is the top position. * * @return int prefered position */ function getPosition() { return 1000; } /** * Returns a list of sub tools or an empty array. * * @return array list of subtools (LAMTool) */ function getSubTools() { $return = array(); $lamdaemonTest = new \LAMSubTool(); $lamdaemonTest->name = _("Lamdaemon test"); $lamdaemonTest->link = 'tests/lamdaemonTest.php'; $lamdaemonTest->description = _("Check if quotas and homedirectories can be managed."); $lamdaemonTest->image = 'lamdaemonSmall.png'; $return[] = $lamdaemonTest; $schemaTest = new \LAMSubTool(); $schemaTest->name = _("Schema test"); $schemaTest->link = 'tests/schemaTest.php'; $schemaTest->description = _("Check if the LDAP schema fits the requirements of the selected account modules."); $schemaTest->image = 'schemaTest.png'; $return[] = $schemaTest; return $return; } /** * Returns if the tool is visible in the menu. * * @return boolean visible */ function isVisible() { $typeManager = new \LAM\TYPES\TypeManager(); $types = $typeManager->getConfiguredTypes(); return (sizeof($types) > 0); } /** * Returns if a tool may be hidden by configuration in the LAM server profile. * * @return boolean hideable */ function isHideable() { return true; } } ?>