From: soufiane Date: Mon, 14 Oct 2024 15:52:24 +0000 (+0200) Subject: wait #7116 @1:00 X-Git-Url: http://git.cubedesigners.com/?a=commitdiff_plain;h=a5614ef7982be0292d48f412327959aac01874ca;p=pmi.git wait #7116 @1:00 --- diff --git a/app/SubForms/News.php b/app/SubForms/News.php index 53c8760..137ea0a 100644 --- a/app/SubForms/News.php +++ b/app/SubForms/News.php @@ -10,11 +10,15 @@ use App\Models\News as N; use Cubist\Backpack\app\Magic\Menu\Menu; use Cubist\Backpack\app\Magic\Models\CMSPage; use Cubist\Backpack\app\Magic\SubForm; +use Cubist\Backpack\Facades\App; use Cubist\Backpack\Magic\Fields\SelectFromArray; +use http\Env\Request; use Illuminate\Support\Facades\DB; class News extends SubForm { + protected $defaultLang = 'fr'; + public function init() { parent::init(); @@ -42,30 +46,35 @@ class News extends SubForm $this->addField(['name' => 'page_product', 'label' => 'Page produit', 'type' => 'SelectFromArray', - 'options' => self::products(), + 'options' => self::products(request()->query('locale') ?? $this->defaultLang), 'multiple' => false, 'default' => '' ]); $this->addField(['name' => 'page_page', 'label' => 'Page generale', - 'type' => 'PageInternal', + 'type' => 'SelectFromArray', + 'options' => self::pages(request()->query('locale') ?? $this->defaultLang), 'multiple' => false, ]); $this->addField(['name' => 'page_news', 'label' => 'Page actualités', 'type' => 'SelectFromArray', - 'options' => self::news(), + 'options' => self::news(request()->query('locale') ?? $this->defaultLang), 'multiple' => false, ]); } - public function news() { - return DB::table('cubist_news')->pluck('title->fr AS title','id'); + public function news($local) { + return DB::table('cubist_news')->whereNotNull("title->$local")->pluck("title->$local AS title",'id'); + } + + public function products($local) { + return DB::table('catalog_products')->whereNotNull("name->$local")->pluck("name->$local AS name",'id'); } - public function products() { - return DB::table('catalog_products')->pluck('name->fr AS name','id'); + public function pages($local) { + return DB::table('cubist_cms_pages')->whereNotNull("title->$local")->pluck("title->$local AS title",'id'); } }