From b13f01066daef67119c76e3ec064fa8f2e1abee3 Mon Sep 17 00:00:00 2001 From: Julien DAUPHANT Date: Mon, 30 Dec 2019 13:14:51 +0100 Subject: [PATCH] =?UTF-8?q?[291/327/319]=20Am=C3=A9lioration=20administrat?= =?UTF-8?q?ion=20-=20A=20review=20(#389)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * [291] La qualité peut être vide à l'édition d'un utilisateur * [327] Correction fil d'ariane groupe * Rename view Allusers * [319] Nouvelle vue utilisateurs * Improve UI --- app/controllers/JavascriptController.scala | 4 +- app/controllers/UserController.scala | 10 +- ....scala.html => allUsersByGroup.scala.html} | 3 +- app/views/allUsersNew.scala.html | 185 ++++++++++++++++++ app/views/editGroup.scala.html | 2 +- 5 files changed, 199 insertions(+), 5 deletions(-) rename app/views/{allUsers.scala.html => allUsersByGroup.scala.html} (96%) create mode 100644 app/views/allUsersNew.scala.html diff --git a/app/controllers/JavascriptController.scala b/app/controllers/JavascriptController.scala index 6310b89f4..28fe389f1 100644 --- a/app/controllers/JavascriptController.scala +++ b/app/controllers/JavascriptController.scala @@ -14,7 +14,9 @@ class JavascriptController() extends InjectedController{ JavaScriptReverseRouter("jsRoutes")( routes.javascript.GroupController.deleteUnusedGroupById, routes.javascript.ApplicationController.all, - routes.javascript.UserController.all) + routes.javascript.UserController.all, + routes.javascript.UserController.editUser + ) ).as(MimeTypes.JAVASCRIPT) } } diff --git a/app/controllers/UserController.scala b/app/controllers/UserController.scala index ec68ae75c..f6fe19818 100644 --- a/app/controllers/UserController.scala +++ b/app/controllers/UserController.scala @@ -52,7 +52,13 @@ case class UserController @Inject()(loginAction: LoginAction, List() } eventService.info("ALL_USER_SHOWED", "Visualise la vue des utilisateurs") - Ok(views.html.allUsers(request.currentUser)(groups, users, applications, selectedArea, configuration.underlying.getString("geoplus.host"))) + val result = request.getQueryString("vue").getOrElse("classique") match { + case "nouvelle" => + views.html.allUsersNew(request.currentUser)(groups, users, applications, selectedArea, configuration.underlying.getString("geoplus.host")) + case _ => + views.html.allUsersByGroup(request.currentUser)(groups, users, applications, selectedArea, configuration.underlying.getString("geoplus.host")) + } + Ok(result) } } @@ -309,7 +315,7 @@ case class UserController @Inject()(loginAction: LoginAction, }), "key" -> ignored("key"), "name" -> nonEmptyText.verifying(maxLength(100)), - "qualite" -> nonEmptyText.verifying(maxLength(100)), + "qualite" -> text.verifying(maxLength(100)), "email" -> email.verifying(maxLength(200), nonEmpty), "helper" -> boolean, "instructor" -> boolean, diff --git a/app/views/allUsers.scala.html b/app/views/allUsersByGroup.scala.html similarity index 96% rename from app/views/allUsers.scala.html rename to app/views/allUsersByGroup.scala.html index ce2064e4a..c2a74c792 100644 --- a/app/views/allUsers.scala.html +++ b/app/views/allUsersByGroup.scala.html @@ -76,7 +76,8 @@ }{ @if(currentUser.admin) { - Importer utilisateurs + Nouvelle vue utilisateurs + Importer utilisateurs } @if(currentUser.areas.length > 1) {

Territoire : diff --git a/app/views/allUsersNew.scala.html b/app/views/allUsersNew.scala.html new file mode 100644 index 000000000..39157d834 --- /dev/null +++ b/app/views/allUsersNew.scala.html @@ -0,0 +1,185 @@ +@import models._ +@(currentUser: User)(userGroups: List[UserGroup], allUsers: List[User], applications: List[Application], selectedArea: Area, geoplusHost: String)(implicit webJarsUtil: org.webjars.play.WebJarsUtil, flash: Flash, request: RequestHeader) + + +@main(currentUser, maxWidth = false)(s"Gestion des groupes utilisateurs - ${selectedArea.name}") { + @webJarsUtil.locate("tabulator.min.css").css() + @webJarsUtil.locate("tabulator.min.js").script() + +}{ + @if(currentUser.admin) { + Vue utilisateurs classique + Importer utilisateurs + } + @if(currentUser.areas.length > 1) { +

Territoire : + + +

+ } +
+ + + + +} \ No newline at end of file diff --git a/app/views/editGroup.scala.html b/app/views/editGroup.scala.html index 7c1334ebe..6b9281753 100644 --- a/app/views/editGroup.scala.html +++ b/app/views/editGroup.scala.html @@ -11,7 +11,7 @@ }{
- Territoires : @userGroup.areaIds.foreach{ areaId => + Territoires : @for(areaId <- userGroup.areaIds) { @{Area.fromId(areaId).get.name} } / Groupe : @userGroup.name @helper.form(routes.GroupController.editGroupPost(userGroup.id), 'method -> "post") {