mirror of
https://github.com/ZeroCatDev/Classworks.git
synced 2026-08-12 09:20:31 +00:00
feat: 添加UAF作业导入导出按钮显示控制
This commit is contained in:
parent
08fcc5cb4f
commit
8238d94f52
@ -19,85 +19,21 @@
|
||||
@click="$emit('show-sync-message')"
|
||||
>
|
||||
同步完成
|
||||
</v-btn>
|
||||
<v-btn
|
||||
v-if="showRandomPickerButton"
|
||||
append-icon="mdi-dice-multiple"
|
||||
class="ml-2"
|
||||
color="amber"
|
||||
prepend-icon="mdi-account-question"
|
||||
size="large"
|
||||
@click="$emit('open-random-picker')"
|
||||
</v-btn><v-menu
|
||||
v-if="showUafTransferButton"
|
||||
location="bottom end"
|
||||
>
|
||||
随机点名
|
||||
</v-btn>
|
||||
<v-btn-group
|
||||
v-if="showExamScheduleButton"
|
||||
class="ml-2"
|
||||
color="green"
|
||||
variant="elevated"
|
||||
divided
|
||||
>
|
||||
<v-btn
|
||||
prepend-icon="mdi-calendar-check"
|
||||
size="large"
|
||||
@click="$router.push('/examschedule')"
|
||||
>
|
||||
考试看板
|
||||
</v-btn>
|
||||
<v-btn
|
||||
icon="mdi-plus"
|
||||
size="large"
|
||||
@click="$emit('add-exam-card')"
|
||||
/>
|
||||
</v-btn-group>
|
||||
<v-btn
|
||||
v-if="showListCardButton"
|
||||
class="ml-2"
|
||||
color="primary-darken-1"
|
||||
prepend-icon="mdi-list-box"
|
||||
size="large"
|
||||
@click="$router.push('/list')"
|
||||
>
|
||||
列表
|
||||
</v-btn>
|
||||
<v-btn
|
||||
v-if="showFullscreenButton"
|
||||
:color="isFullscreen ? 'blue-grey' : 'blue'"
|
||||
:prepend-icon="
|
||||
isFullscreen ? 'mdi-fullscreen-exit' : 'mdi-fullscreen'
|
||||
"
|
||||
class="ml-2"
|
||||
size="large"
|
||||
@click="$emit('toggle-fullscreen')"
|
||||
>
|
||||
{{ isFullscreen ? "退出全屏" : "全屏显示" }}
|
||||
</v-btn>
|
||||
<v-btn
|
||||
v-if="showTestCardButton"
|
||||
class="ml-2"
|
||||
color="purple"
|
||||
prepend-icon="mdi-test-tube"
|
||||
size="large"
|
||||
@click="$emit('add-test-card')"
|
||||
>
|
||||
添加测试卡片
|
||||
</v-btn>
|
||||
<v-menu location="bottom end">
|
||||
<template #activator="{ props: menuProps }">
|
||||
<v-btn
|
||||
v-bind="menuProps"
|
||||
:disabled="uafTransferLoading"
|
||||
:loading="uafTransferLoading"
|
||||
append-icon="mdi-menu-down"
|
||||
class="ml-2"
|
||||
color="indigo"
|
||||
prepend-icon="mdi-swap-vertical-bold"
|
||||
|
||||
size="large"
|
||||
rounded="xl"
|
||||
>
|
||||
作业导出导入
|
||||
</v-btn>
|
||||
><v-icon icon="mdi-swap-vertical-bold"></v-icon></v-btn>
|
||||
</template>
|
||||
<v-list density="comfortable">
|
||||
<v-list-item
|
||||
@ -111,7 +47,65 @@
|
||||
@click="$emit('open-uaf-import')"
|
||||
/>
|
||||
</v-list>
|
||||
</v-menu>
|
||||
</v-menu> <v-btn
|
||||
v-if="showFullscreenButton"
|
||||
:color="isFullscreen ? 'blue-grey' : 'blue'"
|
||||
:prepend-icon="
|
||||
isFullscreen ? 'mdi-fullscreen-exit' : 'mdi-fullscreen'
|
||||
"
|
||||
rounded="xl"
|
||||
class="ml-2"
|
||||
size="large"
|
||||
@click="$emit('toggle-fullscreen')"
|
||||
>
|
||||
{{ isFullscreen ? "退出全屏" : "全屏" }}
|
||||
</v-btn>
|
||||
<v-btn
|
||||
v-if="showRandomPickerButton"
|
||||
append-icon="mdi-dice-multiple"
|
||||
class="ml-2"
|
||||
color="amber"
|
||||
prepend-icon="mdi-account-question"
|
||||
size="large"
|
||||
@click="$emit('open-random-picker')"
|
||||
>
|
||||
随机点名
|
||||
</v-btn>
|
||||
|
||||
<v-btn
|
||||
v-if="showExamScheduleButton"
|
||||
prepend-icon="mdi-calendar-check"
|
||||
size="large"
|
||||
@click="$emit('add-exam-card')"
|
||||
class="ml-2"
|
||||
color="green"
|
||||
>
|
||||
考试看板
|
||||
</v-btn>
|
||||
|
||||
|
||||
<v-btn
|
||||
v-if="showListCardButton"
|
||||
class="ml-2"
|
||||
color="primary-darken-1"
|
||||
prepend-icon="mdi-list-box"
|
||||
size="large"
|
||||
@click="$router.push('/list')"
|
||||
>
|
||||
列表
|
||||
</v-btn>
|
||||
|
||||
<v-btn
|
||||
v-if="showTestCardButton"
|
||||
class="ml-2"
|
||||
color="purple"
|
||||
prepend-icon="mdi-test-tube"
|
||||
size="large"
|
||||
@click="$emit('add-test-card')"
|
||||
>
|
||||
添加测试卡片
|
||||
</v-btn>
|
||||
|
||||
</div>
|
||||
|
||||
<v-card
|
||||
@ -156,6 +150,7 @@ export default {
|
||||
isFullscreen: Boolean,
|
||||
showAntiScreenBurnCard: Boolean,
|
||||
showTestCardButton: Boolean,
|
||||
showUafTransferButton: Boolean,
|
||||
uafTransferLoading: Boolean,
|
||||
},
|
||||
emits: [
|
||||
|
||||
@ -68,6 +68,9 @@
|
||||
<v-divider class="my-2" />
|
||||
<setting-item :setting-key="'display.showExamScheduleButton'" />
|
||||
|
||||
<v-divider class="my-2" />
|
||||
<setting-item :setting-key="'display.showUafTransfer'" />
|
||||
|
||||
<v-divider class="my-2" />
|
||||
<setting-item :setting-key="'display.forceDesktopMode'" />
|
||||
|
||||
|
||||
@ -200,6 +200,7 @@
|
||||
:is-fullscreen="state.isFullscreen"
|
||||
:show-anti-screen-burn-card="showAntiScreenBurnCard"
|
||||
:show-test-card-button="showTestCardButton"
|
||||
:show-uaf-transfer-button="showUafTransferButton"
|
||||
:uaf-transfer-loading="loading.exportUaf"
|
||||
@upload="manualUpload"
|
||||
@show-sync-message="showSyncMessage"
|
||||
@ -486,9 +487,10 @@
|
||||
>
|
||||
<v-card>
|
||||
<v-card-title class="text-h6">
|
||||
预览考试看板
|
||||
考试看板
|
||||
</v-card-title>
|
||||
<v-card-text>
|
||||
<v-list><v-list-item active color="green" @click="$router.push('/examschedule')" append-icon="mdi-arrow-right">打开考试看板</v-list-item></v-list>
|
||||
<v-list v-if="examStore.examList.length > 0">
|
||||
<v-list-item
|
||||
v-for="exam in examStore.examList"
|
||||
@ -1068,6 +1070,9 @@ export default {
|
||||
showTestCardButton() {
|
||||
return getSetting("developer.enabled");
|
||||
},
|
||||
showUafTransferButton() {
|
||||
return getSetting("display.showUafTransfer");
|
||||
},
|
||||
shouldShowInit() {
|
||||
const provider = getSetting("server.provider");
|
||||
const isKv = provider === "kv-server" || provider === "classworkscloud";
|
||||
@ -2417,6 +2422,7 @@ export default {
|
||||
cardHoverEffect: "卡片悬浮效果",
|
||||
enhancedTouchMode: "增强触摸模式",
|
||||
showAntiScreenBurnCard: "防烧屏卡片",
|
||||
showUafTransfer: "UAF导入导出",
|
||||
|
||||
mode: "主题模式",
|
||||
|
||||
|
||||
@ -203,6 +203,12 @@ const settingsDefinitions = {
|
||||
icon: "mdi-calendar-check",
|
||||
// 控制是否在主页显示考试看板按钮,指向考试安排页面
|
||||
},
|
||||
"display.showUafTransfer": {
|
||||
type: "boolean",
|
||||
default: true,
|
||||
description: "是否显示UAF作业导入导出",
|
||||
icon: "mdi-swap-vertical-bold",
|
||||
},
|
||||
"display.showQuickTools": {
|
||||
type: "boolean",
|
||||
default: true,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user