FEATURE: add service provider for registering languages
This commit is contained in:
@@ -67,6 +67,7 @@ class AppServiceProvider extends ServiceProvider
|
||||
// register PingPong module extension
|
||||
$this->app->register('Pingpong\Modules\ModulesServiceProvider');
|
||||
$this->app->register('Pingpong\Menus\MenusServiceProvider');
|
||||
$this->app->register(LaravelLocalizationServiceProvider::class);
|
||||
|
||||
// create singletons for registering widgets
|
||||
$this->app->singleton('registerWidget', function ($app) {
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
<?php namespace App\Providers;
|
||||
|
||||
use App\Models\File;
|
||||
use App\Models\Language;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Support\ServiceProvider;
|
||||
use Symfony\Component\Translation\Translator;
|
||||
|
||||
class LaravelLocalizationServiceProvider extends ServiceProvider
|
||||
{
|
||||
public function register()
|
||||
{
|
||||
|
||||
$languages = DB::table('languages')->get();
|
||||
|
||||
$supportedLocales = ['en' => ['native' => 'English', 'script' => 'Latn', 'name' => 'common.lang.english']];
|
||||
foreach ($languages as $language) {
|
||||
$supportedLocales[$language->code] = [
|
||||
'native' => $language->native,
|
||||
'name' => $language->name,
|
||||
'script' => $language->script
|
||||
];
|
||||
}
|
||||
|
||||
config([
|
||||
'laravellocalization.supportedLocales' => $supportedLocales,
|
||||
'laravellocalization.useAcceptLanguageHeader' => true,
|
||||
'laravellocalization.hideDefaultLocaleInURL' => true
|
||||
]);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
<?php
|
||||
return [
|
||||
'lang' => [
|
||||
'english' => 'English',
|
||||
'czech' => 'Czech'
|
||||
]
|
||||
];
|
||||
Reference in New Issue
Block a user