mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-01-09 23:53:12 -06:00
250 lines
11 KiB
Twig
250 lines
11 KiB
Twig
{% extends "./layout/default.twig" %}
|
|
|
|
{% block breadcrumbs %}
|
|
{{ Breadcrumbs.renderIfExists(Route.getCurrentRoute.getName, journal) }}
|
|
{% endblock %}
|
|
|
|
{% block content %}
|
|
<form method="POST" action="{{ route('transactions.update',journal.id) }}" accept-charset="UTF-8" class="form-horizontal" id="update"
|
|
enctype="multipart/form-data">
|
|
|
|
<input name="_token" type="hidden" value="{{ csrf_token() }}">
|
|
<input type="hidden" name="id" value="{{ journal.id }}"/>
|
|
<input type="hidden" name="what" value="{{ what }}"/>
|
|
|
|
{% if errors.all|length > 0 %}
|
|
<div class="row">
|
|
<div class="col-lg-12">
|
|
<h3 class="text-danger">{{ 'errors'|_ }}</h3>
|
|
<ul>
|
|
{% for err in errors.all %}
|
|
<li class="text-danger">{{ err }}</li>
|
|
{% endfor %}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
|
|
|
|
<div class="row">
|
|
<div class="col-lg-6 col-md-12 col-sm-12">
|
|
<div class="box box-primary">
|
|
<div class="box-header with-border">
|
|
<h3 class="box-title">{{ 'mandatoryFields'|_ }}</h3>
|
|
</div>
|
|
<div class="box-body">
|
|
<!-- ALWAYS AVAILABLE -->
|
|
{{ ExpandedForm.text('description',journal.description) }}
|
|
|
|
<!-- SELECTABLE SOURCE ACCOUNT ONLY FOR WITHDRAWALS AND TRANSFERS -->
|
|
{% if what == 'transfer' or what == 'withdrawal' %}
|
|
{{ ExpandedForm.select('source_account_id',assetAccounts, data.source_account_id, {label: trans('form.asset_source_account')}) }}
|
|
{% endif %}
|
|
|
|
<!-- FREE FORMAT SOURCE ACCOUNT ONLY FOR DEPOSITS -->
|
|
{% if what == 'deposit' %}
|
|
{{ ExpandedForm.text('source_account_name',data.source_account_name, {label: trans('form.revenue_account')}) }}
|
|
{% endif %}
|
|
|
|
<!-- FREE FORMAT DESTINATION ACCOUNT ONLY FOR EXPENSES -->
|
|
{% if what == 'withdrawal' %}
|
|
{{ ExpandedForm.text('destination_account_name',data.destination_account_name, {label: trans('form.expense_account')}) }}
|
|
{% endif %}
|
|
|
|
<!-- SELECTABLE DESTINATION ACCOUNT ONLY FOR TRANSFERS AND DEPOSITS -->
|
|
{% if what == 'transfer' or what == 'deposit' %}
|
|
{{ ExpandedForm.select('destination_account_id',assetAccounts, data.destination_account_id, {label: trans('form.asset_destination_account')} ) }}
|
|
{% endif %}
|
|
|
|
<!-- ALWAYS SHOW AMOUNT -->
|
|
{{ ExpandedForm.amount('amount',data.amount,{'currency' : journal.transactionCurrency}) }}
|
|
|
|
<!-- ALWAYS SHOW DATE -->
|
|
{{ ExpandedForm.date('date',data['date']) }}
|
|
</div>
|
|
</div>
|
|
<!-- close panel -->
|
|
|
|
</div>
|
|
<div class="col-lg-6 col-md-12 col-sm-12">
|
|
<div class="box">
|
|
<div class="box-header with-border">
|
|
<h3 class="box-title">{{ 'optionalFields'|_ }}</h3>
|
|
</div>
|
|
<div class="box-body">
|
|
<!-- BUDGET ONLY WHEN CREATING A WITHDRAWAL -->
|
|
{% if what == 'withdrawal' %}
|
|
{{ ExpandedForm.select('budget_id',budgetList,data['budget_id']) }}
|
|
{% endif %}
|
|
|
|
<!-- CATEGORY ALWAYS -->
|
|
{{ ExpandedForm.text('category',data['category']) }}
|
|
|
|
<!-- TAGS -->
|
|
{{ ExpandedForm.text('tags') }}
|
|
|
|
<!-- RELATE THIS TRANSFER TO A PIGGY BANK -->
|
|
{% if what == 'transfer' and piggyBankList|length > 0 %}
|
|
{{ ExpandedForm.select('piggy_bank_id',piggyBankList,data['piggy_bank_id']) }}
|
|
{% endif %}
|
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<!-- explain if necessary -->
|
|
{% if
|
|
not optionalFields.interest_date or
|
|
not optionalFields.book_date or
|
|
not optionalFields.process_date or
|
|
not optionalFields.due_date or
|
|
not optionalFields.payment_date or
|
|
not optionalFields.internal_reference or
|
|
not optionalFields.invoice_date or
|
|
not optionalFields.notes or
|
|
not optionalFields.attachments %}
|
|
<p class="text-center text-success"><i class="fa fa-info-circle" aria-hidden="true"></i>
|
|
<em>{{ trans('firefly.hidden_fields_preferences', {link: route('preferences')})|raw }}</em></p>
|
|
{% endif %}
|
|
|
|
|
|
<!-- box for dates -->
|
|
{% if
|
|
optionalFields.interest_date or
|
|
optionalFields.book_date or
|
|
optionalFields.process_date or
|
|
optionalFields.due_date or
|
|
optionalFields.payment_date or
|
|
optionalFields.invoice_date or
|
|
data.interest_date or
|
|
data.book_date or
|
|
data.process_date or
|
|
data.due_date or
|
|
data.payment_date
|
|
%}
|
|
<div class="box">
|
|
<div class="box-header with-border">
|
|
<h3 class="box-title">{{ 'optional_field_meta_dates'|_ }}</h3>
|
|
</div>
|
|
<div class="box-body">
|
|
|
|
{% if optionalFields.interest_date or data['interest_date'] %}
|
|
<!-- INTEREST DATE -->
|
|
{{ ExpandedForm.date('interest_date',data['interest_date']) }}
|
|
{% endif %}
|
|
|
|
{% if optionalFields.book_date or data['book_date'] %}
|
|
<!-- BOOK DATE -->
|
|
{{ ExpandedForm.date('book_date',data['book_date']) }}
|
|
{% endif %}
|
|
|
|
{% if optionalFields.process_date or data['process_date'] %}
|
|
<!-- PROCESSING DATE -->
|
|
{{ ExpandedForm.date('process_date',data['process_date']) }}
|
|
{% endif %}
|
|
|
|
{% if optionalFields.due_date or data['due_date'] %}
|
|
<!-- DUE DATE -->
|
|
{{ ExpandedForm.date('due_date',data['due_date']) }}
|
|
{% endif %}
|
|
|
|
{% if optionalFields.payment_date or data['payment_date'] %}
|
|
<!-- PAYMENT DATE -->
|
|
{{ ExpandedForm.date('payment_date',data['payment_date']) }}
|
|
{% endif %}
|
|
|
|
{% if optionalFields.invoice_date or data['invoice_date'] %}
|
|
<!-- INVOICE DATE -->
|
|
{{ ExpandedForm.date('invoice_date',data['invoice_date']) }}
|
|
{% endif %}
|
|
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
|
|
|
|
|
|
<!-- box for business fields -->
|
|
{% if
|
|
optionalFields.internal_reference or
|
|
optionalFields.notes or
|
|
data['interal_reference'] or
|
|
data['notes']
|
|
|
|
%}
|
|
<div class="box">
|
|
<div class="box-header with-border">
|
|
<h3 class="box-title">{{ 'optional_field_meta_business'|_ }}</h3>
|
|
</div>
|
|
<div class="box-body">
|
|
{% if optionalFields.internal_reference or data['interal_reference'] %}
|
|
<!-- REFERENCE -->
|
|
{{ ExpandedForm.text('internal_reference', data['interal_reference']) }}
|
|
{% endif %}
|
|
|
|
{% if optionalFields.notes or data['notes'] %}
|
|
<!-- NOTES -->
|
|
{{ ExpandedForm.textarea('notes', data['notes']) }}
|
|
{% endif %}
|
|
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
|
|
<!-- box for attachments -->
|
|
{% if optionalFields.attachments %}
|
|
<div class="box">
|
|
<div class="box-header with-border">
|
|
<h3 class="box-title">{{ 'optional_field_attachments'|_ }}</h3>
|
|
</div>
|
|
<div class="box-body">
|
|
{% if optionalFields.attachments %}
|
|
<!-- ATTACHMENTS -->
|
|
{{ ExpandedForm.file('attachments[]', {'multiple': 'multiple','helpText': trans('firefly.upload_max_file_size', {'size': uploadSize|filesize}) }) }}
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
|
|
<!-- panel for options -->
|
|
<div class="box">
|
|
<div class="box-header with-border">
|
|
<h3 class="box-title">{{ 'options'|_ }}</h3>
|
|
</div>
|
|
<div class="box-body">
|
|
{{ ExpandedForm.optionsList('update','transaction') }}
|
|
|
|
<div class="form-group" id="do_split_holder">
|
|
<label for="ffInput_do_split" class="col-sm-4 control-label">{{ 'do_split'|_ }}</label>
|
|
|
|
<div class="col-sm-8">
|
|
<p class="form-control-static">
|
|
<a href="{{ route('split.journal.edit', journal.id) }}">{{ ('split_this_'~what)|_ }}</a>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="box-footer">
|
|
<button type="submit" class="pull-right btn btn-success">{{ ('update_' ~ what)|_ }}</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</form>
|
|
|
|
|
|
{% endblock %}
|
|
{% block scripts %}
|
|
<script type="text/javascript">
|
|
var what = "{{ what }}";
|
|
</script>
|
|
<script type="text/javascript" src="js/lib/bootstrap3-typeahead.min.js"></script>
|
|
<script type="text/javascript" src="js/lib/bootstrap-tagsinput.min.js"></script>
|
|
<script type="text/javascript" src="js/ff/transactions/create-edit.js"></script>
|
|
<script type="text/javascript" src="js/ff/transactions/edit.js"></script>
|
|
{% endblock %}
|
|
{% block styles %}
|
|
<link href="css/bootstrap-tagsinput.css" type="text/css" rel="stylesheet" media="all">
|
|
{% endblock %}
|