Split form in parts, add "edit" page.

This commit is contained in:
James Cole
2024-01-03 19:34:50 +01:00
parent 211526c032
commit 7426c6aac3
29 changed files with 2293 additions and 2144 deletions

View File

@@ -0,0 +1,22 @@
<div class="row mb-2">
<div class="col">
<template x-if="showSuccessMessage">
<div class="alert alert-success alert-dismissible fade show" role="alert">
<a :href="successMessageLink" class="alert-link" x-text="successMessageText"></a>
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
</div>
</template>
<template x-if="showErrorMessage">
<div class="alert alert-danger alert-dismissible fade show" role="alert"
x-text="errorMessageText">
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
</div>
</template>
<template x-if="showWaitMessage">
<div class="alert alert-info alert-dismissible fade show" role="alert">
<em class="fa-solid fa-spinner fa-spin"></em> Please wait for the attachments to upload.
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
</div>
</template>
</div>
</div>

View File

@@ -0,0 +1,127 @@
<div :class="{'tab-pane fade pt-2':true, 'show active': index ===0}" :id="'split-'+index+'-pane'" role="tabpanel" :aria-labelledby="'split-'+index+'-tab'" tabindex="0" x-init="addedSplit()">
<div class="row mb-2">
<div class="col-xl-6 col-lg-6 col-md-12 col-xs-12 mb-2">
<!-- BASIC TRANSACTION INFORMATION -->
<div class="card">
<div class="card-header">
<h3 class="card-title"
>{{ __('firefly.basic_journal_information') }}</h3>
</div>
<div class="card-body">
<!-- DESCRIPTION -->
@include('partials.form.transaction.description')
<!-- SOURCE ACCOUNT -->
@include('partials.form.transaction.source-account')
<!-- DESTINATION ACCOUNT -->
@include('partials.form.transaction.destination-account')
<!-- DATE AND TIME -->
@include('partials.form.transaction.date-time')
</div>
</div>
</div>
<div class="col-xl-6 col-lg-6 col-md-12 col-xs-12 mb-2">
<!-- AMOUNTS -->
<div class="card">
<div class="card-header">
<h3 class="card-title">
{{ __('firefly.transaction_journal_amount') }}
</h3>
</div>
<div class="card-body">
<!-- AMOUNT -->
@include('partials.form.transaction.amount')
<!-- FOREIGN AMOUNT -->
@include('partials.form.transaction.foreign-amount')
</div>
</div>
</div>
<!-- META DATA -->
<div class="col-xl-4 col-lg-6 col-md-12 col-xs-12 mb-2">
<div class="card">
<div class="card-header">
<h3 class="card-title">
{{ __('firefly.transaction_journal_meta') }}
</h3>
</div>
<div class="card-body">
<!-- BUDGET -->
@include('partials.form.transaction.budget')
<!-- CATEGORY -->
@include('partials.form.transaction.category')
<!-- PIGGY BANK -->
@include('partials.form.transaction.piggy-bank')
<!-- SUBSCRIPTION -->
@include('partials.form.transaction.subscription')
<!-- TAGS -->
@include('partials.form.transaction.tags')
<!-- NOTES -->
@include('partials.form.transaction.notes')
</div>
</div>
</div>
<!-- EXTRA THINGS -->
<div class="col-xl-4 col-lg-6 col-md-12 col-xs-12 mb-2">
<div class="card">
<div class="card-header">
<h3 class="card-title">
{{ __('firefly.transaction_journal_extra') }}
</h3>
</div>
<div class="card-body">
<!-- ATTACHMENTS -->
@include('partials.form.transaction.attachments')
<!-- INTERNAL REFERENCE -->
@include('partials.form.transaction.internal-reference')
<!-- EXTERNAL URL -->
@include('partials.form.transaction.external-url')
<!-- LOCATION -->
@include('partials.form.transaction.location')
<!-- DATE FIELDS -->
@include('partials.form.transaction.date-fields')
</div>
</div>
</div>
<div class="col-xl-4 col-lg-6 col-md-12 col-xs-12 mb-2">
<div class="card">
<div class="card-header">
<h3 class="card-title">
{{ __('firefly.submission_options') }}
</h3>
</div>
<div class="card-body">
@include('partials.form.transaction.submission-options')
</div>
<div class="card-footer">
<div class="row">
<div class="col text-end">
<button class="btn btn-success" :disabled="submitting" @click="submitTransaction()">Submit</button>
</div>
</div>
</div>
</div>
</div>
<div class="col-12">
<template x-if="0 !== index">
<button :disabled="submitting" class="btn btn-danger" @click="removeSplit(index)">
Remove this split
</button>
</template>
<button class="btn btn-info" :disabled="submitting">Add another split</button>
</div>
</div>
</div>

View File

@@ -0,0 +1,32 @@
<div class="row">
<div class="col">
<ul class="nav nav-tabs" id="splitTabs" role="tablist">
<template x-for="transaction,index in entries">
<li class="nav-item" role="presentation">
<button :id="'split-'+index+'-tab'"
:class="{'nav-link': true, 'active': index === 0 }"
data-bs-toggle="tab"
:data-bs-target="'#split-'+index+'-pane'"
type="button" role="tab"
:aria-controls="'split-'+index+'-pane'"
aria-selected="true">{{ __('firefly.single_split') }} #
<span x-text="index+1"></span>
</button>
</li>
</template>
<li class="nav-item" role="presentation">
<button class="nav-link" type="button" role="tab" @click="addSplit()"
><em class="fa-solid fa-plus-circle"></em>
</button>
</li>
<li class="nav-item">
<a class="nav-link disabled" aria-disabled="true">
{{ __('firefly.total') }}:
<span x-text="formattedTotalAmount()"></span>
</a>
</li>
</ul>
</div>
</div>