From 648563efee5f2243873e896697d545a15f325dfd Mon Sep 17 00:00:00 2001 From: Vincent Vanwaelscappel Date: Fri, 5 Jul 2019 13:49:26 +0200 Subject: [PATCH] #2868 --- composer.json | 3 +- src/app/Magic/Fields/Country.php | 10 +++++++ src/app/Magic/Fields/Locale.php | 23 +++++++++++++++ src/app/Magic/Fields/LocaleEnabled.php | 9 ++++++ src/app/Magic/Fields/SelectFromArray.php | 5 ++-- src/app/Magic/Models/Languages.php | 36 ++++++++++++++++++++++++ src/app/Magic/Models/Translate.php | 10 +++++++ 7 files changed, 93 insertions(+), 3 deletions(-) create mode 100644 src/app/Magic/Fields/Country.php create mode 100644 src/app/Magic/Fields/Locale.php create mode 100644 src/app/Magic/Fields/LocaleEnabled.php create mode 100644 src/app/Magic/Models/Languages.php create mode 100644 src/app/Magic/Models/Translate.php diff --git a/composer.json b/composer.json index 349f08f..d8e923e 100644 --- a/composer.json +++ b/composer.json @@ -27,6 +27,7 @@ "backpack/permissionmanager": "^4.0", "cubist/cms-front": "dev-master", "cubist/util": "dev-master", + "cubist/locale": "dev-master", "fideloper/proxy": "^4.0", "predis/predis": "^1.1", "spatie/laravel-translatable": "^4.1", @@ -34,7 +35,7 @@ "gaspertrix/laravel-backpack-dropzone-field": "^1.0", "cviebrock/eloquent-sluggable": "^4.8", "cocur/slugify": "^3.2", - "lavary/laravel-menu": "^1.7" + "lavary/laravel-menu": "^1.7", }, "require-dev": { "filp/whoops": "^2.3", diff --git a/src/app/Magic/Fields/Country.php b/src/app/Magic/Fields/Country.php new file mode 100644 index 0000000..b6f59ef --- /dev/null +++ b/src/app/Magic/Fields/Country.php @@ -0,0 +1,10 @@ +_options = $this->_getLocales(); + + parent::__construct($attributes); + } + + /** + * @return array + */ + protected function _getLocales() + { + return []; + } +} diff --git a/src/app/Magic/Fields/LocaleEnabled.php b/src/app/Magic/Fields/LocaleEnabled.php new file mode 100644 index 0000000..5e001db --- /dev/null +++ b/src/app/Magic/Fields/LocaleEnabled.php @@ -0,0 +1,9 @@ + [], 'allows_null' => $this->_allowNull, 'allows_multiple' => $this->_multiple]); + return array_merge(parent::getDefaultAttributes(), ['options' => $this->_options, 'allows_null' => $this->_allowNull, 'allows_multiple' => $this->_multiple]); } public function getColumnData() diff --git a/src/app/Magic/Models/Languages.php b/src/app/Magic/Models/Languages.php new file mode 100644 index 0000000..fa80032 --- /dev/null +++ b/src/app/Magic/Models/Languages.php @@ -0,0 +1,36 @@ +addField(['name' => 'locale', + 'type' => 'Locale', + 'label' => 'Langue', + 'column' => true]); + + $this->addField(['name' => 'flag', + 'type' => 'Locale', + 'label' => 'Drapeau']); + + $this->addField(['name' => 'inherit', + 'type' => 'CurrentLocale', + 'label' => 'Hériter les traductions de']); + + $this->addField(['name' => 'enabled', + 'type' => 'Checkbox', + 'label' => 'Activée', + 'column' => true]); + + $this->addField(['name' => 'default', + 'type' => 'Checkbox', + 'label' => 'Par défaut', + 'column' => true]); + } +} diff --git a/src/app/Magic/Models/Translate.php b/src/app/Magic/Models/Translate.php new file mode 100644 index 0000000..c448447 --- /dev/null +++ b/src/app/Magic/Models/Translate.php @@ -0,0 +1,10 @@ +