新增tg和第三方邮件转发
This commit is contained in:
70
mail-vue/src/init/init.js
Normal file
70
mail-vue/src/init/init.js
Normal file
@@ -0,0 +1,70 @@
|
||||
import { useUserStore } from "@/store/user.js";
|
||||
import { useSettingStore } from "@/store/setting.js";
|
||||
import { useAccountStore } from "@/store/account.js";
|
||||
import { loginUserInfo } from "@/request/my.js";
|
||||
import { permsToRouter } from "@/utils/perm.js";
|
||||
import router from "@/router";
|
||||
import { websiteConfig } from "@/request/setting.js";
|
||||
import {cvtR2Url} from "@/utils/convert.js";
|
||||
|
||||
export async function init() {
|
||||
document.title = 'loading...'
|
||||
|
||||
const settingStore = useSettingStore();
|
||||
const userStore = useUserStore();
|
||||
const accountStore = useAccountStore();
|
||||
|
||||
const token = localStorage.getItem('token');
|
||||
|
||||
let setting = null;
|
||||
|
||||
if (token) {
|
||||
const userPromise = loginUserInfo().catch(e => {
|
||||
console.error(e);
|
||||
return null;
|
||||
});
|
||||
|
||||
const [s, user] = await Promise.all([websiteConfig(), userPromise]);
|
||||
setting = s;
|
||||
settingStore.settings = setting;
|
||||
settingStore.domainList = setting.domainList;
|
||||
document.title = setting.title;
|
||||
|
||||
if (user) {
|
||||
accountStore.currentAccountId = user.accountId;
|
||||
userStore.user = user;
|
||||
|
||||
const routers = permsToRouter(user.permKeys);
|
||||
routers.forEach(routerData => {
|
||||
router.addRoute('layout', routerData);
|
||||
});
|
||||
}
|
||||
|
||||
} else {
|
||||
setting = await websiteConfig();
|
||||
settingStore.settings = setting;
|
||||
settingStore.domainList = setting.domainList;
|
||||
document.title = setting.title;
|
||||
}
|
||||
|
||||
const loading = document.getElementById('loading-first');
|
||||
|
||||
if (!setting.background) {
|
||||
loading.remove();
|
||||
return;
|
||||
}
|
||||
|
||||
const img = new Image();
|
||||
img.src = cvtR2Url(setting.background);
|
||||
img.onload = () => {
|
||||
loading.remove();
|
||||
};
|
||||
|
||||
img.onerror = () => {
|
||||
|
||||
console.warn('背景图片加载失败:', img.src);
|
||||
loading.remove();
|
||||
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user