diff --git a/layouts/dashboard.vue b/layouts/dashboard.vue index 11f6d2f..d2bc095 100644 --- a/layouts/dashboard.vue +++ b/layouts/dashboard.vue @@ -231,7 +231,7 @@ const openUserManagement = () => { }; const navigateToProfile = () => { - navigateTo('/dashboard/user'); + navigateTo('/dashboard/profile'); }; const navigateToSettings = () => { diff --git a/pages/dashboard/board.vue b/pages/dashboard/board.vue index 8237a69..0d39900 100644 --- a/pages/dashboard/board.vue +++ b/pages/dashboard/board.vue @@ -12,32 +12,34 @@

MonacoUSA Board Portal

- - mdi-shield-account - Board Member - +
+ + mdi-shield-account + Board Member + +
- + - mdi-calendar-clock -

Meetings

-

Schedule and manage board meetings

+ mdi-calendar +

Events

+

View and manage association events

- Manage Meetings + View Events
- + mdi-account-group

Members

@@ -52,38 +54,6 @@
- - - - mdi-chart-line -

Reports

-

Financial and activity reports

- - View Reports - -
-
- - - - mdi-tools -

Tools

-

Board management tools

- - Access Tools - -
-
@@ -104,13 +74,9 @@
{{ stats.activeMembers }}
Active Members
- -
{{ stats.upcomingMeetings }}
-
Upcoming Meetings
-
- -
{{ stats.pendingActions }}
-
Pending Actions
+ +
{{ stats.upcomingEvents }}
+
Upcoming Events
@@ -121,24 +87,24 @@ mdi-calendar-today - Next Meeting + Next Event -
Board Meeting
+
{{ nextEvent.title }}
mdi-calendar - {{ nextMeeting.date }} + {{ nextEvent.date }}
mdi-clock - {{ nextMeeting.time }} + {{ nextEvent.time }}
View Details @@ -159,82 +125,6 @@
- - - - - - mdi-history - Recent Board Activity - - - - - - {{ activity.title }} - {{ activity.description }} - - - {{ activity.status }} - - - - - - - - - - - - - - mdi-lightning-bolt - Quick Actions - - - - - - mdi-plus - Schedule New Meeting - - - - - mdi-bullhorn - Create Announcement - - - - - mdi-file-chart - Generate Report - - - - - - - (null); const stats = ref({ totalMembers: 0, activeMembers: 0, - upcomingMeetings: 0, - pendingActions: 0 + upcomingEvents: 0 }); -const nextMeeting = ref({ +const nextEvent = ref({ id: null, - title: 'Board Meeting', + title: 'Next Event', date: 'Loading...', time: 'Loading...', location: 'TBD', - description: 'Monthly board meeting' + description: 'Upcoming association event' }); const isLoading = ref(true); @@ -321,8 +210,7 @@ const loadBoardData = async () => { stats.value = { totalMembers: statsData.data.totalMembers || 0, activeMembers: statsData.data.activeMembers || 0, - upcomingMeetings: statsData.data.upcomingMeetings || 0, - pendingActions: statsData.data.pendingActions || 0 + upcomingEvents: statsData.data.upcomingEvents || 0 }; } } @@ -331,13 +219,13 @@ const loadBoardData = async () => { if (meetingResponse.status === 'fulfilled') { const meetingData = meetingResponse.value as any; if (meetingData?.success) { - nextMeeting.value = { + nextEvent.value = { id: meetingData.data.id, - title: meetingData.data.title || 'Board Meeting', + title: meetingData.data.title || 'Next Event', date: meetingData.data.date || 'TBD', time: meetingData.data.time || 'TBD', location: meetingData.data.location || 'TBD', - description: meetingData.data.description || 'Monthly board meeting' + description: meetingData.data.description || 'Upcoming association event' }; } } @@ -401,9 +289,10 @@ const handleMemberUpdated = (member: Member) => { // stats.value = await fetchUpdatedStats(); }; -// Navigation methods (placeholder implementations) -const navigateToMeetings = () => { - console.log('Navigate to meetings'); +// Navigation methods +const navigateToEvents = () => { + // Navigate to events page + navigateTo('/dashboard/events'); }; const navigateToMembers = () => { @@ -411,16 +300,8 @@ const navigateToMembers = () => { navigateTo('/dashboard/member-list'); }; -const navigateToReports = () => { - console.log('Navigate to reports'); -}; - -const navigateToTools = () => { - console.log('Navigate to tools'); -}; - -const viewMeetingDetails = () => { - console.log('View meeting details'); +const viewEventDetails = () => { + console.log('View event details'); }; const scheduleNewMeeting = () => { diff --git a/pages/dashboard/profile.vue b/pages/dashboard/profile.vue index 7fcf151..85b950e 100644 --- a/pages/dashboard/profile.vue +++ b/pages/dashboard/profile.vue @@ -341,6 +341,33 @@ + + + + + + + mdi-help-circle-outline + Need Help? + + +

+ If you need assistance or have questions about your membership, + please don't hesitate to contact our support team. +

+ + mdi-email + Contact Support + +
+
+
+
@@ -596,6 +623,23 @@ const getDaysRemainingColor = (days: number): string => { return 'text-success'; }; +const contactSupport = () => { + const subject = encodeURIComponent('MonacoUSA Portal Support Request'); + const body = encodeURIComponent(`Hello, + +I need assistance with: + +[Please describe your issue] + +Member ID: ${memberData.value?.member_id || 'Not provided'} +Name: ${fullName.value || 'Not provided'} +Email: ${memberData.value?.email || user.value?.email || 'Not provided'} + +Thank you!`); + + window.open(`mailto:support@monacousa.org?subject=${subject}&body=${body}`, '_self'); +}; + // Initialize onMounted(() => { loadMemberData();