diff --git a/beike/Shop/Http/Controllers/DesignController.php b/beike/Admin/Http/Controllers/DesignController.php similarity index 92% rename from beike/Shop/Http/Controllers/DesignController.php rename to beike/Admin/Http/Controllers/DesignController.php index c2f2cb3f..f85cd58f 100644 --- a/beike/Shop/Http/Controllers/DesignController.php +++ b/beike/Admin/Http/Controllers/DesignController.php @@ -1,6 +1,6 @@ getRequestUri(); - if (! Str::startsWith($uri, '/admin')) { - // return; + if (!Str::startsWith($uri, '/admin')) { + return; } - // $this->loadRoutesFrom(__DIR__ . '/../Routes/shop.php'); + $this->loadRoutesFrom(__DIR__ . '/../Routes/admin.php'); $this->mergeConfigFrom(__DIR__ . '/../../Config/beike.php', 'beike'); @@ -55,11 +58,13 @@ class AdminServiceProvider extends ServiceProvider 'driver' => 'local', 'root' => public_path('upload'), ]); + + $this->loadDesignComponents(); } protected function registerGuard() { - Config::set('auth.guards.'.AdminUser::AUTH_GUARD, [ + Config::set('auth.guards.' . AdminUser::AUTH_GUARD, [ 'driver' => 'session', 'provider' => 'admin_users', ]); @@ -77,4 +82,40 @@ class AdminServiceProvider extends ServiceProvider ], 'beike-seeders'); } + /** + * 加载首页 page builder 相关组件 + * + * @throws \Exception + */ + protected function loadDesignComponents() + { + $viewPath = base_path() . '/beike/Admin/View'; + $builderPath = $viewPath . '/DesignBuilders/'; + + $builderFolders = glob($builderPath . '*'); + foreach ($builderFolders as $builderFolder) { + $folderName = basename($builderFolder, '.php'); + $aliasName = Str::snake($folderName); + $componentName = Str::studly($folderName); + $classBaseName = "\\Beike\\Admin\\View\\DesignBuilders\\{$componentName}"; + + $editorClass = $classBaseName . '\\Editor'; + if (!class_exists($editorClass)) { + throw new \Exception("请先定义自定义模板类 {$editorClass}"); + } + $this->loadViewComponentsAs('editor', [ + $aliasName => $editorClass + ]); + + $renderClass = $classBaseName . '\\Render'; + if (!class_exists($renderClass)) { + throw new \Exception("请先定义自定义模板类 {$renderClass}"); + } + + $this->loadViewComponentsAs('render', [ + $aliasName => $renderClass + ]); + } + } + } diff --git a/beike/Admin/Routes/admin.php b/beike/Admin/Routes/admin.php index e1779b29..26db5d4a 100644 --- a/beike/Admin/Routes/admin.php +++ b/beike/Admin/Routes/admin.php @@ -14,6 +14,7 @@ Route::prefix('admin') Route::get('/', [\Beike\Admin\Http\Controllers\HomeController::class, 'index'])->name('home.index'); Route::Resource('categories', \Beike\Admin\Http\Controllers\CategoryController::class); + Route::get('design/builder', [\Beike\Admin\Http\Controllers\DesignController::class, 'index'])->name('design.index'); Route::Resource('files', \Beike\Admin\Http\Controllers\FileController::class); diff --git a/beike/Shop/View/DesignBuilders/SlideShow/Editor.php b/beike/Admin/View/DesignBuilders/SlideShow/Editor.php similarity index 94% rename from beike/Shop/View/DesignBuilders/SlideShow/Editor.php rename to beike/Admin/View/DesignBuilders/SlideShow/Editor.php index 45da4709..2dd09e7a 100644 --- a/beike/Shop/View/DesignBuilders/SlideShow/Editor.php +++ b/beike/Admin/View/DesignBuilders/SlideShow/Editor.php @@ -9,7 +9,7 @@ * @modified 2022-07-08 17:09:15 */ -namespace Beike\Shop\View\DesignBuilders\SlideShow; +namespace Beike\Admin\View\DesignBuilders\SlideShow; use Illuminate\View\Component; use Illuminate\Contracts\View\View; diff --git a/beike/Shop/View/DesignBuilders/SlideShow/Render.php b/beike/Admin/View/DesignBuilders/SlideShow/Render.php similarity index 93% rename from beike/Shop/View/DesignBuilders/SlideShow/Render.php rename to beike/Admin/View/DesignBuilders/SlideShow/Render.php index 21691f86..968c4928 100644 --- a/beike/Shop/View/DesignBuilders/SlideShow/Render.php +++ b/beike/Admin/View/DesignBuilders/SlideShow/Render.php @@ -9,7 +9,7 @@ * @modified 2022-07-08 17:09:15 */ -namespace Beike\Shop\View\DesignBuilders\SlideShow; +namespace Beike\Admin\View\DesignBuilders\SlideShow; use Illuminate\View\Component; use Illuminate\Contracts\View\View; diff --git a/beike/Shop/Providers/ShopServiceProvider.php b/beike/Shop/Providers/ShopServiceProvider.php index c4d0a6f9..385f67d8 100644 --- a/beike/Shop/Providers/ShopServiceProvider.php +++ b/beike/Shop/Providers/ShopServiceProvider.php @@ -37,8 +37,6 @@ class ShopServiceProvider extends ServiceProvider $this->loadViewComponentsAs('shop', [ 'sidebar' => AccountSidebar::class, ]); - - $this->loadDesignComponents(); } protected function loadSettings() @@ -80,39 +78,4 @@ class ShopServiceProvider extends ServiceProvider $menuCategories = CategoryRepo::getTwoLevelCategories(); View::share('categories', $menuCategories); } - - /** - * 加载首页 page builder 相关组件 - * - * @throws \Exception - */ - protected function loadDesignComponents() - { - $viewPath = base_path() . '/beike/Shop/View'; - $builderPath = $viewPath . '/DesignBuilders/'; - - $builderFolders = glob($builderPath . '*'); - foreach ($builderFolders as $builderFolder) { - $folderName = basename($builderFolder, '.php'); - $aliasName = Str::snake($folderName); - $componentName = Str::studly($folderName); - $classBaseName = "\\Beike\\Shop\\View\\DesignBuilders\\{$componentName}"; - - $editorClass = $classBaseName . '\\Editor'; - if (!class_exists($editorClass)) { - throw new \Exception("请先定义自定义模板类 {$editorClass}"); - } - $this->loadViewComponentsAs('editor', [ - $aliasName => $editorClass - ]); - - $renderClass = $classBaseName . '\\Render'; - if (!class_exists($renderClass)) { - throw new \Exception("请先定义自定义模板类 {$renderClass}"); - } - $this->loadViewComponentsAs('render', [ - $aliasName => $renderClass - ]); - } - } } diff --git a/beike/Shop/Routes/shop.php b/beike/Shop/Routes/shop.php index 2e594d70..251f32eb 100644 --- a/beike/Shop/Routes/shop.php +++ b/beike/Shop/Routes/shop.php @@ -1,11 +1,8 @@ name('design.index'); Route::get('/{url_key}', [PagesController::class, 'show'])->name('pages.show'); diff --git a/themes/default/design/builder/index.blade.php b/themes/default/design/builder/index.blade.php index ec9d9815..9b152c7f 100644 --- a/themes/default/design/builder/index.blade.php +++ b/themes/default/design/builder/index.blade.php @@ -48,7 +48,7 @@