[Git][ultreiaio/ird-t3][develop] 3 commits: generate bundle for main application
Tony CHEMIT pushed to branch develop at ultreiaio / ird-t3 Commits: 624ff5bb by Tony CHEMIT at 2018-02-18T13:34:55+01:00 generate bundle for main application - - - - - 32858eb1 by Tony CHEMIT at 2018-02-18T14:01:16+01:00 move some pom conf - - - - - 6c6860d5 by Tony CHEMIT at 2018-02-18T14:02:26+01:00 Améliorations dans la gestion des profils utilisateurs (See #251) - - - - - 8 changed files: - pom.xml - + t3-web/.mvn/i18n-bundle - + t3-web/.mvn/i18n-check-i18n-artifacts - t3-web/pom.xml - t3-web/src/main/java/fr/ird/t3/web/actions/admin/UserAction.java - t3-web/src/main/resources/i18n/t3-web_en_GB.properties - t3-web/src/main/resources/i18n/t3-web_fr_FR.properties - t3-web/src/main/webapp/WEB-INF/jsp/admin/userForm.jsp Changes: ===================================== pom.xml ===================================== --- a/pom.xml +++ b/pom.xml @@ -101,6 +101,7 @@ <applicationName>t3</applicationName> <t3-data.version>1.2-SNAPSHOT</t3-data.version> + <env>dev</env> <!-- libraries version --> @@ -287,6 +288,9 @@ <module>t3-installer</module> <module>t3</module> </modules> + <properties> + <env>prod</env> + </properties> </profile> <profile> ===================================== t3-web/.mvn/i18n-bundle ===================================== --- /dev/null +++ b/t3-web/.mvn/i18n-bundle ===================================== t3-web/.mvn/i18n-check-i18n-artifacts ===================================== --- /dev/null +++ b/t3-web/.mvn/i18n-check-i18n-artifacts ===================================== t3-web/pom.xml ===================================== --- a/t3-web/pom.xml +++ b/t3-web/pom.xml @@ -33,14 +33,6 @@ <name>T3 :: Web</name> <description>T3 web application</description> - <properties> - - <i18n.silent>true</i18n.silent> - - <env>dev</env> - - </properties> - <dependencies> <!-- sibling dependencies --> @@ -148,7 +140,6 @@ <artifactId>h2</artifactId> <scope>runtime</scope> </dependency> - <dependency> <groupId>org.postgresql</groupId> <artifactId>postgresql</artifactId> @@ -270,28 +261,4 @@ </build> - <profiles> - - <profile> - <id>do-release</id> - <activation> - <property> - <name>performRelease</name> - <value>true</value> - </property> - </activation> - <properties> - <env>prod</env> - </properties> - - <!--<dependencies>--> - <!--<dependency>--> - <!--<groupId>org.slf4j</groupId>--> - <!--<artifactId>slf4j-jcl</artifactId>--> - <!--<scope>runtime</scope>--> - <!--</dependency>--> - <!--</dependencies>--> - </profile> - - </profiles> </project> ===================================== t3-web/src/main/java/fr/ird/t3/web/actions/admin/UserAction.java ===================================== --- a/t3-web/src/main/java/fr/ird/t3/web/actions/admin/UserAction.java +++ b/t3-web/src/main/java/fr/ird/t3/web/actions/admin/UserAction.java @@ -28,6 +28,8 @@ import org.apache.commons.lang3.StringUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import java.util.Objects; + /** * Action to manage user (create - update - change password,...) * @@ -43,6 +45,7 @@ public class UserAction extends T3ActionSupport implements Preparable { public static final String BACK_TO_LIST = "backToList"; protected T3User user; + protected String checkPassword; protected String userEditAction; @@ -54,6 +57,14 @@ public class UserAction extends T3ActionSupport implements Preparable { this.userEditAction = userEditAction; } + public String getCheckPassword() { + return checkPassword; + } + + public void setCheckPassword(String checkPassword) { + this.checkPassword = checkPassword; + } + @Override public void prepare() throws Exception { @@ -61,7 +72,11 @@ public class UserAction extends T3ActionSupport implements Preparable { if (!StringUtils.isEmpty(userId)) { // load user - user = getUserService().getUserById(userId); + user = new T3UserImpl(); + T3User userById = getUserService().getUserById(userId); + user.setTopiaId(userById.getTopiaId()); + user.setAdmin(userById.isAdmin()); + user.setLogin(userById.getLogin()); } } @@ -85,6 +100,10 @@ public class UserAction extends T3ActionSupport implements Preparable { log.info("will update user " + t3User.getLogin()); } + if (!t3User.isAdmin() && getT3Session().getUser().isAdmin() && getT3Session().getUser().getLogin().equals(t3User.getLogin())) { + // never change admin flag on connected user + t3User.setAdmin(true); + } // update user getUserService().updateUser(t3User); return SUCCESS; @@ -112,7 +131,7 @@ public class UserAction extends T3ActionSupport implements Preparable { T3User t3User = getUser(); String userLogin = t3User.getLogin(); - + String userPassword = t3User.getPassword(); switch (action) { case CREATE: @@ -142,18 +161,26 @@ public class UserAction extends T3ActionSupport implements Preparable { } } - String userPassword = t3User.getPassword(); if (StringUtils.isEmpty(userPassword)) { // empty user password - addFieldError("user.password", - t("t3.error.required.password")); + addFieldError("user.password", t("t3.error.required.password")); + } else { + if (!Objects.equals(checkPassword, userPassword)) { + addFieldError("user.password", t("t3.error.password.mismatch")); + } } break; case EDIT: - // at the moment nothing to validate + + if (!StringUtils.isEmpty(userPassword)) { + if (!Objects.equals(checkPassword, userPassword)) { + addFieldError("user.password", t("t3.error.password.mismatch")); + } + } + break; case DELETE: ===================================== t3-web/src/main/resources/i18n/t3-web_en_GB.properties ===================================== --- a/t3-web/src/main/resources/i18n/t3-web_en_GB.properties +++ b/t3-web/src/main/resources/i18n/t3-web_en_GB.properties @@ -45,6 +45,7 @@ t3.common.available.vesselSimpleTypes=Types simplifiés de navire disponibles t3.common.available.vessels=Navires disponibles t3.common.canCreateVessel=Authorise to create vessels t3.common.catchFleet=Flotte des captures +t3.common.checkPassword=repeat password t3.common.configuration=Préférences t3.common.countries.to.select=Flottes à selectionner t3.common.createVirtualVessel=Create virtual vessels @@ -188,6 +189,7 @@ t3.error.no.zoneVersion.selected=No zone version selected t3.error.parametersProfile.already.used=Le nom de profile de paramètres est déjà utilisé t3.error.parametersProfile.required.profileDescription=Description du profile non renseigné t3.error.parametersProfile.required.profileName=Nom du profile non renseigné +t3.error.password.mismatch=Passwords are different t3.error.required.description=No description filled t3.error.required.file.to.upload=No file to upload selected t3.error.required.login=No Login filled @@ -273,7 +275,7 @@ t3.label.export.config.jdbc=Connexion parameters t3.label.export.config.pilot=Output pilot configuration t3.label.export.config.resume=Configuration summary t3.label.importData.config.resume=Configuration resume of data import -t3.label.info.changePassword=To change password, fill this field +t3.label.info.changePassword=To change password, fill the both password fields t3.label.inprogress=in progress... t3.label.language=Langue t3.label.locale.english=English ===================================== t3-web/src/main/resources/i18n/t3-web_fr_FR.properties ===================================== --- a/t3-web/src/main/resources/i18n/t3-web_fr_FR.properties +++ b/t3-web/src/main/resources/i18n/t3-web_fr_FR.properties @@ -45,6 +45,7 @@ t3.common.available.vesselSimpleTypes=Types simplifiés de navire disponibles t3.common.available.vessels=Navires disponibles t3.common.canCreateVessel=Autoriser la création de bateaux t3.common.catchFleet=Flotte des captures +t3.common.checkPassword=Répéter le mot de passe t3.common.configuration=Préférences t3.common.countries.to.select=Flottes à selectionner t3.common.createVirtualVessel=Créer des bateaux virtuels @@ -188,6 +189,7 @@ t3.error.no.zoneVersion.selected=Aucune version de zone sélectionnée t3.error.parametersProfile.already.used=Le nom de profile de paramètres est déjà utilisé t3.error.parametersProfile.required.profileDescription=Description du profile non renseigné t3.error.parametersProfile.required.profileName=Nom du profile non renseigné +t3.error.password.mismatch=Mots de passe différents t3.error.required.description=Aucune description renseignée t3.error.required.file.to.upload=Aucun fichier à télécharger sélectionné t3.error.required.login=Login non renseigné @@ -273,7 +275,7 @@ t3.label.export.config.jdbc=Paramètres de connexion t3.label.export.config.pilot=Pilote de sortie t3.label.export.config.resume=Résumé de configuration t3.label.importData.config.resume=Résumé de la configuration d'import de données -t3.label.info.changePassword=Pour changer de mot de passe, veuillez remplir le champs dédié +t3.label.info.changePassword=Pour changer de mot de passe, veuillez remplir les deux champs dédiés t3.label.inprogress=en cours... t3.label.language=Langue t3.label.locale.english=Anglais ===================================== t3-web/src/main/webapp/WEB-INF/jsp/admin/userForm.jsp ===================================== --- a/t3-web/src/main/webapp/WEB-INF/jsp/admin/userForm.jsp +++ b/t3-web/src/main/webapp/WEB-INF/jsp/admin/userForm.jsp @@ -24,6 +24,7 @@ <%@ taglib prefix="sjg" uri="/struts-jquery-grid-tags" %> <s:set var="userIsAdmin" value="%{#session.t3Session.user.admin}"/> +<s:set var="connectedUserLogin" value="%{#session.t3Session.user.login}"/> <s:url id="t3LoadUrl" action="getUserT3Databases" namespace="/json" escapeAmp="false"> @@ -152,14 +153,19 @@ </legend> <s:hidden key="user.topiaId" label=""/> <s:hidden key="user.login" label=""/> - <s:hidden key="user.admin" label=""/> <s:hidden key="userEditAction" label=""/> <s:textfield key="user.login" label="%{getText('t3.common.login')}" size="40" disabled="true"/> - <s:textfield name="user.password" value="" key="t3.common.password" - size="40"/> - <s:checkbox value="%{user.admin}" key="t3.common.admin" disabled="true"/> + <s:textfield name="user.password" value="" key="t3.common.password" size="40"/> + <s:textfield name="checkPassword" value="" key="t3.common.checkPassword" size="40"/> + <s:if test="userIsAdmin"> + <s:checkbox key="user.admin" value="%{user.admin}" label="%{getText('t3.common.admin')}"/> + <s:else> + <s:hidden key="user.admin" label=""/> + <s:checkbox value="%{user.admin}" key="t3.common.admin" disabled="true"/> + </s:else> + </s:if> </fieldset> <p><s:text name="t3.label.info.changePassword"/></p> <br/> View it on GitLab: https://gitlab.com/ultreiaio/ird-t3/compare/fbbec4577bc5325f47f0c5912694c88c... --- View it on GitLab: https://gitlab.com/ultreiaio/ird-t3/compare/fbbec4577bc5325f47f0c5912694c88c... You're receiving this email because of your account on gitlab.com.
participants (1)
-
Tony CHEMIT