@@ -1224,17 +1252,17 @@ class UserSettingCompoment extends Component {
{!this.state.settings.two_factor && (
- 请使用任意二步验证APP或者支持二步验证的密码管理软件扫描左侧二维码添加本站。扫描完成后请填写二步验证APP给出的6位验证码以开启二步验证。
+ {t("setting.2faDescription")}
)}
{this.state.settings.two_factor && (
- 请验证当前二步验证代码。
+ {t("setting.inputCurrent2FACode")}
)}
@@ -1267,7 +1296,7 @@ class UserSettingCompoment extends Component {
open={this.state.changeTheme}
onClose={this.handleClose}
>
- 更改主题配色
+ {t("setting.themeColor")}
@@ -1306,7 +1335,7 @@ class UserSettingCompoment extends Component {
open={this.state.showWebDavUrl}
onClose={this.handleClose}
>
- WebDAV连接地址
+ {t("setting.webdavServer")}
@@ -1326,7 +1355,7 @@ class UserSettingCompoment extends Component {
open={this.state.showWebDavUserName}
onClose={this.handleClose}
>
- WebDAV用户名
+ {t("setting.userName")}
@@ -1350,6 +1379,6 @@ class UserSettingCompoment extends Component {
const UserSetting = connect(
mapStateToProps,
mapDispatchToProps
-)(withStyles(styles)(withRouter(UserSettingCompoment)));
+)(withStyles(styles)(withRouter(withTranslation()(UserSettingCompoment))));
export default UserSetting;
diff --git a/src/component/Setting/WebDAV.js b/src/component/Setting/WebDAV.js
index fe44c60..c76547e 100644
--- a/src/component/Setting/WebDAV.js
+++ b/src/component/Setting/WebDAV.js
@@ -21,6 +21,7 @@ import TimeAgo from "timeago-react";
import Link from "@material-ui/core/Link";
import { toggleSnackbar } from "../../redux/explorer";
import Nothing from "../Placeholder/Nothing";
+import { useTranslation } from "react-i18next";
const useStyles = makeStyles((theme) => ({
layout: {
@@ -53,6 +54,7 @@ const useStyles = makeStyles((theme) => ({
}));
export default function WebDAV() {
+ const { t } = useTranslation();
const [tab, setTab] = useState(0);
const [create, setCreate] = useState(false);
const [accounts, setAccounts] = useState([]);
@@ -67,12 +69,12 @@ export default function WebDAV() {
const copyToClipboard = (text) => {
if (navigator.clipboard) {
navigator.clipboard.writeText(text);
- ToggleSnackbar("top", "center", "已复制到剪切板", "success");
+ ToggleSnackbar("top", "center", t("setting.copied"), "success");
} else {
ToggleSnackbar(
"top",
"center",
- "当前浏览器不支持,请手动复制",
+ t("setting.pleaseManuallyCopy"),
"warning"
);
}
@@ -141,7 +143,7 @@ export default function WebDAV() {
onClose={() => setCreate(false)}
/>
- WebDAV
+ {t("navbar.connect")}
setTab(newValue)}
aria-label="disabled tabs example"
>
-
+
{tab === 0 && (
- WebDAV的地址为:
- {window.location.origin + "/dav"}
- ;登录用户名统一为:{user.user_name}{" "}
- ;密码为所创建账号的密码。
+ {t("setting.webdavHint", {
+ url: window.location.origin + "/dav",
+ name: user.user_name,
+ })}
- 备注名
- 密码
-
- 根目录
+
+ {t("setting.annotation")}
+
+
+ {t("login.password")}
- 创建日期
+ {t("setting.rootFolder")}
- 操作
+ {t("setting.createdAt")}
+
+
+ {t("setting.action")}
@@ -202,7 +208,9 @@ export default function WebDAV() {
}
href={"javascript:void"}
>
- 复制
+ {t("copy", {
+ ns: "common",
+ })}
@@ -229,7 +237,7 @@ export default function WebDAV() {
{accounts.length === 0 && (
-
+
)}
)}
diff --git a/src/utils/datetime.js b/src/utils/datetime.js
index 1fa60ea..c751362 100644
--- a/src/utils/datetime.js
+++ b/src/utils/datetime.js
@@ -7,13 +7,23 @@ import i18next from "../i18n";
dayjs.extend(utc);
dayjs.extend(timezone);
-const defaultTimeZone = "Asia/Shanghai";
+let userTimezone = "";
+try {
+ userTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone;
+} catch (e) {
+ console.log(e);
+}
+
+if (!userTimezone) {
+ userTimezone = "Asia/Shanghai";
+}
+
const preferTimeZone = Auth.GetPreference("timeZone");
-export let timeZone = preferTimeZone ? preferTimeZone : defaultTimeZone;
+export let timeZone = preferTimeZone ? preferTimeZone : userTimezone;
export function refreshTimeZone() {
timeZone = Auth.GetPreference("timeZone");
- timeZone = timeZone ? timeZone : defaultTimeZone;
+ timeZone = timeZone ? timeZone : userTimezone;
}
export function formatLocalTime(time) {