diff --git a/app/Http/Controllers/Admin/SettingController.php b/app/Http/Controllers/Admin/SettingController.php
index 0b89441..07d6af1 100644
--- a/app/Http/Controllers/Admin/SettingController.php
+++ b/app/Http/Controllers/Admin/SettingController.php
@@ -6,6 +6,7 @@ use App\Http\Controllers\Controller;
use App\Http\Requests\SettingSaveRequest;
use App\Models\Category;
use App\Models\Group;
+use App\Models\Menu;
use App\Models\Setting;
use Illuminate\Http\Request;
@@ -20,9 +21,10 @@ class SettingController extends Controller
$settings = Setting::where('active', 1)
->orderBy('section')->get(); //ESH// just active setting`s show
$cats = Category::all(['id','name']);
+ $menus = Menu::all(['id','name']);
$groups = Group::all(['id','name']);
return view('admin.commons.setting',
- compact('settings', 'cats','groups'));
+ compact('settings', 'cats','groups','menus'));
}
/**
diff --git a/app/Models/Setting.php b/app/Models/Setting.php
index 6c17ff4..b15f6ba 100644
--- a/app/Models/Setting.php
+++ b/app/Models/Setting.php
@@ -13,7 +13,7 @@ class Setting extends Model
public $translatable = ['value'];
public static $settingTypes = ['TEXT','NUMBER', 'LONGTEXT', 'CODE', 'EDITOR',
- 'CATEGORY', 'GROUP', 'CHECKBOX', 'FILE', 'COLOR','SELECT'];
+ 'CATEGORY', 'GROUP', 'CHECKBOX', 'FILE', 'COLOR','SELECT','MENU'];
public function getData(){
return json_decode($this->data,true);
diff --git a/database/factories/MenuFactory.php b/database/factories/MenuFactory.php
index 9de97b0..009ab4a 100644
--- a/database/factories/MenuFactory.php
+++ b/database/factories/MenuFactory.php
@@ -2,6 +2,7 @@
namespace Database\Factories;
+use App\Models\User;
use Illuminate\Database\Eloquent\Factories\Factory;
/**
@@ -17,7 +18,7 @@ class MenuFactory extends Factory
public function definition(): array
{
return [
- //
+ 'user_id' => User::first()->id,
];
}
}
diff --git a/database/seeders/MenuSeeder.php b/database/seeders/MenuSeeder.php
index b3b1793..eac1a48 100644
--- a/database/seeders/MenuSeeder.php
+++ b/database/seeders/MenuSeeder.php
@@ -2,6 +2,8 @@
namespace Database\Seeders;
+use App\Models\Group;
+use App\Models\Menu;
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;
@@ -13,5 +15,34 @@ class MenuSeeder extends Seeder
public function run(): void
{
//
+ Menu::factory(['name' => 'main-menu'])->create();
+
+ Menu::first()->items()->createMany([
+ [
+ 'title' => "Home",
+ 'meta' => '/',
+ 'user_id' => 1,
+ 'kind'=>'direct',
+ ],
+ [
+ 'title' => "News",
+ 'menuable_id' => 1,
+ 'menuable_type' => Group::class,
+ 'user_id' => 1,
+ 'kind'=>'direct',
+ ],
+ [
+ 'title' => "Contact",
+ 'meta' => '/contact-us',
+ 'user_id' => 1,
+ 'kind'=>'direct',
+ ],
+ [
+ 'title' => "About",
+ 'meta' => '/about-us',
+ 'user_id' => 1,
+ 'kind'=>'direct',
+ ],
+ ]);
}
}
diff --git a/resources/views/components/setting-field.blade.php b/resources/views/components/setting-field.blade.php
index 102d71b..8f0f69f 100644
--- a/resources/views/components/setting-field.blade.php
+++ b/resources/views/components/setting-field.blade.php
@@ -56,6 +56,18 @@
xvalue='{{old($setting->key,$setting->value??null)}}'
:close-on-Select="true">
@break
+ @case('MENU')
+
+ @break
@case('COLOR')