Add text direction configuration for locales
This commit is contained in:
parent
e1628196a8
commit
a0ba845e37
|
|
@ -19,7 +19,7 @@ class LocalesDataGrid extends DataGrid
|
|||
|
||||
public function prepareQueryBuilder()
|
||||
{
|
||||
$queryBuilder = DB::table('locales')->addSelect('id', 'code', 'name');
|
||||
$queryBuilder = DB::table('locales')->addSelect('id', 'code', 'name', 'direction');
|
||||
|
||||
$this->setQueryBuilder($queryBuilder);
|
||||
}
|
||||
|
|
@ -52,6 +52,15 @@ class LocalesDataGrid extends DataGrid
|
|||
'sortable' => true,
|
||||
'filterable' => true
|
||||
]);
|
||||
|
||||
$this->addColumn([
|
||||
'index' => 'direction',
|
||||
'label' => trans('admin::app.datagrid.direction'),
|
||||
'type' => 'select',
|
||||
'searchable' => true,
|
||||
'sortable' => true,
|
||||
'filterable' => true
|
||||
]);
|
||||
}
|
||||
|
||||
public function prepareActions() {
|
||||
|
|
|
|||
|
|
@ -114,6 +114,7 @@ return [
|
|||
'code' => 'Code',
|
||||
'admin-name' => 'Name',
|
||||
'name' => 'Name',
|
||||
'direction' => 'Direction',
|
||||
'fullname' => 'Full Name',
|
||||
'type' => 'Type',
|
||||
'required' => 'Required',
|
||||
|
|
@ -561,6 +562,7 @@ return [
|
|||
'general' => 'General',
|
||||
'code' => 'Code',
|
||||
'name' => 'Name',
|
||||
'direction' => 'Direction',
|
||||
'create-success' => 'Locale created successfully.',
|
||||
'update-success' => 'Locale updated successfully.',
|
||||
'delete-success' => 'Locale deleted successfully.',
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
@php
|
||||
$locale = Webkul\Core\Models\Locale::where('code', app()->getLocale())->first();
|
||||
@endphp
|
||||
|
||||
@endphp
|
||||
<!DOCTYPE html>
|
||||
<html lang="{{ config('app.locale') }}">
|
||||
<head>
|
||||
|
|
@ -67,7 +72,7 @@
|
|||
|
||||
{!! view_render_event('bagisto.admin.layout.head') !!}
|
||||
</head>
|
||||
<body @if (app()->getLocale() == 'ar') class="rtl" @endif style="scroll-behavior: smooth;">
|
||||
<body @if ($locale->direction == 'rtl') class="rtl" @endif style="scroll-behavior: smooth;">
|
||||
<div id="app" class="container">
|
||||
|
||||
<flash-wrapper ref='flashes'></flash-wrapper>
|
||||
|
|
|
|||
|
|
@ -1,3 +1,7 @@
|
|||
@php
|
||||
$locale = Webkul\Core\Models\Locale::where('code', app()->getLocale())->first();
|
||||
@endphp
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html lang="{{ config('app.locale') }}">
|
||||
<head>
|
||||
|
|
@ -19,7 +23,7 @@
|
|||
|
||||
</head>
|
||||
|
||||
<body @if (app()->getLocale() == 'ar') class="rtl" @endif style="scroll-behavior: smooth;">
|
||||
<body @if ($locale->direction == 'rtl') class="rtl" @endif style="scroll-behavior: smooth;">
|
||||
{!! view_render_event('bagisto.admin.layout.body.before') !!}
|
||||
|
||||
<div id="app">
|
||||
|
|
|
|||
|
|
@ -41,6 +41,15 @@
|
|||
<input v-validate="'required'" class="control" id="name" name="name" data-vv-as=""{{ __('admin::app.settings.locales.name') }}""/>
|
||||
<span class="control-error" v-if="errors.has('name')">@{{ errors.first('name') }}</span>
|
||||
</div>
|
||||
|
||||
<div class="control-group" :class="[errors.has('direction') ? 'has-error' : '']">
|
||||
<label for="direction" class="required">{{ __('admin::app.settings.locales.direction') }}</label>
|
||||
<select v-validate="'required'" class="control" id="direction" name="direction" data-vv-as=""{{ __('admin::app.settings.locales.direction') }}"">
|
||||
<option value="ltr" selected title="Text direction left to right">ltr</option>
|
||||
<option value="rtl" title="Text direction right to left">rtl</option>
|
||||
</select>
|
||||
<span class="control-error" v-if="errors.has('direction')">@{{ errors.first('direction') }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</accordian>
|
||||
|
||||
|
|
|
|||
|
|
@ -44,6 +44,15 @@
|
|||
<input v-validate="'required'" class="control" id="name" name="name" data-vv-as=""{{ __('admin::app.settings.locales.name') }}"" value="{{ old('name') ?: $locale->name }}"/>
|
||||
<span class="control-error" v-if="errors.has('name')">@{{ errors.first('name') }}</span>
|
||||
</div>
|
||||
|
||||
<div class="control-group" :class="[errors.has('direction') ? 'has-error' : '']">
|
||||
<label for="direction" class="required">{{ __('admin::app.settings.locales.direction') }}</label>
|
||||
<select v-validate="'required'" class="control" id="direction" name="direction" data-vv-as=""{{ __('admin::app.settings.locales.direction') }}"">
|
||||
<option value="ltr" {{ old('direction') == 'ltr' ? 'selected' : '' }} title="Text direction left to right">ltr</option>
|
||||
<option value="rtl" {{ old('direction') == 'rtl' ? 'selected' : '' }} title="Text direction right to left">rtl</option>
|
||||
</select>
|
||||
<span class="control-error" v-if="errors.has('direction')">@{{ errors.first('direction') }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</accordian>
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,30 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
|
||||
class AlterLocalesTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::table('locales', function (Blueprint $table) {
|
||||
$table->enum('direction', ['ltr', 'rtl'])->default('ltr');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('locales');
|
||||
}
|
||||
}
|
||||
|
|
@ -72,7 +72,8 @@ class LocaleController extends Controller
|
|||
{
|
||||
$this->validate(request(), [
|
||||
'code' => ['required', 'unique:locales,code', new \Webkul\Core\Contracts\Validations\Code],
|
||||
'name' => 'required'
|
||||
'name' => 'required',
|
||||
'direction' => 'in:ltr,rtl'
|
||||
]);
|
||||
|
||||
Event::fire('core.locale.create.before');
|
||||
|
|
@ -110,7 +111,8 @@ class LocaleController extends Controller
|
|||
{
|
||||
$this->validate(request(), [
|
||||
'code' => ['required', 'unique:locales,code,' . $id, new \Webkul\Core\Contracts\Validations\Code],
|
||||
'name' => 'required'
|
||||
'name' => 'required',
|
||||
'direction' => 'in:ltr,rtl'
|
||||
]);
|
||||
|
||||
Event::fire('core.locale.update.before', $id);
|
||||
|
|
|
|||
|
|
@ -13,6 +13,6 @@ class Locale extends Model implements LocaleContract
|
|||
* @var array
|
||||
*/
|
||||
protected $fillable = [
|
||||
'code', 'name'
|
||||
'code', 'name', 'direction'
|
||||
];
|
||||
}
|
||||
|
|
@ -1,3 +1,7 @@
|
|||
@php
|
||||
$locale = Webkul\Core\Models\Locale::where('code', app()->getLocale())->first();
|
||||
@endphp
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html lang="{{ app()->getLocale() }}">
|
||||
|
||||
|
|
@ -30,7 +34,7 @@
|
|||
|
||||
</head>
|
||||
|
||||
<body @if (app()->getLocale() == 'ar') class="rtl" @endif style="scroll-behavior: smooth;">
|
||||
<body @if ($locale->direction == 'rtl') class="rtl" @endif style="scroll-behavior: smooth;">
|
||||
|
||||
{!! view_render_event('bagisto.shop.layout.body.before') !!}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue