winter/modules/backend/models/BackendPreferences.php
sl1nk3 5768ebaabb Fixed some issues with the French translation,
Added it to the settings menu.
2014-08-07 00:31:09 -04:00

51 lines
1.5 KiB
PHP

<?php namespace Backend\Models;
use App;
use Lang;
use Model;
use Session;
use DirectoryIterator;
class BackendPreferences extends Model
{
public $implement = ['Backend.Behaviors.UserPreferencesModel'];
public $settingsCode = 'backend::backend.preferences';
public $settingsFields = 'fields.yaml';
public function initSettingsData()
{
$config = App::make('config');
$this->locale = $config->get('app.locale', 'en');
}
public static function applyConfigValues()
{
$config = App::make('config');
$settings = self::instance();
$config->set('app.locale', $settings->locale);
}
public function getLocaleOptions()
{
$locales = [
'en' => [Lang::get('system::lang.locale.en'), 'flag-gb'],
'ru' => [Lang::get('system::lang.locale.ru'), 'flag-ru'],
'nl' => [Lang::get('system::lang.locale.nl'), 'flag-nl'],
'ja' => [Lang::get('system::lang.locale.ja'), 'flag-jp'],
'sv' => [Lang::get('system::lang.locale.sv'), 'flag-sv'],
'tr' => [Lang::get('system::lang.locale.tr'), 'flag-tr'],
'br' => [Lang::get('system::lang.locale.br'), 'flag-br'],
'de' => [Lang::get('system::lang.locale.de'), 'flag-de'],
'fr' => [Lang::get('system::lang.locale.fr'), 'flag-fr'],
];
// Sort the locales alphabetically
asort($locales);
return $locales;
}
public function afterSave()
{
Session::put('locale', $this->locale);
}
}