Utilisation d'un modal pour l'ajout et la modification d'options/questions
This commit is contained in:
parent
b1488c7c8a
commit
6abfd035d7
4 changed files with 77 additions and 58 deletions
|
@ -7,11 +7,23 @@
|
|||
document.addEventListener('DOMContentLoaded', () => {
|
||||
var $modalButtons = document.querySelectorAll('.modal-button') || [];
|
||||
|
||||
$modalButtons.forEach(function($el) {
|
||||
$el.addEventListener('click', function() {
|
||||
$modalButtons.forEach($el => {
|
||||
$el.addEventListener('click', () => {
|
||||
var $target = document.getElementById($el.dataset.target);
|
||||
$target_form = $target.querySelector("form");
|
||||
var $target_form = $target.querySelector("form");
|
||||
var modal_title = '';
|
||||
$target_form.action = $el.dataset.post_url;
|
||||
$target.querySelector('.modal-card-title').innerHTML = $el.dataset.title;
|
||||
|
||||
if ($el.classList.contains('question')) {
|
||||
$target_form.querySelector('#id_text_fr').value = $el.dataset.q_fr || '';
|
||||
$target_form.querySelector('#id_text_en').value = $el.dataset.q_en || '';
|
||||
$target_form.querySelector('#id_type').value = $el.dataset.type || 'assentiment';
|
||||
} else if ($el.classList.contains('option')) {
|
||||
$target_form.querySelector('#id_text_fr').value = $el.dataset.o_fr || '';
|
||||
$target_form.querySelector('#id_text_en').value = $el.dataset.o_en || '';
|
||||
$target_form.querySelector('#id_abbreviation').value = $el.dataset.abbr || '';
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
|
@ -179,7 +191,7 @@
|
|||
</span>
|
||||
</a>
|
||||
|
||||
<a class="tag is-outlined is-light is-info ml-1" href="{% url 'election.mod-question' q.pk %}">
|
||||
<a class="tag is-outlined is-light is-info ml-1 modal-button question" data-post_url="{% url 'election.mod-question' q.pk %}" data-target="modal-question" data-type="{{ q.type }}" data-q_en="{{ q.text_en }}" data-q_fr="{{ q.text_fr }}" data-title="{% trans "Modifier la question" %}">
|
||||
<span class="icon-text">
|
||||
<span class="icon">
|
||||
<i class="fas fa-edit"></i>
|
||||
|
@ -207,7 +219,8 @@
|
|||
<i class="fas fa-times"></i>
|
||||
</span>
|
||||
</a>
|
||||
<a class="tag is-info is-light is-outlined has-tooltip-primary mb-0" data-tooltip="{% trans "Modifier" %}" href="{% url 'election.mod-option' o.pk %}">
|
||||
|
||||
<a class="tag is-info is-light is-outlined has-tooltip-primary mb-0 modal-button option" data-tooltip="{% trans "Modifier" %}" data-post_url="{% url 'election.mod-option' o.pk %}" data-target="modal-option" data-o_en="{{ o.text_en }}" data-o_fr="{{ o.text_fr }}" data-abbr="{{ o.abbreviation }}" data-title="{% trans "Modifier l'option" %}">
|
||||
<span class="icon">
|
||||
<i class="fas fa-edit"></i>
|
||||
</span>
|
||||
|
@ -246,7 +259,7 @@
|
|||
{# Rajout d'une option #}
|
||||
{% if election.start_date > current_time %}
|
||||
<div class="panel-block">
|
||||
<button class="button modal-button is-primary is-outlined is-fullwidth" data-post_url="{% url 'election.add-option' q.pk %}" data-target="modal-add_option">
|
||||
<button class="button modal-button is-primary is-outlined is-fullwidth option" data-post_url="{% url 'election.add-option' q.pk %}" data-target="modal-option" data-title="{% trans "Rajouter une option" %}">
|
||||
<span class="icon">
|
||||
<i class="fas fa-plus"></i>
|
||||
</span>
|
||||
|
@ -262,16 +275,15 @@
|
|||
|
||||
{# Rajout d'une option #}
|
||||
{% trans "Rajouter une option" as modal_title %}
|
||||
{% include "forms/modal-form.html" with modal_id="add_option" form=o_form %}
|
||||
{% include "forms/modal-form.html" with modal_id="option" form=o_form %}
|
||||
|
||||
{# Rajout d'une question #}
|
||||
{% trans "Rajouter une question" as modal_title %}
|
||||
{% include "forms/modal-form.html" with modal_id="add_question" form=q_form %}
|
||||
|
||||
{% include "forms/modal-form.html" with modal_id="question" form=q_form %}
|
||||
|
||||
<div class="columns is-centered" id="q_add">
|
||||
<div class="column is-two-thirds">
|
||||
<button class="button modal-button is-primary is-outlined is-fullwidth" data-post_url="{% url 'election.add-question' election.pk %}" data-target="modal-add_question">
|
||||
<button class="button modal-button is-primary is-outlined is-fullwidth question" data-post_url="{% url 'election.add-question' election.pk %}" data-target="modal-question" data-title="{% trans "Rajouter une question" %}">
|
||||
<span class="icon">
|
||||
<i class="fas fa-question"></i>
|
||||
</span>
|
||||
|
|
|
@ -13,8 +13,8 @@
|
|||
|
||||
$del_buttons.forEach($del => {
|
||||
$del.addEventListener('click', () => {
|
||||
$del_form.action = $del.dataset['post_url'];
|
||||
$del_title.innerHTML = $del.dataset['tooltip'];
|
||||
$del_form.action = $del.dataset.post_url;
|
||||
$del_title.innerHTML = $del.dataset.tooltip;
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
Binary file not shown.
|
@ -7,8 +7,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 0.1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-05-27 00:24+0200\n"
|
||||
"PO-Revision-Date: 2021-05-27 00:26+0200\n"
|
||||
"POT-Creation-Date: 2021-05-28 10:58+0200\n"
|
||||
"PO-Revision-Date: 2021-05-28 10:59+0200\n"
|
||||
"Last-Translator: Test Translator <test@translator>\n"
|
||||
"Language-Team: \n"
|
||||
"Language: en\n"
|
||||
|
@ -56,9 +56,9 @@ msgstr ""
|
|||
msgid "Supprimer le vote de {} ({}) ?"
|
||||
msgstr "Delete the vote of {} ({}) ?"
|
||||
|
||||
#: elections/forms.py:110 elections/templates/elections/election_admin.html:178
|
||||
#: elections/templates/elections/election_admin.html:205
|
||||
#: elections/templates/elections/election_voters.html:57
|
||||
#: elections/forms.py:110 elections/templates/elections/election_admin.html:191
|
||||
#: elections/templates/elections/election_admin.html:218
|
||||
#: elections/templates/elections/election_voters.html:82
|
||||
msgid "Supprimer"
|
||||
msgstr "Delete"
|
||||
|
||||
|
@ -261,7 +261,7 @@ msgstr ""
|
|||
"received by e-mail."
|
||||
|
||||
#: elections/templates/elections/election.html:132
|
||||
#: elections/templates/elections/election_voters.html:44
|
||||
#: elections/templates/elections/election_voters.html:65
|
||||
msgid ""
|
||||
"Pour voter lors de cette élection, vous devez vous connecter à l'aide du CAS "
|
||||
"élève, d'autres restrictions peuvent s'appliquer et votre vote pourra être "
|
||||
|
@ -284,59 +284,68 @@ msgstr "Login via CAS"
|
|||
msgid "A voté"
|
||||
msgstr "Voted"
|
||||
|
||||
#: elections/templates/elections/election_admin.html:40
|
||||
#: elections/templates/elections/election_admin.html:21
|
||||
#: elections/templates/elections/election_admin.html:282
|
||||
#: elections/templates/elections/election_admin.html:291
|
||||
msgid "Rajouter une question"
|
||||
msgstr "Add a question"
|
||||
|
||||
#: elections/templates/elections/election_admin.html:21
|
||||
msgid "Modifier la question"
|
||||
msgstr "Change the question"
|
||||
|
||||
#: elections/templates/elections/election_admin.html:26
|
||||
#: elections/templates/elections/election_admin.html:267
|
||||
#: elections/templates/elections/election_admin.html:278
|
||||
msgid "Rajouter une option"
|
||||
msgstr "Add an option"
|
||||
|
||||
#: elections/templates/elections/election_admin.html:26
|
||||
msgid "Modifier l'option"
|
||||
msgstr "Change the option"
|
||||
|
||||
#: elections/templates/elections/election_admin.html:53
|
||||
msgid "Actions"
|
||||
msgstr "Actions"
|
||||
|
||||
#: elections/templates/elections/election_admin.html:52
|
||||
#: elections/templates/elections/election_admin.html:65
|
||||
msgid "Exporter les votant·e·s"
|
||||
msgstr "Export the list of voters"
|
||||
|
||||
#: elections/templates/elections/election_admin.html:61
|
||||
#: elections/templates/elections/election_admin.html:187
|
||||
#: elections/templates/elections/election_admin.html:210
|
||||
#: elections/templates/elections/election_admin.html:74
|
||||
#: elections/templates/elections/election_admin.html:200
|
||||
#: elections/templates/elections/election_admin.html:224
|
||||
msgid "Modifier"
|
||||
msgstr "Edit"
|
||||
|
||||
#: elections/templates/elections/election_admin.html:70
|
||||
#: elections/templates/elections/election_admin.html:83
|
||||
#: elections/templates/elections/upload_voters.html:27
|
||||
msgid "Gestion de la liste de votant·e·s"
|
||||
msgstr "Management of the voters' list"
|
||||
|
||||
#: elections/templates/elections/election_admin.html:82
|
||||
#: elections/templates/elections/election_voters.html:27
|
||||
#: elections/templates/elections/election_admin.html:95
|
||||
#: elections/templates/elections/election_voters.html:48
|
||||
msgid "Liste des votant·e·s"
|
||||
msgstr "Voters' list"
|
||||
|
||||
#: elections/templates/elections/election_admin.html:90
|
||||
#: elections/templates/elections/election_admin.html:103
|
||||
msgid "Dépouiller"
|
||||
msgstr "Count"
|
||||
|
||||
#: elections/templates/elections/election_admin.html:102
|
||||
#: elections/templates/elections/election_admin.html:115
|
||||
msgid "Publier"
|
||||
msgstr "Publish"
|
||||
|
||||
#: elections/templates/elections/election_admin.html:104
|
||||
#: elections/templates/elections/election_admin.html:117
|
||||
msgid "Dépublier"
|
||||
msgstr "De-publish"
|
||||
|
||||
#: elections/templates/elections/election_admin.html:115
|
||||
#: elections/templates/elections/election_admin.html:128
|
||||
msgid "Archiver"
|
||||
msgstr "Archive"
|
||||
|
||||
#: elections/templates/elections/election_admin.html:253
|
||||
#: elections/templates/elections/election_admin.html:264
|
||||
msgid "Rajouter une option"
|
||||
msgstr "Add an option"
|
||||
|
||||
#: elections/templates/elections/election_admin.html:268
|
||||
#: elections/templates/elections/election_admin.html:278
|
||||
msgid "Rajouter une question"
|
||||
msgstr "Add a question"
|
||||
|
||||
#: elections/templates/elections/election_ballots.html:18
|
||||
#: elections/templates/elections/election_voters.html:19
|
||||
#: elections/templates/elections/option_update.html:37
|
||||
#: elections/templates/elections/election_voters.html:40
|
||||
#: elections/templates/elections/upload_voters.html:48
|
||||
#: elections/templates/elections/vote.html:49
|
||||
#: shared/templates/auth/election_login.html:34
|
||||
|
@ -354,17 +363,6 @@ msgstr "List of ballots"
|
|||
msgid "Création d'une élection"
|
||||
msgstr "Creating an election"
|
||||
|
||||
#: elections/templates/elections/election_create.html:41
|
||||
#: elections/templates/elections/option_update.html:29
|
||||
#: elections/templates/elections/vote.html:40
|
||||
#: shared/templates/auth/create-user.html:23
|
||||
#: shared/templates/auth/election_login.html:25
|
||||
#: shared/templates/authens/pwd_login.html:25
|
||||
#: shared/templates/authens/pwd_reset_confirm.html:25
|
||||
#: shared/templates/forms/modal-form.html:23
|
||||
msgid "Enregistrer"
|
||||
msgstr "Save"
|
||||
|
||||
#: elections/templates/elections/election_list.html:10
|
||||
msgid "Liste des élections"
|
||||
msgstr "List of elections"
|
||||
|
@ -389,7 +387,7 @@ msgstr "Archived election"
|
|||
msgid "Modification d'une élection"
|
||||
msgstr "Editing an election"
|
||||
|
||||
#: elections/templates/elections/election_voters.html:42
|
||||
#: elections/templates/elections/election_voters.html:63
|
||||
msgid ""
|
||||
"Seules les personnes présentes sur cette liste peuvent voter, vous avez dû "
|
||||
"recevoir un mail avec vos identifiants de connexion."
|
||||
|
@ -397,16 +395,16 @@ msgstr ""
|
|||
"Only people on this list can vote, you should have received an e-mail with "
|
||||
"your login credentials."
|
||||
|
||||
#: elections/templates/elections/election_voters.html:54
|
||||
#: elections/templates/elections/election_voters.html:79
|
||||
#: elections/templates/elections/upload_voters.html:107
|
||||
msgid "Nom"
|
||||
msgstr "Name"
|
||||
|
||||
#: elections/templates/elections/election_voters.html:55
|
||||
#: elections/templates/elections/election_voters.html:80
|
||||
msgid "Vote enregistré"
|
||||
msgstr "Recorded vote"
|
||||
|
||||
#: elections/templates/elections/election_voters.html:89
|
||||
#: elections/templates/elections/election_voters.html:113
|
||||
#, python-format
|
||||
msgid "Supprimer le vote de %(v_name)s"
|
||||
msgstr "Delete the vote of %(v_name)s"
|
||||
|
@ -499,6 +497,15 @@ msgstr "E-mail"
|
|||
msgid "Vote pour la question :"
|
||||
msgstr "Vote for the question:"
|
||||
|
||||
#: elections/templates/elections/vote.html:40
|
||||
#: shared/templates/auth/create-user.html:23
|
||||
#: shared/templates/auth/election_login.html:25
|
||||
#: shared/templates/authens/pwd_login.html:25
|
||||
#: shared/templates/authens/pwd_reset_confirm.html:25
|
||||
#: shared/templates/forms/modal-form.html:23
|
||||
msgid "Enregistrer"
|
||||
msgstr "Save"
|
||||
|
||||
#: elections/templates/elections/vote.html:57
|
||||
msgid "Confirmation du vote"
|
||||
msgstr "Confirmation of the vote"
|
||||
|
@ -631,7 +638,7 @@ msgstr "Option successfully modified!"
|
|||
msgid "Option supprimée !"
|
||||
msgstr "Option deleted!"
|
||||
|
||||
#: elections/views.py:568
|
||||
#: elections/views.py:566
|
||||
msgid "Votre choix a bien été enregistré !"
|
||||
msgstr "Your choice has been recorded!"
|
||||
|
||||
|
|
Loading…
Reference in a new issue