diff --git a/src/main/java/fr/geoffrey/medical_training_tracker/Servlet.java b/src/main/java/fr/geoffrey/medical_training_tracker/Servlet.java index 218da06..718b87b 100644 --- a/src/main/java/fr/geoffrey/medical_training_tracker/Servlet.java +++ b/src/main/java/fr/geoffrey/medical_training_tracker/Servlet.java @@ -1,6 +1,5 @@ package fr.geoffrey.medical_training_tracker; -import fr.geoffrey.medical_training_tracker.config.encoder.Encoder; import fr.geoffrey.medical_training_tracker.dao.IAnimalDao; import fr.geoffrey.medical_training_tracker.dao.ICareDao; import fr.geoffrey.medical_training_tracker.dao.IConsentBehaviorDao; @@ -35,8 +34,6 @@ public class Servlet implements ServletContextListener { @Override public void contextInitialized(ServletContextEvent sce) { - Encoder.setEncoder(Encoder.ENCODER_CLEAR); - AutowireCapableBeanFactory autowireCapableBeanFactory = WebApplicationContextUtils.getRequiredWebApplicationContext(sce.getServletContext()).getAutowireCapableBeanFactory(); autowireCapableBeanFactory.autowireBean(this); diff --git a/src/main/java/fr/geoffrey/medical_training_tracker/controller/AnimalController.java b/src/main/java/fr/geoffrey/medical_training_tracker/controller/AnimalController.java index e5c5eee..a41cd6c 100644 --- a/src/main/java/fr/geoffrey/medical_training_tracker/controller/AnimalController.java +++ b/src/main/java/fr/geoffrey/medical_training_tracker/controller/AnimalController.java @@ -28,13 +28,16 @@ public class AnimalController { public static final String MODEL_MAP_PROGRESSION = "MODEL_MAP_PROGRESSION"; public static final String MODEL_MAP_LIST_REMAINING_CONSENT_BEHAVIORS = "MODEL_MAP_LIST_REMAINING_CONSENT_BEHAVIORS"; public static final String MODEL_MAP_LIST_REMAINING_CARES = "MODEL_MAP_LIST_REMAINING_CARES"; + public static final String MODEL_MAP_PROGRESSION_TYPE = "MODEL_MAP_PROGRESSION_TYPE"; @Autowired IServiceAnimal serviceAnimal; // @RequestMapping(value = IndexController.URL_ANIMAL_LIST, method = RequestMethod.GET) - public String doGetAnimal(final ModelMap pModel, HttpSession httpSession) { + public String doGetAnimal(final ModelMap pModel, HttpSession httpSession, + @RequestParam(value = LoginController.MODEL_MAP_CHANGE_PASSWORD_SUCCESS_MESSAGE, required = false, defaultValue = "false") final boolean changePasswordSuccessMessage, + @RequestParam(value = LoginController.MODEL_MAP_CHANGE_PASSWORD_ERROR_MESSAGE, required = false, defaultValue = "false") final String changePasswordErrorMessage) { String ret; if (LoginController.isUserAlreadyAuth(httpSession)) { @@ -47,6 +50,8 @@ public class AnimalController { pModel.addAttribute(MODEL_MAP_NAVBAR_PAGE, IndexController.MODEL_MAP_NAVBAR_PAGE_VALUE_MY_ANIMALS); } + pModel.addAttribute(LoginController.MODEL_MAP_CHANGE_PASSWORD_SUCCESS_MESSAGE, changePasswordSuccessMessage); + pModel.addAttribute(LoginController.MODEL_MAP_CHANGE_PASSWORD_ERROR_MESSAGE, changePasswordErrorMessage); ret = IndexController.PAGE_ANIMAL_LIST; } else { @@ -377,6 +382,67 @@ public class AnimalController { pModel.addAttribute(MODEL_MAP_ANIMAL_LIST, animals); pModel.addAttribute(MODEL_MAP_PROGRESSION, progressionByMeValue); + pModel.addAttribute(MODEL_MAP_PROGRESSION_TYPE, "by_me"); + } + + ret = IndexController.PAGE_ANIMAL_PROGRESSION; + } else { + ret = IndexController.URL_REDIRECT + IndexController.URL_LOGIN; + } + + return ret; + } + + @RequestMapping(value = IndexController.URL_ANIMAL_PROGRESSION_BY_SOMEONE_ELSE, method = RequestMethod.GET) + public String doGetAnimalProgressionBySomeoneElse(final ModelMap pModel, HttpSession httpSession, + @PathVariable(value = "animal_id") final int animalId, + @PathVariable(value = "progression_value") final String progressionByMeValue) { + String ret; + + if (LoginController.isUserAlreadyAuth(httpSession)) { + Authentication authentication = (Authentication) httpSession.getAttribute(IndexController.SESSION_ATTRIBUTE_AUTHENTICATION); + Object oUserDetails = authentication.getPrincipal(); + if (oUserDetails instanceof UserDetails) { + UserDetails userDetails = (UserDetails) oUserDetails; + + Animal animal = serviceAnimal.getAnimalProgressionBySomeoneElse(userDetails.getUsername(), animalId, progressionByMeValue); + pModel.addAttribute(MODEL_MAP_ANIMAL, animal); + + List animals = serviceAnimal.getAnimals(userDetails.getUsername()); + pModel.addAttribute(MODEL_MAP_ANIMAL_LIST, animals); + + pModel.addAttribute(MODEL_MAP_PROGRESSION, progressionByMeValue); + pModel.addAttribute(MODEL_MAP_PROGRESSION_TYPE, "by_someone_else"); + } + + ret = IndexController.PAGE_ANIMAL_PROGRESSION; + } else { + ret = IndexController.URL_REDIRECT + IndexController.URL_LOGIN; + } + + return ret; + } + + @RequestMapping(value = IndexController.URL_ANIMAL_PROGRESSION_BY_VETERINARY, method = RequestMethod.GET) + public String doGetAnimalProgressionByVeterinary(final ModelMap pModel, HttpSession httpSession, + @PathVariable(value = "animal_id") final int animalId, + @PathVariable(value = "progression_value") final String progressionByMeValue) { + String ret; + + if (LoginController.isUserAlreadyAuth(httpSession)) { + Authentication authentication = (Authentication) httpSession.getAttribute(IndexController.SESSION_ATTRIBUTE_AUTHENTICATION); + Object oUserDetails = authentication.getPrincipal(); + if (oUserDetails instanceof UserDetails) { + UserDetails userDetails = (UserDetails) oUserDetails; + + Animal animal = serviceAnimal.getAnimalProgressionByVeterinary(userDetails.getUsername(), animalId, progressionByMeValue); + pModel.addAttribute(MODEL_MAP_ANIMAL, animal); + + List animals = serviceAnimal.getAnimals(userDetails.getUsername()); + pModel.addAttribute(MODEL_MAP_ANIMAL_LIST, animals); + + pModel.addAttribute(MODEL_MAP_PROGRESSION, progressionByMeValue); + pModel.addAttribute(MODEL_MAP_PROGRESSION_TYPE, "by_veterinary"); } ret = IndexController.PAGE_ANIMAL_PROGRESSION; diff --git a/src/main/java/fr/geoffrey/medical_training_tracker/controller/IndexController.java b/src/main/java/fr/geoffrey/medical_training_tracker/controller/IndexController.java index 2120f85..ecc6e96 100644 --- a/src/main/java/fr/geoffrey/medical_training_tracker/controller/IndexController.java +++ b/src/main/java/fr/geoffrey/medical_training_tracker/controller/IndexController.java @@ -38,6 +38,7 @@ public class IndexController { public static final String URL_LOGIN = "/login"; public static final String URL_LOGOUT = "/logout"; public static final String URL_REGISTER = "/register"; + public static final String URL_CHANGE_PASSWORD = "/change_password"; public static final String URL_INDEX = "/"; public static final String URL_ANIMAL_LIST = "/animal"; @@ -45,6 +46,8 @@ public class IndexController { public static final String URL_ANIMAL_CARE = "/animal/{animal_id}/care/{care_id}"; public static final String URL_ANIMAL_BEHAVIOR = "/animal/{animal_id}/consent_behavior/{consent_behavior_id}"; public static final String URL_ANIMAL_PROGRESSION_BY_ME = "/animal/{animal_id}/progression_by_me/{progression_value}"; + public static final String URL_ANIMAL_PROGRESSION_BY_SOMEONE_ELSE = "/animal/{animal_id}/progression_by_someone_else/{progression_value}"; + public static final String URL_ANIMAL_PROGRESSION_BY_VETERINARY = "/animal/{animal_id}/progression_by_veterinary/{progression_value}"; public static final String URL_ANIMAL_PROGRESSIONS_LIST = "/animal/{animal_id}/progressions"; // Add URL diff --git a/src/main/java/fr/geoffrey/medical_training_tracker/dao/bdd/postgres/ProgressionDao.java b/src/main/java/fr/geoffrey/medical_training_tracker/dao/bdd/postgres/ProgressionDao.java index 897ed29..60c186d 100644 --- a/src/main/java/fr/geoffrey/medical_training_tracker/dao/bdd/postgres/ProgressionDao.java +++ b/src/main/java/fr/geoffrey/medical_training_tracker/dao/bdd/postgres/ProgressionDao.java @@ -341,10 +341,170 @@ public class ProgressionDao extends PostgresSqlDao implements IProgressionDao { @Override public void fillAnimalProgressionBySomeoneElse(Animal animal, String progressionBySomeoneElse) { + Connection conn = null; + PreparedStatement statement = null; + ResultSet resultSet = null; + try { + conn = mDataSource.getConnection(); + statement = conn.prepareStatement("select " + + AnimalDao.TABLE_NAME+".id as animal_id, "+AnimalDao.TABLE_NAME+".name as animal_name, "+AnimalDao.TABLE_NAME+".owner as animal_owner, " + + TABLE_NAME+".id as progression_id, "+TABLE_NAME+".progression_by_me as prog_by_me, "+TABLE_NAME+".progression_by_someone_else as prog_by_someone_else, "+TABLE_NAME+".progression_by_veterinary as prog_by_vet, " + + TABLE_NAME+".care as care_id, "+TABLE_NAME+".consent_behavior as consent_behavior_id, " + + CareDao.TABLE_NAME+".name as care_name, "+CareDao.TABLE_NAME+".description as care_desc, " + + ConsentBehaviorDao.TABLE_NAME+".name as consent_behavior_name, "+ConsentBehaviorDao.TABLE_NAME+".description as consent_behavior_desc " + + "from "+TABLE_NAME+" " + + "left join "+AnimalDao.TABLE_NAME+" on "+TABLE_NAME+".animal = "+AnimalDao.TABLE_NAME+".id " + + "left join "+CareDao.TABLE_NAME+" on "+TABLE_NAME+".care = "+CareDao.TABLE_NAME+".id " + + "left join "+ConsentBehaviorDao.TABLE_NAME+" on "+TABLE_NAME+".consent_behavior = "+ConsentBehaviorDao.TABLE_NAME+".id " + + "where "+AnimalDao.TABLE_NAME+".owner = ? and "+AnimalDao.TABLE_NAME+".id = ? and "+TABLE_NAME+".progression_by_someone_else = ?;"); + statement.setString(1, animal.getOwner()); + statement.setInt(2, animal.getId()); + statement.setString(3, progressionBySomeoneElse); + System.out.println(IndexController.LOG_TAG + " SQL -> " + statement.toString()); + resultSet = statement.executeQuery(); + + if (resultSet != null) { + while (resultSet.next()) { + Progression progression = new Progression(); + progression.setId(resultSet.getInt("progression_id")); + progression.setProgressionByMe(resultSet.getString("prog_by_me")); + progression.setProgressionBySomeoneElse(resultSet.getString("prog_by_someone_else")); + progression.setProgressionByVeterinary(resultSet.getString("prog_by_vet")); + + int careId = resultSet.getInt("care_id"); + if (!animal.containsCareKey(careId)) { + Care care = new Care(); + care.setId(careId); + care.setName(resultSet.getString("care_name")); + care.setDescription(resultSet.getString("care_desc")); + animal.addCare(care); + } + progression.setCare(animal.getCareById(careId)); + + int consentBehaviorId = resultSet.getInt("consent_behavior_id"); + if (!animal.containsConsentBehaviorKey(consentBehaviorId)) { + ConsentBehavior consentBehavior = new ConsentBehavior(); + consentBehavior.setId(consentBehaviorId); + consentBehavior.setName(resultSet.getString("consent_behavior_name")); + consentBehavior.setDescription(resultSet.getString("consent_behavior_desc")); + animal.addConsentBehavior(consentBehavior); + } + progression.setConsentBehavior(animal.getConsentBehaviorById(consentBehaviorId)); + + animal.addProgression(progression); + } + resultSet.close(); + } + } catch (SQLException ex) { + System.err.println(IndexController.LOG_TAG + " SQLException -> fillAnimalProgressionBySomeoneElse() - " + ex.getMessage()); + ex.printStackTrace(); + } finally { + if (resultSet != null) { + try { + resultSet.close(); + } catch (SQLException ex) { + System.err.println(IndexController.LOG_TAG + " Failed close ResultSet -> fillAnimalProgressionBySomeoneElse()"); + } + } + if (statement != null) { + try { + statement.close(); + } catch (SQLException ex) { + System.err.println(IndexController.LOG_TAG + " Failed close statement -> fillAnimalProgressionBySomeoneElse()"); + } + } + if (conn != null) { + try { + conn.close(); + } catch (SQLException ex) { + System.err.println(IndexController.LOG_TAG + " Failed close connection -> fillAnimalProgressionBySomeoneElse()"); + } + } + } } @Override public void fillAnimalProgressionByVeterinary(Animal animal, String progressionByVeterinary) { + Connection conn = null; + PreparedStatement statement = null; + ResultSet resultSet = null; + try { + conn = mDataSource.getConnection(); + statement = conn.prepareStatement("select " + + AnimalDao.TABLE_NAME+".id as animal_id, "+AnimalDao.TABLE_NAME+".name as animal_name, "+AnimalDao.TABLE_NAME+".owner as animal_owner, " + + TABLE_NAME+".id as progression_id, "+TABLE_NAME+".progression_by_me as prog_by_me, "+TABLE_NAME+".progression_by_someone_else as prog_by_someone_else, "+TABLE_NAME+".progression_by_veterinary as prog_by_vet, " + + TABLE_NAME+".care as care_id, "+TABLE_NAME+".consent_behavior as consent_behavior_id, " + + CareDao.TABLE_NAME+".name as care_name, "+CareDao.TABLE_NAME+".description as care_desc, " + + ConsentBehaviorDao.TABLE_NAME+".name as consent_behavior_name, "+ConsentBehaviorDao.TABLE_NAME+".description as consent_behavior_desc " + + "from "+TABLE_NAME+" " + + "left join "+AnimalDao.TABLE_NAME+" on "+TABLE_NAME+".animal = "+AnimalDao.TABLE_NAME+".id " + + "left join "+CareDao.TABLE_NAME+" on "+TABLE_NAME+".care = "+CareDao.TABLE_NAME+".id " + + "left join "+ConsentBehaviorDao.TABLE_NAME+" on "+TABLE_NAME+".consent_behavior = "+ConsentBehaviorDao.TABLE_NAME+".id " + + "where "+AnimalDao.TABLE_NAME+".owner = ? and "+AnimalDao.TABLE_NAME+".id = ? and "+TABLE_NAME+".progression_by_veterinary = ?;"); + statement.setString(1, animal.getOwner()); + statement.setInt(2, animal.getId()); + statement.setString(3, progressionByVeterinary); + System.out.println(IndexController.LOG_TAG + " SQL -> " + statement.toString()); + resultSet = statement.executeQuery(); + + if (resultSet != null) { + while (resultSet.next()) { + Progression progression = new Progression(); + progression.setId(resultSet.getInt("progression_id")); + progression.setProgressionByMe(resultSet.getString("prog_by_me")); + progression.setProgressionBySomeoneElse(resultSet.getString("prog_by_someone_else")); + progression.setProgressionByVeterinary(resultSet.getString("prog_by_vet")); + + int careId = resultSet.getInt("care_id"); + if (!animal.containsCareKey(careId)) { + Care care = new Care(); + care.setId(careId); + care.setName(resultSet.getString("care_name")); + care.setDescription(resultSet.getString("care_desc")); + animal.addCare(care); + } + progression.setCare(animal.getCareById(careId)); + + int consentBehaviorId = resultSet.getInt("consent_behavior_id"); + if (!animal.containsConsentBehaviorKey(consentBehaviorId)) { + ConsentBehavior consentBehavior = new ConsentBehavior(); + consentBehavior.setId(consentBehaviorId); + consentBehavior.setName(resultSet.getString("consent_behavior_name")); + consentBehavior.setDescription(resultSet.getString("consent_behavior_desc")); + animal.addConsentBehavior(consentBehavior); + } + progression.setConsentBehavior(animal.getConsentBehaviorById(consentBehaviorId)); + + animal.addProgression(progression); + } + resultSet.close(); + } + } catch (SQLException ex) { + System.err.println(IndexController.LOG_TAG + " SQLException -> fillAnimalProgressionByVeterinary() - " + ex.getMessage()); + ex.printStackTrace(); + } finally { + if (resultSet != null) { + try { + resultSet.close(); + } catch (SQLException ex) { + System.err.println(IndexController.LOG_TAG + " Failed close ResultSet -> fillAnimalProgressionByVeterinary()"); + } + } + if (statement != null) { + try { + statement.close(); + } catch (SQLException ex) { + System.err.println(IndexController.LOG_TAG + " Failed close statement -> fillAnimalProgressionByVeterinary()"); + } + } + if (conn != null) { + try { + conn.close(); + } catch (SQLException ex) { + System.err.println(IndexController.LOG_TAG + " Failed close connection -> fillAnimalProgressionByVeterinary()"); + } + } + } } // @@ -464,7 +624,7 @@ public class ProgressionDao extends PostgresSqlDao implements IProgressionDao { conn = mDataSource.getConnection(); statement = conn.prepareStatement("DELETE FROM "+TABLE_NAME+" WHERE animal = (" + "SELECT id FROM "+AnimalDao.TABLE_NAME+" WHERE owner = ? AND id = ?) " - + "AND care = (SELECT id FROM "+ConsentBehaviorDao.TABLE_NAME+" WHERE animal = ? AND id = ?)"); + + "AND consent_behavior = (SELECT id FROM "+ConsentBehaviorDao.TABLE_NAME+" WHERE animal = ? AND id = ?)"); statement.setString(1, owner); statement.setInt(2, animalId); statement.setInt(3, animalId); diff --git a/src/main/java/fr/geoffrey/medical_training_tracker/services/IServiceAnimal.java b/src/main/java/fr/geoffrey/medical_training_tracker/services/IServiceAnimal.java index ed76e9c..940401e 100644 --- a/src/main/java/fr/geoffrey/medical_training_tracker/services/IServiceAnimal.java +++ b/src/main/java/fr/geoffrey/medical_training_tracker/services/IServiceAnimal.java @@ -12,6 +12,8 @@ public interface IServiceAnimal { public Animal getAnimalCareProgression(String owner, int animalId, int careId); public Animal getAnimalConsentBehaviorProgression(String owner, int animalId, int consentBehaviorId); public Animal getAnimalProgressionByMe(String username, int animalId, String progressionValue); + public Animal getAnimalProgressionBySomeoneElse(String username, int animalId, String progressionValue); + public Animal getAnimalProgressionByVeterinary(String username, int animalId, String progressionValue); public List getAnimalConsentBehaviors(String username, int animalId); public List getAnimalCares(String username, int animalId); diff --git a/src/main/java/fr/geoffrey/medical_training_tracker/services/IServiceRegister.java b/src/main/java/fr/geoffrey/medical_training_tracker/services/IServiceRegister.java index a80f960..15ccdc4 100644 --- a/src/main/java/fr/geoffrey/medical_training_tracker/services/IServiceRegister.java +++ b/src/main/java/fr/geoffrey/medical_training_tracker/services/IServiceRegister.java @@ -8,4 +8,5 @@ import fr.geoffrey.medical_training_tracker.dao.UserAlreadyExistException; */ public interface IServiceRegister { public boolean register(String username, String password, String passwordCheck, String name) throws UserAlreadyExistException; + public boolean changePassword(String username, String oldPassword, String newPassword, String newPasswordCheck); } diff --git a/src/main/java/fr/geoffrey/medical_training_tracker/services/ServiceAnimal.java b/src/main/java/fr/geoffrey/medical_training_tracker/services/ServiceAnimal.java index cb5b94f..76b8cee 100644 --- a/src/main/java/fr/geoffrey/medical_training_tracker/services/ServiceAnimal.java +++ b/src/main/java/fr/geoffrey/medical_training_tracker/services/ServiceAnimal.java @@ -118,6 +118,24 @@ public class ServiceAnimal implements IServiceAnimal { return animal; } + @Override + public Animal getAnimalProgressionBySomeoneElse(String username, int animalId, String progressionValue) { + Animal animal = animalDao.getAnimal(username, animalId); + if (animal != null) { + progressionDao.fillAnimalProgressionBySomeoneElse(animal, progressionValue); + } + return animal; + } + + @Override + public Animal getAnimalProgressionByVeterinary(String username, int animalId, String progressionValue) { + Animal animal = animalDao.getAnimal(username, animalId); + if (animal != null) { + progressionDao.fillAnimalProgressionByVeterinary(animal, progressionValue); + } + return animal; + } + @Override public List getAnimalConsentBehaviors(String username, int animalId) { return consentBehaviorDao.getAllAnialConsentBehavior(username, animalId); diff --git a/src/main/java/fr/geoffrey/medical_training_tracker/services/ServiceRegister.java b/src/main/java/fr/geoffrey/medical_training_tracker/services/ServiceRegister.java index 708b9a9..8b5f3db 100644 --- a/src/main/java/fr/geoffrey/medical_training_tracker/services/ServiceRegister.java +++ b/src/main/java/fr/geoffrey/medical_training_tracker/services/ServiceRegister.java @@ -3,6 +3,8 @@ package fr.geoffrey.medical_training_tracker.services; import fr.geoffrey.medical_training_tracker.config.encoder.Encoder; import fr.geoffrey.medical_training_tracker.dao.IUserDao; import fr.geoffrey.medical_training_tracker.dao.UserAlreadyExistException; +import fr.geoffrey.medical_training_tracker.dao.bean.User; +import org.springframework.security.crypto.password.PasswordEncoder; public class ServiceRegister implements IServiceRegister { @@ -25,5 +27,19 @@ public class ServiceRegister implements IServiceRegister { } return ret; } + + @Override + public boolean changePassword(String username, String oldPassword, String newPassword, String newPasswordCheck) { + boolean ret = false; + PasswordEncoder encoder = Encoder.getInstance(); + User user = userDao.getUser(username); + if (encoder.matches(oldPassword, user.getPassword())) { + if (!newPassword.equals("") && newPassword.equals(newPasswordCheck)) { + String hashedPassword = encoder.encode(newPassword); + ret = userDao.updatePassword(username, hashedPassword); + } + } + return ret; + } } diff --git a/src/main/resources/messages.properties b/src/main/resources/messages.properties index 32bac78..a8382c8 100644 --- a/src/main/resources/messages.properties +++ b/src/main/resources/messages.properties @@ -7,6 +7,26 @@ navbar.cares_and_behaviors = Care and Behaviors footer.license = Application under {0} license footer.source_code = Source code + progression.value.NOT_TRAINED=Not trained progression.value.CURRENTLY_TRAINING=Currently training progression.value.TRAINED=Done +progression.by_me=Progression by me +progression.by_someone_else=Progression by someone else +progression.by_veterinary=Done by veterinary + +register.title=Sign up +register.label.login=Username: +register.placeholder.login=Username +register.label.password=Password: +register.placeholder.password=Password +register.label.password_check=Check password: +register.placeholder.password_check=Password +register.button.submit=Create + +authentication.title=Authentication +authentication.label.login=Username: +authentication.placeholder.login=Username +authentication.label.password=Password: +authentication.placeholder.password=Password +authentication.button.submit=Login diff --git a/src/main/resources/messages_en.properties b/src/main/resources/messages_en.properties index 936343c..f86d7cb 100644 --- a/src/main/resources/messages_en.properties +++ b/src/main/resources/messages_en.properties @@ -7,6 +7,26 @@ navbar.cares_and_behaviors = Care and Behaviors footer.source_code=Source code footer.license=Application under {0} license + progression.value.NOT_TRAINED=Not trained progression.value.CURRENTLY_TRAINING=Currently training progression.value.TRAINED=Done +progression.by_me=Progression by me +progression.by_someone_else=Progression by someone else +progression.by_veterinary=Done by veterinary + +register.title=Sign up +register.label.login=Username: +register.placeholder.login=Username +register.label.password=Password: +register.placeholder.password=Password +register.label.password_check=Check password: +register.placeholder.password_check=Password +register.button.submit=Create + +authentication.title=Authentication +authentication.label.login=Username: +authentication.placeholder.login=Username +authentication.label.password=Password: +authentication.placeholder.password=Password +authentication.button.submit=Login diff --git a/src/main/resources/messages_fr.properties b/src/main/resources/messages_fr.properties index 856e665..593f9db 100644 --- a/src/main/resources/messages_fr.properties +++ b/src/main/resources/messages_fr.properties @@ -7,6 +7,26 @@ navbar.cares_and_behaviors = Soins et Comportements footer.source_code=Code source footer.license=Application sous licence {0} + progression.value.NOT_TRAINED=Non entrainn\u00e9 progression.value.CURRENTLY_TRAINING=En cours progression.value.TRAINED=Fait +progression.by_me=Progression par moi +progression.by_someone_else=Progression par quelqu'un d'autre +progression.by_veterinary=R\u00e9alis\u00e9 par le v\u00e9t\u00e9rinaire + +register.title=Cr\u00e9ation du compte +register.label.login=Nom d'utilisateur : +register.placeholder.login=Nom d'utilisateur +register.label.password=Mot de passe : +register.placeholder.password=Mot de passe +register.label.password_check=V\u00e9rification du mot de passe : +register.placeholder.password_check=Mot de passe +register.button.submit=Cr\u00e9er + +authentication.title=Authentification +authentication.label.login=Nom d'utilisateur : +authentication.placeholder.login=Nom d'utilisateur +authentication.label.password=Mot de passe : +authentication.placeholder.password=Mot de passe +authentication.button.submit=Connexion diff --git a/src/main/webapp/vue/animal_behavior.jsp b/src/main/webapp/vue/animal_behavior.jsp index 7b89862..d5c98c0 100644 --- a/src/main/webapp/vue/animal_behavior.jsp +++ b/src/main/webapp/vue/animal_behavior.jsp @@ -55,17 +55,29 @@ success info active - ">${progression.getProgressionByMe()} + "> + + + + success info active - ">${progression.getProgressionBySomeoneElse()} + "> + + + + success info active - ">${progression.getProgressionByVeterinary()} + "> + + + +
@@ -100,4 +112,10 @@ <%@ include file="base/footer.jsp" %> + + diff --git a/src/main/webapp/vue/animal_care.jsp b/src/main/webapp/vue/animal_care.jsp index eb54112..0aa6ba4 100644 --- a/src/main/webapp/vue/animal_care.jsp +++ b/src/main/webapp/vue/animal_care.jsp @@ -64,12 +64,20 @@ success info active - "> + "> + + + + success info active - "> + "> + + + + @@ -103,4 +111,10 @@ <%@ include file="base/footer.jsp" %> + + diff --git a/src/main/webapp/vue/animal_cares_and_behaviors.jsp b/src/main/webapp/vue/animal_cares_and_behaviors.jsp index ae7e7e4..a6b4c24 100644 --- a/src/main/webapp/vue/animal_cares_and_behaviors.jsp +++ b/src/main/webapp/vue/animal_cares_and_behaviors.jsp @@ -105,4 +105,10 @@ <%@ include file="base/footer.jsp" %> + + diff --git a/src/main/webapp/vue/animal_progression.jsp b/src/main/webapp/vue/animal_progression.jsp index a1643ce..79a7230 100644 --- a/src/main/webapp/vue/animal_progression.jsp +++ b/src/main/webapp/vue/animal_progression.jsp @@ -31,7 +31,7 @@
<%@ include file="base/navbar.jsp" %>

Feuille de ${MODEL_MAP_ANIMAL.getName()}

-

Progression par moi ${MODEL_MAP_PROGRESSION}

+

-

@@ -55,4 +55,10 @@ <%@ include file="base/footer.jsp" %> + + diff --git a/src/main/webapp/vue/login.jsp b/src/main/webapp/vue/login.jsp index 683fcd0..ecd3432 100644 --- a/src/main/webapp/vue/login.jsp +++ b/src/main/webapp/vue/login.jsp @@ -18,16 +18,15 @@ - + - - - + + " required autofocus /> - + + " required /> + +
diff --git a/src/main/webapp/vue/register.jsp b/src/main/webapp/vue/register.jsp index 03d90cd..a45457c 100644 --- a/src/main/webapp/vue/register.jsp +++ b/src/main/webapp/vue/register.jsp @@ -1,6 +1,5 @@ <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib uri="http://www.springframework.org/tags" prefix="spring"%> -<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ page isELIgnored="false"%> <%@ include file="base/language.jsp" %> @@ -18,14 +17,18 @@ - + - - - - + + " required autofocus value="${MODEL_MAP_REGISTER_USERNAME}" /> + + + " required /> - + + " required /> + +

${MODEL_MAP_REGISTER_ERROR_MESSAGE}