mirror of
https://gitlab.crans.org/bde/nk20
synced 2025-06-20 17:41:55 +02:00
Move transfer type selector in credit/debit mode
This commit is contained in:
@ -16,6 +16,9 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<a href="{% url "note:transfer" %}#credit" class="btn btn-sm btn-outline-primary">
|
||||
{% trans "Credit" %}
|
||||
</a>
|
||||
<a href="{% url "note:transfer" %}#debit" class="btn btn-sm btn-outline-primary">
|
||||
{% trans "Debit" %}
|
||||
</a>
|
||||
{% endif %}
|
||||
{% for a in activities_open %}
|
||||
<a href="{% url "activity:activity_entry" pk=a.pk %}"
|
||||
|
@ -173,14 +173,16 @@ class TransactionSerializer(serializers.ModelSerializer):
|
||||
The djangorestframework plugin will analyse the model `Transaction` and parse all fields in the API.
|
||||
"""
|
||||
def validate_source(self, value):
|
||||
if value.is_active:
|
||||
if not value.is_active:
|
||||
raise ValidationError(_("The transaction can't be saved since the source note "
|
||||
"or the destination note is not active."))
|
||||
return value
|
||||
|
||||
def validate_destination(self, value):
|
||||
if value.is_active:
|
||||
if not value.is_active:
|
||||
raise ValidationError(_("The transaction can't be saved since the source note "
|
||||
"or the destination note is not active."))
|
||||
return value
|
||||
|
||||
class Meta:
|
||||
model = Transaction
|
||||
|
@ -19,12 +19,10 @@ SPDX-License-Identifier: GPL-2.0-or-later
|
||||
<input type="radio" name="transaction_type" id="type_credit">
|
||||
{% trans "Credit" %}
|
||||
</label>
|
||||
{% if not activities_open %}
|
||||
<label type="type_debit" class="btn btn-sm btn-outline-primary">
|
||||
<input type="radio" name="transaction_type" id="type_debit">
|
||||
{% trans "Debit" %}
|
||||
</label>
|
||||
{% endif %}
|
||||
<label for="type_debit" class="btn btn-sm btn-outline-primary">
|
||||
<input type="radio" name="transaction_type" id="type_debit">
|
||||
{% trans "Debit" %}
|
||||
</label>
|
||||
{% endif %}
|
||||
{% for activity in activities_open %}
|
||||
<a href="{% url "activity:activity_entry" pk=activity.pk %}" class="btn btn-sm btn-outline-primary">
|
||||
@ -40,7 +38,7 @@ SPDX-License-Identifier: GPL-2.0-or-later
|
||||
<div class="col-md-3" id="note_infos_div">
|
||||
<div class="card bg-light border-success shadow mb-4">
|
||||
<a id="profile_pic_link" href="#"><img src="/media/pic/default.png"
|
||||
id="profile_pic" alt="" class="img-fluid rounded mx-auto d-block"></a>
|
||||
id="profile_pic" alt="" class="img-fluid rounded mx-auto"></a>
|
||||
<div class="card-body text-center">
|
||||
<span id="user_note"></span>
|
||||
</div>
|
||||
@ -52,16 +50,21 @@ SPDX-License-Identifier: GPL-2.0-or-later
|
||||
<div class="card bg-light border-success shadow mb-4">
|
||||
<div class="card-header">
|
||||
<p class="card-text font-weight-bold">
|
||||
{% trans "Select emitters" %}
|
||||
<label for="source_note" id="source_note_label">{% trans "Select emitters" %}</label>
|
||||
</p>
|
||||
</div>
|
||||
<ul class="list-group list-group-flush" id="source_note_list">
|
||||
</ul>
|
||||
<div class="card-body">
|
||||
<input class="form-control mx-auto d-block" type="text" id="source_note" placeholder="{% trans "Name or alias..." %}" />
|
||||
<select id="credit_type" class="custom-select d-none">
|
||||
{% for special_type in special_types %}
|
||||
<option value="{{ special_type.id }}">{{ special_type.special_type }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
<input class="form-control mx-auto" type="text" id="source_note" placeholder="{% trans "Name or alias..." %}" />
|
||||
<div id="source_me_div">
|
||||
<hr>
|
||||
<span class="form-control mx-auto d-block btn btn-secondary" id="source_me">
|
||||
<span class="form-control mx-auto btn btn-secondary" id="source_me">
|
||||
{% trans "I am the emitter" %}
|
||||
</span>
|
||||
</div>
|
||||
@ -74,13 +77,18 @@ SPDX-License-Identifier: GPL-2.0-or-later
|
||||
<div class="card bg-light border-info shadow mb-4">
|
||||
<div class="card-header">
|
||||
<p class="card-text font-weight-bold" id="dest_title">
|
||||
{% trans "Select receivers" %}
|
||||
<label for="dest_note" id="dest_note_label">{% trans "Select receivers" %}</label>
|
||||
</p>
|
||||
</div>
|
||||
<ul class="list-group list-group-flush" id="dest_note_list">
|
||||
</ul>
|
||||
<div class="card-body">
|
||||
<input class="form-control mx-auto d-block" type="text" id="dest_note" placeholder="{% trans "Name or alias..." %}" />
|
||||
<select id="debit_type" class="custom-select d-none">
|
||||
{% for special_type in special_types %}
|
||||
<option value="{{ special_type.id }}">{{ special_type.special_type }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
<input class="form-control mx-auto" type="text" id="dest_note" placeholder="{% trans "Name or alias..." %}" />
|
||||
<ul class="list-group list-group-flush" id="dest_alias_matched">
|
||||
</ul>
|
||||
</div>
|
||||
@ -108,22 +116,12 @@ SPDX-License-Identifier: GPL-2.0-or-later
|
||||
<div class="form-row">
|
||||
<div class="col-md-12">
|
||||
<label for="reason">{% trans "Reason" %} :</label>
|
||||
<input class="form-control mx-auto d-block" type="text" id="reason" />
|
||||
<input class="form-control mx-auto" type="text" id="reason" />
|
||||
<p id="reason-required" class="invalid-feedback"></p>
|
||||
</div>
|
||||
</div>
|
||||
{# in case of special transaction add identity information #}
|
||||
<div class="d-none" id="special_transaction_div">
|
||||
<div class="form-row">
|
||||
<div class="col-md-12">
|
||||
<label for="credit_type">{% trans "Transfer type" %} :</label>
|
||||
<select id="credit_type" class="custom-select">
|
||||
{% for special_type in special_types %}
|
||||
<option value="{{ special_type.id }}">{{ special_type.special_type }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<div class="col-md-12">
|
||||
<label for="last_name">{% trans "Name" %} :</label>
|
||||
@ -170,6 +168,12 @@ SPDX-License-Identifier: GPL-2.0-or-later
|
||||
SPECIAL_TRANSFER_POLYMORPHIC_CTYPE = {{ special_polymorphic_ctype }};
|
||||
user_id = {{ user.note.pk }};
|
||||
username = "{{ user.username|escapejs }}";
|
||||
|
||||
select_emitter_label = "{% trans "Select emitter" %}";
|
||||
select_emitters_label = "{% trans "Select emitters" %}";
|
||||
select_receveir_label = "{% trans "Select receiver" %}";
|
||||
select_receveirs_label = "{% trans "Select receivers" %}";
|
||||
transfer_type_label = "{% trans "Transfer type" %}";
|
||||
</script>
|
||||
<script src="/static/js/transfer.js"></script>
|
||||
{% endblock %}
|
||||
|
Reference in New Issue
Block a user