feat: split admin dashboard, improve match ops, and player closed-match UX
Admin: add match/player overview sub-nav; refine settlement flow and league match management UI; improve action button enabled/disabled styles; enhance logo upload and outright odds sync. API: expose matchPhase/bettingOpen for closed matches; league publish guards; settlement preview with auto score save; outright team auto-sync. Player: watermark for closed/settled states; keep match and bet details visible; remove default login credentials. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -11,7 +11,20 @@ const router = createRouter({
|
||||
component: () => import('../layouts/ManageLayout.vue'),
|
||||
meta: { auth: true },
|
||||
children: [
|
||||
{ path: '', component: () => import('../views/HomeEntry.vue') },
|
||||
{
|
||||
path: '',
|
||||
component: () => import('../views/HomeEntry.vue'),
|
||||
children: [
|
||||
{
|
||||
path: '',
|
||||
component: () => import('../views/dashboard/DashboardMatches.vue'),
|
||||
},
|
||||
{
|
||||
path: 'dashboard/players',
|
||||
component: () => import('../views/dashboard/DashboardPlayers.vue'),
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
path: 'users',
|
||||
component: () => import('../views/AgentManager.vue'),
|
||||
@@ -140,6 +153,10 @@ router.beforeEach(async (to) => {
|
||||
return '/';
|
||||
}
|
||||
|
||||
if (to.path.startsWith('/dashboard/') && !auth.isAdmin.value) {
|
||||
return '/';
|
||||
}
|
||||
|
||||
if (to.meta.agentOnly && !auth.isAgent.value) {
|
||||
return '/';
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user