fix: removed default view logic from router
This commit is contained in:
parent
9a73b0ee4d
commit
feb5536ec8
@ -1,11 +1,11 @@
|
|||||||
import { createRouter, createWebHistory } from 'vue-router'
|
import { createRouter, createWebHistory } from 'vue-router'
|
||||||
import { usersStore } from '@/stores/users'
|
import { usersStore } from '@/stores/users'
|
||||||
import { sessionStore } from '@/stores/session'
|
import { sessionStore } from '@/stores/session'
|
||||||
import { viewsStore } from '@/stores/views'
|
|
||||||
|
|
||||||
const routes = [
|
const routes = [
|
||||||
{
|
{
|
||||||
path: '/',
|
path: '/',
|
||||||
|
redirect: { name: 'Leads' },
|
||||||
name: 'Home',
|
name: 'Home',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -130,30 +130,14 @@ let router = createRouter({
|
|||||||
router.beforeEach(async (to, from, next) => {
|
router.beforeEach(async (to, from, next) => {
|
||||||
const { users } = usersStore()
|
const { users } = usersStore()
|
||||||
const { isLoggedIn } = sessionStore()
|
const { isLoggedIn } = sessionStore()
|
||||||
const { views, getDefaultView } = viewsStore()
|
|
||||||
|
|
||||||
await users.promise
|
await users.promise
|
||||||
await views.promise
|
|
||||||
|
|
||||||
if (from.meta?.scrollPos) {
|
if (from.meta?.scrollPos) {
|
||||||
from.meta.scrollPos.top = document.querySelector('#list-rows')?.scrollTop
|
from.meta.scrollPos.top = document.querySelector('#list-rows')?.scrollTop
|
||||||
}
|
}
|
||||||
|
|
||||||
if (to.path === '/') {
|
if (to.name === 'Login' && isLoggedIn) {
|
||||||
const defaultView = getDefaultView()
|
|
||||||
if (defaultView?.route_name) {
|
|
||||||
if (defaultView.is_view) {
|
|
||||||
next({
|
|
||||||
name: defaultView.route_name,
|
|
||||||
query: { view: defaultView.name },
|
|
||||||
})
|
|
||||||
} else {
|
|
||||||
next({ name: defaultView.route_name })
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
next({ name: 'Leads' })
|
|
||||||
}
|
|
||||||
} else if (to.name === 'Login' && isLoggedIn) {
|
|
||||||
next({ name: 'Leads' })
|
next({ name: 'Leads' })
|
||||||
} else if (to.name !== 'Login' && !isLoggedIn) {
|
} else if (to.name !== 'Login' && !isLoggedIn) {
|
||||||
next({ name: 'Login' })
|
next({ name: 'Login' })
|
||||||
|
|||||||
@ -34,6 +34,7 @@ export const viewsStore = defineStore('crm-views', (doctype) => {
|
|||||||
(!view.public && view.default) ||
|
(!view.public && view.default) ||
|
||||||
(view.public &&
|
(view.public &&
|
||||||
view.default &&
|
view.default &&
|
||||||
|
view.user_list &&
|
||||||
JSON.parse(view.user_list).includes(user))
|
JSON.parse(view.user_list).includes(user))
|
||||||
) {
|
) {
|
||||||
defaultView.value = view
|
defaultView.value = view
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user