diff options
Diffstat (limited to 'templates/payment')
-rw-r--r-- | templates/payment/create.html | 120 | ||||
-rw-r--r-- | templates/payment/table.html | 128 | ||||
-rw-r--r-- | templates/payment/update.html | 144 |
3 files changed, 392 insertions, 0 deletions
diff --git a/templates/payment/create.html b/templates/payment/create.html new file mode 100644 index 0000000..aea6fcd --- /dev/null +++ b/templates/payment/create.html @@ -0,0 +1,120 @@ +{% extends "base.html" %} + +{% block title %} + Nouveau paiement +{% endblock title %} + +{% block main %} + + <div> + <p class="g-Paragraph"> + <a + class="g-Link g-Media__Large" + href="/{{ payments_params( + page=query.page, + search=query.search, + frequency=query.frequency + ) }}" + > + Retour aux paiements + </a> + </p> + + <form class="g-Form" action="/payment/create" method="POST"> + <h1 class="g-H1"> + Nouveau paiement + {% if query.frequency != "Monthly" %} + ponctuel + {% else %} + mensuel + {% endif %} + </h1> + + {% if error %} + <div class="g-Form__Error">{{ error }}</div> + {% endif %} + + <label class="g-Form__Label" for="name">Nom</label> + <input + name="name" + class="g-Form__Input" + id="name" + value="{{ form.name | default(value="") }}" + required + {% if not form %} autofocus {% endif %} + /> + + <label class="g-Form__Label" for="cost">Coût</label> + <input + name="cost" + type="number" + class="g-Form__Input" + id="cost" + value="{{ form.cost | default(value="") }}" + required + /> + + {% set user_id = form.user_id | default(value="" ~ connected_user.id) %} + + <label class="g-Form__Label" for="user_id">Personne</label> + <select name="user_id" id="user_id" class="g-Form__Select" required> + {% for user in users %} + <option + value="{{ user.id }}" + {% if "" ~ user.id == user_id %} + selected + {% endif %} + > + {{ user.name }} + </option> + {% endfor %} + </select> + + {% set category_id = form.category_id | default(value="") %} + + <label class="g-Form__Label" for="category_id">Catégorie</label> + <select name="category_id" id="category_id" class="g-Form__Select" required> + {% for category in categories %} + <option + value="{{ category.id }}" + style="color: {{ category.color }}" + {% if "" ~ category.id == category_id %} selected {% endif %} + > + {{ category.name }} + </option> + {% endfor %} + </select> + + {% set date = form.date | default(value=now() | date(format="%Y-%m-%d")) %} + + {% if query.frequency != "Monthly" %} + <label class="g-Form__Label" for="date">Date</label> + <input + name="date" + type="date" + class="g-Form__Input" + id="date" + value="{{ date }}" + required + /> + {% else %} + <input + name="date" + type="hidden" + value="{{ date }}" + /> + {% endif %} + + <input + type="hidden" + name="frequency" + value="{{ query.frequency | default(value="Punctual") }}" + /> + + <div> + <input class="g-Button__Validate" type="submit" value="Créer" /> + </div> + </form> + </div> + +{% endblock main %} diff --git a/templates/payment/table.html b/templates/payment/table.html new file mode 100644 index 0000000..19b56b4 --- /dev/null +++ b/templates/payment/table.html @@ -0,0 +1,128 @@ +{% import "macros/paging.html" as paging %} + +{% extends "base.html" %} + +{% block title %} + Paiements +{% endblock title %} + +{% block main %} + + <div class="g-Paragraph g-Payments__Header"> + <div class="g-Payments__FrequenciesAndSearch"> + <div class="g-Payments__Frequencies"> + {% if query.frequency == "Monthly" %} + <a + class="g-Payments__Frequency g-Link" + href="/{{ payments_params(frequency="Punctual") }}" + > + Ponctuels + </a> + / + <span class="g-Payments__Frequency g-Payments__Frequency--Selected"> + Mensuels + </span> + {% else %} + <span class="g-Payments__Frequency g-Payments__Frequency--Selected"> + Ponctuels + </span> + / + <a + class="g-Payments__Frequency g-Link" + href="/{{ payments_params(frequency="Monthly") }}" + > + Mensuels + </a> + {% endif %} + </div> + + {% if query.frequency != "Monthly" %} + <form action="/" method="GET" class="g-Payments__Search"> + <input + type="search" + name="search" + class="g-Form__Input g-Payments__SearchInput" + value="{{ query.search }}" + /> + <input type="submit" class="g-Button__Search" value="🔍"> + </form> + {% endif %} + </div> + + <a + class="g-Button__Validate g-Payments__New" + href="/payment{{ payments_params( + page=query.page, + search=query.search, + frequency=query.frequency + ) }}" + > + Nouveau + </a> + </div> + + {% if not payments %} + + <div class="g-Payments__NoResults"> + Aucun paiement ne correspond à votre recherche. + </div> + + {% else %} + + <div class="g-Paragraph"> + {{ count | numeric }} paiement{{ count | pluralize }} comptabilisant {{ total_cost | euros() }}. + </div> + + <div class="g-Table"> + <div class="g-Table__Row g-Table__Row--Header"> + <span class="g-Table__Cell">Nom</span> + <span class="g-Table__Cell">Coût</span> + <span class="g-Table__Cell">Personne</span> + <span class="g-Media__Large g-Table__Cell">Catégorie</span> + {% if query.frequency != "Monthly" %} + <span class="g-Table__Cell">Date</span> + {% endif %} + </div> + {% for payment in payments %} + <a + class="g-Table__Row {% if query.highlight == payment.id %} g-Table__Row--Highlight {% endif %}" + href="/payment/{{ payment.id }}{{ payments_params( + page=query.page, + search=query.search, + frequency=query.frequency + ) }}" + > + <span class="g-Table__Cell">{{ payment.name }}</span> + <span class=" + g-Table__Cell + g-Table__NumericCell + {% if payment.cost < 0 %} g-Payments__Refund {% endif %} + "> + {{ payment.cost | euros() }} + </span> + <span class="g-Table__Cell">{{ payment.user }}</span> + <span class="g-Table__Cell g-Media__Large"> + <span style="color: {{ payment.category_color }}"> + {{ payment.category_name }} + </span> + </span> + {% if query.frequency != "Monthly" %} + <span class="g-Table__Cell"> + {{ payment.date }} + </span> + {% endif %} + </a> + {% endfor %} + </div> + + {{ paging::paging( + url="/" ~ payments_params( + search=query.search, + frequency=query.frequency + ), + page=page, + max_page=max_page + ) }} + + {% endif %} +{% endblock main %} diff --git a/templates/payment/update.html b/templates/payment/update.html new file mode 100644 index 0000000..25e6915 --- /dev/null +++ b/templates/payment/update.html @@ -0,0 +1,144 @@ +{% extends "base.html" %} + +{% block title %} + Paiement {{ id }} +{% endblock title %} + +{% block main %} + + <div> + <p class="g-Paragraph"> + <a + class="g-Link g-Media__Large" + href="/{{ payments_params( + page=query.page, + search=query.search, + frequency=query.frequency + ) }}" + > + Retour aux paiements + </a> + </p> + + {% if error %} + <div class="g-Form__Error">{{ error }}</div> + {% endif %} + + {% if not payment %} + + Le paiement n’a pas été trouvé. + + {% else %} + + <form + class="g-Form" + action="/payment/{{ payment.id }}/update{{ payments_params( + page=query.page, + search=query.search, + frequency=query.frequency, + highlight=query.highlight + ) }}" + method="POST" + > + <h1 class="g-H1">Modification</h1> + + <label class="g-Form__Label" for="name">Nom</label> + <input + name="name" + class="g-Form__Input" + id="name" + value="{{ form.name | default(value=payment.name) }}" + required + /> + + <label class="g-Form__Label" for="cost">Coût</label> + <input + name="cost" + type="number" + class="g-Form__Input" + id="cost" + value="{{ form.cost | default(value=payment.cost) }}" + required + /> + + {% set user_id = form.user_id | default(value="" ~ payment.user_id) %} + + <label class="g-Form__Label" for="user_id">Personne</label> + <select name="user_id" id="user_id" class="g-Form__Select" required> + {% for user in users %} + <option + value="{{ user.id }}" + {% if "" ~ user.id == user_id %} selected {% endif %} + > + {{ user.name }} + </option> + {% endfor %} + </select> + + {% set category_id = form.category_id | default(value="" ~ payment.category_id) %} + + <label class="g-Form__Label" for="category_id">Catégorie</label> + <select name="category_id" id="category_id" class="g-Form__Select" required> + {% for category in categories %} + <option + value="{{ category.id }}" + style="color: {{ category.color }}" + {% if "" ~ category.id == category_id %} selected {% endif %} + > + {{ category.name }} + </option> + {% endfor %} + </select> + + {% set date = form.date | default(value=payment.date) %} + + {% if payment.frequency == "Punctual" %} + <label class="g-Form__Label" for="date">Date</label> + <input + name="date" + type="date" + class="g-Form__Input" + id="date" + value="{{ date }}" + required + /> + {% else %} + <input + name="date" + type="hidden" + value="{{ date }}" + /> + {% endif %} + + <div> + <input class="g-Button__Validate" type="submit" value="Modifier" /> + </div> + </form> + + <form + class="g-Form" + action="/payment/{{ payment.id }}/delete{{ payments_params( + page=query.page, + search=query.search, + frequency=query.frequency, + highlight=query.highlight + ) }}" + method="POST" + > + <h1 class="g-H1">Suppression</h1> + + <label class="g-Form__Label" for="remove-input"> + Veuillez recopier le nom du paiement : « {{ payment.name }} ». + </label> + + <input name="remove-input" class="g-Form__Input" id="remove-input" data-name="{{ payment.name }}" /> + + <div> + <input class="g-Button__Danger" type="submit" value="Supprimer" id="remove-button" disabled /> + </div> + </form> + + {% endif %} + </div> + +{% endblock main %} |