restore composer.json, add mysqli extension
This commit is contained in:
118
resources/views/dashboard/posts/index.blade.php
Executable file
118
resources/views/dashboard/posts/index.blade.php
Executable file
@@ -0,0 +1,118 @@
|
||||
@extends('dashboard.layouts.app')
|
||||
@section('title', trans('admin.posts.title') . ' - ')
|
||||
@section('speedbar')
|
||||
<div class="content-header row">
|
||||
<div class="content-header-left col-md-9 col-12 mb-2">
|
||||
<div class="row breadcrumbs-top">
|
||||
<div class="col-12">
|
||||
<h2 class="content-header-title float-left mb-0">@lang('admin.posts.title')</h2>
|
||||
<div class="breadcrumb-wrapper col-12">
|
||||
<ol class="breadcrumb">
|
||||
<li class="breadcrumb-item "><a href="{{ route('dashboard') }}">@lang('admin.home')</a>
|
||||
</li>
|
||||
<li class="breadcrumb-item active">
|
||||
@lang('admin.posts.title') {{ $lang }}
|
||||
</li>
|
||||
{{-- <li class="breadcrumb-item active">Fixed Layout --}}
|
||||
{{-- </li> --}}
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="row" id="table-head">
|
||||
<div class="col-md-12 mb-1">
|
||||
@can('create', 'posts')
|
||||
<a href="{{ route('dashboard.post.store', $lang) }}" class="btn btn-icon btn-success float-right">
|
||||
<i class="feather icon-plus"></i> @lang('admin.add')
|
||||
</a>
|
||||
@endcan
|
||||
</div>
|
||||
<div class="col-12">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="card-content">
|
||||
<div class="table-responsive">
|
||||
<table class="table mb-0">
|
||||
<thead class="thead-dark">
|
||||
<tr>
|
||||
<th scope="col" width="50">ID</th>
|
||||
<th scope="col" width="50">@lang('admin.posts.image')</th>
|
||||
<th scope="col">@lang('admin.posts.name')</th>
|
||||
<th scope="col">@lang('admin.posts.views')</th>
|
||||
<th scope="col">@lang('admin.categories.position')</th>
|
||||
<th scope="col">@lang('admin.posts.type.title')</th>
|
||||
<th scope="col" class="text-right">@lang('admin.actions')</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@if (count($posts) == 0)
|
||||
<tr>
|
||||
<td class="text-center" colspan="4">
|
||||
@lang('admin.no_data')
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
@foreach ($posts as $post)
|
||||
<tr class="bg {{ $post->topped ? 'bg-light' : '' }}">
|
||||
<th scope="row">{{ $post->id }}</th>
|
||||
<td>
|
||||
<img src="{{ $post->getImage() }}" width="100%" alt="">
|
||||
</td>
|
||||
<td>{{ $post->name }}</td>
|
||||
<td>{{ $post->views }}</td>
|
||||
<td>{{ $post->position }}</td>
|
||||
<td>@lang("admin.posts.type.{$post->type}")</td>
|
||||
<td class="text-right">
|
||||
@can('update', 'posts')
|
||||
<a href="{{ route('dashboard.post.update', [$lang, $post->id]) }}"
|
||||
class="btn btn-sm btn-success btn-icon" data-toggle="tooltip"
|
||||
data-original-title="@lang('admin.edit')">
|
||||
<i class="feather icon-edit"></i>
|
||||
</a>
|
||||
@endcan
|
||||
|
||||
@can('delete', 'posts')
|
||||
<a href="{{ route('dashboard.post.delete', $post->id) }}"
|
||||
class="delete-alert btn btn-sm btn-danger btn-icon" data-toggle="tooltip"
|
||||
data-original-title="@lang('admin.delete')">
|
||||
<i class="feather icon-trash"></i>
|
||||
</a>
|
||||
@endcan
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{ $posts->links('pagination::bootstrap-4') }}
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
<!-- JavaScript for delete confirmation -->
|
||||
<script>
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
const deleteLinks = document.querySelectorAll('.delete-alert');
|
||||
|
||||
deleteLinks.forEach(link => {
|
||||
link.addEventListener('click', function(event) {
|
||||
event.preventDefault(); // Prevent the link from following through immediately
|
||||
const confirmation = confirm("Are you sure you want to delete this post?");
|
||||
|
||||
if (confirmation) {
|
||||
window.location.href = link.href; // Redirect to delete URL if confirmed
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
</script>
|
||||
273
resources/views/dashboard/posts/store.blade.php
Executable file
273
resources/views/dashboard/posts/store.blade.php
Executable file
@@ -0,0 +1,273 @@
|
||||
@extends('dashboard.layouts.app')
|
||||
@section('title', trans('admin.add') . ' - ')
|
||||
@section('speedbar')
|
||||
<div class="content-header row">
|
||||
<div class="content-header-left col-md-9 col-12 mb-2">
|
||||
<div class="row breadcrumbs-top">
|
||||
<div class="col-12">
|
||||
<h2 class="content-header-title float-left mb-0">@lang('admin.add')</h2>
|
||||
<div class="breadcrumb-wrapper col-12">
|
||||
<ol class="breadcrumb">
|
||||
<li class="breadcrumb-item ">
|
||||
<a href="{{ route('dashboard') }}">@lang('admin.home')</a>
|
||||
</li>
|
||||
<li class="breadcrumb-item ">
|
||||
<a href="{{ route('dashboard.posts', $lang) }}">@lang('admin.posts.title') {{ $lang }}</a>
|
||||
</li>
|
||||
<li class="breadcrumb-item active">
|
||||
@lang('admin.add')
|
||||
</li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@push('css')
|
||||
<link href="{{ asset('vendor/editor/dist/summernote.min.css') }}" rel="stylesheet">
|
||||
<link rel="stylesheet" type="text/css"
|
||||
href="{{ asset('/vendor/dashboard/app-assets/vendors/css/forms/select/select2.min.css') }}">
|
||||
@endpush
|
||||
|
||||
@section('content')
|
||||
<div class="row">
|
||||
<form class="form form-vertical" action="{{ route('dashboard.post.store', $lang) }}" enctype="multipart/form-data"
|
||||
method="post">
|
||||
<div class="col-md-12 col-12">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<h4 class="card-title">@lang('admin.add')</h4>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
@csrf
|
||||
<div class="card-body">
|
||||
<div class="form-body">
|
||||
<p>@lang('admin.all_fields_with')</p>
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<div class="form-group">
|
||||
<label for="first-name-vertical">@lang('admin.posts.name') *</label>
|
||||
<input type="text" id="first-name-vertical" required
|
||||
class="form-control @error('name') is-invalid @enderror"
|
||||
name="name" value="{{ old('name') }}"
|
||||
placeholder="@lang('admin.posts.name')">
|
||||
@error('name')
|
||||
<div class="invalid-feedback">
|
||||
{{ $message }}
|
||||
</div>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<label>@lang('admin.posts.content') *</label>
|
||||
<div class="controls">
|
||||
<fieldset class="form-group position-relative">
|
||||
<textarea class="form-control @error('content') is-invalid @enderror" required name="content"
|
||||
placeholder="@lang('admin.posts.content')" id="description_ru">{{ old('content') }}</textarea>
|
||||
</fieldset>
|
||||
@error('content')
|
||||
<div class="invalid-feedback">
|
||||
{{ $message }}
|
||||
</div>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<label>@lang('admin.posts.language') *</label>
|
||||
<fieldset class="form-group">
|
||||
<select class="select2 form-control" required name="language">
|
||||
<option disabled>@lang('admin.posts.language')</option>
|
||||
<option value="{{ $lang }}" selected>{{ $lang }}
|
||||
</option>
|
||||
</select>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<label>@lang('admin.posts.type.title') *</label>
|
||||
<fieldset class="form-group">
|
||||
<select class="select2 form-control" name="type" required>
|
||||
<option disabled selected>@lang('admin.posts.type.title')</option>
|
||||
<option value="news">@lang('admin.posts.type.news')</option>
|
||||
<option value="article">@lang('admin.posts.type.article')</option>
|
||||
<option value="sales">@lang('admin.posts.type.sales')</option>
|
||||
<option value="media">@lang('admin.posts.type.media')</option>
|
||||
</select>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<div class="form-group">
|
||||
<label for="image">@lang('admin.posts.image') *</label>
|
||||
<input type="file" id="image" required
|
||||
class="form-control @error('image') is-invalid @enderror" name="image"
|
||||
value="{{ old('image') }}" placeholder="@lang('admin.posts.image')">
|
||||
@error('image')
|
||||
<div class="invalid-feedback">
|
||||
{{ $message }}
|
||||
</div>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<div class="form-group">
|
||||
<label for="position">@lang('admin.categories.position')</label>
|
||||
<input type="number" id="position"
|
||||
class="form-control @error('position') is-invalid @enderror" name="position"
|
||||
value="{{ old('position') }}" placeholder="@lang('admin.categories.position')">
|
||||
@error('position')
|
||||
<div class="invalid-feedback">
|
||||
{{ $message }}
|
||||
</div>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<h4 class="card-title">SEO</h4>
|
||||
</div>
|
||||
|
||||
<div class="card-content">
|
||||
<div class="card-body">
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<fieldset class="form-label-group">
|
||||
<textarea class="form-control" name="keywords" id="label-descriptions-ru" rows="3"
|
||||
placeholder="@lang('admin.settings.keywords')">{{ old('keywords') }}</textarea>
|
||||
<label for="label-descriptions-ru">@lang('admin.settings.keywords') *</label>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<fieldset class="form-label-group">
|
||||
<textarea class="form-control" name="descriptions" id="label-keywords-ru" rows="3"
|
||||
placeholder="@lang('admin.settings.description')">{{ old('description') }}</textarea>
|
||||
<label for="label-keywords-ru">@lang('admin.settings.description') *</label>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<div class="row">
|
||||
<div class="col-md-2">
|
||||
<div class="form-group">
|
||||
<fieldset class="checkbox">
|
||||
<div class="vs-checkbox-con vs-checkbox-primary">
|
||||
<input type="checkbox" value="1" name="topped">
|
||||
<span class="vs-checkbox">
|
||||
<span class="vs-checkbox--check">
|
||||
<i class="vs-icon feather icon-check"></i>
|
||||
</span>
|
||||
</span>
|
||||
|
||||
<span class="">
|
||||
@lang('admin.posts.top')
|
||||
</span>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<div class="card-footer pb-0 pl-0 pt-1">
|
||||
<div class="col-12 mb-0">
|
||||
<div class="row">
|
||||
<div class="col-3">
|
||||
<button type="submit"
|
||||
class="btn btn-primary mr-1 mb-1 waves-effect waves-light btn-icon">
|
||||
<i class="feather icon-save"></i> @lang('admin.save')
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<div class="col-9">
|
||||
<a href="{{ route('dashboard.posts', $lang) }}"
|
||||
class="btn btn-danger mr-1 mb-1 waves-effect waves-light btn-icon pull-right">
|
||||
<i class="feather icon-x-circle"></i> @lang('admin.cancel')
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@push('js')
|
||||
<script src="{{ asset('vendor/editor/dist/summernote.min.js') }}"></script>
|
||||
|
||||
<script src="{{ asset('/vendor/dashboard/app-assets/vendors/js/forms/select/select2.full.min.js') }}"></script>
|
||||
<script src="{{ asset('/vendor/dashboard/app-assets/js/scripts/forms/select/form-select2.js') }}"></script>
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
|
||||
$('#description_ru').summernote({
|
||||
height: 300,
|
||||
callbacks: {
|
||||
onImageUpload: function(files) {
|
||||
var that = $(this);
|
||||
|
||||
sendFile(files[0], that);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
function sendFile(file, that) {
|
||||
console.log(that);
|
||||
// console.log(welEditable);
|
||||
console.log(1);
|
||||
|
||||
|
||||
|
||||
let data = new FormData();
|
||||
data.append('file', file);
|
||||
|
||||
$.ajax({
|
||||
url: "{{ route('dashboard.posts.image_upload') }}",
|
||||
data: data,
|
||||
cache: false,
|
||||
contentType: false,
|
||||
processData: false,
|
||||
type: 'POST',
|
||||
success: function(data) {
|
||||
$(that).summernote('insertImage', location.origin + '/' + data.image, '')
|
||||
},
|
||||
|
||||
error: function(data) {
|
||||
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
// ClassicEditor
|
||||
// .create( document.querySelector( '#editor' ) )
|
||||
// .catch( error => {
|
||||
// console.error( error );
|
||||
// } );
|
||||
</script>
|
||||
@endpush
|
||||
284
resources/views/dashboard/posts/update.blade.php
Executable file
284
resources/views/dashboard/posts/update.blade.php
Executable file
@@ -0,0 +1,284 @@
|
||||
@extends('dashboard.layouts.app')
|
||||
@section('title', trans('admin.edit') . ' ' . $post->name . ' - ')
|
||||
@section('speedbar')
|
||||
<div class="content-header row">
|
||||
<div class="content-header-left col-md-9 col-12 mb-2">
|
||||
<div class="row breadcrumbs-top">
|
||||
<div class="col-12">
|
||||
<h2 class="content-header-title float-left mb-0">@lang('admin.add')</h2>
|
||||
<div class="breadcrumb-wrapper col-12">
|
||||
<ol class="breadcrumb">
|
||||
<li class="breadcrumb-item ">
|
||||
<a href="{{ route('dashboard') }}">@lang('admin.home')</a>
|
||||
</li>
|
||||
<li class="breadcrumb-item ">
|
||||
<a href="{{ route('dashboard.posts', $lang) }}">@lang('admin.posts.title') {{ $lang }}</a>
|
||||
</li>
|
||||
<li class="breadcrumb-item active">
|
||||
{{ $post->name }}
|
||||
</li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@push('css')
|
||||
<link href="{{ asset('vendor/editor/dist/summernote.min.css') }}" rel="stylesheet">
|
||||
<link rel="stylesheet" type="text/css"
|
||||
href="{{ asset('/vendor/dashboard/app-assets/vendors/css/forms/select/select2.min.css') }}">
|
||||
@endpush
|
||||
|
||||
@section('content')
|
||||
<div class="row">
|
||||
<form class="form form-vertical" action="{{ route('dashboard.post.update', [$lang, $post->id]) }}"
|
||||
enctype="multipart/form-data" method="post">
|
||||
<div class="col-md-12 col-12">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<h4 class="card-title">@lang('admin.edit')</h4>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
@csrf
|
||||
<div class="card-body">
|
||||
<div class="form-body">
|
||||
<p>@lang('admin.all_fields_with')</p>
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<div class="form-group">
|
||||
<label for="first-name-vertical">@lang('admin.posts.name') *</label>
|
||||
<input type="text" id="first-name-vertical" required
|
||||
class="form-control @error('name') is-invalid @enderror"
|
||||
name="name" value="{{ old('name', $post->name) }}"
|
||||
placeholder="@lang('admin.posts.name')">
|
||||
@error('name')
|
||||
<div class="invalid-feedback">
|
||||
{{ $message }}
|
||||
</div>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<label>@lang('admin.posts.content') *</label>
|
||||
<div class="controls">
|
||||
<fieldset class="form-group position-relative">
|
||||
<textarea class="form-control @error('content') is-invalid @enderror" required name="content"
|
||||
placeholder="@lang('admin.posts.content')" id="description_ru">{{ old('content', $post->content) }}</textarea>
|
||||
</fieldset>
|
||||
@error('content')
|
||||
<div class="invalid-feedback">
|
||||
{{ $message }}
|
||||
</div>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<label>@lang('admin.posts.language') *</label>
|
||||
<fieldset class="form-group">
|
||||
<select class="select2 form-control" required name="language">
|
||||
<option disabled>@lang('admin.posts.language')</option>
|
||||
<option value="{{ $lang }}" selected>{{ $lang }}
|
||||
</option>
|
||||
</select>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<label>@lang('admin.posts.type.title') *</label>
|
||||
<fieldset class="form-group">
|
||||
<select class="select2 form-control" name="type" required>
|
||||
<option disabled selected>@lang('admin.posts.type.title')</option>
|
||||
<option value="news"
|
||||
{{ $post->type === 'news' ? 'selected' : '' }}>
|
||||
@lang('admin.posts.type.news')</option>
|
||||
<option value="article"
|
||||
{{ $post->type === 'article' ? 'selected' : '' }}>
|
||||
@lang('admin.posts.type.article')</option>
|
||||
<option value="sales"
|
||||
{{ $post->type === 'sales' ? 'selected' : '' }}>
|
||||
@lang('admin.posts.type.sales')</option>
|
||||
<option value="media"
|
||||
{{ $post->type === 'media' ? 'selected' : '' }}>
|
||||
@lang('admin.posts.type.media')</option>
|
||||
</select>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<div class="form-group">
|
||||
<label for="image">@lang('admin.brands.image') @if (is_file($post->image))
|
||||
<a href="/{{ $post->image }}" target="_blank">@lang('admin.see')</a>
|
||||
@endif
|
||||
</label>
|
||||
<input type="file" id="image"
|
||||
class="form-control @error('image') is-invalid @enderror" name="image"
|
||||
value="{{ old('image') }}" placeholder="@lang('admin.posts.image')">
|
||||
@error('image')
|
||||
<div class="invalid-feedback">
|
||||
{{ $message }}
|
||||
</div>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<div class="form-group">
|
||||
<label for="position">@lang('admin.categories.position')</label>
|
||||
<input type="number" id="position"
|
||||
class="form-control @error('position') is-invalid @enderror" name="position"
|
||||
value="{{ old('position', $post->position) }}"
|
||||
placeholder="@lang('admin.categories.position')">
|
||||
@error('position')
|
||||
<div class="invalid-feedback">
|
||||
{{ $message }}
|
||||
</div>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<h4 class="card-title">SEO</h4>
|
||||
</div>
|
||||
|
||||
<div class="card-content">
|
||||
<div class="card-body">
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<fieldset class="form-label-group">
|
||||
<textarea class="form-control" name="keywords" id="label-descriptions-ru" rows="3"
|
||||
placeholder="@lang('admin.settings.keywords')">{{ old('keywords', $post->keywords) }}</textarea>
|
||||
<label for="label-descriptions-ru">@lang('admin.settings.keywords') *</label>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<fieldset class="form-label-group">
|
||||
<textarea class="form-control" name="descriptions" id="label-keywords-ru" rows="3"
|
||||
placeholder="@lang('admin.settings.description')">{{ old('description', $post->descriptions) }}</textarea>
|
||||
<label for="label-keywords-ru">@lang('admin.settings.description') *</label>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<div class="card-content">
|
||||
<div class="card-body">
|
||||
<input type="hidden" name="topped" value="0">
|
||||
<div class="form-group mt-1">
|
||||
<fieldset class="checkbox">
|
||||
<div class="vs-checkbox-con vs-checkbox-primary">
|
||||
<input type="checkbox" value="1" {{ $post->topped ? 'checked' : '' }}
|
||||
name="topped">
|
||||
<span class="vs-checkbox">
|
||||
<span class="vs-checkbox--check">
|
||||
<i class="vs-icon feather icon-check"></i>
|
||||
</span>
|
||||
</span>
|
||||
|
||||
<span class="">
|
||||
@lang('admin.posts.top')
|
||||
</span>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card-footer pb-0 pl-0 pt-1">
|
||||
<div class="col-12 mb-0">
|
||||
<div class="row">
|
||||
<div class="col-3">
|
||||
<button type="submit"
|
||||
class="btn btn-primary mr-1 mb-1 waves-effect waves-light btn-icon">
|
||||
<i class="feather icon-save"></i> @lang('admin.save')
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<div class="col-9">
|
||||
<a href="{{ route('dashboard.posts', $lang) }}"
|
||||
class="btn btn-danger mr-1 mb-1 waves-effect waves-light btn-icon pull-right">
|
||||
<i class="feather icon-x-circle"></i> @lang('admin.cancel')
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@push('js')
|
||||
<script src="{{ asset('vendor/editor/dist/summernote.min.js') }}"></script>
|
||||
|
||||
<script src="{{ asset('/vendor/dashboard/app-assets/vendors/js/forms/select/select2.full.min.js') }}"></script>
|
||||
<script src="{{ asset('/vendor/dashboard/app-assets/js/scripts/forms/select/form-select2.js') }}"></script>
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
|
||||
$('#description_ru').summernote({
|
||||
height: 300,
|
||||
callbacks: {
|
||||
onImageUpload: function(files) {
|
||||
var that = $(this);
|
||||
|
||||
sendFile(files[0], that);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
function sendFile(file, that) {
|
||||
console.log(that);
|
||||
// console.log(welEditable);
|
||||
console.log(1);
|
||||
|
||||
|
||||
|
||||
let data = new FormData();
|
||||
data.append('file', file);
|
||||
|
||||
$.ajax({
|
||||
url: "{{ route('dashboard.posts.image_upload') }}",
|
||||
data: data,
|
||||
cache: false,
|
||||
contentType: false,
|
||||
processData: false,
|
||||
type: 'POST',
|
||||
success: function(data) {
|
||||
$(that).summernote('insertImage', location.origin + '/' + data.image, '')
|
||||
},
|
||||
|
||||
error: function(data) {
|
||||
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
// ClassicEditor
|
||||
// .create( document.querySelector( '#editor' ) )
|
||||
// .catch( error => {
|
||||
// console.error( error );
|
||||
// } );
|
||||
</script>
|
||||
@endpush
|
||||
Reference in New Issue
Block a user