From 246f1dfb202cbc289a1ad125b76c6521510aa2ec Mon Sep 17 00:00:00 2001 From: lesion Date: Wed, 31 Aug 2022 11:16:42 +0200 Subject: [PATCH] toggle plugins / save dynamic plugin settings --- components/admin/Plugin.vue | 33 +- locales/en.json | 587 ++++++++++++++++--------------- package.json | 2 +- server/api/controller/plugins.js | 84 +++-- server/api/index.js | 3 +- server/helpers.js | 65 ++-- yarn.lock | 36 +- 7 files changed, 433 insertions(+), 377 deletions(-) diff --git a/components/admin/Plugin.vue b/components/admin/Plugin.vue index 8ad4a789..6e3553ea 100644 --- a/components/admin/Plugin.vue +++ b/components/admin/Plugin.vue @@ -10,7 +10,10 @@ v-container v-card-text v-form(v-model='valid' ref='form' lazy-validation) div(v-for='(setting, name) in selectedPlugin.settings') - v-text-field(v-model='pluginSettings[name]' type='text' :label='setting.description') + v-text-field(v-if='setting.type === "TEXT"' v-model='selectedPlugin.settingsValue[name]' type='text' :label='setting.description') + v-text-field(v-if='setting.type === "NUMBER"' v-model='selectedPlugin.settingsValue[name]' type='number' :label='setting.description') + v-switch(v-if='setting.type === "CHECK"' v-model='selectedPlugin.settingsValue[name]' :label='setting.description') + v-select(v-if='setting.type === "LIST"' v-model='selectedPlugin.settingsValue[name]' :items='setting.items' :label='setting.description') v-card-actions v-spacer @@ -19,9 +22,9 @@ v-container :disable='!valid || loading') {{ $t('common.save') }} v-card-text - v-card(v-for='plugin in plugins' :key='plugin.name' max-width="400" elevation='10' color='secondary') + v-card(v-for='plugin in plugins' :key='plugin.name' max-width="400" elevation='10' color='secondary' dark) v-card-title.d-block {{ plugin.name }} - v-switch.float-right(:label="$t('common.enable')" @change='toggleEnable(plugin)') + v-switch.float-right(:label="$t('common.enable')" v-model='plugin.settingsValue.enable' @change='toggleEnable(plugin)') v-card-text p {{ plugin.description }} blockquote author: {{ plugin.author }} @@ -33,6 +36,7 @@ v-container