mirror of https://gitlab.crans.org/bde/nk20
Fix credit/debit tabs
This commit is contained in:
parent
7af76899e3
commit
a609d7c995
|
@ -1,6 +1,7 @@
|
||||||
# Copyright (C) 2018-2020 by BDE ENS Paris-Saclay
|
# Copyright (C) 2018-2020 by BDE ENS Paris-Saclay
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
|
from note.models import NoteSpecial
|
||||||
from treasury.models import SpecialTransactionProxy, RemittanceType
|
from treasury.models import SpecialTransactionProxy, RemittanceType
|
||||||
|
|
||||||
|
|
||||||
|
@ -8,5 +9,6 @@ def save_special_transaction(instance, created, **kwargs):
|
||||||
"""
|
"""
|
||||||
When a special transaction is created, we create its linked proxy
|
When a special transaction is created, we create its linked proxy
|
||||||
"""
|
"""
|
||||||
if created and RemittanceType.objects.filter(note=instance.source).exists():
|
if created and isinstance(instance.source, NoteSpecial) \
|
||||||
|
and RemittanceType.objects.filter(note=instance.source).exists():
|
||||||
SpecialTransactionProxy.objects.create(transaction=instance, remittance=None).save()
|
SpecialTransactionProxy.objects.create(transaction=instance, remittance=None).save()
|
||||||
|
|
|
@ -34,6 +34,9 @@ $(document).ready(function() {
|
||||||
if ($("#type_credit").is(":checked") || $("#type_debit").is(":checked")) {
|
if ($("#type_credit").is(":checked") || $("#type_debit").is(":checked")) {
|
||||||
let arr = $("#type_credit").is(":checked") ? dests_notes_display : sources_notes_display;
|
let arr = $("#type_credit").is(":checked") ? dests_notes_display : sources_notes_display;
|
||||||
|
|
||||||
|
if (arr.length === 0)
|
||||||
|
return;
|
||||||
|
|
||||||
let last = arr[arr.length - 1];
|
let last = arr[arr.length - 1];
|
||||||
arr.length = 0;
|
arr.length = 0;
|
||||||
arr.push(last);
|
arr.push(last);
|
||||||
|
@ -65,6 +68,68 @@ $(document).ready(function() {
|
||||||
autoCompleteNote("dest_note", "dest_note_list", dests, dests_notes_display,
|
autoCompleteNote("dest_note", "dest_note_list", dests, dests_notes_display,
|
||||||
"dest_alias", "dest_note", "user_note", "profile_pic", checkUniqueNote);
|
"dest_alias", "dest_note", "user_note", "profile_pic", checkUniqueNote);
|
||||||
|
|
||||||
|
let source = $("#source_note");
|
||||||
|
let dest = $("#dest_note");
|
||||||
|
|
||||||
|
$("#type_gift").click(function() {
|
||||||
|
$("#special_transaction_div").addClass('d-none');
|
||||||
|
source.attr('disabled', true);
|
||||||
|
source.val(username);
|
||||||
|
source.tooltip('hide');
|
||||||
|
$("#source_note_list").addClass('d-none');
|
||||||
|
dest.attr('disabled', false);
|
||||||
|
$("#dest_note_list").removeClass('d-none');
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#type_transfer").click(function() {
|
||||||
|
$("#special_transaction_div").addClass('d-none');
|
||||||
|
source.attr('disabled', false);
|
||||||
|
$("#source_note_list").removeClass('d-none');
|
||||||
|
dest.attr('disabled', false);
|
||||||
|
$("#dest_note_list").removeClass('d-none');
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#type_credit").click(function() {
|
||||||
|
$("#special_transaction_div").removeClass('d-none');
|
||||||
|
$("#source_note_list").addClass('d-none');
|
||||||
|
$("#dest_note_list").removeClass('d-none');
|
||||||
|
source.attr('disabled', true);
|
||||||
|
source.val($("#credit_type option:selected").text());
|
||||||
|
source.tooltip('hide');
|
||||||
|
dest.attr('disabled', false);
|
||||||
|
dest.val('');
|
||||||
|
dest.tooltip('hide');
|
||||||
|
|
||||||
|
if (dests_notes_display.length > 1) {
|
||||||
|
$("#dest_note_list").html('');
|
||||||
|
dests_notes_display.length = 0;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#type_debit").click(function() {
|
||||||
|
$("#special_transaction_div").removeClass('d-none');
|
||||||
|
$("#source_note_list").removeClass('d-none');
|
||||||
|
$("#dest_note_list").addClass('d-none');
|
||||||
|
source.attr('disabled', false);
|
||||||
|
source.val('');
|
||||||
|
source.tooltip('hide');
|
||||||
|
dest.attr('disabled', true);
|
||||||
|
dest.val($("#credit_type option:selected").text());
|
||||||
|
dest.tooltip('hide');
|
||||||
|
|
||||||
|
if (sources_notes_display.length > 1) {
|
||||||
|
$("#source_note_list").html('');
|
||||||
|
sources_notes_display.length = 0;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#credit_type").change(function() {
|
||||||
|
let type = $("#credit_type option:selected").text();
|
||||||
|
if ($("#type_credit").is(":checked"))
|
||||||
|
source.val(type);
|
||||||
|
else
|
||||||
|
dest.val(type);
|
||||||
|
});
|
||||||
|
|
||||||
// Ensure we begin in gift mode. Removing these lines may cause problems when reloading.
|
// Ensure we begin in gift mode. Removing these lines may cause problems when reloading.
|
||||||
let type_gift = $("#type_gift"); // Default mode
|
let type_gift = $("#type_gift"); // Default mode
|
||||||
|
|
|
@ -160,57 +160,7 @@ SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
TRANSFER_POLYMORPHIC_CTYPE = {{ polymorphic_ctype }};
|
TRANSFER_POLYMORPHIC_CTYPE = {{ polymorphic_ctype }};
|
||||||
SPECIAL_TRANSFER_POLYMORPHIC_CTYPE = {{ special_polymorphic_ctype }};
|
SPECIAL_TRANSFER_POLYMORPHIC_CTYPE = {{ special_polymorphic_ctype }};
|
||||||
user_id = {{ user.note.pk }};
|
user_id = {{ user.note.pk }};
|
||||||
|
username = "{{ user.username }}";
|
||||||
source = $("#source_note");
|
|
||||||
dest = $("#dest_note");
|
|
||||||
|
|
||||||
$("#type_gift").click(function() {
|
|
||||||
$("#special_transaction_div").addClass('d-none');
|
|
||||||
source.attr('disabled', true);
|
|
||||||
source.val("{{ user.username }}");
|
|
||||||
source.tooltip('hide');
|
|
||||||
$("#source_note_list").addClass('d-none');
|
|
||||||
dest.attr('disabled', false);
|
|
||||||
$("#dest_note_list").removeClass('d-none');
|
|
||||||
});
|
|
||||||
|
|
||||||
$("#type_transfer").click(function() {
|
|
||||||
$("#special_transaction_div").addClass('d-none');
|
|
||||||
source.attr('disabled', false);
|
|
||||||
$("#source_note_list").removeClass('d-none');
|
|
||||||
dest.attr('disabled', false);
|
|
||||||
$("#dest_note_list").removeClass('d-none');
|
|
||||||
});
|
|
||||||
|
|
||||||
$("#type_credit").click(function() {
|
|
||||||
$("#special_transaction_div").removeClass('d-none');
|
|
||||||
$("#source_note_list").addClass('d-none');
|
|
||||||
$("#dest_note_list").removeClass('d-none');
|
|
||||||
source.attr('disabled', true);
|
|
||||||
source.val($("#credit_type option:selected").text());
|
|
||||||
source.tooltip('hide');
|
|
||||||
dest.attr('disabled', false);
|
|
||||||
dest.val('');
|
|
||||||
});
|
|
||||||
|
|
||||||
$("#type_debit").click(function() {
|
|
||||||
$("#special_transaction_div").removeClass('d-none');
|
|
||||||
$("#source_note_list").removeClass('d-none');
|
|
||||||
$("#dest_note_list").addClass('d-none');
|
|
||||||
source.attr('disabled', false);
|
|
||||||
source.val('');
|
|
||||||
dest.attr('disabled', true);
|
|
||||||
dest.val($("#credit_type option:selected").text());
|
|
||||||
dest.tooltip('hide');
|
|
||||||
});
|
|
||||||
|
|
||||||
$("#credit_type").change(function() {
|
|
||||||
let type = $("#credit_type option:selected").text();
|
|
||||||
if ($("#type_credit").is(":checked"))
|
|
||||||
source.val(type);
|
|
||||||
else
|
|
||||||
dest.val(type);
|
|
||||||
});
|
|
||||||
</script>
|
</script>
|
||||||
<script src="/static/js/transfer.js"></script>
|
<script src="/static/js/transfer.js"></script>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
Loading…
Reference in New Issue