From fde409681b0a4c0ff0af34bb09456c1df73366d9 Mon Sep 17 00:00:00 2001 From: niladic Date: Tue, 27 Jul 2021 18:25:13 +0200 Subject: [PATCH] =?UTF-8?q?Am=C3=A9liore=20la=20compr=C3=A9hension=20de=20?= =?UTF-8?q?la=20cr=C3=A9ation=20de=20compte=20(#1098)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/GroupController.scala | 5 ++- app/views/allUsersByGroup.scala.html | 6 +-- app/views/editGroup.scala.html | 6 +-- app/views/editMyGroups.scala | 55 ++++++++++++++++++++++++++- public/stylesheets/main.css | 4 ++ 5 files changed, 67 insertions(+), 9 deletions(-) diff --git a/app/controllers/GroupController.scala b/app/controllers/GroupController.scala index 03fa9f795..2c957001a 100644 --- a/app/controllers/GroupController.scala +++ b/app/controllers/GroupController.scala @@ -92,7 +92,10 @@ case class GroupController @Inject() ( ) Future.successful( Redirect(redirectPage) - .flashing("error" -> "L’utilisateur n’existe pas dans Administration+") + .flashing( + "error" -> ("Le compte n’existe pas dans Administration+. " + + "Celui-ci peut être créé par un responsable identifiable dans la liste ci-dessous.") + ) ) case (Some(userToAdd), usersInGroup) if usersInGroup.map(_.id).contains[UUID](userToAdd.id) => diff --git a/app/views/allUsersByGroup.scala.html b/app/views/allUsersByGroup.scala.html index 2c10f9f63..eecb24f9c 100644 --- a/app/views/allUsersByGroup.scala.html +++ b/app/views/allUsersByGroup.scala.html @@ -132,11 +132,11 @@ @helper.CSRF.formField
- - Ce n'est pas un nombre + + Ce n’est pas un nombre
} } diff --git a/app/views/editGroup.scala.html b/app/views/editGroup.scala.html index 7076dc4ed..086ad96cc 100644 --- a/app/views/editGroup.scala.html +++ b/app/views/editGroup.scala.html @@ -133,11 +133,11 @@

Veuillez confirmer la suppression du groupe.

@helper.CSRF.formField
- - Ce n'est pas un nombre + + Ce n’est pas un nombre
} diff --git a/app/views/editMyGroups.scala b/app/views/editMyGroups.scala index dc55bcae2..315452941 100644 --- a/app/views/editMyGroups.scala +++ b/app/views/editMyGroups.scala @@ -97,6 +97,14 @@ object editMyGroups { ) ) ), + ( + if (Authorization.canEditGroup(group)(currentUserRights)) { + div( + cls := "single--margin-top-24px", + createAccountBlock(group, currentUser, currentUserRights) + ) + } else () + ), div( cls := "single--margin-top-24px single--margin-bottom--24px", div( @@ -107,9 +115,13 @@ object editMyGroups { if (addUserForm.hasGlobalErrors) { div(cls := "global-errors", addUserForm.globalErrors.map(_.format).mkString(", ")) } else (), - div(cls := "sub-header", "Ajouter un membre au groupe"), + div(cls := "sub-header", "Ajouter un membre existant au groupe"), + div( + cls := "single--margin-left-24px", + "Un membre est un agent qui dispose déjà d’un compte Administration+" + ), div( - cls := "add-new-user-panel single--display-flex", { + cls := "add-new-user-panel single--display-flex single--margin-top-16px", { val field = addUserForm("email") div( div( @@ -142,6 +154,45 @@ object editMyGroups { ) ) ) + ), + ) + + def createAccountBlock( + group: UserGroup, + currentUser: User, + currentUserRights: Authorization.UserRights + )(implicit request: RequestHeader): Tag = + div( + form( + action := UserController.add(group.id).path, + method := UserController.add(group.id).method, + CSRFInput, + div(cls := "sub-header", "Créer des nouveaux comptes dans ce groupe"), + div( + cls := "add-new-user-panel single--display-flex", + div( + cls := "mdl-textfield mdl-js-textfield mdl-textfield--floating-label single--max-width-160px", + input( + cls := "mdl-textfield__input", + `type` := "text", + pattern := """-?[0-9]*(\.[0-9]+)?""", + id := "rows", + name := "rows", + value := "1" + ), + label( + cls := "mdl-textfield__label", + `for` := "rows", + "Nombre de comptes à créer" + ), + span(cls := "mdl-textfield__error", "Ce n’est pas un nombre") + ), + button( + cls := "single--margin-left-24px mdl-button mdl-js-button mdl-button--raised", + `type` := "submit", + "Créer des comptes dans ce groupe" + ) + ) ) ) diff --git a/public/stylesheets/main.css b/public/stylesheets/main.css index 2cb110ac6..ed93c134f 100644 --- a/public/stylesheets/main.css +++ b/public/stylesheets/main.css @@ -745,6 +745,10 @@ a { padding-left: 48px; } +.single--max-width-160px { + max-width: 160px; +} + .single--max-width-184px { max-width: 184px; }