mirror of
https://github.com/YunoHost-Apps/ihatemoney_ynh.git
synced 2024-09-03 19:26:15 +02:00
ef353d643c
This allows to isolate some behavior in the context of the web application so the API and the web application can behave in different ways.
91 lines
3.1 KiB
HTML
91 lines
3.1 KiB
HTML
{% extends "layout.html" %}
|
|
|
|
{% block js %}
|
|
// display the form when clicking on the "add bill" button
|
|
var show_form = function(){
|
|
$('#bill-form').show(70);
|
|
$("#new-bill").hide();
|
|
return false;
|
|
}
|
|
|
|
// and provide a mechanism to hide it back
|
|
var hide_form = function(){
|
|
$("#bill-form").hide(70);
|
|
$("#new-bill").show();
|
|
return false;
|
|
}
|
|
|
|
$('#new-bill').click(show_form);
|
|
$('#empty-new-bill').click(show_form);
|
|
$('#hide-bill-form').click(hide_form);
|
|
$('#cancel-form').click(hide_form);
|
|
|
|
// ask for confirmation before removing an user
|
|
$('a.remove').each(function(){
|
|
$(this).hide();
|
|
$(this).click(function(){
|
|
return confirm("are you sure?");
|
|
});
|
|
});
|
|
|
|
// display the remove button on mouse over (and hide them per default)
|
|
$('.balance tr').hover(function(){
|
|
$(this).find('.remove').show();
|
|
}, function(){
|
|
$(this).find('.remove').hide();
|
|
});
|
|
{% endblock %}
|
|
|
|
{% block sidebar %}
|
|
<h2>Balance</h2>
|
|
|
|
<table class="balance">
|
|
{% set balance = g.project.get_balance() %}
|
|
{% for member in g.project.members %}
|
|
{% if member.activated or balance[member] != 0 %}
|
|
<tr>
|
|
<td>{{ member.name }}</td>
|
|
<td class="{% if balance[member] > 0 %}positive{% elif balance[member] < 0 %}negative{% endif %}">
|
|
{% if balance[member] > 0 %}+{% endif %}{{ balance[member] }}
|
|
</td>
|
|
<td> {% if member.activated %}<a class="remove" href="{{ url_for(".remove_member", member_id=member.id) }}">delete</a>{% else %}<a href="{{ url_for(".reactivate", member_id=member.id) }}">reactivate</a>{% endif %}</td>
|
|
</tr>
|
|
{% endif %}
|
|
{% endfor %}
|
|
</table>
|
|
|
|
<form action="{{ url_for(".add_member") }}" method="post">
|
|
{{ forms.add_member(member_form) }}
|
|
</form>
|
|
{% endblock %}
|
|
|
|
{% block content %}
|
|
<a id="new-bill" href="{{ url_for(".add_bill") }}" class="primary">Add a new bill</a>
|
|
<form id="bill-form" action="{{ url_for(".add_bill") }}" method="post" style="display: none">
|
|
<a id="hide-bill-form" href="#">hide this form</a>
|
|
{{ forms.add_bill(bill_form) }}
|
|
</form>
|
|
|
|
{% if bills.count() > 0 %}
|
|
<table class="list_bills common-table zebra-striped">
|
|
<thead><tr><th>When?</th><th>Who paid?</th><th>For what?</th><th>Owers</th><th>How much?</th><th>Actions</th></tr></thead>
|
|
<tbody>
|
|
{% for bill in bills %}
|
|
<tr class="{{ loop.cycle("odd", "even") }}">
|
|
<td>{{ bill.date }}</td>
|
|
<td>{{ bill.payer }}</td>
|
|
<td>{{ bill.what }}</td>
|
|
<td>{% for ower in bill.owers %}{{ ower.name }} {% endfor %}</td>
|
|
<td>{{ bill.amount }} ({{ bill.pay_each() }} each)</td>
|
|
<td><a href="{{ url_for(".edit_bill", bill_id=bill.id) }}">edit</a>
|
|
<a class="delete" href="{{ url_for(".delete_bill", bill_id=bill.id) }}">delete</a></td>
|
|
</tr>
|
|
{% endfor %}
|
|
</tbody>
|
|
</table>
|
|
|
|
{% else %}
|
|
<p>Nothing to list yet. You probably want to <a id="empty-new-bill" href="{{ url_for(".add_bill") }}">add a bill</a> ?</p>
|
|
{% endif %}
|
|
</div>
|
|
{% endblock %}
|