change current_language_code to locale

This commit is contained in:
Edward Yang 2022-08-03 17:23:26 +08:00
parent 01f1822c27
commit 7e99c1821c
11 changed files with 19 additions and 28 deletions

View File

@ -4,6 +4,7 @@ use Beike\Models\Customer;
use Beike\Models\Language; use Beike\Models\Language;
use Beike\Models\AdminUser; use Beike\Models\AdminUser;
use Illuminate\Support\Str; use Illuminate\Support\Str;
use Illuminate\Support\Collection;
use Beike\Services\CurrencyService; use Beike\Services\CurrencyService;
use Beike\Repositories\LanguageRepo; use Beike\Repositories\LanguageRepo;
use TorMorten\Eventy\Facades\Eventy; use TorMorten\Eventy\Facades\Eventy;
@ -189,7 +190,7 @@ function locales(): array
*/ */
function locale(): string function locale(): string
{ {
return 'zh_cn'; return Session::get('locale') ?? system_setting('base.locale');
} }
/** /**
@ -241,9 +242,9 @@ function image_origin($image)
/** /**
* 获取当前所有语言列表 * 获取当前所有语言列表
* *
* @return \Illuminate\Support\Collection * @return Collection
*/ */
function languages() function languages(): Collection
{ {
return LanguageRepo::enabled()->pluck('code'); return LanguageRepo::enabled()->pluck('code');
} }
@ -258,16 +259,6 @@ function current_language_id(): int
return 1; return 1;
} }
/**
* 当前语言code
*
* @return string
*/
function current_language_code(): string
{
return Session::get('locale') ?? system_setting('base.locale');
}
/** /**
* 当前语言 * 当前语言
* *
@ -275,7 +266,7 @@ function current_language_code(): string
*/ */
function current_language(): string function current_language(): string
{ {
$code = current_language_code(); $code = locale();
return Language::query()->where('code', $code)->first()->name; return Language::query()->where('code', $code)->first()->name;
} }

View File

