diff --git a/navalplanner-business/src/main/java/org/navalplanner/business/common/Configuration.java b/navalplanner-business/src/main/java/org/navalplanner/business/common/Configuration.java index 523e496c9..e1442a3c4 100644 --- a/navalplanner-business/src/main/java/org/navalplanner/business/common/Configuration.java +++ b/navalplanner-business/src/main/java/org/navalplanner/business/common/Configuration.java @@ -19,6 +19,9 @@ package org.navalplanner.business.common; +import org.navalplanner.business.common.daos.IConfigurationDAO; +import org.springframework.beans.factory.annotation.Autowired; + /** * It contains the compiling option to disable the warning changing default * password and implements of singleton pattern. @@ -29,6 +32,9 @@ public class Configuration { private static final Configuration singleton = new Configuration(); + @Autowired + private IConfigurationDAO configurationDAO; + private Boolean defaultPasswordsControl; private Configuration() { diff --git a/navalplanner-business/src/main/java/org/navalplanner/business/common/entities/Configuration.java b/navalplanner-business/src/main/java/org/navalplanner/business/common/entities/Configuration.java index 0646ae8b1..a7658c50d 100644 --- a/navalplanner-business/src/main/java/org/navalplanner/business/common/entities/Configuration.java +++ b/navalplanner-business/src/main/java/org/navalplanner/business/common/entities/Configuration.java @@ -80,6 +80,8 @@ public class Configuration extends BaseEntity { private Boolean changedDefaultWswriterPassword = false; + private Boolean autocompleteLogin = true; + private ProgressType progressType = ProgressType.SPREAD_PROGRESS; private String companyLogoURL = ""; @@ -311,4 +313,11 @@ public class Configuration extends BaseEntity { : false; } + public Boolean isAutocompleteLogin() { + return this.autocompleteLogin != null ? this.autocompleteLogin : true; + } + + public void setAutocompleteLogin(Boolean autocompleteLogin) { + this.autocompleteLogin = autocompleteLogin; + } } \ No newline at end of file diff --git a/navalplanner-business/src/main/resources/db.changelog-1.1.xml b/navalplanner-business/src/main/resources/db.changelog-1.1.xml index 40ae2360c..8ffc1aa14 100644 --- a/navalplanner-business/src/main/resources/db.changelog-1.1.xml +++ b/navalplanner-business/src/main/resources/db.changelog-1.1.xml @@ -5,4 +5,17 @@ xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-2.0.xsd"> + + Add new column enabled_autocomplete_login with default value TRUE to configuration table + + + + + + + diff --git a/navalplanner-business/src/main/resources/org/navalplanner/business/common/entities/Configuration.hbm.xml b/navalplanner-business/src/main/resources/org/navalplanner/business/common/entities/Configuration.hbm.xml index 4bcd96272..d9713741a 100644 --- a/navalplanner-business/src/main/resources/org/navalplanner/business/common/entities/Configuration.hbm.xml +++ b/navalplanner-business/src/main/resources/org/navalplanner/business/common/entities/Configuration.hbm.xml @@ -55,6 +55,8 @@ column="changed_default_wsreader_password" /> + org.navalplanner.business.common.entities.ProgressType diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/common/ConfigurationController.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/common/ConfigurationController.java index 37a3e1b94..507935423 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/common/ConfigurationController.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/common/ConfigurationController.java @@ -374,6 +374,14 @@ public class ConfigurationController extends GenericForwardComposer { .setGenerateCodeForBaseCalendars(generateCodeForBaseCalendars); } + public Boolean isAutocompleteLogin() { + return configurationModel.isAutocompleteLogin(); + } + + public void setAutocompleteLogin(Boolean autocompleteLogin) { + configurationModel.setAutocompleteLogin(autocompleteLogin); + } + public void removeEntitySequence(EntitySequence entitySequence) { try { configurationModel.removeEntitySequence(entitySequence); diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/common/ConfigurationModel.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/common/ConfigurationModel.java index 4145fb666..b40648dae 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/common/ConfigurationModel.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/common/ConfigurationModel.java @@ -266,6 +266,21 @@ public class ConfigurationModel implements IConfigurationModel { } } + @Override + public Boolean isAutocompleteLogin() { + if (configuration == null) { + return null; + } + return configuration.isAutocompleteLogin(); + } + + @Override + public void setAutocompleteLogin(Boolean autocompleteLogin) { + if (configuration != null) { + configuration.setAutocompleteLogin(autocompleteLogin); + } + } + @Override public Boolean getGenerateCodeForWorkReportType() { if (configuration == null) { diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/common/IConfigurationModel.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/common/IConfigurationModel.java index eaba208c2..669668ba1 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/common/IConfigurationModel.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/common/IConfigurationModel.java @@ -144,4 +144,7 @@ public interface IConfigurationModel { Boolean moreScenariosThanMasterCreated(); + Boolean isAutocompleteLogin(); + + void setAutocompleteLogin(Boolean autocompleteLogin); } diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/common/LoginController.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/common/LoginController.java new file mode 100644 index 000000000..2e23823c7 --- /dev/null +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/common/LoginController.java @@ -0,0 +1,59 @@ +/* + * This file is part of NavalPlan + * + * Copyright (C) 2009-2010 Fundación para o Fomento da Calidade Industrial e + * Desenvolvemento Tecnolóxico de Galicia + * Copyright (C) 2010-2011 Igalia, S.L. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 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 Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + */ + +package org.navalplanner.web.common; + +import org.navalplanner.business.common.daos.IConfigurationDAO; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.config.BeanDefinition; +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Component; +import org.zkoss.zk.ui.util.GenericForwardComposer; + +/** + * Controller for enable/disable the autocomplete login. + * @author Susana Montes Pedreira + */ + +@Component +@Scope(BeanDefinition.SCOPE_PROTOTYPE) +public class LoginController extends GenericForwardComposer { + + private final String autocompletLoginValue = "admin"; + + @Autowired + private IConfigurationDAO configurationDAO; + + @Override + public void doAfterCompose(org.zkoss.zk.ui.Component comp) throws Exception { + super.doAfterCompose(comp); + comp.setVariable("loginController", this, true); + } + + /** + * It returns the login value in function of the property autocompleteLogin. + */ + public String getLoginValue() { + return configurationDAO.getConfigurationWithReadOnlyTransaction() + .isAutocompleteLogin() ? this.autocompletLoginValue : null; + } + +} diff --git a/navalplanner-webapp/src/main/webapp/common/configuration.zul b/navalplanner-webapp/src/main/webapp/common/configuration.zul index aaec99584..85d5035eb 100644 --- a/navalplanner-webapp/src/main/webapp/common/configuration.zul +++ b/navalplanner-webapp/src/main/webapp/common/configuration.zul @@ -181,6 +181,10 @@ + + +
- +
@@ -80,7 +83,7 @@
- +