From 4344f753c9844c4a902234cd7a03a46be862a799 Mon Sep 17 00:00:00 2001 From: Alexis POYEN <apoyen@grandlyon.com> Date: Tue, 7 Jul 2020 09:27:07 +0200 Subject: [PATCH] Resolve "Hide useless element" --- web/components/management/area.js | 6 +-- web/components/management/candidate-lists.js | 8 ++-- web/components/management/desk.js | 1 + web/components/management/genericElection.js | 10 +++-- web/components/management/party.js | 2 +- web/components/management/round-desks.js | 13 +++--- web/components/management/round.js | 47 +++++++++++++------- web/components/management/section.js | 5 +-- 8 files changed, 57 insertions(+), 35 deletions(-) diff --git a/web/components/management/area.js b/web/components/management/area.js index 220dcd3..60eeb31 100644 --- a/web/components/management/area.js +++ b/web/components/management/area.js @@ -124,6 +124,7 @@ class Area { } async displayAreas() { + document.getElementById("areas").style.display = "block"; document.getElementById("area-list").innerHTML = /* HTML */ `<button id="area-new" class="button large-button is-success" @@ -168,9 +169,8 @@ class Area { emptyAreas() { this.election = null; - document.getElementById("area-title").innerHTML = "Circonscriptions"; - document.getElementById("area-list").innerHTML = - "Veuillez sélectionner une élection"; + document.getElementById("sections").style.display = "none"; + document.getElementById("desks").style.display = "none"; } areaTemplate(area) { diff --git a/web/components/management/candidate-lists.js b/web/components/management/candidate-lists.js index 4ab5d21..3de3f04 100644 --- a/web/components/management/candidate-lists.js +++ b/web/components/management/candidate-lists.js @@ -33,15 +33,15 @@ class CandidateList { this.CandidateModel.current_user = await Auth.GetUser(); const mountpoint = where; document.getElementById(mountpoint).innerHTML = /* HTML */ ` - <header class="card-header"> + <header id="dropdown-candidate-lists" class="card-header clickable"> <p id="candidate-list-title" class="card-header-title"> Liste des candidats par circonscription </p> - <button id="dropdown-candidate-lists" class="button"> - <span class="icon is-small"> + <a> + <span class="icon is-large"> <i class="fas fa-caret-down"></i> </span> - </button> + </a> </header> <div id="candidate-lists-dropdown-content" class="columns card-content"> <div class="column"> diff --git a/web/components/management/desk.js b/web/components/management/desk.js index af07485..c268ced 100644 --- a/web/components/management/desk.js +++ b/web/components/management/desk.js @@ -121,6 +121,7 @@ class Desk { } async displayDesks() { + document.getElementById("desks").style.display = "block"; document.getElementById("desk-list").innerHTML = /* HTML */ `<button id="desk-new" class="button large-button is-success" diff --git a/web/components/management/genericElection.js b/web/components/management/genericElection.js index a15bd3f..bb65aca 100644 --- a/web/components/management/genericElection.js +++ b/web/components/management/genericElection.js @@ -23,13 +23,17 @@ class GenericElection { <div id="election" class="card-no-hover"></div> </div> <div class="column"> - <div id="areas" class="card-no-hover"></div> + <div id="areas" class="card-no-hover" style="display: none ;"></div> </div> <div class="column"> - <div id="sections" class="card-no-hover"></div> + <div + id="sections" + class="card-no-hover" + style="display: none ;" + ></div> </div> <div class="column"> - <div id="desks" class="card-no-hover"></div> + <div id="desks" class="card-no-hover" style="display: none ;"></div> </div> </div> diff --git a/web/components/management/party.js b/web/components/management/party.js index b366615..c104a3f 100644 --- a/web/components/management/party.js +++ b/web/components/management/party.js @@ -116,8 +116,8 @@ class Party { <div class="content"> <nav class="level"> <div class="level-left" style="color:${party.Color}"> - ${party.Name}    <p style="background-color:${party.Color}">Couleur</p> +    ${party.Name} </div> <div class="level-right"> <a diff --git a/web/components/management/round-desks.js b/web/components/management/round-desks.js index d32c75b..b1d4367 100644 --- a/web/components/management/round-desks.js +++ b/web/components/management/round-desks.js @@ -30,15 +30,15 @@ class RoundDesk { this.SectionModel.current_user = await Auth.GetUser(); const mountpoint = where; document.getElementById(mountpoint).innerHTML = /* HTML */ ` - <header class="card-header"> + <header id="dropdown-round-desks" class="card-header clickable"> <p id="desk-round-title" class="card-header-title"> Bureaux de votes </p> - <button id="dropdown-round-desks" class="button"> - <span class="icon is-small"> + <a> + <span class="icon is-large"> <i class="fas fa-caret-down"></i> </span> - </button> + </a> </header> <div id="desk-rounds-dropdown-content" class="columns card-content"> <div class="column"> @@ -112,7 +112,10 @@ class RoundDesk { deskRoundTemplate(deskRound) { return /* HTML */ `<div class="card card-list"> - <div id="deskrounds-deskround-${deskRound.ID}" class="card-content clickable"> + <div + id="deskrounds-deskround-${deskRound.ID}" + class="card-content clickable" + > <div class="content"> <nav class="level"> <div diff --git a/web/components/management/round.js b/web/components/management/round.js index 2b6f7a5..6f7c3a1 100644 --- a/web/components/management/round.js +++ b/web/components/management/round.js @@ -54,24 +54,39 @@ class Round { let dropdownCandidateList = document.getElementById( "dropdown-candidate-lists" ); - dropdownRoundDesks.addEventListener("click", function () { - document.getElementById("desk-rounds-dropdown-content").style.display = - "flex"; - document.getElementById("round-desks").style.height = "70vh"; - document.getElementById( - "candidate-lists-dropdown-content" - ).style.display = "none"; - document.getElementById("candidate-lists").style.height = "auto"; + + dropdownRoundDesks.addEventListener("click", () => { + if (document.getElementById("round-desks").style.height == "auto") { + this.hideCandidateLists(); + } else { + this.hideDesks(); + } }); - dropdownCandidateList.addEventListener("click", function () { - document.getElementById("desk-rounds-dropdown-content").style.display = - "none"; - document.getElementById("round-desks").style.height = "auto"; - document.getElementById( - "candidate-lists-dropdown-content" - ).style.display = "flex"; - document.getElementById("candidate-lists").style.height = "70vh"; + dropdownCandidateList.addEventListener("click", () => { + if (document.getElementById("round-desks").style.height == "auto") { + this.hideCandidateLists(); + } else { + this.hideDesks(); + } }); } + + hideDesks() { + document.getElementById("desk-rounds-dropdown-content").style.display = + "none"; + document.getElementById("round-desks").style.height = "auto"; + document.getElementById("candidate-lists-dropdown-content").style.display = + "flex"; + document.getElementById("candidate-lists").style.height = "70vh"; + } + + hideCandidateLists() { + document.getElementById("desk-rounds-dropdown-content").style.display = + "flex"; + document.getElementById("round-desks").style.height = "70vh"; + document.getElementById("candidate-lists-dropdown-content").style.display = + "none"; + document.getElementById("candidate-lists").style.height = "auto"; + } } diff --git a/web/components/management/section.js b/web/components/management/section.js index 653664c..a262d7d 100644 --- a/web/components/management/section.js +++ b/web/components/management/section.js @@ -126,6 +126,7 @@ class Section { } async displaySections() { + document.getElementById("sections").style.display = "block"; document.getElementById("section-list").innerHTML = /* HTML */ `<button id="section-new" class="button large-button is-success" @@ -175,9 +176,7 @@ class Section { emptySections() { this.area = null; - document.getElementById("section-title").innerHTML = "Sections"; - document.getElementById("section-list").innerHTML = - "Veuillez sélectionner une circonscription"; + document.getElementById("desks").style.display = "none"; } sectionTemplate(section) { -- GitLab