Merge branch 'master' into willianrod_feat/add-favicon-badges

# Conflicts:
#	package-lock.json
#	src/mixins/socket.js
This commit is contained in:
Louis Lam
2022-03-12 11:17:32 +08:00
118 changed files with 20645 additions and 4162 deletions

33
src/mixins/lang.js Normal file
View File

@@ -0,0 +1,33 @@
import { currentLocale } from "../i18n";
import { setPageLocale } from "../util-frontend";
const langModules = import.meta.glob("../languages/*.js");
export default {
data() {
return {
language: currentLocale(),
};
},
async created() {
if (this.language !== "en") {
await this.changeLang(this.language);
}
},
watch: {
async language(lang) {
await this.changeLang(lang);
},
},
methods: {
async changeLang(lang) {
let message = (await langModules["../languages/" + lang + ".js"]()).default;
this.$i18n.setLocaleMessage(lang, message);
this.$i18n.locale = lang;
localStorage.locale = lang;
setPageLocale();
}
}
};

View File

@@ -1,5 +1,6 @@
import { io } from "socket.io-client";
import { useToast } from "vue-toastification";
import jwt_decode from "jwt-decode";
import Favico from "favico.js";
const toast = useToast();
@@ -233,6 +234,15 @@ export default {
return (this.remember) ? localStorage : sessionStorage;
},
getJWTPayload() {
const jwtToken = this.$root.storage().token;
if (jwtToken && jwtToken !== "autoLogin") {
return jwt_decode(jwtToken);
}
return undefined;
},
getSocket() {
return socket;
},
@@ -281,10 +291,10 @@ export default {
},
logout() {
socket.emit("logout", () => { });
this.storage().removeItem("token");
this.socket.token = null;
this.loggedIn = false;
this.clearData();
},