From e45f43da9a3a003186b61500333b7a15006fe4e5 Mon Sep 17 00:00:00 2001
From: ssongliu <73214554+ssongliu@users.noreply.github.com>
Date: Mon, 3 Jun 2024 15:41:35 +0800
Subject: [PATCH] =?UTF-8?q?pref:=20=E4=BC=98=E5=8C=96=E7=99=BB=E5=BD=95?=
=?UTF-8?q?=E9=A1=B5=E7=A1=AE=E8=AE=A4=E6=A1=86=E6=A0=B7=E5=BC=8F=20(#5259?=
=?UTF-8?q?)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
backend/app/service/ftp.go | 10 +++++
frontend/src/lang/modules/en.ts | 6 +++
frontend/src/lang/modules/tw.ts | 6 +++
frontend/src/lang/modules/zh.ts | 6 +++
.../src/views/login/components/login-form.vue | 40 ++++++++++++++++---
frontend/src/views/setting/panel/index.vue | 2 +-
6 files changed, 63 insertions(+), 7 deletions(-)
diff --git a/backend/app/service/ftp.go b/backend/app/service/ftp.go
index c41f1065f..6a02dc504 100644
--- a/backend/app/service/ftp.go
+++ b/backend/app/service/ftp.go
@@ -178,6 +178,16 @@ func (f *FtpService) Delete(req dto.BatchDeleteReq) error {
}
func (f *FtpService) Update(req dto.FtpUpdate) error {
+ if _, err := os.Stat(req.Path); err != nil {
+ if os.IsNotExist(err) {
+ if err := os.MkdirAll(req.Path, os.ModePerm); err != nil {
+ return err
+ }
+ } else {
+ return err
+ }
+ }
+
pass, err := encrypt.StringEncrypt(req.Password)
if err != nil {
return err
diff --git a/frontend/src/lang/modules/en.ts b/frontend/src/lang/modules/en.ts
index d92a170a4..53034ba67 100644
--- a/frontend/src/lang/modules/en.ts
+++ b/frontend/src/lang/modules/en.ts
@@ -60,6 +60,8 @@ const message = {
update: 'Edit',
showAll: 'Show All',
hideSome: 'Hide Some',
+ agree: 'Agree',
+ notAgree: 'Not Agree',
},
search: {
timeStart: 'Time start',
@@ -159,6 +161,9 @@ const message = {
'Agree « Community License Agreement »',
errorAgree: 'Please click to agree to the Community Software License Agreement',
logout: 'Logout',
+ agreeTitle: 'Agreement',
+ agreeContent:
+ 'In order to better protect your legitimate rights and interests, please read and agree to the following agreement « fly to cloud community software license agreement »',
},
rule: {
username: 'Please enter a username',
@@ -1262,6 +1267,7 @@ const message = {
theme: 'Theme',
menuTabs: 'Menu tabs',
dark: 'Dark',
+ darkGold: 'Dark Gold',
light: 'Light',
auto: 'Follow System',
language: 'Language',
diff --git a/frontend/src/lang/modules/tw.ts b/frontend/src/lang/modules/tw.ts
index 75b67587d..7cdd3f84f 100644
--- a/frontend/src/lang/modules/tw.ts
+++ b/frontend/src/lang/modules/tw.ts
@@ -60,6 +60,8 @@ const message = {
update: '編輯',
showAll: '顯示所有',
hideSome: '隱藏部分',
+ agree: '同意',
+ notAgree: '不同意',
},
search: {
timeStart: '開始時間',
@@ -159,6 +161,9 @@ const message = {
licenseHelper:
'同意 « 飛致雲社區軟件許可協議 »',
errorAgree: '請點擊同意社區軟件許可協議',
+ agreeTitle: '服務協議及隱私保護',
+ agreeContent:
+ '為了更好的保障您的合法權益,請您閱讀並同意以下協議 « 飛致雲社區軟件許可協議 »',
logout: '退出登錄',
},
rule: {
@@ -1197,6 +1202,7 @@ const message = {
menuTabs: '菜單標簽頁',
componentSize: '組件大小',
dark: '暗色',
+ darkGold: '黑金',
light: '亮色',
auto: '跟隨系統',
language: '系統語言',
diff --git a/frontend/src/lang/modules/zh.ts b/frontend/src/lang/modules/zh.ts
index 6b7754778..722614e78 100644
--- a/frontend/src/lang/modules/zh.ts
+++ b/frontend/src/lang/modules/zh.ts
@@ -60,6 +60,8 @@ const message = {
update: '编辑',
showAll: '显示所有',
hideSome: '隐藏部分',
+ agree: '同意',
+ notAgree: '不同意',
},
search: {
timeStart: '开始时间',
@@ -159,6 +161,9 @@ const message = {
licenseHelper:
'同意 « 飞致云社区软件许可协议 »',
errorAgree: '请点击同意社区软件许可协议',
+ agreeTitle: '服务协议及隐私保护',
+ agreeContent:
+ '为了更好的保障您的合法权益,请您阅读并同意以下协议 « 飞致云社区软件许可协议 »',
logout: '退出登录',
},
rule: {
@@ -1198,6 +1203,7 @@ const message = {
menuTabs: '菜单标签页',
componentSize: '组件大小',
dark: '暗色',
+ darkGold: '黑金',
light: '亮色',
auto: '跟随系统',
language: '系统语言',
diff --git a/frontend/src/views/login/components/login-form.vue b/frontend/src/views/login/components/login-form.vue
index 3860294f2..30651a7f2 100644
--- a/frontend/src/views/login/components/login-form.vue
+++ b/frontend/src/views/login/components/login-form.vue
@@ -127,7 +127,7 @@
@@ -142,6 +142,26 @@
+
+
+
+ {{ $t('commons.login.agreeTitle') }}
+
+
+
+
+
+
+
+
+
@@ -166,7 +186,7 @@ const errAuthInfo = ref(false);
const errCaptcha = ref(false);
const errMfaInfo = ref(false);
const isDemo = ref(false);
-const errAgree = ref(false);
+const agreeVisible = ref(false);
type FormInstance = InstanceType;
@@ -222,10 +242,22 @@ function handleCommand(command: string) {
}
}
+const agreeWithLogin = () => {
+ agreeVisible.value = false;
+ loginForm.agreeLicense = true;
+ login(loginFormRef.value);
+};
+
const login = (formEl: FormInstance | undefined) => {
if (!formEl || isLoggingIn) return;
formEl.validate(async (valid) => {
if (!valid) return;
+ if (!loginForm.agreeLicense) {
+ if (globalStore.isMobile()) {
+ agreeVisible.value = true;
+ }
+ return;
+ }
let requestLoginForm = {
name: loginForm.name,
password: loginForm.password,
@@ -239,10 +271,6 @@ const login = (formEl: FormInstance | undefined) => {
errCaptcha.value = true;
return;
}
- if (loginForm.agreeLicense == false) {
- errAgree.value = true;
- return;
- }
try {
isLoggingIn = true;
loading.value = true;
diff --git a/frontend/src/views/setting/panel/index.vue b/frontend/src/views/setting/panel/index.vue
index 3849e312a..4dca3ee1d 100644
--- a/frontend/src/views/setting/panel/index.vue
+++ b/frontend/src/views/setting/panel/index.vue
@@ -29,7 +29,7 @@
- {{ $t('xpack.setting.darkGold') }}
+ {{ $t('setting.darkGold') }}
{{ $t('setting.light') }}