new method to get modules of a type

This commit is contained in:
Roland Gruber 2017-03-12 12:12:11 +01:00
parent 0d15c8b9d7
commit baa8536560
2 changed files with 14 additions and 6 deletions

View File

@ -4,7 +4,7 @@ namespace LAM\TYPES;
$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) 2005 - 2016 Roland Gruber Copyright (C) 2005 - 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
@ -339,6 +339,17 @@ class ConfiguredType {
return $ret; return $ret;
} }
/**
* Returns the names of the active modules for this type.
*
* @return string[] module names
*/
public function getModules() {
$typeSettings = $this->typeManager->getConfig()->get_typeSettings();
$modules = !empty($typeSettings['modules_' . $this->getId()]) ? $typeSettings['modules_' . $this->getId()] : '';
return explode(',', $modules);
}
} }
/** /**

View File

@ -15,7 +15,7 @@ use \htmlDiv;
$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) 2004 - 2016 Roland Gruber Copyright (C) 2004 - 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
@ -272,12 +272,9 @@ echo "</html>\n";
* @param htmlTable $container meta HTML container * @param htmlTable $container meta HTML container
*/ */
function config_showAccountModules($type, &$container) { function config_showAccountModules($type, &$container) {
$conf = &$_SESSION['conf_config'];
$typeSettings = $conf->get_typeSettings();
// account modules // account modules
$available = getAvailableModules($type->getScope(), true); $available = getAvailableModules($type->getScope(), true);
$selected = !empty($typeSettings['modules_' . $type->getId()]) ? $typeSettings['modules_' . $type->getId()] : ''; $selected = $type->getModules();
$selected = explode(',', $selected);
$sortedAvailable = array(); $sortedAvailable = array();
for ($i = 0; $i < sizeof($available); $i++) { for ($i = 0; $i < sizeof($available); $i++) {
$sortedAvailable[$available[$i]] = getModuleAlias($available[$i], $type->getScope()); $sortedAvailable[$available[$i]] = getModuleAlias($available[$i], $type->getScope());