Use message to report plugin errors

Instead of `notification`
This commit is contained in:
Pig Fang 2019-09-19 23:09:53 +08:00
parent d232bb4672
commit bb898ea2e4
6 changed files with 12 additions and 20 deletions

View File

@ -9,17 +9,17 @@ class NotifyFailedPlugin
public function handle($event)
{
$plugin = $event->plugin;
$user = auth()->user();
if ($user && $user->isAdmin()) {
Event::listen(\App\Events\RenderingFooter::class, function ($event) use ($plugin) {
Event::listen(\App\Events\RenderingFooter::class, function ($event) use ($plugin) {
$user = auth()->user();
if ($user && $user->isAdmin()) {
$options = json_encode([
'type' => 'warning',
'title' => trans('errors.plugins.boot.title'),
'message' => trans('errors.plugins.boot.message', ['plugin' => trans($plugin->title)]),
'type' => 'error',
'message' => trans('errors.plugins.boot', ['plugin' => trans($plugin->title)]),
'duration' => 0,
'showClose' => true,
]);
$event->addContent('<script>blessing.ui.notify('.$options.')</script>');
});
}
$event->addContent('<script>blessing.ui.message('.$options.')</script>');
}
});
}
}

View File

@ -5,7 +5,6 @@ import {
Message,
MessageBox,
Switch,
Notification,
} from 'element-ui'
Vue.use(Button)
@ -26,5 +25,4 @@ blessing.ui = {
alert: MessageBox.alert,
confirm: MessageBox.confirm,
prompt: MessageBox.prompt,
notify: Notification,
}

View File

@ -2,5 +2,4 @@
@import '~element-theme-chalk/src/input.scss';
@import '~element-theme-chalk/src/message.scss';
@import '~element-theme-chalk/src/message-box.scss';
@import '~element-theme-chalk/src/notification.scss';
@import '~element-theme-chalk/src/switch.scss';

View File

@ -19,9 +19,7 @@ exception:
plugins:
duplicate: The plugin [:dir1] has a duplicated plugin name definition which is same to plugin [:dir2]. Please check your plugins directory, remove one of them or use another name definition.
directory: We can't approach the path for loading plugins specified by the PLUGINS_DIR in .env file. Please check your configuration. Error :msg
boot:
title: Failed to boot plugin.
message: There is something wrong with plugin ":plugin". Please check logs for detail.
boot: There is something wrong with plugin ":plugin".
cipher:
unsupported: Unsupported password hashing method `:cipher`, please check your `.env` configuration

View File

@ -20,9 +20,7 @@ exception:
plugins:
duplicate: 【插件定义重复】:dir1 目录下的插件与 :dir2 目录下的插件使用了相同的 name 定义并造成了冲突。请检查你的插件目录,移除其中一个插件或者使用不同的 name 属性。
directory: 配置文件 .env 中指定的插件加载目录PLUGINS_DIR不存在或无法打开请检查你的配置。错误信息:msg
boot:
title: 插件加载失败
message: 「:plugin」插件存在错误无法加载。详细信息请见日志。
boot: 「:plugin」插件存在错误无法加载。
cipher:
unsupported: 不支持的密码加密方式 `:cipher`,请检查你的 .env 配置文件

View File

@ -24,7 +24,6 @@ class NotifyFailedPluginTest extends TestCase
$this->actAs('admin');
event(new Events\PluginBootFailed($plugin));
event(new Events\RenderingFooter($content));
$this->assertCount(1, $content);
$this->assertStringContainsString('blessing.ui.notify', $content[0]);
$this->assertStringContainsString('blessing.ui.message', $content[0]);
}
}