forked from jsnbuchanan/crowd-funder-for-time-pwa
Fix to new routing rules
This commit is contained in:
@@ -112,20 +112,31 @@ const router = createRouter({
|
||||
|
||||
router.beforeEach(async (to) => {
|
||||
// redirect to start page if app is uninitialized
|
||||
const publicPages = ["/start"];
|
||||
const authRequired = !publicPages.includes(to.path);
|
||||
|
||||
const publicPages = ["/start", "/account", "/import-account"];
|
||||
const isPublic = publicPages.includes(to.path);
|
||||
const appStore = useAppStore();
|
||||
console.log("to:", to.path);
|
||||
let return_path = "/start";
|
||||
if (authRequired) {
|
||||
switch (useAppStore().condition) {
|
||||
if (isPublic) {
|
||||
console.log(appStore.condition);
|
||||
switch (appStore.condition) {
|
||||
case "uninitialized":
|
||||
return_path = "/start";
|
||||
return_path = "";
|
||||
break;
|
||||
case "registering":
|
||||
return_path = useAppStore().lastView;
|
||||
return_path = to.path;
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
switch (appStore.condition) {
|
||||
case "registered":
|
||||
return_path = to.path;
|
||||
}
|
||||
}
|
||||
if (return_path == "") {
|
||||
return;
|
||||
} else {
|
||||
return return_path;
|
||||
}
|
||||
return return_path;
|
||||
});
|
||||
export default router;
|
||||
|
||||
@@ -4,19 +4,17 @@ import { defineStore } from "pinia";
|
||||
export const useAppStore = defineStore({
|
||||
id: "app",
|
||||
state: () => ({
|
||||
condition: JSON.parse(
|
||||
_condition:
|
||||
typeof localStorage["condition"] == "undefined"
|
||||
? "uninitialized"
|
||||
: localStorage["condition"]
|
||||
),
|
||||
lastView: JSON.parse(
|
||||
: localStorage["condition"],
|
||||
_lastView:
|
||||
typeof localStorage["lastView"] == "undefined"
|
||||
? "/start"
|
||||
: localStorage["lastView"]
|
||||
),
|
||||
: localStorage["lastView"],
|
||||
}),
|
||||
getters: {
|
||||
condition: (state) => state.condition,
|
||||
condition: (state) => state._condition,
|
||||
},
|
||||
actions: {
|
||||
reset() {
|
||||
|
||||
Reference in New Issue
Block a user