file updated..
This commit is contained in:
parent
deda93e8a1
commit
ead767a308
67
app/Http/Controllers/Modals/TransferTemplates.php
Normal file
67
app/Http/Controllers/Modals/TransferTemplates.php
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Controllers\Modals;
|
||||||
|
|
||||||
|
use App\Abstracts\Http\Controller;
|
||||||
|
use App\Http\Requests\Setting\Setting as Request;
|
||||||
|
|
||||||
|
class TransferTemplates extends Controller
|
||||||
|
{
|
||||||
|
public $skip_keys = ['company_id', '_method', '_token', '_prefix', '_template'];
|
||||||
|
|
||||||
|
public function __construct()
|
||||||
|
{
|
||||||
|
// Add CRUD permission check
|
||||||
|
$this->middleware('permission:create-settings-settings')->only('create', 'store');
|
||||||
|
$this->middleware('permission:read-settings-settings')->only('index', 'edit');
|
||||||
|
$this->middleware('permission:update-settings-settings')->only('update', 'enable', 'disable');
|
||||||
|
$this->middleware('permission:delete-settings-settings')->only('destroy');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Update the specified resource in storage.
|
||||||
|
*
|
||||||
|
* @param Request $request
|
||||||
|
*
|
||||||
|
* @return Response
|
||||||
|
*/
|
||||||
|
public function update(Request $request)
|
||||||
|
{
|
||||||
|
$fields = $request->all();
|
||||||
|
$prefix = $request->get('_prefix', 'transfer');
|
||||||
|
$company_id = $request->get('company_id');
|
||||||
|
|
||||||
|
if (empty($company_id)) {
|
||||||
|
$company_id = company_id();
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach ($fields as $key => $value) {
|
||||||
|
$real_key = $prefix . '.' . $key;
|
||||||
|
|
||||||
|
// Don't process unwanted keys
|
||||||
|
if (in_array($key, $this->skip_keys)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
setting()->set($real_key, $value);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Save all settings
|
||||||
|
setting()->save();
|
||||||
|
|
||||||
|
$message = trans('messages.success.updated', ['type' => trans_choice('general.settings', 2)]);
|
||||||
|
|
||||||
|
$response = [
|
||||||
|
'status' => null,
|
||||||
|
'success' => true,
|
||||||
|
'error' => false,
|
||||||
|
'message' => $message,
|
||||||
|
'data' => null,
|
||||||
|
'redirect' => route('settings.invoice.edit'),
|
||||||
|
];
|
||||||
|
|
||||||
|
flash($message)->success();
|
||||||
|
|
||||||
|
return response()->json($response);
|
||||||
|
}
|
||||||
|
}
|
@ -25,7 +25,7 @@ class Script extends Component
|
|||||||
public function __construct(string $type = '', string $scriptFile = '', string $version = '', $transfer = false)
|
public function __construct(string $type = '', string $scriptFile = '', string $version = '', $transfer = false)
|
||||||
{
|
{
|
||||||
$this->type = $type;
|
$this->type = $type;
|
||||||
$this->scriptFile = ($scriptFile) ? $scriptFile : 'public/js/banling/transfers.js';
|
$this->scriptFile = ($scriptFile) ? $scriptFile : 'public/js/banking/transfers.js';
|
||||||
$this->version = $this->getVersion($version);
|
$this->version = $this->getVersion($version);
|
||||||
$this->transfer = $transfer;
|
$this->transfer = $transfer;
|
||||||
}
|
}
|
||||||
|
BIN
public/img/transfer_templates/default.png
Normal file
BIN
public/img/transfer_templates/default.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 76 KiB |
BIN
public/img/transfer_templates/second.png
Normal file
BIN
public/img/transfer_templates/second.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 78 KiB |
BIN
public/img/transfer_templates/third.png
Normal file
BIN
public/img/transfer_templates/third.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 76 KiB |
39
resources/assets/js/views/banking/transfers.js
vendored
39
resources/assets/js/views/banking/transfers.js
vendored
@ -30,6 +30,15 @@ const app = new Vue({
|
|||||||
form: new Form('transfer'),
|
form: new Form('transfer'),
|
||||||
bulk_action: new BulkAction('transfers'),
|
bulk_action: new BulkAction('transfers'),
|
||||||
show_rate: false,
|
show_rate: false,
|
||||||
|
|
||||||
|
transfer_form: new Form('template'),
|
||||||
|
template: {
|
||||||
|
modal: false,
|
||||||
|
title: '',
|
||||||
|
message: '',
|
||||||
|
html: '',
|
||||||
|
errors: new Error()
|
||||||
|
},
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -87,5 +96,35 @@ const app = new Vue({
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
|
onTemplate() {
|
||||||
|
this.template.modal = true;
|
||||||
|
|
||||||
|
this.transfer_form = new Form('template');
|
||||||
|
|
||||||
|
this.transfer_form.template = this.transfer_form._template;
|
||||||
|
},
|
||||||
|
|
||||||
|
addTemplate() {
|
||||||
|
if (this.transfer_form.template != 1) {
|
||||||
|
|
||||||
|
this.transfer_form.submit();
|
||||||
|
|
||||||
|
this.template.errors = this.transfer_form.errors;
|
||||||
|
}
|
||||||
|
|
||||||
|
this.form.loading = true;
|
||||||
|
|
||||||
|
this.$emit("confirm");
|
||||||
|
},
|
||||||
|
|
||||||
|
closeTemplate() {
|
||||||
|
this.template = {
|
||||||
|
modal: false,
|
||||||
|
title: '',
|
||||||
|
message: '',
|
||||||
|
errors: this.transfer_form.errors
|
||||||
|
};
|
||||||
|
},
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -10,6 +10,33 @@
|
|||||||
<x-transfers.show.content :transfer="$transfer" />
|
<x-transfers.show.content :transfer="$transfer" />
|
||||||
@endsection
|
@endsection
|
||||||
|
|
||||||
|
@push('content_content_end')
|
||||||
|
<akaunting-modal
|
||||||
|
:show="template.modal"
|
||||||
|
@cancel="template.modal = false"
|
||||||
|
:title="'{{ trans('settings.invoice.choose_template') }}'"
|
||||||
|
:message="template.html"
|
||||||
|
:button_cancel="'{{ trans('general.button.save') }}'"
|
||||||
|
:button_delete="'{{ trans('general.button.cancel') }}'">
|
||||||
|
<template #modal-body>
|
||||||
|
@include('modals.settings.transfer_template')
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template #card-footer>
|
||||||
|
<div class="float-right">
|
||||||
|
<button type="button" class="btn btn-outline-secondary" @click="closeTemplate">
|
||||||
|
{{ trans('general.cancel') }}
|
||||||
|
</button>
|
||||||
|
|
||||||
|
<button :disabled="form.loading" type="button" class="btn btn-success button-submit" @click="addTemplate">
|
||||||
|
<span v-if="form.loading" class="btn-inner--icon"><i class="aka-loader"></i></span>
|
||||||
|
<span :class="[{'ml-0': form.loading}]" class="btn-inner--text">{{ trans('general.confirm') }}</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</akaunting-modal>
|
||||||
|
@endpush
|
||||||
|
|
||||||
@push('scripts_start')
|
@push('scripts_start')
|
||||||
<link rel="stylesheet" href="{{ asset('public/css/print.css?v=' . version('short')) }}" type="text/css">
|
<link rel="stylesheet" href="{{ asset('public/css/print.css?v=' . version('short')) }}" type="text/css">
|
||||||
|
|
||||||
|
@ -57,9 +57,9 @@
|
|||||||
|
|
||||||
@if (!$hideButtonTemplate)
|
@if (!$hideButtonTemplate)
|
||||||
@stack('button_template_start')
|
@stack('button_template_start')
|
||||||
<a class="dropdown-item" href="javascipt::void();">
|
<button type="button" class="dropdown-item" @click="onTemplate">
|
||||||
{{ trans('general.form.choose', ['field' => trans_choice('general.templates', 1)]) }}
|
{{ trans('general.form.choose', ['field' => trans_choice('general.templates', 1)]) }}
|
||||||
</a>
|
</button>
|
||||||
@stack('button_template_end')
|
@stack('button_template_end')
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
|
49
resources/views/modals/settings/transfer_template.blade.php
Normal file
49
resources/views/modals/settings/transfer_template.blade.php
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
<div class="modal-body pb-0">
|
||||||
|
{!! Form::open([
|
||||||
|
'route' => 'modals.transfer-templates.update',
|
||||||
|
'method' => 'PATCH',
|
||||||
|
'id' => 'template',
|
||||||
|
'@submit.prevent' => 'onSubmit',
|
||||||
|
'@keydown' => 'transfer_form.errors.clear($event.target.name)',
|
||||||
|
'files' => true,
|
||||||
|
'role' => 'form',
|
||||||
|
'class' => 'form-loading-button mb-0',
|
||||||
|
'novalidate' => true
|
||||||
|
]) !!}
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-4 text-center">
|
||||||
|
<div class="bg-print border-radius-default print-edge choose" @click="transfer_form.template='default'">
|
||||||
|
<img src="{{ asset('public/img/transfer_templates/default.png') }}" class="mb-1 mt-3" height="200" alt="Default"/>
|
||||||
|
<label>
|
||||||
|
<input type="radio" name="template" value="default" v-model="transfer_form.template">
|
||||||
|
{{ trans('settings.invoice.default') }}
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-md-4 text-center px-2">
|
||||||
|
<div class="bg-print border-radius-default print-edge choose" @click="transfer_form.template='second'">
|
||||||
|
<img src="{{ asset('public/img/transfer_templates/second.png') }}" class="mb-1 mt-3" height="200" alt="Second"/>
|
||||||
|
<label>
|
||||||
|
<input type="radio" name="template" value="second" v-model="transfer_form.template">
|
||||||
|
{{ trans('settings.transfer.second') }}
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-md-4 text-center px-0">
|
||||||
|
<div class="bg-print border-radius-default print-edge choose" @click="transfer_form.template='third'">
|
||||||
|
<img src="{{ asset('public/img/transfer_templates/third.png') }}" class="mb-1 mt-3" height="200" alt="Third"/>
|
||||||
|
<label>
|
||||||
|
<input type="radio" name="template" value="third" v-model="transfer_form.template">
|
||||||
|
{{ trans('settings.transfer.third') }}
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{!! Form::hidden('transfer_id', $transfer->id) !!}
|
||||||
|
{!! Form::hidden('_template', setting('transfer.template')) !!}
|
||||||
|
{!! Form::hidden('_prefix', 'transfer') !!}
|
||||||
|
{!! Form::close() !!}
|
||||||
|
</div>
|
@ -245,6 +245,7 @@ Route::group(['as' => 'modals.', 'prefix' => 'modals'], function () {
|
|||||||
Route::resource('vendors', 'Modals\Vendors');
|
Route::resource('vendors', 'Modals\Vendors');
|
||||||
Route::resource('items', 'Modals\Items');
|
Route::resource('items', 'Modals\Items');
|
||||||
Route::patch('invoice-templates', 'Modals\InvoiceTemplates@update')->name('invoice-templates.update');
|
Route::patch('invoice-templates', 'Modals\InvoiceTemplates@update')->name('invoice-templates.update');
|
||||||
|
Route::patch('transfer-templates', 'Modals\TransferTemplates@update')->name('transfer-templates.update');
|
||||||
Route::get('documents/item-columns/edit', 'Modals\DocumentItemColumns@edit')->name('documents.item-columns.edit');
|
Route::get('documents/item-columns/edit', 'Modals\DocumentItemColumns@edit')->name('documents.item-columns.edit');
|
||||||
Route::patch('documents/item-columns', 'Modals\DocumentItemColumns@update')->name('documents.item-columns.update');
|
Route::patch('documents/item-columns', 'Modals\DocumentItemColumns@update')->name('documents.item-columns.update');
|
||||||
Route::resource('documents/{document}/transactions', 'Modals\DocumentTransactions', ['names' => 'documents.document.transactions', 'middleware' => ['date.format', 'money', 'dropzone']]);
|
Route::resource('documents/{document}/transactions', 'Modals\DocumentTransactions', ['names' => 'documents.document.transactions', 'middleware' => ['date.format', 'money', 'dropzone']]);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user