diff --git a/packages/dcat-extension-plus-master/.gitignore b/packages/banner/.gitignore
similarity index 100%
rename from packages/dcat-extension-plus-master/.gitignore
rename to packages/banner/.gitignore
diff --git a/packages/banner/README.md b/packages/banner/README.md
new file mode 100644
index 0000000..838df4c
--- /dev/null
+++ b/packages/banner/README.md
@@ -0,0 +1,3 @@
+# Dcat Admin Extension
+
+
diff --git a/packages/banner/composer.json b/packages/banner/composer.json
new file mode 100644
index 0000000..3c552e2
--- /dev/null
+++ b/packages/banner/composer.json
@@ -0,0 +1,31 @@
+{
+ "name": "peidikeji/banner",
+ "alias": "banner",
+ "description": "Description...",
+ "type": "library",
+ "keywords": ["dcat-admin", "extension"],
+ "homepage": "https://github.com/peidikeji/banner",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "your name",
+ "email": "your email"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.0"
+ },
+ "autoload": {
+ "psr-4": {
+ "Peidikeji\\Banner\\": "src/"
+ }
+ },
+ "extra": {
+ "dcat-admin": "Peidikeji\\Banner\\BannerServiceProvider",
+ "laravel": {
+ "providers": [
+ "Peidikeji\\Banner\\BannerServiceProvider"
+ ]
+ }
+ }
+}
diff --git a/packages/banner/resources/assets/css/index.css b/packages/banner/resources/assets/css/index.css
new file mode 100644
index 0000000..d69dd2d
--- /dev/null
+++ b/packages/banner/resources/assets/css/index.css
@@ -0,0 +1,4 @@
+.extension-demo {
+ font-size: 1.3rem;
+ cursor: pointer;
+}
\ No newline at end of file
diff --git a/packages/banner/resources/assets/js/index.js b/packages/banner/resources/assets/js/index.js
new file mode 100644
index 0000000..cdc4a7e
--- /dev/null
+++ b/packages/banner/resources/assets/js/index.js
@@ -0,0 +1,26 @@
+(function (w, $) {
+ function ExtensionDemo(options) {
+ this.options = $.extend({
+ $el: $('.demo'),
+ }, options);
+
+ this.init(this.options);
+ }
+
+ ExtensionDemo.prototype = {
+ init: function (options) {
+ options.$el.on('click', function () {
+ Dcat.success($(this).text());
+ });
+
+ console.log('Done.');
+ },
+ };
+
+ $.fn.extensionDemo = function (options) {
+ options = options || {};
+ options.$el = $(this);
+
+ return new ExtensionDemo(options);
+ };
+})(window, jQuery);
\ No newline at end of file
diff --git a/packages/banner/resources/lang/en/banner-ad.php b/packages/banner/resources/lang/en/banner-ad.php
new file mode 100644
index 0000000..0b67a5f
--- /dev/null
+++ b/packages/banner/resources/lang/en/banner-ad.php
@@ -0,0 +1,3 @@
+ [
+ 'BannerAd' => '广告位管理',
+ 'banner-ads'=> '广告位管理',
+ ],
+ 'fields' => [
+ 'name' => '名称',
+ 'key' => 'key',
+ 'width' => '宽度',
+ 'height' => '高度',
+ 'is_enable' => '启用',
+ 'remarks' => '备注',
+ ],
+ 'options' => [
+ ],
+];
diff --git a/packages/banner/resources/lang/zh_CN/banner.php b/packages/banner/resources/lang/zh_CN/banner.php
new file mode 100644
index 0000000..06f30b9
--- /dev/null
+++ b/packages/banner/resources/lang/zh_CN/banner.php
@@ -0,0 +1,19 @@
+ [
+ 'Banner' => '广告图管理',
+ 'banners' => '广告图管理',
+ ],
+ 'fields' => [
+ 'ad_id'=>'广告位',
+ 'name'=>'名称',
+ 'path'=>'内容',
+ 'sort'=>'排序',
+ 'is_enable'=>'启用',
+ 'remarks'=> '备注',
+ 'ext'=>'扩展字段'
+ ],
+ 'options' => [
+ ],
+];
diff --git a/packages/banner/resources/views/index.blade.php b/packages/banner/resources/views/index.blade.php
new file mode 100644
index 0000000..5acad67
--- /dev/null
+++ b/packages/banner/resources/views/index.blade.php
@@ -0,0 +1,13 @@
+
+ Welcome to dcat-admin !
+
+
+
+
+
diff --git a/packages/banner/src/BannerAdFilter.php b/packages/banner/src/BannerAdFilter.php
new file mode 100644
index 0000000..9a504ab
--- /dev/null
+++ b/packages/banner/src/BannerAdFilter.php
@@ -0,0 +1,28 @@
+ [input_key1, input_key2]].
+ *
+ * @var array
+ */
+ public $relations = [];
+
+ public function q($v)
+ {
+ $this->where(function ($q) use ($v) {
+ $q->where('key', 'like', '%'.$v.'%')->orWhere('name', 'like', '%'.$v.'%');
+ });
+ }
+
+ public function key($v)
+ {
+ $this->where('key', $v);
+ }
+}
diff --git a/packages/banner/src/BannerFilter.php b/packages/banner/src/BannerFilter.php
new file mode 100644
index 0000000..3f0cbbd
--- /dev/null
+++ b/packages/banner/src/BannerFilter.php
@@ -0,0 +1,23 @@
+ [input_key1, input_key2]].
+ *
+ * @var array
+ */
+ public $relations = [];
+
+ public function q($v)
+ {
+ $this->where(function ($q) use ($v) {
+ $q->where('key', 'like', '%'.$v.'%')->orWhere('name', 'like', '%'.$v.'%');
+ });
+ }
+}
diff --git a/packages/banner/src/BannerServiceProvider.php b/packages/banner/src/BannerServiceProvider.php
new file mode 100644
index 0000000..56a874b
--- /dev/null
+++ b/packages/banner/src/BannerServiceProvider.php
@@ -0,0 +1,23 @@
+all());
+
+ $query->select(['id', 'name as text', 'width', 'height']);
+
+ if ($request->filled('_paginate')) {
+ $list = $query->paginate();
+ } else {
+ $list = $query->get();
+ }
+ return $list;
+ }
+
+ protected function grid()
+ {
+ return Grid::make(new BannerAd(), function ($grid) {
+ $grid->disableRowSelector();
+
+ $grid->column('name');
+ $grid->column('key');
+ $grid->column('width');
+ $grid->column('height');
+ $grid->column('is_enable')->if(function(){
+ return !config('admin.permission.enable') || Admin::user()->can('dcat.admin.banner_ads.edit');
+ })->then(function (GridColumn $column) {
+ $column->switch();
+ })->else(function (GridColumn $column) {
+ $column->bool();
+ });
+ $grid->column('remarks');
+ $grid->disableCreateButton(!(!config('admin.permission.enable') || Admin::user()->can('dcat.admin.banner_ads.create')));
+ $grid->enableDialogCreate();
+
+ $grid->actions(function (Grid\Displayers\Actions $actions) {
+ $actions->disableView();
+ $actions->disableEdit();
+ $actions->quickEdit(!config('admin.permission.enable') || Admin::user()->can('dcat.admin.banner_ads.edit'));
+ });
+ });
+ }
+
+ protected function form()
+ {
+ return Form::make(new BannerAd(), function (Form $form) {
+ $form->text('name')->required();
+ $form->text('key')->required()->rules([Rule::unique((new BannerAd())->getTable())]);
+ $form->number('width')->min(0);
+ $form->number('height')->min(0);
+ $form->switch('is_enable');
+ $form->text('remarks');
+ });
+ }
+
+ public function destroy($id){
+ //如果该广告位下还有内容,则一起删除
+ Banner::where([
+ 'ad_id' => $id
+ ])->delete();
+
+ return parent::destroy($id);
+ }
+}
diff --git a/packages/banner/src/Http/Controllers/BannerController.php b/packages/banner/src/Http/Controllers/BannerController.php
new file mode 100644
index 0000000..9e593db
--- /dev/null
+++ b/packages/banner/src/Http/Controllers/BannerController.php
@@ -0,0 +1,125 @@
+input('keys');
+
+ if (empty($keys)) {
+ return response()->json([]);
+ }
+
+
+ $ads = BannerAd::with([
+ 'banners' => function ($query) {
+ $query->enable()->latest('sort');
+ },
+ ])->enable()->whereIn('key', $keys)->get();
+
+ $mapAds = $ads->mapWithKeys(function ($item) use ($request) {
+ return [
+ $item->key => BannerResource::collection($item->banners)->resolve($request),
+ ];
+ });
+
+ foreach ($keys as $key) {
+ if (! $mapAds->has($key)) {
+ $mapAds->put($key, []);
+ }
+ }
+
+ return response()->json($mapAds);
+ }
+
+ protected function grid()
+ {
+ return Grid::make(new Banner(), function ($grid) {
+ $grid->disableRowSelector();
+ $grid->column('name');
+ $grid->column('path')->image(100);
+ $grid->column('sort');
+ $grid->column('is_enable')->if(function(){
+ return !config('admin.permission.enable') || Admin::user()->can('dcat.admin.banners.edit');
+ })->then(function (GridColumn $column) {
+ $column->switch();
+ })->else(function (GridColumn $column) {
+ $column->bool();
+ });
+ $grid->column('remarks');
+
+ $grid->setDialogFormDimensions('50%', '70%');
+ $grid->disableCreateButton(!(!config('admin.permission.enable') || Admin::user()->can('dcat.admin.banners.create')));
+ $grid->enableDialogCreate();
+
+ $grid->actions(function (Grid\Displayers\Actions $actions) {
+ $actions->disableView();
+ $actions->disableEdit();
+ $actions->quickEdit(!config('admin.permission.enable') || Admin::user()->can('dcat.admin.banners.edit'));
+ });
+ });
+ }
+
+ protected function form(){
+ return Form::make(new Banner(), function (Form $form) {
+ $form->select('ad_id')
+ ->options('api/banner-ads')
+ ->required();
+ $form->text('name');
+ $form->image('path')
+ ->uniqueName()
+ ->move('banner')
+ ->saveFullUrl()
+ ->autoSave(false)
+ ->autoUpload()
+ ->removable(false)//禁止用户从页面点击删除服务器上的文件,可以实现图片覆盖上传效果
+ ->retainable()
+ ->required()->help('建议尺寸:');
+ Admin::script(
+ << 建议尺寸:'+ cicun);
+ }
+ });
+ });
+ JS);
+ $form->number('sort')
+ ->min(0)
+ ->help('数值越大, 越靠前');
+ // $form->embeds('ext', function (EmbeddedForm $form) {
+ // $form->select('type', '类型')->options(Target::options());
+ // $form->text('value', '地址');
+ // // $form->switch('auth', '登录认证');
+ // });
+ $form->switch('is_enable');
+ $form->text('remarks');
+ });
+ }
+}
diff --git a/packages/banner/src/Http/Resources/BannerResource.php b/packages/banner/src/Http/Resources/BannerResource.php
new file mode 100644
index 0000000..d893245
--- /dev/null
+++ b/packages/banner/src/Http/Resources/BannerResource.php
@@ -0,0 +1,24 @@
+ $this->id,
+ 'name' => $this->name,
+ 'path' => $this->path,
+ 'ext' => $this->ext,
+ ];
+ }
+}
diff --git a/packages/banner/src/Http/routes.php b/packages/banner/src/Http/routes.php
new file mode 100644
index 0000000..f4c7726
--- /dev/null
+++ b/packages/banner/src/Http/routes.php
@@ -0,0 +1,10 @@
+name('api.banner_ads');
+
+Route::resource('banner-ads', Controllers\BannerAdController::class)->names('banner_ads');
+Route::resource('banners', Controllers\BannerController::class);
+
diff --git a/packages/banner/src/Http/web.php b/packages/banner/src/Http/web.php
new file mode 100644
index 0000000..a7e14ea
--- /dev/null
+++ b/packages/banner/src/Http/web.php
@@ -0,0 +1,9 @@
+ 'api', 'prefix' => 'api'], function () {
+ Route::get('banners', [BannerController::class, 'json']);
+});
diff --git a/packages/banner/src/Models/Banner.php b/packages/banner/src/Models/Banner.php
new file mode 100644
index 0000000..2df79ce
--- /dev/null
+++ b/packages/banner/src/Models/Banner.php
@@ -0,0 +1,24 @@
+belongsTo(BannerAd::class, 'ad_id');
+ }
+
+ public function scopeEnable($query){
+ return $query->where('is_enable', 1);
+ }
+}
diff --git a/packages/banner/src/Models/BannerAd.php b/packages/banner/src/Models/BannerAd.php
new file mode 100644
index 0000000..e2a1e48
--- /dev/null
+++ b/packages/banner/src/Models/BannerAd.php
@@ -0,0 +1,30 @@
+hasMany(Banner::class, 'ad_id');
+ }
+
+ public function scopeEnable($query){
+ return $query->where('is_enable', 1);
+ }
+}
diff --git a/packages/banner/src/Setting.php b/packages/banner/src/Setting.php
new file mode 100644
index 0000000..88820ad
--- /dev/null
+++ b/packages/banner/src/Setting.php
@@ -0,0 +1,14 @@
+text('key1')->required();
+ $this->text('key2')->required();
+ }
+}
diff --git a/packages/banner/updates/CreateBannerTable.php b/packages/banner/updates/CreateBannerTable.php
new file mode 100644
index 0000000..48f7342
--- /dev/null
+++ b/packages/banner/updates/CreateBannerTable.php
@@ -0,0 +1,56 @@
+id();
+ $table->string('name')->comment('名称');
+ $table->string('key')->unique()->comment('key');
+ $table->unsignedInteger('width')->nullable()->comment('宽');
+ $table->unsignedInteger('height')->nullable()->comment('高');
+ $table->unsignedTinyInteger('is_enable')->default(1)->comment('可用状态');
+ $table->string('remarks')->nullable()->comment('备注');
+
+ $table->timestamps();
+ });
+ }
+
+ if (!Schema::hasTable('banners')) {
+ Schema::create('banners', function (Blueprint $table) {
+ $table->id();
+ $table->unsignedBigInteger('ad_id')->comment('位置ID');
+ $table->string('path')->comment('地址');
+ $table->string('name')->nullable()->comment('名称');
+ $table->unsignedInteger('sort')->comment('排序');
+ $table->unsignedTinyInteger('is_enable')->default(1)->comment('可用状态');
+ $table->text('ext')->nullable()->comment('扩展字段,可用于跳转配置等');
+ $table->string('remarks')->nullable()->comment('备注');
+
+ $table->timestamps();
+ });
+ }
+ }
+
+ /**
+ * Reverse the migrations.
+ *
+ * @return void
+ */
+ public function down()
+ {
+ Schema::dropIfExists('banners');
+ Schema::dropIfExists('banner_ads');
+ }
+};
diff --git a/packages/banner/version.php b/packages/banner/version.php
new file mode 100644
index 0000000..92bf9e9
--- /dev/null
+++ b/packages/banner/version.php
@@ -0,0 +1,8 @@
+ [
+ '初始化广告管理插件',
+ 'CreateBannerTable.php',
+ ],
+];
diff --git a/packages/dcat-extension-plus-master/LICENSE b/packages/dcat-extension-plus-master/LICENSE
deleted file mode 100644
index e2bb263..0000000
--- a/packages/dcat-extension-plus-master/LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-MIT License
-
-Copyright (c) 2021 celaraze
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/packages/dcat-extension-plus-master/README.md b/packages/dcat-extension-plus-master/README.md
deleted file mode 100644
index cfda9e5..0000000
--- a/packages/dcat-extension-plus-master/README.md
+++ /dev/null
@@ -1,55 +0,0 @@
-# Dcat Plus
-
-为 DcatAdmin 后台添加增强配置的功能。修改过程利用 DcatAdmin 自带的 `admin_setting()` 方法实现,不会硬编码修改任何 config 文件或者 .env 文件。
-
-## 安装方式
-
-最新支持 Dcat Admin 2.0.24beta
-
-`composer require celaraze/dcat-extension-plus`
-
-或者在后台扩展中,直接上传本插件的 `.zip` 文件即可。
-
-### 使用
-
-在菜单 `扩展` 中启用扩展后,会自动添加名为 `增强配置` 的菜单。
-
-### 功能
-
-- 站点标题
-
-- 站点 LOGO
-
-- 站点微缩 LOGO
-
-- 站点静态资源 URL
-
-- 调试模式
-
-- 语言切换
-
-- 移除底部授权
-
-- 主题色切换
-
-- 菜单样式切换(默认、分离、水平)
-
-- 表单行操作按钮固定最右
-
-- 快速创建选项:表单可用 `selectCreate()` 字段类型,是 `select` 字段的增强,支持在右侧添加快速创建选项的按钮,异步添加值。
-
-```PHP
-$form->selectCreate('department','部门')
- ->options(Department::class)
- ->ajax('/api/departments') // 必须使用 api 方式取选项列表,格式同 select 字段的使用方法
- ->url('/departments/create') // 异步打开的页面,这里是部门创建的页面 url
- ->required();
-```
-
-- 表单详情扩展字段类型:`video`,视频,传入参数和 `image` 相同。
-
-`$show->field('name')->video()`
-
-## 开源协议
-
-Dcat Plus 遵循 MIT 开源协议。
diff --git a/packages/dcat-extension-plus-master/composer.json b/packages/dcat-extension-plus-master/composer.json
deleted file mode 100644
index e6c1241..0000000
--- a/packages/dcat-extension-plus-master/composer.json
+++ /dev/null
@@ -1,35 +0,0 @@
-{
- "name": "celaraze/dcat-extension-plus",
- "description": "增强 DcatAdmin 的使用体验。",
- "alias": "Dcat 增强工具",
- "type": "library",
- "keywords": [
- "dcat-admin",
- "extension"
- ],
- "homepage": "https://github.com/celaraze/dcat-extension-plus",
- "license": "MIT",
- "authors": [
- {
- "name": "Celaraze",
- "email": "celaraze@qq.com"
- }
- ],
- "require": {
- "php": ">=7.3.0",
- "dcat/laravel-admin": "~2.0"
- },
- "autoload": {
- "psr-4": {
- "Celaraze\\DcatPlus\\": "src/"
- }
- },
- "extra": {
- "dcat-admin": "Celaraze\\DcatPlus\\ServiceProvider",
- "laravel": {
- "providers": [
- "Celaraze\\DcatPlus\\ServiceProvider"
- ]
- }
- }
-}
diff --git a/packages/dcat-extension-plus-master/logo.png b/packages/dcat-extension-plus-master/logo.png
deleted file mode 100644
index 356a4bd..0000000
Binary files a/packages/dcat-extension-plus-master/logo.png and /dev/null differ
diff --git a/packages/dcat-extension-plus-master/resources/lang/zh_CN/main.php b/packages/dcat-extension-plus-master/resources/lang/zh_CN/main.php
deleted file mode 100644
index 2270f12..0000000
--- a/packages/dcat-extension-plus-master/resources/lang/zh_CN/main.php
+++ /dev/null
@@ -1,15 +0,0 @@
- '站点域名',
- 'site_title' => '站点标题',
- 'site_logo_text' => 'LOGO(文字)',
- 'site_logo' => 'LOGO',
- 'site_logo_mini' => 'LOGO(微缩)',
- 'site_debug' => '调试模式',
- 'footer_remove' => '移除底部授权',
- 'select_create' => '快速创建选项',
- 'theme_color' => '主题色',
- 'sidebar_style' => '菜单样式',
- 'site_lang' => '语言',
- 'grid_row_actions_right' => '表单行操作按钮最右'
-];
diff --git a/packages/dcat-extension-plus-master/resources/lang/zh_CN/menu.php b/packages/dcat-extension-plus-master/resources/lang/zh_CN/menu.php
deleted file mode 100644
index 65d4bf1..0000000
--- a/packages/dcat-extension-plus-master/resources/lang/zh_CN/menu.php
+++ /dev/null
@@ -1,5 +0,0 @@
- '增强配置'
-];
diff --git a/packages/dcat-extension-plus-master/resources/views/select_create.blade.php b/packages/dcat-extension-plus-master/resources/views/select_create.blade.php
deleted file mode 100644
index 9939e19..0000000
--- a/packages/dcat-extension-plus-master/resources/views/select_create.blade.php
+++ /dev/null
@@ -1,42 +0,0 @@
-
-
-@include('admin::form.select-script')
diff --git a/packages/dcat-extension-plus-master/src/Extensions/Form/SelectCreate.php b/packages/dcat-extension-plus-master/src/Extensions/Form/SelectCreate.php
deleted file mode 100644
index 872c90d..0000000
--- a/packages/dcat-extension-plus-master/src/Extensions/Form/SelectCreate.php
+++ /dev/null
@@ -1,64 +0,0 @@
-addDefaultConfig([
- 'allowClear' => true,
- 'placeholder' => [
- 'id' => '',
- 'text' => $this->placeholder(),
- ],
- ]);
-
- $this->formatOptions();
-
- $this->addVariables([
- 'options' => $this->options,
- 'groups' => $this->groups,
- 'configs' => $this->config,
- 'cascadeScript' => $this->getCascadeScript(),
- 'createDialog' => $this->build()
- ]);
-
- $this->attribute('data-value', implode(',', Helper::array($this->value())));
-
- return parent::render();
- }
-
- protected function build(): string
- {
- Form::dialog(Support::trans('main.select_create'))
- ->click('.create-form')
- ->url($this->url)
- ->width('1200px')
- ->height('800px');
-
- $text = Support::trans('main.select_create');
-
- return " $text ";
- }
-
- public function url($url): SelectCreate
- {
- $this->url = $url;
- return $this;
- }
-}
diff --git a/packages/dcat-extension-plus-master/src/Extensions/Show/Video.php b/packages/dcat-extension-plus-master/src/Extensions/Show/Video.php
deleted file mode 100644
index dc75db6..0000000
--- a/packages/dcat-extension-plus-master/src/Extensions/Show/Video.php
+++ /dev/null
@@ -1,32 +0,0 @@
-value, true);
- $return = '';
- foreach ($items as $item) {
- if (url()->isValidUrl($item)) {
- $src = $item;
- } elseif ($server) {
- $src = rtrim($server, '/') . '/' . ltrim($item, '/');
- } else {
- $disk = config('admin.upload.disk');
-
- if (config("filesystems.disks.{$disk}")) {
- $src = Storage::disk($disk)->url($item);
- } else {
- return '';
- }
- }
- $return .= " ";
- }
- return $return;
- }
-}
diff --git a/packages/dcat-extension-plus-master/src/Forms/DcatPlusSiteForm.php b/packages/dcat-extension-plus-master/src/Forms/DcatPlusSiteForm.php
deleted file mode 100644
index 4d43c2f..0000000
--- a/packages/dcat-extension-plus-master/src/Forms/DcatPlusSiteForm.php
+++ /dev/null
@@ -1,57 +0,0 @@
-response()
- ->success('站点配置更新成功!')
- ->refresh();
- }
-
- /**
- * Build a form here.
- */
- public function form()
- {
- $this->url('site_url', Support::trans('main.site_url'))
- ->help('站点域名决定了静态资源(头像、图片等)的显示路径,可以包含端口号,例如 http://chemex.it:8000 。')
- ->default(admin_setting('site_url'));
- $this->text('site_title', Support::trans('main.site_title'))
- ->default(admin_setting('site_title'));
- $this->text('site_logo_text', Support::trans('main.site_logo_text'))
- ->help('文本LOGO显示的优先度低于图片,当没有上传图片作为LOGO时,此项将生效。')
- ->default(admin_setting('site_logo_text'));
- $this->image('site_logo', Support::trans('main.site_logo'))
- ->autoUpload()
- ->uniqueName()
- ->default(admin_setting('site_logo'));
- $this->image('site_logo_mini', Support::trans('main.site_logo_mini'))
- ->autoUpload()
- ->uniqueName()
- ->default(admin_setting('site_logo_mini'));
- $this->switch('site_debug', Support::trans('main.site_debug'))
- ->help('开启 debug 模式后将会显示异常捕获信息,关闭则只返回 500 状态码。')
- ->default(admin_setting('site_debug'));
- $this->radio('site_lang', Support::trans('main.site_lang'))
- ->options([
- 'zh_CN' => '中文(简体)',
- 'en' => 'English'
- ])
- ->default(admin_setting('site_lang'));
- }
-}
diff --git a/packages/dcat-extension-plus-master/src/Forms/DcatPlusUIForm.php b/packages/dcat-extension-plus-master/src/Forms/DcatPlusUIForm.php
deleted file mode 100644
index 5f1a43f..0000000
--- a/packages/dcat-extension-plus-master/src/Forms/DcatPlusUIForm.php
+++ /dev/null
@@ -1,61 +0,0 @@
-response()
- ->success('站点配置更新成功!')
- ->refresh();
- }
-
- /**
- * Build a form here.
- */
- public function form()
- {
- $this->switch('footer_remove', Support::trans('main.footer_remove'))
- ->default(admin_setting('footer_remove'));
- $defaultColors = [
- 'default' => '墨蓝',
- 'blue' => '蓝',
- 'blue-light' => '亮蓝',
- 'green' => '墨绿',
- ];
- foreach (explode(",", ServiceProvider::setting('additional_theme_colors')) as $value) {
- if (!empty($value)) {
- [$k, $v] = explode(":", $value);
- $defaultColors[$k] = $v;
- }
- }
-
- $this->radio('theme_color', Support::trans('main.theme_color'))
- ->options($defaultColors)
- ->default(admin_setting('theme_color'));
- $this->radio('sidebar_style', Support::trans('main.sidebar_style'))
- ->options([
- 'default' => '默认',
- 'sidebar-separate' => '菜单分离',
- 'horizontal_menu' => '水平菜单'
- ])
- ->default(admin_setting('sidebar_style'));
- $this->switch('grid_row_actions_right', Support::trans('main.grid_row_actions_right'))
- ->help('启用后表格行操作按钮将永远贴着最右侧。')
- ->default(admin_setting('grid_row_actions_right'));
- }
-}
diff --git a/packages/dcat-extension-plus-master/src/Http/Controllers/DcatPlusSiteController.php b/packages/dcat-extension-plus-master/src/Http/Controllers/DcatPlusSiteController.php
deleted file mode 100644
index 7f92d2d..0000000
--- a/packages/dcat-extension-plus-master/src/Http/Controllers/DcatPlusSiteController.php
+++ /dev/null
@@ -1,24 +0,0 @@
-header('增强配置')
- ->description('提供了一些对站点增强的配置')
- ->body(function (Row $row) {
- $tab = new Tab();
- $tab->add('站点配置', new DcatPlusSiteForm(), true);
- $tab->addLink('UI优化', admin_route('dcat-plus.ui.index'));
- $row->column(12, $tab->withCard());
- });
- }
-}
diff --git a/packages/dcat-extension-plus-master/src/Http/Controllers/DcatPlusUIController.php b/packages/dcat-extension-plus-master/src/Http/Controllers/DcatPlusUIController.php
deleted file mode 100644
index 9244936..0000000
--- a/packages/dcat-extension-plus-master/src/Http/Controllers/DcatPlusUIController.php
+++ /dev/null
@@ -1,24 +0,0 @@
-header('增强配置')
- ->description('提供了一些对站点增强的配置')
- ->body(function (Row $row) {
- $tab = new Tab();
- $tab->addLink('站点配置', admin_route('dcat-plus.site.index'));
- $tab->add('UI优化', new DcatPlusUIForm(), true);
- $row->column(12, $tab->withCard());
- });
- }
-}
diff --git a/packages/dcat-extension-plus-master/src/Http/Middleware/AfterInjectDcatPlus.php b/packages/dcat-extension-plus-master/src/Http/Middleware/AfterInjectDcatPlus.php
deleted file mode 100644
index 98cc5b6..0000000
--- a/packages/dcat-extension-plus-master/src/Http/Middleware/AfterInjectDcatPlus.php
+++ /dev/null
@@ -1,23 +0,0 @@
-initConfig();
- $support->gridRowActionsRight();
- $support->injectFields();
- $support->footerRemove();
-
- return $next($request);
- }
-}
diff --git a/packages/dcat-extension-plus-master/src/Http/routes.php b/packages/dcat-extension-plus-master/src/Http/routes.php
deleted file mode 100644
index 623bbce..0000000
--- a/packages/dcat-extension-plus-master/src/Http/routes.php
+++ /dev/null
@@ -1,16 +0,0 @@
-name('dcat-plus.site.index');
-
-Route::get('/dcat-plus/ui', [DcatPlusUIController::class, 'index'])
- ->name('dcat-plus.ui.index');
-
-
-
diff --git a/packages/dcat-extension-plus-master/src/ServiceProvider.php b/packages/dcat-extension-plus-master/src/ServiceProvider.php
deleted file mode 100644
index e40bc8e..0000000
--- a/packages/dcat-extension-plus-master/src/ServiceProvider.php
+++ /dev/null
@@ -1,50 +0,0 @@
- [
- BeforeInjectDcatPlus::class,
- ],
- 'middle' => [
- MiddleInjectDcatPlus::class,
- ],
- 'after' => [
- AfterInjectDcatPlus::class,
- ]
- ];
- protected $menu = [
- [
- 'title' => 'Dcat Plus',
- 'uri' => 'dcat-plus/site',
- 'icon' => 'feather icon-settings'
- ]
- ];
-
- public function register()
- {
- //
- }
-
- public function settingForm()
- {
- return new Setting($this);
- }
-
- public function init()
- {
- parent::init();
-
- }
-}
diff --git a/packages/dcat-extension-plus-master/src/Setting.php b/packages/dcat-extension-plus-master/src/Setting.php
deleted file mode 100644
index 54847dc..0000000
--- a/packages/dcat-extension-plus-master/src/Setting.php
+++ /dev/null
@@ -1,14 +0,0 @@
-text('additional_theme_colors', 'Additional Theme Colors')
- ->help("cssname1:Title1,cssname2:Title2");
- }
-}
diff --git a/packages/dcat-extension-plus-master/src/Support.php b/packages/dcat-extension-plus-master/src/Support.php
deleted file mode 100644
index bbc6c2f..0000000
--- a/packages/dcat-extension-plus-master/src/Support.php
+++ /dev/null
@@ -1,140 +0,0 @@
-url(admin_setting('site_logo'));
- $logo = "
";
- }
-
- /**
- * 处理站点LOGO-MINI自定义
- */
- if (empty(admin_setting('site_logo_mini'))) {
- $logo_mini = admin_setting('site_logo_text');
- } else {
- $logo_mini = Storage::disk(config('admin.upload.disk'))->url(admin_setting('site_logo_mini'));
- $logo_mini = "
";
- }
-
- /**
- * 处理站点名称
- */
- $horizontal_menu = false;
- if (empty(admin_setting('site_url'))) {
- $site_url = 'http://localhost';
- } else {
- $site_url = admin_setting('site_url');
- }
-
- if (empty(admin_setting('site_debug'))) {
- $site_debug = true;
- } else {
- $site_debug = admin_setting('site_debug');
- }
-
- if (empty(admin_setting('theme_color'))) {
- $theme_color = 'blue-light';
- } else {
- $theme_color = admin_setting('theme_color');
- }
- if (empty(admin_setting('sidebar_style'))) {
- $sidebar_style = 'default';
- } else {
- $sidebar_style = admin_setting('sidebar_style');
- if ($sidebar_style == 'horizontal_menu') {
- $horizontal_menu = true;
- }
- }
-
- /**
- * 复写admin站点配置
- */
- config([
- 'app.url' => $site_url,
- 'app.debug' => (bool)$site_debug,
- 'app.locale' => admin_setting('site_lang', config('app.locale')),
- 'app.fallback_locale' => admin_setting('site_lang', config('app.fallback_locale')),
-
- 'admin.title' => admin_setting('site_title'),
- 'admin.logo' => $logo,
- 'admin.logo-mini' => $logo_mini,
- 'admin.layout.color' => $theme_color,
- 'admin.layout.body_class' => $sidebar_style,
- 'admin.layout.horizontal_menu' => $horizontal_menu
- ]);
- }
-
- /**
- * 注入字段.
- */
- public function injectFields()
- {
- Form::extend('selectCreate', SelectCreate::class);
- Show\Field::extend('video', Video::class);
- }
-
- /**
- * 底部授权移除.
- */
- public function footerRemove()
- {
- if (admin_setting('footer_remove')) {
- Admin::style(
- <<<'CSS'
-.main-footer {
- display: none;
-}
-CSS
- );
- }
- }
-
- /**
- * 行操作按钮最右.
- */
- public function gridRowActionsRight()
- {
- if (admin_setting('grid_row_actions_right')) {
- Admin::style(
- << [
- '原始版本发布',
- ],
- '1.0.1' => [
- '增加调试模式开关 & 侧栏子菜单缩进增加',
- ],
- '1.0.2' => [
- '扩展表单字段 selectCreate 为 select 字段的升级版,支持快速创建。',
- ],
- '1.0.3' => [
- '增加扩展图标和别名。',
- ],
- '1.0.4' => [
- '增加表单提交预处理过滤,防止XSS攻击。',
- ],
- '1.0.5' => [
- '优化表单提交预处理过滤,不再依赖第三方包。',
- ],
- '1.0.6' => [
- 'selectCreate组件的颜色改为主题色。',
- 'UI增加表格行操作按钮紧贴最右侧。'
- ],
- '1.0.7' => [
- '支持DcatAdmin 2.0.18beta。',
- '暂时移除侧栏菜单子菜单缩进(不兼容)。',
- '增加水平菜单选项。',
- '原先的头部块状显示改为边距优化'
- ],
- '1.0.8' => [
- '提供了自定义颜色的支持入口',
- ],
- '1.0.9' => [
- '移除HTML、JS过滤',
- '移除部分UI优化'
- ],
- '1.1.0' => [
- '修复debug配置无效的问题',
- '自动注入扩展字段',
- '移除了一些无用的配置'
- ],
- '1.1.1' => [
- '增加详情页视频扩展字段',
- ],
-];