new: add `duplicate` button for articles
This commit is contained in:
@@ -126,3 +126,19 @@ body {
|
||||
padding-bottom: 4px;
|
||||
line-height: 1.1;
|
||||
}
|
||||
|
||||
@media (max-width: 575.98px) {
|
||||
.content-header .form-buttons {
|
||||
margin-left: 0;
|
||||
margin-top: 8px;
|
||||
}
|
||||
|
||||
.content-header .form-buttons .btn {
|
||||
height: 28px;
|
||||
padding-top: 2px;
|
||||
padding-bottom: 2px;
|
||||
padding-left: 8px;
|
||||
padding-right: 8px;
|
||||
font-size: 0.75rem;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,5 +5,7 @@
|
||||
])
|
||||
|
||||
@section('content')
|
||||
@include('Admin.Shop.Articles.form')
|
||||
@include('Admin.Shop.Articles.form', [
|
||||
'cancel_url' => route('Admin.Shop.Articles.index'),
|
||||
])
|
||||
@endsection
|
||||
|
||||
@@ -5,5 +5,13 @@
|
||||
])
|
||||
|
||||
@section('content')
|
||||
@include('Admin.Shop.Articles.form')
|
||||
@php
|
||||
$duplicateUrl = \Route::has('Admin.Shop.Articles.duplicate')
|
||||
? route('Admin.Shop.Articles.duplicate', $article['id'] ?? null)
|
||||
: null;
|
||||
@endphp
|
||||
@include('Admin.Shop.Articles.form', [
|
||||
'duplicate_url' => $duplicateUrl,
|
||||
'cancel_url' => route('Admin.Shop.Articles.index'),
|
||||
])
|
||||
@endsection
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
@include('Admin.Shop.Articles.partials.characteristics')
|
||||
{{ Form::close() }}
|
||||
|
||||
<x-save />
|
||||
<x-save :cancel-url="$cancel_url ?? null" :duplicate-url="$duplicate_url ?? null" />
|
||||
|
||||
@include('load.form.appender')
|
||||
@include('load.form.editor')
|
||||
|
||||
@@ -15,7 +15,20 @@
|
||||
@isset($trigger) data-trigger="{{ $trigger }}" @endisset
|
||||
@isset($container) data-container="{{ $container }}" @endisset
|
||||
@isset($html) data-html="true" @endisset
|
||||
@isset($metadata) {{ $metadata }} @endisset>
|
||||
@isset($metadata) {{ $metadata }} @endisset
|
||||
@isset($attr)
|
||||
@if (is_array($attr))
|
||||
@foreach ($attr as $key => $value)
|
||||
@if ($value === true)
|
||||
{{ $key }}
|
||||
@elseif ($value !== false && $value !== null)
|
||||
{{ $key }}="{{ $value }}"
|
||||
@endif
|
||||
@endforeach
|
||||
@else
|
||||
{{ $attr }}
|
||||
@endif
|
||||
@endisset>
|
||||
<i class="fa fa-fw {{ $icon ?? '' }}"></i>
|
||||
{{ $txt ?? '' }}
|
||||
</button>
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
@include('components.form.button', [
|
||||
'class' => 'btn-info duplicate ' . ($class ?? ''),
|
||||
'icon' => 'fa-copy',
|
||||
'txt' => __('Dupliquer'),
|
||||
'attr' => ['data-url' => $duplicate_url ?? $duplicateUrl ?? null],
|
||||
])
|
||||
@@ -1,5 +1,6 @@
|
||||
@php
|
||||
$cancelUrl = $cancel_url ?? $cancelUrl ?? null;
|
||||
$duplicateUrl = $duplicate_url ?? $duplicateUrl ?? null;
|
||||
@endphp
|
||||
|
||||
@push('header-actions')
|
||||
@@ -8,6 +9,12 @@
|
||||
'class' => 'btn-sm mr-2',
|
||||
'url' => $cancelUrl,
|
||||
])
|
||||
@if($duplicateUrl)
|
||||
@include('components.form.buttons.button-duplicate', [
|
||||
'class' => 'btn-sm mr-2',
|
||||
'duplicate_url' => $duplicateUrl,
|
||||
])
|
||||
@endif
|
||||
@include('components.form.buttons.button-save', [
|
||||
'class' => 'btn-sm',
|
||||
])
|
||||
@@ -18,6 +25,9 @@
|
||||
<div class="col-12">
|
||||
<div class="text-right form-buttons">
|
||||
@include('components.form.buttons.button-cancel', ['url' => $cancelUrl])
|
||||
@if($duplicateUrl)
|
||||
@include('components.form.buttons.button-duplicate', ['duplicate_url' => $duplicateUrl])
|
||||
@endif
|
||||
@include('components.form.buttons.button-save')
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
<div class="content-header pt-2 pb-1">
|
||||
<div class="container-fluid">
|
||||
<div class="row mb-2 align-items-center">
|
||||
<div class="col-sm-6">
|
||||
<div class="col-sm-8">
|
||||
<div class="d-flex align-items-center flex-wrap">
|
||||
<h1 class="m-0 text-dark d-flex align-items-center">
|
||||
<h1 class="m-0 text-dark d-flex align-items-center flex-grow-1">
|
||||
{{ $title ?? null}}
|
||||
@isset($subtitle)
|
||||
<small class="font-weight-light ml-1 text-md">{{ $subtitle }}</small>
|
||||
@@ -12,7 +12,7 @@
|
||||
@stack('header-actions')
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<div class="col-sm-4">
|
||||
<ol class="breadcrumb float-sm-right text-sm">
|
||||
<li class="breadcrumb-item">
|
||||
<a href="{{ route('boilerplate.dashboard') }}">
|
||||
|
||||
@@ -94,6 +94,18 @@
|
||||
|
||||
@stack('scripts')
|
||||
@stack('js')
|
||||
<script>
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
document.querySelectorAll('.form-buttons .duplicate').forEach(function(btn) {
|
||||
btn.addEventListener('click', function() {
|
||||
var url = this.dataset.url || this.getAttribute('data-url');
|
||||
if (url) {
|
||||
window.location = url;
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user