mirror of
https://github.com/ZeroCatDev/Classworks.git
synced 2025-07-02 00:59:23 +00:00
Update AppFooter.vue, NamespaceAccess.vue, and index.vue for improved links and UI enhancements. Change footer links to reflect new repository and website, streamline password hint display in NamespaceAccess, and clean up index.vue by removing unnecessary template elements.
This commit is contained in:
parent
88ab5e9064
commit
088e19eaa7
@ -12,24 +12,22 @@
|
|||||||
<v-icon :icon="item.icon" :size="item.icon === 'mdi-earth' ? 24 : 16" />
|
<v-icon :icon="item.icon" :size="item.icon === 'mdi-earth' ? 24 : 16" />
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
|
||||||
<div
|
<div
|
||||||
class="text-caption text-disabled"
|
class="text-caption text-disabled"
|
||||||
style="position: absolute; right: 16px"
|
style="position: absolute; right: 16px"
|
||||||
>
|
>
|
||||||
© 2020-{{ new Date().getFullYear() }}
|
|
||||||
<span class="d-none d-sm-inline-block">SunWuyuan</span>
|
|
||||||
—
|
|
||||||
<a
|
<a
|
||||||
class="text-decoration-none on-surface"
|
class="text-decoration-none on-surface"
|
||||||
href="https://github.com/sunwuyuan/classworks-frontend"
|
href="https://github.com/ZeroCatDev/Classworks"
|
||||||
rel="noopener noreferrer"
|
rel="noopener noreferrer"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
>
|
>
|
||||||
Classworks
|
Classworks
|
||||||
</a> <a
|
</a> <a
|
||||||
class="text-decoration-none on-surface"
|
class="text-decoration-none on-surface"
|
||||||
href="https://beiancx.miit.gov.cn"
|
href="https://beian.miit.gov.cn"
|
||||||
rel="noopener noreferrer"
|
rel="noopener noreferrer"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
>
|
>
|
||||||
@ -45,9 +43,9 @@ const { mobile } = useDisplay();
|
|||||||
|
|
||||||
const items = [
|
const items = [
|
||||||
{
|
{
|
||||||
title: "孙悟远",
|
title: "Classworks",
|
||||||
icon: `mdi-earth`,
|
icon: `mdi-earth`,
|
||||||
href: "https://wuyuan.dev",
|
href: "https://cs.houlangs.com",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "ZeroCat",
|
title: "ZeroCat",
|
||||||
@ -57,7 +55,7 @@ const items = [
|
|||||||
{
|
{
|
||||||
title: "GitHub",
|
title: "GitHub",
|
||||||
icon: "mdi-github",
|
icon: "mdi-github",
|
||||||
href: "https://github.com/sunwuyuan/classworks-frontend",
|
href: "https://github.com/ZeroCatDev/Classworks",
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
</script>
|
</script>
|
||||||
|
@ -4,8 +4,6 @@
|
|||||||
<v-chip
|
<v-chip
|
||||||
v-if="isReadOnly"
|
v-if="isReadOnly"
|
||||||
color="warning"
|
color="warning"
|
||||||
size="small"
|
|
||||||
class="mr-2"
|
|
||||||
prepend-icon="mdi-lock-outline"
|
prepend-icon="mdi-lock-outline"
|
||||||
>
|
>
|
||||||
只读
|
只读
|
||||||
@ -26,10 +24,6 @@
|
|||||||
<v-card class="rounded-xl" border hover>
|
<v-card class="rounded-xl" border hover>
|
||||||
<v-card-title class="text-h6">输入访问密码</v-card-title>
|
<v-card-title class="text-h6">输入访问密码</v-card-title>
|
||||||
<v-card-text>
|
<v-card-text>
|
||||||
<div v-if="passwordHint" class="text-body-2 mb-4">
|
|
||||||
<v-icon icon="mdi-lightbulb-outline" color="warning" class="mr-1" />
|
|
||||||
提示:{{ passwordHint }}
|
|
||||||
</div>
|
|
||||||
<v-text-field
|
<v-text-field
|
||||||
v-model="password"
|
v-model="password"
|
||||||
label="密码"
|
label="密码"
|
||||||
@ -41,12 +35,15 @@
|
|||||||
:disabled="loading"
|
:disabled="loading"
|
||||||
autofocus
|
autofocus
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
<p v-if="passwordHint">密码提示:{{ passwordHint }}</p>
|
||||||
</v-card-text>
|
</v-card-text>
|
||||||
<v-card-actions>
|
<v-card-actions>
|
||||||
<v-spacer />
|
<v-spacer />
|
||||||
<v-btn
|
<v-btn
|
||||||
color="grey"
|
color="grey"
|
||||||
variant="text"
|
variant="text"
|
||||||
|
class="rounded-xl"
|
||||||
@click="dialog = false"
|
@click="dialog = false"
|
||||||
:disabled="loading"
|
:disabled="loading"
|
||||||
>
|
>
|
||||||
@ -54,6 +51,9 @@
|
|||||||
</v-btn>
|
</v-btn>
|
||||||
<v-btn
|
<v-btn
|
||||||
color="primary"
|
color="primary"
|
||||||
|
class="rounded-xl"
|
||||||
|
variant="tonal"
|
||||||
|
|
||||||
@click="checkPassword"
|
@click="checkPassword"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
:disabled="!password"
|
:disabled="!password"
|
||||||
@ -113,8 +113,7 @@ export default {
|
|||||||
["PRIVATE", "PROTECTED", "PUBLIC"].includes(response.data.accessType)
|
["PRIVATE", "PROTECTED", "PUBLIC"].includes(response.data.accessType)
|
||||||
) {
|
) {
|
||||||
this.accessType = response.data.accessType;
|
this.accessType = response.data.accessType;
|
||||||
// 保存密码提示
|
|
||||||
this.passwordHint = response.data.passwordHint || null;
|
|
||||||
} else {
|
} else {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -132,6 +131,13 @@ export default {
|
|||||||
this.setReadOnly(true);
|
this.setReadOnly(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
const passwordHintresponse = await axios.get(
|
||||||
|
`${getSetting("server.domain")}/${getSetting("device.uuid")}/_hint`
|
||||||
|
);
|
||||||
|
if (passwordHintresponse.data && passwordHintresponse.data.passwordHint) {
|
||||||
|
this.passwordHint = passwordHintresponse.data.passwordHint || null;
|
||||||
|
}
|
||||||
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
// 处理403错误
|
// 处理403错误
|
||||||
if (error.response && error.response.status === 403) {
|
if (error.response && error.response.status === 403) {
|
||||||
@ -209,4 +215,9 @@ export default {
|
|||||||
align-items: center;
|
align-items: center;
|
||||||
gap: 8px;
|
gap: 8px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.password-hint {
|
||||||
|
max-width: 100%;
|
||||||
|
word-wrap: break-word;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
@ -1,8 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<v-app-bar class="no-select">
|
<v-app-bar class="no-select">
|
||||||
<template #prepend>
|
|
||||||
<v-app-bar-nav-icon icon="mdi-home" />
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<v-app-bar-title>
|
<v-app-bar-title>
|
||||||
{{ state.classNumber }} - {{ titleText }}
|
{{ state.classNumber }} - {{ titleText }}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user