mirror of
https://github.com/sysadminsmedia/homebox.git
synced 2025-12-21 21:33:02 +01:00
Add redirect functionality after login (#76)
Gone is the frustration of scanning a qr code to only be sent to the homepage
This commit is contained in:
@@ -1,10 +1,12 @@
|
|||||||
export default defineNuxtRouteMiddleware(async () => {
|
export default defineNuxtRouteMiddleware(async () => {
|
||||||
const ctx = useAuthContext();
|
const ctx = useAuthContext();
|
||||||
const api = useUserApi();
|
const api = useUserApi();
|
||||||
|
const redirectTo = useState("authRedirect");
|
||||||
|
|
||||||
if (!ctx.isAuthorized()) {
|
if (!ctx.isAuthorized()) {
|
||||||
if (window.location.pathname !== "/") {
|
if (window.location.pathname !== "/") {
|
||||||
console.debug("[middleware/auth] isAuthorized returned false, redirecting to /");
|
console.debug("[middleware/auth] isAuthorized returned false, redirecting to /");
|
||||||
|
redirectTo.value = window.location.pathname;
|
||||||
return navigateTo("/");
|
return navigateTo("/");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -15,6 +17,7 @@ export default defineNuxtRouteMiddleware(async () => {
|
|||||||
if (error) {
|
if (error) {
|
||||||
if (window.location.pathname !== "/") {
|
if (window.location.pathname !== "/") {
|
||||||
console.debug("[middleware/user] user is null and fetch failed, redirecting to /");
|
console.debug("[middleware/user] user is null and fetch failed, redirecting to /");
|
||||||
|
redirectTo.value = window.location.pathname;
|
||||||
return navigateTo("/");
|
return navigateTo("/");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -103,6 +103,7 @@
|
|||||||
|
|
||||||
const loading = ref(false);
|
const loading = ref(false);
|
||||||
const loginPassword = ref("");
|
const loginPassword = ref("");
|
||||||
|
const redirectTo = useState("authRedirect");
|
||||||
|
|
||||||
async function login() {
|
async function login() {
|
||||||
loading.value = true;
|
loading.value = true;
|
||||||
@@ -116,7 +117,8 @@
|
|||||||
|
|
||||||
toast.success("Logged in successfully");
|
toast.success("Logged in successfully");
|
||||||
|
|
||||||
navigateTo("/home");
|
navigateTo(redirectTo.value || "/home");
|
||||||
|
redirectTo.value = null;
|
||||||
loading.value = false;
|
loading.value = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user