@ -83,7 +83,7 @@ class DesignService
$content['brands'] = []; $content['brands'] = [];
$content['title'] = $content['title'][current_language_code()]; $content['title'] = $content['title'][locale()];
return $content; return $content;
} }
@ -122,14 +122,14 @@ class DesignService
} }
foreach ($tabs as $index => $tab) { foreach ($tabs as $index => $tab) {
$tabs[$index]['title'] = $tab['title'][current_language_code()]; $tabs[$index]['title'] = $tab['title'][locale()];
$productsIds = $tab['products']; $productsIds = $tab['products'];
if ($productsIds) { if ($productsIds) {
$tabs[$index]['products'] = ProductRepo::getProductsByIds($productsIds); $tabs[$index]['products'] = ProductRepo::getProductsByIds($productsIds);
} }
} }
$content['tabs'] = $tabs; $content['tabs'] = $tabs;
$content['title'] = $content['title'][current_language_code()]; $content['title'] = $content['title'][locale()];
return $content; return $content;
} }
@ -145,7 +145,7 @@ class DesignService
} }
foreach ($images as $index => $image) { foreach ($images as $index => $image) {
$imagePath = 'catalog/' . ($image['image'][current_language_code()] ?? ''); $imagePath = 'catalog/' . ($image['image'][locale()] ?? '');
$images[$index]['image'] = image_origin($imagePath); $images[$index]['image'] = image_origin($imagePath);
$link = $image['link']; $link = $image['link'];

View File

@ -49,7 +49,7 @@ class ProductDetail extends JsonResource
*/ */
private function decodeVariables($variables): array private function decodeVariables($variables): array
{ {
$lang = current_language_code(); $lang = locale();
if (empty($variables)) { if (empty($variables)) {
return []; return [];
} }

View File

@ -6,7 +6,7 @@
<base href="{{ $admin_base_url }}"> <base href="{{ $admin_base_url }}">
<meta name="csrf-token" content="{{ csrf_token() }}"> <meta name="csrf-token" content="{{ csrf_token() }}">
<meta name="asset" content="{{ asset('/') }}"> <meta name="asset" content="{{ asset('/') }}">
<meta name="editor_language" content="{{ current_language_code() }}"> <meta name="editor_language" content="{{ locale() }}">
<script src="{{ asset('vendor/vue/2.6.12/vue.js') }}"></script> <script src="{{ asset('vendor/vue/2.6.12/vue.js') }}"></script>
<script src="{{ asset('vendor/element-ui/2.6.2/js.js') }}"></script> <script src="{{ asset('vendor/element-ui/2.6.2/js.js') }}"></script>
<script src="{{ asset('vendor/jquery/jquery-3.6.0.min.js') }}"></script> <script src="{{ asset('vendor/jquery/jquery-3.6.0.min.js') }}"></script>

View File

@ -1,6 +1,6 @@
<template id="pb-image-selector"> <template id="pb-image-selector">
<div class="pb-image-selector"> <div class="pb-image-selector">
<el-tabs v-if="isLanguage" @tab-click="tabClick" value="language-{{ current_language_code() }}" :stretch="languages.length > 5 ? true : false" type="card" :class="languages.length <= 1 ? 'languages-a' : ''"> <el-tabs v-if="isLanguage" @tab-click="tabClick" value="language-{{ locale() }}" :stretch="languages.length > 5 ? true : false" type="card" :class="languages.length <= 1 ? 'languages-a' : ''">
<el-tab-pane v-for="(item, index) in languages" :key="index" :label="item.name" :name="'language-' + item.code"> <el-tab-pane v-for="(item, index) in languages" :key="index" :label="item.name" :name="'language-' + item.code">
<span slot="label" style="padding: 0 4px; font-size: 12px">@{{ item.name }}</span> <span slot="label" style="padding: 0 4px; font-size: 12px">@{{ item.name }}</span>

View File

@ -1,6 +1,6 @@
<template id="text-i18n-template"> <template id="text-i18n-template">
<div class="text-i18n-template"> <div class="text-i18n-template">
<el-tabs v-if="languages.length > 1" value="language-{{ current_language_code() }}" :stretch="languages.length > 5 ? true : false" type="card"> <el-tabs v-if="languages.length > 1" value="language-{{ locale() }}" :stretch="languages.length > 5 ? true : false" type="card">
<el-tab-pane v-for="(item, index) in languages" :key="index" :label="item.name" :name="'language-' + item.code"> <el-tab-pane v-for="(item, index) in languages" :key="index" :label="item.name" :name="'language-' + item.code">
<span slot="label" style="padding: 0 8px; font-size: 12px">@{{ item.name }}</span> <span slot="label" style="padding: 0 8px; font-size: 12px">@{{ item.name }}</span>

View File

@ -67,7 +67,7 @@
<script> <script>
var $languages = @json($languages); var $languages = @json($languages);
var $language_id = '{{ current_language_code() }}'; var $language_id = '{{ locale() }}';
function languagesFill(text) { function languagesFill(text) {
var obj = {}; var obj = {};

View File

@ -7,7 +7,7 @@
<div class="selector-head" @click="itemShow(index)"> <div class="selector-head" @click="itemShow(index)">
<div class="left"> <div class="left">
<img :src="thumbnail(item.image['{{ current_language_code() }}'], 40, 40)" class="img-responsive"> <img :src="thumbnail(item.image['{{ locale() }}'], 40, 40)" class="img-responsive">
</div> </div>
<div class="right"><i :class="'el-icon-arrow-'+(item.show ? 'up' : 'down')"></i></div> <div class="right"><i :class="'el-icon-arrow-'+(item.show ? 'up' : 'down')"></i></div>

View File

@ -21,7 +21,7 @@
<i class="el-icon-rank"></i> <i class="el-icon-rank"></i>
</el-tooltip> </el-tooltip>
<img :src="thumbnail(item.image['{{ current_language_code() }}'], 40, 40)" class="img-responsive"> <img :src="thumbnail(item.image['{{ locale() }}'], 40, 40)" class="img-responsive">
</div> </div>
<div class="right"> <div class="right">

View File

@ -103,7 +103,7 @@ Vue.component('module-editor-tab-product', {
methods: { methods: {
tabTitleLanguage(titles) { tabTitleLanguage(titles) {
return titles['{{ current_language_code() }}']; return titles['{{ locale() }}'];
}, },
tabsValueProductData() { tabsValueProductData() {

View File

@ -271,7 +271,7 @@
var app = new Vue({ var app = new Vue({
el: '#app', el: '#app',
data: { data: {
current_language_code: '{{ current_language_code() }}', current_language_code: '{{ locale() }}',
isMove: false, isMove: false,
form: { form: {
images: @json($product->images ?? []), images: @json($product->images ?? []),