mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-02-25 18:45:27 -06:00
278 lines
14 KiB
Twig
278 lines
14 KiB
Twig
{% extends "./layout/default" %}
|
|
|
|
{% block breadcrumbs %}
|
|
{{ Breadcrumbs.render(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-6 col-sm-12 col-xs-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.longAccountList('source_id', data.source_id, {label: trans('form.asset_source_account')}) }}
|
|
{% endif %}
|
|
|
|
{# FREE FORMAT SOURCE ACCOUNT ONLY FOR DEPOSITS #}
|
|
{% if what == 'deposit' %}
|
|
{{ ExpandedForm.text('source_name',data.source_name, {label: trans('form.revenue_account')}) }}
|
|
{% endif %}
|
|
|
|
{# FREE FORMAT DESTINATION ACCOUNT ONLY FOR EXPENSES #}
|
|
{% if what == 'withdrawal' %}
|
|
{{ ExpandedForm.text('destination_name',data.destination_name, {label: trans('form.expense_account')}) }}
|
|
{% endif %}
|
|
|
|
{# SELECTABLE DESTINATION ACCOUNT ONLY FOR TRANSFERS AND DEPOSITS #}
|
|
{% if what == 'transfer' or what == 'deposit' %}
|
|
{{ ExpandedForm.longAccountList('destination_id', data.destination_id, {label: trans('form.asset_destination_account')} ) }}
|
|
{% endif %}
|
|
|
|
{# ALWAYS SHOW AMOUNT #}
|
|
{{ ExpandedForm.amount('amount',data.amount, {'currency' : data.currency}) }}
|
|
|
|
{# INSTRUCTIONS FOR EXCHANGE RATES #}
|
|
{{ ExpandedForm.staticText('exchange_rate_instruction','(here be text)') }}
|
|
|
|
{{ ExpandedForm.nonSelectableAmount('native_amount', data.native_amount, {currency: data.native_currency}) }}
|
|
|
|
{{ ExpandedForm.nonSelectableAmount('source_amount', data.source_amount, {currency: data.source_currency }) }}
|
|
|
|
{{ ExpandedForm.nonSelectableAmount('destination_amount', data.destination_amount, {currency: data.destination_currency }) }}
|
|
|
|
{# ALWAYS SHOW DATE #}
|
|
{{ ExpandedForm.date('date',data['date']) }}
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
<div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
|
|
<div class="box">
|
|
<div class="box-header with-border">
|
|
<h3 class="box-title">{{ 'optionalFields'|_ }}</h3>
|
|
</div>
|
|
<div class="box-body">
|
|
{% if what == 'withdrawal' %}
|
|
{% if budgetList|length > 1 %}
|
|
{{ ExpandedForm.select('budget_id', budgetList, data['budget_id']) }}
|
|
{% else %}
|
|
{{ ExpandedForm.select('budget_id', budgetList, data['budget_id'], {helpText: trans('firefly.no_budget_pointer', {link: route('budgets.index')})}) }}
|
|
{% endif %}
|
|
{% endif %}
|
|
{{ ExpandedForm.text('category',data['category']) }}
|
|
{{ ExpandedForm.text('tags') }}
|
|
|
|
{% if data.bill_id != null %}
|
|
{{ ExpandedForm.checkbox('keep_bill_id',1,true, {'helpText': trans('firefly.journal_link_bill', {name: data.bill_name,route: route('bills.show', [data.bill_id])})} ) }}
|
|
{% endif %}
|
|
|
|
{# NO PIGGY BANK #}
|
|
</div>
|
|
</div>
|
|
|
|
|
|
{% 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.invoice_date or
|
|
not optionalFields.internal_reference or
|
|
not optionalFields.notes or
|
|
not optionalFields.attachments %}
|
|
<p class="text-center text-success"><i class="fa fa-info-circle"></i>
|
|
<em>{{ trans('firefly.hidden_fields_preferences', {link: route('preferences.index')})|raw }}</em></p>
|
|
{% endif %}
|
|
{% 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'] %}
|
|
{{ ExpandedForm.date('interest_date',data['interest_date']) }}
|
|
{% endif %}
|
|
|
|
{% if optionalFields.book_date or data['book_date'] %}
|
|
{{ ExpandedForm.date('book_date',data['book_date']) }}
|
|
{% endif %}
|
|
|
|
{% if optionalFields.process_date or data['process_date'] %}
|
|
{{ ExpandedForm.date('process_date',data['process_date']) }}
|
|
{% endif %}
|
|
|
|
{% if optionalFields.due_date or data['due_date'] %}
|
|
{{ ExpandedForm.date('due_date',data['due_date']) }}
|
|
{% endif %}
|
|
|
|
{% if optionalFields.payment_date or data['payment_date'] %}
|
|
{{ ExpandedForm.date('payment_date',data['payment_date']) }}
|
|
{% endif %}
|
|
|
|
{% if optionalFields.invoice_date or data['invoice_date'] %}
|
|
{{ ExpandedForm.date('invoice_date',data['invoice_date']) }}
|
|
{% endif %}
|
|
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
|
|
|
|
{% 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'] %}
|
|
{{ ExpandedForm.text('internal_reference', data['interal_reference']) }}
|
|
{% endif %}
|
|
|
|
{% if optionalFields.notes or data['notes'] %}
|
|
{{ ExpandedForm.textarea('notes', data['notes'], {helpText: trans('firefly.field_supports_markdown')}) }}
|
|
{% endif %}
|
|
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
|
|
{% if optionalFields.attachments or journal.attachments|length > 0 %}
|
|
<div class="box">
|
|
<div class="box-header with-border">
|
|
<h3 class="box-title">{{ 'optional_field_attachments'|_ }}</h3>
|
|
</div>
|
|
<div class="box-body">
|
|
{% if journal.attachments|length > 0 %}
|
|
<div id="att_holder_attachments" class="form-group">
|
|
<label class="col-sm-4 control-label">
|
|
{{ trans('form.existing_attachments') }}
|
|
</label>
|
|
<div class="col-sm-8">
|
|
{% for att in journal.attachments %}
|
|
<div class="row att_row" data-id="{{ att.id }}">
|
|
<div class="col-lg-1"><a href="{{ route('attachments.delete', att.id) }}" data-id="{{ att.id }}" class="del_att btn btn-danger btn-xs"><i class="fa fa-trash"></i></a></div>
|
|
<div class="col-lg-11">
|
|
<a href="{{ route('attachments.view', att.id) }}" title="{{ att.filename }}">
|
|
{% if att.title %}
|
|
{{ att.title }} ({{ att.filename }})
|
|
{% else %}
|
|
{{ att.filename }}
|
|
{% endif %}
|
|
</a>
|
|
({{ att.size|filesize }})
|
|
</div>
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
|
|
{{ ExpandedForm.file('attachments[]', {'multiple': 'multiple','helpText': trans('firefly.upload_max_file_size', {'size': uploadSize|filesize}) }) }}
|
|
|
|
</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('transactions.split.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>
|
|
<input type="hidden" name="source_account_currency" value="0"/>
|
|
<input type="hidden" name="destination_account_currency" value="0"/>
|
|
</form>
|
|
|
|
|
|
{% endblock %}
|
|
{% block scripts %}
|
|
<script type="text/javascript">
|
|
var what = "{{ what }}";
|
|
</script>
|
|
<script type="text/javascript" src="v1/js/lib/typeahead/typeahead.bundle.min.js?v={{ FF_VERSION }}"></script>
|
|
<script type="text/javascript" src="v1/js/ff/common/autocomplete.js?v={{ FF_VERSION }}"></script>
|
|
<script type="text/javascript" src="v1/js/lib/bootstrap-tagsinput.min.js?v={{ FF_VERSION }}"></script>
|
|
<script type="text/javascript" src="v1/js/lib/jquery-ui.min.js?v={{ FF_VERSION }}"></script>
|
|
<script type="text/javascript" src="v1/js/lib/modernizr-custom.js?v={{ FF_VERSION }}"></script>
|
|
<script type="text/javascript" src="v1/jscript/accounts?ext=.js&v={{ FF_VERSION }}"></script>
|
|
<script type="text/javascript" src="v1/jscript/currencies?ext=.js&v={{ FF_VERSION }}"></script>
|
|
<script type="text/javascript">
|
|
var journal = {{ journal.toArray()|json_encode|raw }};
|
|
var journalData = {{ data|json_encode|raw }};
|
|
var exchangeRateInstructions = "{{ 'exchange_rate_instructions'|_|escape('js') }}";
|
|
var transferInstructions = "{{ 'transfer_exchange_rate_instructions'|_|escape('js') }}";
|
|
</script>
|
|
<script type="text/javascript" src="v1/js/ff/transactions/single/common.js?v={{ FF_VERSION }}"></script>
|
|
<script type="text/javascript" src="v1/js/ff/transactions/single/edit.js?v={{ FF_VERSION }}"></script>
|
|
|
|
{% endblock %}
|
|
{% block styles %}
|
|
<link href="v1/css/bootstrap-tagsinput.css?v={{ FF_VERSION }}" type="text/css" rel="stylesheet" media="all">
|
|
<link href="v1/css/jquery-ui/jquery-ui.structure.min.css?v={{ FF_VERSION }}" type="text/css" rel="stylesheet" media="all">
|
|
<link href="v1/css/jquery-ui/jquery-ui.theme.min.css?v={{ FF_VERSION }}" type="text/css" rel="stylesheet" media="all">
|
|
{% endblock %}
|