mirror of
https://github.com/spiral-project/ihatemoney.git
synced 2025-05-06 13:01:50 +02:00
Add persistent delete history buttons
This commit is contained in:
parent
895ba61d74
commit
80bc2ac24e
3 changed files with 74 additions and 42 deletions
|
@ -549,6 +549,13 @@ footer .icon svg {
|
||||||
fill: white;
|
fill: white;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.icon.icon-red {
|
||||||
|
fill: #dc3545;
|
||||||
|
}
|
||||||
|
.btn:hover .icon.icon-red {
|
||||||
|
fill: white !important;
|
||||||
|
}
|
||||||
|
|
||||||
/* align the first column */
|
/* align the first column */
|
||||||
#monthly_stats tr *:first-child {
|
#monthly_stats tr *:first-child {
|
||||||
text-align: right;
|
text-align: right;
|
||||||
|
|
8
ihatemoney/static/images/x.svg
Normal file
8
ihatemoney/static/images/x.svg
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
<svg
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
viewBox="0 0 807 807"><g
|
||||||
|
transform="translate(-20,-20)"
|
||||||
|
id="g8"><polygon
|
||||||
|
id="polygon6"
|
||||||
|
points="173,20 423,269 673,20 827,173 577,423 827,673 673,827 423,577 173,827 20,673 269,423 20,173 "
|
||||||
|
class="fil0" /></g></svg>
|
After Width: | Height: | Size: 291 B |
|
@ -38,6 +38,49 @@
|
||||||
{{ _("to") }} <em class="font-italic">{{ event.val_after }}</em>
|
{{ _("to") }} <em class="font-italic">{{ event.val_after }}</em>
|
||||||
{% endmacro %}
|
{% endmacro %}
|
||||||
|
|
||||||
|
{% macro clear_history_modals() %}
|
||||||
|
<!-- Modal -->
|
||||||
|
<div id="confirm-ip-delete" class="modal fade show" role="dialog">
|
||||||
|
<div class="modal-dialog" role="document">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<h3 class="modal-title">{{ _('Confirm Remove IP Adresses') }}</h3>
|
||||||
|
<a href="#" class="close" data-dismiss="modal">×</a>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<p>{{ _("Are you sure you want to delete all recorded IP addresses from this project?
|
||||||
|
The rest of the project history will be unaffected. This action cannot be undone.") }}</p>
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<button type="button" class="btn btn-secondary" data-dismiss="modal">{{ _("Close") }}</button>
|
||||||
|
<form action="{{ url_for(".strip_ip_addresses") }}" method="post">
|
||||||
|
<input type="submit" class="btn btn-danger" value="{{ _("Confirm Delete") }}" name="{{ _("Confirm Delete") }}"/>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- Modal -->
|
||||||
|
<div id="confirm-erase" class="modal fade show" role="dialog">
|
||||||
|
<div class="modal-dialog" role="document">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<h3 class="modal-title">{{ _('Delete Confirmation') }}</h3>
|
||||||
|
<a href="#" class="close" data-dismiss="modal">×</a>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<p>{{ _("Are you sure you want to erase all history for this project? This action cannot be undone.") }}</p>
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<button type="button" class="btn btn-secondary" data-dismiss="modal">{{ _("Close") }}</button>
|
||||||
|
<form action="{{ url_for(".erase_history") }}" method="post">
|
||||||
|
<input type="submit" class="btn btn-danger" value="{{ _("Confirm Delete") }}" name="{{ _("Confirm Delete") }}"/>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% endmacro %}
|
||||||
|
|
||||||
{% macro owers_changed(event, add) %}
|
{% macro owers_changed(event, add) %}
|
||||||
{{ describe_object(event) }}: {% if add %}{{ _("Added") }}{% else %}{{ _("Removed") }}{% endif %}
|
{{ describe_object(event) }}: {% if add %}{{ _("Added") }}{% else %}{{ _("Removed") }}{% endif %}
|
||||||
|
@ -88,55 +131,29 @@
|
||||||
{% if history %}
|
{% if history %}
|
||||||
<p><i>{{ _("The table below reflects actions recorded prior to disabling project history. You can ") }}
|
<p><i>{{ _("The table below reflects actions recorded prior to disabling project history. You can ") }}
|
||||||
<a href="#" data-toggle="modal" data-keyboard="false" data-target="#confirm-erase">{{ _("clear project history") }}</a> {{ _("to remove them.") }}</i></p>
|
<a href="#" data-toggle="modal" data-keyboard="false" data-target="#confirm-erase">{{ _("clear project history") }}</a> {{ _("to remove them.") }}</i></p>
|
||||||
<!-- Modal -->
|
|
||||||
<div id="confirm-erase" class="modal fade show" role="dialog">
|
|
||||||
<div class="modal-dialog" role="document">
|
|
||||||
<div class="modal-content">
|
|
||||||
<div class="modal-header">
|
|
||||||
<h3 class="modal-title">{{ _('Delete Confirmation') }}</h3>
|
|
||||||
<a href="#" class="close" data-dismiss="modal">×</a>
|
|
||||||
</div>
|
|
||||||
<div class="modal-body">
|
|
||||||
<p>{{ _("Are you sure you want to erase all history for this project? This action cannot be undone.") }}</p>
|
|
||||||
</div>
|
|
||||||
<div class="modal-footer">
|
|
||||||
<button type="button" class="btn btn-secondary" data-dismiss="modal">{{ _("Close") }}</button>
|
|
||||||
<form action="{{ url_for(".erase_history") }}" method="post">
|
|
||||||
<input type="submit" class="btn btn-danger" value="{{ _("Confirm Delete") }}" name="{{ _("Confirm Delete") }}"/>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if current_log_pref != LoggingMode.RECORD_IP and any_ip_addresses %}
|
{% if current_log_pref != LoggingMode.RECORD_IP and any_ip_addresses %}
|
||||||
<p><i>{{ _("Some entries below contain IP addresses, even though this project has IP recording disabled. ") }}
|
<p><i>{{ _("Some entries below contain IP addresses, even though this project has IP recording disabled. ") }}
|
||||||
<a href="#" data-toggle="modal" data-keyboard="false" data-target="#confirm-ip-delete">{{ _(" Delete stored IP addresses ") }}</a></i></p>
|
<a href="#" data-toggle="modal" data-keyboard="false" data-target="#confirm-ip-delete">{{ _("Delete stored IP addresses") }}</a></i></p>
|
||||||
<!-- Modal -->
|
|
||||||
<div id="confirm-ip-delete" class="modal fade show" role="dialog">
|
|
||||||
<div class="modal-dialog" role="document">
|
|
||||||
<div class="modal-content">
|
|
||||||
<div class="modal-header">
|
|
||||||
<h3 class="modal-title">{{ _('Confirm Remove IP Adresses') }}</h3>
|
|
||||||
<a href="#" class="close" data-dismiss="modal">×</a>
|
|
||||||
</div>
|
|
||||||
<div class="modal-body">
|
|
||||||
<p>{{ _("Are you sure you want to delete all recorded IP addresses from this project?
|
|
||||||
The rest of the project history will be unaffected. This action cannot be undone.") }}</p>
|
|
||||||
</div>
|
|
||||||
<div class="modal-footer">
|
|
||||||
<button type="button" class="btn btn-secondary" data-dismiss="modal">{{ _("Close") }}</button>
|
|
||||||
<form action="{{ url_for(".strip_ip_addresses") }}" method="post">
|
|
||||||
<input type="submit" class="btn btn-danger" value="{{ _("Confirm Delete") }}" name="{{ _("Confirm Delete") }}"/>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
{{ clear_history_modals() }}
|
||||||
|
<span class="float-right mt-3" {% if not history %} data-toggle="tooltip" title="{{_('No history to erase')}}" {% endif %}>
|
||||||
|
<a href="#" class="btn btn-outline-danger float-right {% if not history %} disabled {% endif %}" data-toggle="modal" data-keyboard="false" data-target="#confirm-erase">
|
||||||
|
<i class="icon icon-red plus">{{ static_include("images/x.svg") | safe }}</i>
|
||||||
|
{{ _("Clear Project History") }}
|
||||||
|
</a>
|
||||||
|
</span>
|
||||||
|
<span class="float-right mt-3" {% if not any_ip_addresses %}data-placement="top" data-toggle="tooltip" title="{{_('No IP Addresses to erase')}}" {% endif %}>
|
||||||
|
<a href="#" class="btn btn-outline-danger float-right mr-2 {% if not any_ip_addresses %} disabled {% endif %}" data-toggle="modal" data-keyboard="false" data-target="#confirm-ip-delete">
|
||||||
|
<i class="icon icon-red plus">{{ static_include("images/x.svg") | safe }}</i>
|
||||||
|
{{ _("Delete Stored IP Addresses") }}
|
||||||
|
</a>
|
||||||
|
</span>
|
||||||
|
|
||||||
|
<div class="clearfix"></div>
|
||||||
{% if history %}
|
{% if history %}
|
||||||
<table id="history_table" class="split_bills table table-striped">
|
<table id="history_table" class="split_bills table table-striped">
|
||||||
<thead><tr>
|
<thead><tr>
|
||||||
|
|
Loading…
Reference in a new issue