first upload all files
This commit is contained in:
53
Modules/Menu/Resources/assets/admin/js/main.js
Normal file
53
Modules/Menu/Resources/assets/admin/js/main.js
Normal file
@@ -0,0 +1,53 @@
|
||||
import 'nestable2';
|
||||
|
||||
window.admin.removeSubmitButtonOffsetOn('#image');
|
||||
|
||||
$('#type').on('change', (e) => {
|
||||
$('.link-field').addClass('hide');
|
||||
$(`.${e.currentTarget.value}-field`).removeClass('hide');
|
||||
});
|
||||
|
||||
$('.dd').nestable({ maxDepth: 15 });
|
||||
|
||||
$('.dd').on('change', () => {
|
||||
$.ajax({
|
||||
type: 'PUT',
|
||||
url: route('admin.menus.items.order.update'),
|
||||
contentType: 'application/json; charset=utf-8',
|
||||
data: JSON.stringify($('.dd').nestable('serialize')[0]),
|
||||
success() {
|
||||
success(trans('menu::messages.menu_items_order_updated'));
|
||||
},
|
||||
error(xhr) {
|
||||
error(xhr.responseJSON.message);
|
||||
},
|
||||
});
|
||||
});
|
||||
|
||||
let id;
|
||||
let confirmationModal = $('#confirmation-modal');
|
||||
|
||||
$('.delete-menu-item').on('click', (e) => {
|
||||
id = $(e.currentTarget).closest('.dd-item').data('id');
|
||||
|
||||
confirmationModal.modal('show');
|
||||
});
|
||||
|
||||
confirmationModal.find('form').on('submit', (e) => {
|
||||
e.preventDefault();
|
||||
|
||||
confirmationModal.modal('hide');
|
||||
|
||||
$.ajax({
|
||||
type: 'DELETE',
|
||||
url: route('admin.menus.items.destroy', id),
|
||||
success() {
|
||||
success(trans('menu::messages.menu_item_deleted'));
|
||||
|
||||
$(`.dd-item[data-id="${id}"]`).fadeOut();
|
||||
},
|
||||
error(xhr) {
|
||||
error(xhr.responseJSON.message);
|
||||
},
|
||||
});
|
||||
});
|
||||
205
Modules/Menu/Resources/assets/admin/sass/main.scss
Normal file
205
Modules/Menu/Resources/assets/admin/sass/main.scss
Normal file
@@ -0,0 +1,205 @@
|
||||
#menu-create-form .box-body,
|
||||
#menu-edit-form .box-body {
|
||||
padding-bottom: 5px;
|
||||
}
|
||||
|
||||
#menu-edit-form .box-body {
|
||||
.dd {
|
||||
padding-bottom: 15px;
|
||||
}
|
||||
}
|
||||
|
||||
.menu-item-actions {
|
||||
float: left;
|
||||
display: inline-block;
|
||||
margin-top: 3px;
|
||||
margin-left: 6px;
|
||||
}
|
||||
|
||||
.menu-item-actions .btn:last-child {
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
.delete-menu-item {
|
||||
float: left;
|
||||
}
|
||||
|
||||
.edit-menu-item {
|
||||
float: left;
|
||||
}
|
||||
|
||||
.dd {
|
||||
position: relative;
|
||||
display: block;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
font-size: 13px;
|
||||
line-height: 29px;
|
||||
}
|
||||
|
||||
.dd-list {
|
||||
display: block;
|
||||
position: relative;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
|
||||
.dd-list {
|
||||
padding-left: 25px;
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.btn {
|
||||
background: transparent;
|
||||
color: #555555;
|
||||
padding: 6px;
|
||||
}
|
||||
|
||||
.dd-expand,
|
||||
.dd-collapse {
|
||||
margin-top: 10px;
|
||||
color: #555555;
|
||||
|
||||
&:focus {
|
||||
outline: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.dd-collapsed .dd-list {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.dd-item,
|
||||
.dd-item-root,
|
||||
.dd-empty,
|
||||
.dd-placeholder {
|
||||
display: block;
|
||||
position: relative;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
min-height: 20px;
|
||||
font-size: 13px;
|
||||
line-height: 20px;
|
||||
}
|
||||
|
||||
.dd-handle-root,
|
||||
.dd-handle {
|
||||
font-family: "Roboto", sans-serif;
|
||||
font-weight: 400;
|
||||
font-size: 15px;
|
||||
display: block;
|
||||
margin: 5px 0;
|
||||
padding: 8px 10px;
|
||||
color: #333;
|
||||
text-decoration: none;
|
||||
border: 1px solid #d9d9d9;
|
||||
background: #fafafa;
|
||||
-webkit-border-radius: 3px;
|
||||
border-radius: 3px;
|
||||
box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
}
|
||||
|
||||
.dd-handle:hover {
|
||||
color: #333;
|
||||
background: #fff;
|
||||
cursor: move;
|
||||
}
|
||||
|
||||
.dd-item-root > .btn {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.dd-item-root > button,
|
||||
.dd-item > button {
|
||||
display: block;
|
||||
position: relative;
|
||||
cursor: pointer;
|
||||
float: right;
|
||||
width: 25px;
|
||||
height: 20px;
|
||||
margin: 5px 0;
|
||||
padding: 0;
|
||||
text-indent: 100%;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
border: 0;
|
||||
background: transparent;
|
||||
font-size: 12px;
|
||||
line-height: 1;
|
||||
text-align: center;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.dd-item-root > button:before,
|
||||
.dd-item > button:before {
|
||||
content: '+';
|
||||
display: block;
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
text-indent: 0;
|
||||
font-size: 20px;
|
||||
line-height: 9px;
|
||||
}
|
||||
|
||||
.dd-item-root > button[data-action="collapse"]:before,
|
||||
.dd-item > button[data-action="collapse"]:before {
|
||||
content: '-';
|
||||
font-size: 20px;
|
||||
line-height: 9px;
|
||||
}
|
||||
|
||||
.dd-placeholder,
|
||||
.dd-empty {
|
||||
margin: 5px 0;
|
||||
padding: 0;
|
||||
min-height: 30px !important;
|
||||
background: #f2fbff !important;
|
||||
border: 1px dashed #b6bcbf;
|
||||
box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
}
|
||||
|
||||
.dd-empty {
|
||||
border: 1px dashed #bbb;
|
||||
min-height: 100px;
|
||||
background-color: #e5e5e5;
|
||||
background-image: -webkit-linear-gradient(45deg, #ffffff 25%, transparent 25%, transparent 75%, #ffffff 75%, #ffffff), -webkit-linear-gradient(45deg, #ffffff 25%, transparent 25%, transparent 75%, #ffffff 75%, #ffffff);
|
||||
background-image: -moz-linear-gradient(45deg, #ffffff 25%, transparent 25%, transparent 75%, #ffffff 75%, #ffffff), -moz-linear-gradient(45deg, #ffffff 25%, transparent 25%, transparent 75%, #ffffff 75%, #ffffff);
|
||||
background-image: linear-gradient(45deg, #ffffff 25%, transparent 25%, transparent 75%, #ffffff 75%, #ffffff), linear-gradient(45deg, #ffffff 25%, transparent 25%, transparent 75%, #ffffff 75%, #ffffff);
|
||||
background-size: 60px 60px;
|
||||
background-position: 0 0, 30px 30px;
|
||||
}
|
||||
|
||||
.dd-dragel {
|
||||
position: absolute;
|
||||
pointer-events: none;
|
||||
z-index: 9999;
|
||||
}
|
||||
|
||||
.dd-dragel > .dd-item .dd-handle {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.dd-dragel .dd-handle {
|
||||
-webkit-box-shadow: 2px 4px 6px 0 rgba(0, 0, 0, 0.1);
|
||||
box-shadow: 2px 4px 6px 0 rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
|
||||
.dd-hover > .dd-handle {
|
||||
background: #2196f3 !important;
|
||||
}
|
||||
|
||||
@media only screen and (min-width: 700px) {
|
||||
.dd {
|
||||
float: left;
|
||||
width: 100%;
|
||||
|
||||
+ .dd {
|
||||
margin-left: 2%;
|
||||
}
|
||||
}
|
||||
}
|
||||
14
Modules/Menu/Resources/lang/en/attributes.php
Normal file
14
Modules/Menu/Resources/lang/en/attributes.php
Normal file
@@ -0,0 +1,14 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
'name' => 'Name',
|
||||
'type' => 'Type',
|
||||
'url' => 'URL',
|
||||
'icon' => 'Icon',
|
||||
'category_id' => 'Category',
|
||||
'page_id' => 'Page',
|
||||
'parent_id' => 'Parent Menu Item',
|
||||
'target' => 'Target',
|
||||
'is_fluid' => 'Fluid Menu',
|
||||
'is_active' => 'Status',
|
||||
];
|
||||
30
Modules/Menu/Resources/lang/en/menu_items.php
Normal file
30
Modules/Menu/Resources/lang/en/menu_items.php
Normal file
@@ -0,0 +1,30 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
'menu_item' => 'Menu Item',
|
||||
'back_to_menu_edit_page' => 'Back to Menu Edit Page',
|
||||
'tabs' => [
|
||||
'group' => [
|
||||
'menu_item_information' => 'Menu Item Information',
|
||||
],
|
||||
'general' => 'General',
|
||||
'image' => 'Image',
|
||||
],
|
||||
'form' => [
|
||||
'types' => [
|
||||
'category' => 'Category',
|
||||
'page' => 'Page',
|
||||
'url' => 'URL',
|
||||
],
|
||||
'targets' => [
|
||||
'_self' => 'Same Tab',
|
||||
'_blank' => 'New Tab',
|
||||
],
|
||||
'select_category' => 'Select Category',
|
||||
'select_page' => 'Select Page',
|
||||
'select_parent' => 'Select Parent',
|
||||
'background_image' => 'Background Image',
|
||||
'full_width_menu' => 'This is a full width menu',
|
||||
'enable_the_menu_item' => 'Enable the menu item',
|
||||
],
|
||||
];
|
||||
13
Modules/Menu/Resources/lang/en/menus.php
Normal file
13
Modules/Menu/Resources/lang/en/menus.php
Normal file
@@ -0,0 +1,13 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
'menu' => 'Menu',
|
||||
'menus' => 'Menus',
|
||||
'table' => [
|
||||
'name' => 'Name',
|
||||
],
|
||||
'form' => [
|
||||
'please_save_the_menu_first' => 'Please save the menu first to add menu items.',
|
||||
'enable_the_menu' => 'Enable the menu',
|
||||
],
|
||||
];
|
||||
6
Modules/Menu/Resources/lang/en/messages.php
Normal file
6
Modules/Menu/Resources/lang/en/messages.php
Normal file
@@ -0,0 +1,6 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
'menu_item_deleted' => 'Menu item has been deleted.',
|
||||
'menu_items_order_updated' => 'Menu items order has been updated.',
|
||||
];
|
||||
16
Modules/Menu/Resources/lang/en/permissions.php
Normal file
16
Modules/Menu/Resources/lang/en/permissions.php
Normal file
@@ -0,0 +1,16 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
'menus' => [
|
||||
'index' => 'Index Menus',
|
||||
'create' => 'Create Menus',
|
||||
'edit' => 'Edit Menus',
|
||||
'destroy' => 'Delete Menus',
|
||||
],
|
||||
'menu_items' => [
|
||||
'index' => 'Index Menu Items',
|
||||
'create' => 'Create Menu Items',
|
||||
'edit' => 'Edit Menu Items',
|
||||
'destroy' => 'Delete Menu Items',
|
||||
],
|
||||
];
|
||||
5
Modules/Menu/Resources/lang/en/sidebar.php
Normal file
5
Modules/Menu/Resources/lang/en/sidebar.php
Normal file
@@ -0,0 +1,5 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
'menus' => 'Menus',
|
||||
];
|
||||
@@ -0,0 +1,19 @@
|
||||
@extends('admin::layout')
|
||||
|
||||
@component('admin::components.page.header')
|
||||
@slot('title', trans('admin::resource.create', ['resource' => trans('menu::menu_items.menu_item')]))
|
||||
|
||||
<li><a href="{{ route('admin.menus.index') }}">{{ trans('menu::menus.menus') }}</a></li>
|
||||
<li><a href="{{ route('admin.menus.edit', $menuId) }}">{{ trans('admin::resource.edit', ['resource' => trans('menu::menus.menu')]) }}</a></li>
|
||||
<li class="active">{{ trans('admin::resource.create', ['resource' => trans('menu::menu_items.menu_item')]) }}</li>
|
||||
@endcomponent
|
||||
|
||||
@section('content')
|
||||
<form method="POST" action="{{ route('admin.menus.items.store', $menuId) }}" class="form-horizontal" id="menu-item-create-form" novalidate>
|
||||
{{ csrf_field() }}
|
||||
|
||||
{!! $tabs->render(compact('menuId', 'menuItem')) !!}
|
||||
</form>
|
||||
@endsection
|
||||
|
||||
@include('menu::admin.menu_items.partials.shortcuts')
|
||||
20
Modules/Menu/Resources/views/admin/menu_items/edit.blade.php
Normal file
20
Modules/Menu/Resources/views/admin/menu_items/edit.blade.php
Normal file
@@ -0,0 +1,20 @@
|
||||
@extends('admin::layout')
|
||||
|
||||
@component('admin::components.page.header')
|
||||
@slot('title', trans('admin::resource.edit', ['resource' => trans('menu::menu_items.menu_item')]))
|
||||
@slot('subtitle', $menuItem->title)
|
||||
|
||||
<li><a href="{{ route('admin.menus.edit', $menuId) }}">{{ trans('admin::resource.edit', ['resource' => trans('menu::menus.menu')]) }}</a></li>
|
||||
<li class="active">{{ trans('admin::resource.edit', ['resource' => trans('menu::menu_items.menu_item')]) }}</li>
|
||||
@endcomponent
|
||||
|
||||
@section('content')
|
||||
<form method="POST" action="{{ route('admin.menus.items.update', [$menuId, $menuItem]) }}" class="form-horizontal" id="menu-item-edit-form" novalidate>
|
||||
{{ csrf_field() }}
|
||||
{{ method_field('put') }}
|
||||
|
||||
{!! $tabs->render(compact('menuId', 'menuItem')) !!}
|
||||
</form>
|
||||
@endsection
|
||||
|
||||
@include('menu::admin.menu_items.partials.shortcuts')
|
||||
@@ -0,0 +1,14 @@
|
||||
@push('shortcuts')
|
||||
<dl class="dl-horizontal">
|
||||
<dt><code>b</code></dt>
|
||||
<dd>{{ trans('menu::menu_items.back_to_menu_edit_page') }}</dd>
|
||||
</dl>
|
||||
@endpush
|
||||
|
||||
@push('scripts')
|
||||
<script>
|
||||
keypressAction([
|
||||
{ key: 'b', route: "{{ route('admin.menus.edit', $menuId) }}" },
|
||||
]);
|
||||
</script>
|
||||
@endpush
|
||||
@@ -0,0 +1,24 @@
|
||||
<div class="row">
|
||||
<div class="col-md-8">
|
||||
{{ Form::text('name', trans('menu::attributes.name'), $errors, $menuItem, ['required' => true]) }}
|
||||
{{ Form::select('type', trans('menu::attributes.type'), $errors, trans('menu::menu_items.form.types'), $menuItem, ['required' => true]) }}
|
||||
|
||||
<div class="link-field category-field {{ old('type', $menuItem->type ?? 'category') !== 'category' ? 'hide' :'' }}">
|
||||
{{ Form::select('category_id', trans('menu::attributes.category_id'), $errors, $categories, $menuItem, ['required' => true]) }}
|
||||
</div>
|
||||
|
||||
<div class="link-field page-field {{ old('type', $menuItem->type) !== 'page' ? 'hide' :'' }}">
|
||||
{{ Form::select('page_id', trans('menu::attributes.page_id'), $errors, $pages, $menuItem, ['required' => true]) }}
|
||||
</div>
|
||||
|
||||
<div class="link-field url-field {{ old('type', $menuItem->type) !== 'url' ? 'hide' :'' }}">
|
||||
{{ Form::text('url', trans('menu::attributes.url'), $errors, $menuItem, ['required' => true]) }}
|
||||
</div>
|
||||
|
||||
{{ Form::text('icon', trans('menu::attributes.icon'), $errors, $menuItem) }}
|
||||
{{ Form::checkbox('is_fluid', trans('menu::attributes.is_fluid'), trans('menu::menu_items.form.full_width_menu'), $errors, $menuItem) }}
|
||||
{{ Form::select('target', trans('menu::attributes.target'), $errors, trans('menu::menu_items.form.targets'), $menuItem) }}
|
||||
{{ Form::select('parent_id', trans('menu::attributes.parent_id'), $errors, $parentMenuItems, $menuItem) }}
|
||||
{{ Form::checkbox('is_active', trans('menu::attributes.is_active'), trans('menu::menu_items.form.enable_the_menu_item'), $errors, $menuItem) }}
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,5 @@
|
||||
@include('media::admin.image_picker.single', [
|
||||
'title' => trans('menu::menu_items.form.background_image'),
|
||||
'inputName' => 'files[background_image]',
|
||||
'file' => $menuItem->backgroundImage,
|
||||
])
|
||||
18
Modules/Menu/Resources/views/admin/menus/create.blade.php
Normal file
18
Modules/Menu/Resources/views/admin/menus/create.blade.php
Normal file
@@ -0,0 +1,18 @@
|
||||
@extends('admin::layout')
|
||||
|
||||
@component('admin::components.page.header')
|
||||
@slot('title', trans('admin::resource.create', ['resource' => trans('menu::menus.menu')]))
|
||||
|
||||
<li><a href="{{ route('admin.menus.index') }}">{{ trans('menu::menus.menus') }}</a></li>
|
||||
<li class="active">{{ trans('admin::resource.create', ['resource' => trans('menu::menus.menu')]) }}</li>
|
||||
@endcomponent
|
||||
|
||||
@section('content')
|
||||
<form method="POST" action="{{ route('admin.menus.store') }}" class="form-horizontal" id="menu-create-form" novalidate>
|
||||
{{ csrf_field() }}
|
||||
|
||||
@include('menu::admin.menus.form.fields')
|
||||
</form>
|
||||
@endsection
|
||||
|
||||
@include('menu::admin.menus.partials.shortcuts')
|
||||
27
Modules/Menu/Resources/views/admin/menus/edit.blade.php
Normal file
27
Modules/Menu/Resources/views/admin/menus/edit.blade.php
Normal file
@@ -0,0 +1,27 @@
|
||||
@extends('admin::layout')
|
||||
|
||||
@component('admin::components.page.header')
|
||||
@slot('title', trans('admin::resource.edit', ['resource' => trans('menu::menus.menu')]))
|
||||
@slot('subtitle', $menu->title)
|
||||
|
||||
<li><a href="{{ route('admin.menus.index') }}">{{ trans('menu::menus.menus') }}</a></li>
|
||||
<li class="active">{{ trans('admin::resource.edit', ['resource' => trans('menu::menus.menu')]) }}</li>
|
||||
@endcomponent
|
||||
|
||||
@section('content')
|
||||
<form method="POST" action="{{ route('admin.menus.update', $menu) }}" class="form-horizontal" id="menu-edit-form" novalidate>
|
||||
{{ csrf_field() }}
|
||||
{{ method_field('put') }}
|
||||
|
||||
@include('menu::admin.menus.form.fields')
|
||||
</form>
|
||||
@endsection
|
||||
|
||||
@push('globals')
|
||||
<script>
|
||||
FleetCart.langs['menu::messages.menu_item_deleted'] = '{{ trans('menu::messages.menu_item_deleted') }}';
|
||||
FleetCart.langs['menu::messages.menu_items_order_updated'] = '{{ trans('menu::messages.menu_items_order_updated') }}';
|
||||
</script>
|
||||
@endpush
|
||||
|
||||
@include('menu::admin.menus.partials.shortcuts')
|
||||
@@ -0,0 +1,46 @@
|
||||
<div class="row">
|
||||
@hasAccess('admin.menu_items.index')
|
||||
<div class="col-md-6">
|
||||
@if ($menu->exists)
|
||||
@hasAccess('admin.menu_items.create')
|
||||
<div class="btn-group pull-right m-b-15">
|
||||
<a href="{{ route('admin.menus.items.create', $menu) }}" class="btn btn-primary">
|
||||
{{ trans('admin::resource.create', ['resource' => trans('menu::menu_items.menu_item')]) }}
|
||||
</a>
|
||||
</div>
|
||||
@endHasAccess
|
||||
|
||||
@hasAccess('admin.menu_items.edit')
|
||||
<div class="box box-primary overflow-hidden">
|
||||
<div class="box-body">
|
||||
<div class="dd">
|
||||
@include('menu::admin.menus.form.menu_items_list')
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endHasAccess
|
||||
@else
|
||||
<div class="alert alert-info">
|
||||
{{ trans('menu::menus.form.please_save_the_menu_first') }}
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
@endHasAccess
|
||||
|
||||
<div class="col-md-6">
|
||||
<div class="box box-primary">
|
||||
<div class="box-body">
|
||||
{{ Form::text('name', trans('menu::attributes.name'), $errors, $menu, ['required' => true]) }}
|
||||
{{ Form::checkbox('is_active', trans('menu::attributes.is_active'), trans('menu::menus.form.enable_the_menu'), $errors, $menu) }}
|
||||
|
||||
<div class="form-group">
|
||||
<div class="col-md-offset-3 col-md-9">
|
||||
<button type="submit" class="btn btn-primary" data-loading>
|
||||
{{ trans('admin::admin.buttons.save') }}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,23 @@
|
||||
<ol class="dd-list">
|
||||
@foreach ($menuItems as $menuItem)
|
||||
<li class="dd-item" data-id="{{ $menuItem->id }}">
|
||||
@if (! $menuItem->is_root)
|
||||
<div class="menu-item-actions btn-group" role="group">
|
||||
<a href="{{ route('admin.menus.items.edit', [$menu->id, $menuItem->id]) }}" class="btn edit-menu-item ">
|
||||
<i class="fa fa-pencil"></i>
|
||||
</a>
|
||||
|
||||
<button type="button" class="btn delete-menu-item" data-action="{{ route('admin.menus.items.destroy', [$menu->id, $menuItem->id]) }}">
|
||||
<i class="fa fa-times"></i>
|
||||
</button>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<div class="{{ $menuItem->is_root ? 'dd-handle-root' : 'dd-handle' }}">{{ $menuItem->name }}</div>
|
||||
|
||||
@if (count($menuItem->items) !== 0)
|
||||
@include('menu::admin.menus.form.menu_items_list', ['menuItems' => $menuItem->items])
|
||||
@endif
|
||||
</li>
|
||||
@endforeach
|
||||
</ol>
|
||||
49
Modules/Menu/Resources/views/admin/menus/index.blade.php
Normal file
49
Modules/Menu/Resources/views/admin/menus/index.blade.php
Normal file
@@ -0,0 +1,49 @@
|
||||
@extends('admin::layout')
|
||||
|
||||
@component('admin::components.page.header')
|
||||
@slot('title', trans('menu::menus.menus'))
|
||||
|
||||
<li class="active">{{ trans('menu::menus.menu') }}</li>
|
||||
@endcomponent
|
||||
|
||||
@component('admin::components.page.index_table')
|
||||
@slot('buttons', ['create'])
|
||||
@slot('resource', 'menus')
|
||||
@slot('name', trans('menu::menus.menu'))
|
||||
|
||||
@slot('thead')
|
||||
<tr>
|
||||
@include('admin::partials.table.select_all')
|
||||
|
||||
<th>{{ trans('admin::admin.table.id') }}</th>
|
||||
<th>{{ trans('menu::menus.table.name') }}</th>
|
||||
<th>{{ trans('admin::admin.table.status') }}</th>
|
||||
<th data-sort>{{ trans('admin::admin.table.created') }}</th>
|
||||
</tr>
|
||||
@endslot
|
||||
@endcomponent
|
||||
|
||||
@push('shortcuts')
|
||||
<dl class="dl-horizontal">
|
||||
<dt><code>c</code></dt>
|
||||
<dd>{{ trans('admin::resource.create', ['resource' => trans('menu::menus.menu')]) }}</dd>
|
||||
</dl>
|
||||
@endpush
|
||||
|
||||
@push('scripts')
|
||||
<script>
|
||||
keypressAction([
|
||||
{ key: 'c', route: "{{ route('admin.menus.create') }}" },
|
||||
]);
|
||||
|
||||
new DataTable('#menus-table .table', {
|
||||
columns: [
|
||||
{ data: 'checkbox', orderable: false, searchable: false, width: '3%' },
|
||||
{ data: 'id', width: '5%' },
|
||||
{ data: 'name', name: 'translations.name', orderable: false, defaultContent: '' },
|
||||
{ data: 'status', name: 'is_active', searchable: false },
|
||||
{ data: 'created', name: 'created_at' },
|
||||
]
|
||||
});
|
||||
</script>
|
||||
@endpush
|
||||
@@ -0,0 +1,25 @@
|
||||
@push('shortcuts')
|
||||
@isset($menu)
|
||||
<dl class="dl-horizontal">
|
||||
<dt><code>c</code></dt>
|
||||
<dd>{{ trans('admin::resource.create', ['resource' => trans('menu::menu_items.menu_item')]) }}</dd>
|
||||
</dl>
|
||||
@endisset
|
||||
|
||||
<dl class="dl-horizontal">
|
||||
<dt><code>b</code></dt>
|
||||
<dd>{{ trans('admin::admin.shortcuts.back_to_index', ['name' => trans('menu::menus.menu')]) }}</dd>
|
||||
</dl>
|
||||
@endpush
|
||||
|
||||
@push('scripts')
|
||||
<script>
|
||||
keypressAction([
|
||||
@isset($menu)
|
||||
{ key: 'c', route: "{{ route('admin.menus.items.create', $menu) }}" },
|
||||
@endisset
|
||||
|
||||
{ key: 'b', route: "{{ route('admin.menus.index') }}" },
|
||||
]);
|
||||
</script>
|
||||
@endpush
|
||||
Reference in New Issue
Block a user