r226 - in trunk: faxtomail-persistence/src/main/java/com/franciaflex/faxtomail faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web
Author: echatellier Date: 2014-06-18 19:13:29 +0200 (Wed, 18 Jun 2014) New Revision: 226 Url: http://forge.codelutin.com/projects/faxtomail/repository/revisions/226 Log: Allow to setup multiples admin groups Modified: trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/FaxToMailConfiguration.java trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/FaxToMailConfigurationOption.java trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/FaxToMailInterceptor.java Modified: trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/FaxToMailConfiguration.java =================================================================== --- trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/FaxToMailConfiguration.java 2014-06-18 17:01:09 UTC (rev 225) +++ trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/FaxToMailConfiguration.java 2014-06-18 17:13:29 UTC (rev 226) @@ -24,8 +24,20 @@ * #L% */ -import com.google.common.base.Charsets; -import com.google.common.collect.Maps; +import static org.nuiton.i18n.I18n.t; + +import java.awt.Color; +import java.io.File; +import java.io.IOException; +import java.net.URL; +import java.util.List; +import java.util.Locale; +import java.util.Map; +import java.util.Properties; +import java.util.Set; + +import javax.swing.KeyStroke; + import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.builder.ReflectionToStringBuilder; import org.apache.commons.logging.Log; @@ -39,18 +51,9 @@ import org.nuiton.jaxx.application.ApplicationTechnicalException; import org.nuiton.util.Version; -import javax.swing.*; -import java.awt.*; -import java.io.File; -import java.io.IOException; -import java.net.URL; -import java.util.Locale; -import java.util.Map; -import java.util.Properties; -import java.util.Set; +import com.google.common.base.Charsets; +import com.google.common.collect.Maps; -import static org.nuiton.i18n.I18n.t; - public class FaxToMailConfiguration extends ApplicationConfiguration { private static final Log log = LogFactory.getLog(FaxToMailConfiguration.class); @@ -256,8 +259,8 @@ return applicationConfig.getOption(FaxToMailConfigurationOption.LDAP_BASEDN.getKey()); } - public String getLdapAdminGroup() { - return applicationConfig.getOption(FaxToMailConfigurationOption.LDAP_ADMIN_GROUP.getKey()); + public List<String> getLdapAdminGroups() { + return applicationConfig.getOptionAsList(FaxToMailConfigurationOption.LDAP_ADMIN_GROUPS.getKey()).getOption(); } public String getLdapPrincipalDomain() { Modified: trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/FaxToMailConfigurationOption.java =================================================================== --- trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/FaxToMailConfigurationOption.java 2014-06-18 17:01:09 UTC (rev 225) +++ trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/FaxToMailConfigurationOption.java 2014-06-18 17:13:29 UTC (rev 226) @@ -102,8 +102,8 @@ "faxtomail.ldap.basedn", "Mot de passe pour la connexion au serveur LDAP", "DC=mac-groupe,DC=net", String.class), - LDAP_ADMIN_GROUP( - "faxtomail.ldap.admin.group", + LDAP_ADMIN_GROUPS( + "faxtomail.ldap.admin.groups", "DN du groupe ldap ayant les autorisations d'accéder à la partie admin de l'interface web", null, String.class), LDAP_PRINCIPAL_DOMAIN( Modified: trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/FaxToMailInterceptor.java =================================================================== --- trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/FaxToMailInterceptor.java 2014-06-18 17:01:09 UTC (rev 225) +++ trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/FaxToMailInterceptor.java 2014-06-18 17:13:29 UTC (rev 226) @@ -25,6 +25,7 @@ */ import java.beans.PropertyDescriptor; +import java.util.List; import java.util.Map; import java.util.Set; @@ -142,10 +143,10 @@ faxToMailSession.setAuthenticatedFaxToMailUser(user); // test si l'utilisateur est admin - String adminGroup = serviceContext.getApplicationConfig().getLdapAdminGroup(); - if (StringUtils.isNotBlank(adminGroup) && user.getUserGroups() != null) { + List<String> adminGroups = serviceContext.getApplicationConfig().getLdapAdminGroups(); + if (CollectionUtils.isNotEmpty(adminGroups) && user.getUserGroups() != null) { for (FaxToMailUserGroup group : user.getUserGroups()) { - if (adminGroup.equals(group.getFullPath())) { + if (adminGroups.contains(group.getFullPath())) { faxToMailSession.setAdmin(true); } }
participants (1)
-
echatellier@users.forge.codelutin.com