mirror of
https://github.com/VueFileManager/vuefilemanager.git
synced 2026-04-29 03:10:51 +00:00
make translation helper for laravel
This commit is contained in:
@@ -11,6 +11,7 @@ use App\Http\Tools\Demo;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Support\Facades\Cache;
|
||||
use App\Http\Requests\Languages\UpdateStringRequest;
|
||||
use App\Http\Requests\Languages\CreateLanguageRequest;
|
||||
use App\Http\Requests\Languages\UpdateLanguageRequest;
|
||||
@@ -19,33 +20,26 @@ class LanguageController extends Controller
|
||||
{
|
||||
|
||||
/**
|
||||
* Get all languages
|
||||
* Get all languages for admin translate
|
||||
*
|
||||
* @return string
|
||||
* @return Collection
|
||||
*/
|
||||
public function get_languages()
|
||||
{
|
||||
return Language::all();
|
||||
}
|
||||
|
||||
public function get_language_strings_i18n($language)
|
||||
{
|
||||
$lang = Language::whereLocale($language);
|
||||
|
||||
return $lang->with('languageStrings')->first();
|
||||
|
||||
return [
|
||||
'languages' => Language::all(),
|
||||
'set_language' => Setting::whereName('language')->first()->value
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* Get all language strings
|
||||
* Get all language strings for admin translate
|
||||
*
|
||||
* @param Language $language
|
||||
* @return Collection
|
||||
*/
|
||||
public function get_language_strings(Language $language)
|
||||
{
|
||||
$language_setting = Setting::whereName('language')->first()->value;
|
||||
|
||||
$lang = Language::whereId($language->id);
|
||||
|
||||
$strings = $lang->with('languageStrings')->first();
|
||||
@@ -57,7 +51,6 @@ class LanguageController extends Controller
|
||||
$default_strings = collect(config('language_strings.' . $license));
|
||||
|
||||
return [
|
||||
'language_setting' => $language_setting,
|
||||
'translated_strings' => $strings,
|
||||
'default_strings' => $default_strings
|
||||
];
|
||||
@@ -108,7 +101,7 @@ class LanguageController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Update strings for language
|
||||
* Update string for language
|
||||
*
|
||||
* @param UpdateStringRequest $request
|
||||
* @param Language $language
|
||||
@@ -128,6 +121,9 @@ class LanguageController extends Controller
|
||||
'value' => $request->value
|
||||
]);
|
||||
|
||||
|
||||
Cache::forget('language_strings-' . $language->locale);
|
||||
|
||||
return response('Done', 204);
|
||||
}
|
||||
|
||||
|
||||
@@ -269,16 +269,16 @@ class AppFunctionsController extends Controller
|
||||
|
||||
public function get_translate($lang)
|
||||
{
|
||||
$lang = Language::whereLocale($lang);
|
||||
$language = Language::whereLocale($lang);
|
||||
|
||||
$key = 'language_strings-' . $lang;
|
||||
|
||||
if (Cache::has('language_strings')) {
|
||||
return Cache::get('language_strings');
|
||||
if (Cache::has($key)) {
|
||||
return Cache::get($key);
|
||||
}
|
||||
|
||||
return Cache::rememberForever('language_strings', function () use ($lang) {
|
||||
return $lang->with('languageStrings')->first();
|
||||
});
|
||||
|
||||
return Cache::rememberForever($key, function () use ($language) {
|
||||
return $language->with('languageStrings')->first();
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -807,26 +807,20 @@ function set_time_by_user_timezone($time)
|
||||
|
||||
function _t($key)
|
||||
{
|
||||
if (Cache::has('language_strings')) {
|
||||
$locale = get_setting('language');
|
||||
|
||||
//Check if cash has string
|
||||
if (Cache::has('language_strings-' . $locale)) {
|
||||
|
||||
//Check if cash has string
|
||||
$strings = Cache::get('language_strings')
|
||||
->languageStrings
|
||||
->toArray();
|
||||
|
||||
$strings = Cache::get('language_strings-' . $locale)
|
||||
->languageStrings;
|
||||
|
||||
// Find the string by key
|
||||
foreach($strings as $string) {
|
||||
if($string['key'] === $key) {
|
||||
return $string['value'];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$language = Language::whereLocale(get_setting('language'))
|
||||
->first();
|
||||
return $strings->firstWhere('key', $key)->value;
|
||||
}
|
||||
|
||||
// If cash dont have string return string from database
|
||||
return LanguageString::whereLangAndKey($language->locale, $key)
|
||||
return LanguageString::whereLangAndKey($locale, $key)
|
||||
->first()
|
||||
->value;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user