Commit Graph

46 Commits

Author SHA1 Message Date
Matt 64a12ecd5b Implement glass-bolt design system across platform
Build And Push Image / docker (push) Successful in 1m53s Details
- Removed 19 test/prototype pages while preserving BoltAI-Mockups for reference
- Created comprehensive DESIGN-SYSTEM.md documentation
- Updated and consolidated SCSS structure
- Applied subtle glassmorphic design to admin portal pages
- Updated admin members page with new glass-bolt styling
- Implemented consistent design patterns:
  - Glass cards with 60% white opacity and 4px blur
  - Subtle borders and soft shadows
  - Monaco red accent color (#dc2626)
  - Clean typography without excessive gradients
  - Hover states with gentle lift animations

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 17:41:41 +02:00
Matt c9e181e8a8 Sort member lists by last name instead of first name
Build And Push Image / docker (push) Successful in 2m11s Details
- Updated member-list.vue to sort by last name with new sort options
- Changed default sort to lastname-asc
- Added Last Name and First Name sort options in dropdown
- Updated board/members/index.vue to include name field and sort by last name
- Updated admin/members/index.vue to include name field and sort by last name
- All member lists now consistently sort alphabetically by last name
2025-08-31 18:58:16 +02:00
Matt 9fa9db9b8a Complete infrastructure reorganization to role-based structure
Build And Push Image / docker (push) Successful in 1m50s Details
- Created all missing admin pages (users, settings, events, members, payments)
- Created board pages (governance, meetings)
- Updated dashboard router to use new /admin, /board, /member structure
- Added isMember alias to useAuth composable for consistency
- All pages now use correct role-based layouts and middleware
- Build verified successfully

The platform now has a clean separation:
- /admin/* - Administrator dashboard and tools
- /board/* - Board member governance and meetings
- /member/* - Member portal and resources

Next steps: Complete remaining member pages and clean up old dashboard files
2025-08-30 22:44:04 +02:00
Matt 7c49b9db66 fix: Revert dashboard routing to use existing structure
Build And Push Image / docker (push) Successful in 1m49s Details
- Created missing admin.ts middleware file
- Reverted dashboard router to use old /dashboard/{tier} structure
- Production deployment still uses the old structure
- New role-based structure (/admin/dashboard, etc.) will be enabled later
- Fixes dashboard display issue where nothing was showing

The new structure is ready but needs gradual deployment to avoid breaking production.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-30 22:24:27 +02:00
Matt d9d8627e97 feat: Reorganize platform into member, board, and admin sections
Build And Push Image / docker (push) Failing after 55s Details
Major platform reorganization implementing role-based portal sections:

## Infrastructure Changes
- Created role-based middleware for member, board, and admin access
- Updated main dashboard router to redirect based on highest privilege
- Implemented access hierarchy: Admin > Board > Member

## New Layouts
- Member layout: Simplified navigation for regular members
- Board layout: Enhanced tools for board member management
- Admin layout: Full system administration capabilities

## Member Portal (/member/*)
- Dashboard: Profile overview, events, payments, activity tracking
- Events: Browse, register, and manage event participation
- Profile: Complete personal and professional information management
- Resources: Access to documents, guides, FAQs, and quick links

## Board Portal (/board/*)
- Dashboard: Statistics, dues management, board-specific tools
- Members: Comprehensive member management with filtering

## Admin Portal (/admin/*)
- Dashboard: System overview and administrative controls (existing)

## Design Implementation
- Monaco red (#dc2626) as primary accent color
- Modern card-based layouts with consistent spacing
- Responsive design for all screen sizes
- Glass morphism effects for enhanced visual appeal

This reorganization provides clear separation of concerns based on user privileges while maintaining a cohesive user experience across all sections.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-30 22:00:59 +02:00
Matt c39936984b Implement MonacoUSA Portal redesign foundations
Build And Push Image / docker (push) Failing after 1m11s Details
- Added VueUse Motion for animations with custom presets
- Created base UI component library with glass morphism effects:
  * GlassCard - Flexible card component with 4 variants
  * MonacoButton - Multi-variant button system
  * FloatingInput - Modern input with floating labels
  * StatsCard - Dashboard statistics display
  * AnimatedNumber - Smooth number animations
  * Icon system - Modular icon components
- Created comprehensive page mockups:
  * Dashboard mockup with stats, activity feed, and widgets
  * Events page with filtering, search, and calendar
- Established Monaco brand design system (red #dc2626)
- Configured spring animations and glass effects

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-30 18:25:21 +02:00
Matt 4adbb0465a fixes
Build And Push Image / docker (push) Successful in 1m29s Details
2025-08-14 22:05:12 +02:00
Matt 5d3518d256 fixes
Build And Push Image / docker (push) Successful in 1m37s Details
2025-08-14 15:44:18 +02:00
Matt 503d68cd2d Replace date-fns with native date formatting and remove unused code
Build And Push Image / docker (push) Successful in 1m34s Details
Remove date-fns dependency in favor of native Intl.DateTimeFormat APIs, clean up obsolete admin endpoints, utility files, and archived documentation. Consolidate docs structure and remove unused plugins.
2025-08-14 15:08:40 +02:00
Matt 1875fac7d4 fixes
Build And Push Image / docker (push) Successful in 1m29s Details
2025-08-13 23:03:49 +02:00
Matt 3d565e8185 fixes
Build And Push Image / docker (push) Successful in 1m24s Details
2025-08-13 22:53:14 +02:00
Matt fc1d691950 fixes
Build And Push Image / docker (push) Successful in 1m26s Details
2025-08-13 22:43:40 +02:00
Matt b49148cf95 fixes
Build And Push Image / docker (push) Has been cancelled Details
2025-08-13 18:55:49 +02:00
Matt db19eb2708 fixes
Build And Push Image / docker (push) Successful in 3m41s Details
2025-08-13 15:35:53 +02:00
Matt 3620bd8b53 Fix RSVP API calls and compact MemberCard UI design
Build And Push Image / docker (push) Successful in 4m2s Details
2025-08-13 14:02:29 +02:00
Matt 5473555977 Add rich text editor and enhanced date picker to event dialogs
Build And Push Image / docker (push) Failing after 3m11s Details
Replace basic textarea with VuetifyTiptap rich text editor for event descriptions, supporting formatting options like bold, italic, headings, and lists. Replace native datetime inputs with VueDatePicker components featuring timezone support (Monaco/UTC) and improved UX. Update dependencies and add necessary plugins to support the new components.
2025-08-13 13:02:12 +02:00
Matt 072acf95eb Fix type safety and data consistency in events system
Build And Push Image / docker (push) Successful in 3m25s Details
- Add proper TypeScript type annotations and assertions
- Handle string/number conversion for attendee counts consistently
- Improve null/undefined checks for events array
- Make event handlers async for better error handling
- Fix data type inconsistencies between components and API
2025-08-12 17:23:42 +02:00
Matt 287af29f6c feat(board): Add real data integration for board dashboard
Build And Push Image / docker (push) Successful in 3m22s Details
- Create /api/board/stats endpoint for member statistics and overview data
- Create /api/board/next-meeting endpoint for upcoming meeting information
- Update board.vue to fetch real data instead of using mock data
- Add loading states and error handling with graceful fallbacks
- Board Overview now shows actual member counts and pending actions
- Next Meeting section displays real event data when available

The board dashboard now displays live data from the database while maintaining
fallback functionality if any data sources are unavailable.
2025-08-12 14:18:55 +02:00
Matt f096897129 Add event management system with calendar and CRUD operations
Build And Push Image / docker (push) Failing after 2m37s Details
- Add EventCalendar component with FullCalendar integration
- Create event CRUD dialogs and upcoming event banner
- Implement server-side events API and database utilities
- Add events dashboard page and navigation
- Improve dues calculation with better overdue day logic
- Install FullCalendar and date-fns dependencies
2025-08-12 04:25:35 +02:00
Matt ea6a722364 Fix email template compatibility and enhance user dashboard
Build And Push Image / docker (push) Successful in 3m20s Details
- Convert all email templates to table-based layouts for compatibility with Outlook, Gmail, Apple Mail, etc.
- Use only inline CSS and email-safe properties
- Fix welcome.hbs, verification.hbs, password-reset.hbs, dues-reminder.hbs, test.hbs templates
- Enhanced user dashboard with complete member information (Member ID, registration date, dues status, etc.)
- Added proper loading states and error handling for member data
- Improved member profile page with comprehensive information display
- Fixed missing wiring information in user and profile screens as requested
2025-08-11 16:26:51 +02:00
Matt abf6ade8cd Add comprehensive dues tracking with overdue calculations and enhanced UI
Build And Push Image / docker (push) Successful in 3m17s Details
2025-08-11 15:29:42 +02:00
Matt 7a8c88c341 Implement grace period system for member dues management
Build And Push Image / docker (push) Successful in 2m55s Details
- Add grace period logic for new members (1 month from join date)
- Enhance dues status computation with actual payment date validation
- Update member card to show grace period status with warning indicators
- Remove overdue dues banner from member list
- Add payment due date calculation in registration process
- Update email templates for improved member communication
2025-08-11 15:03:44 +02:00
Matt d9ef5bbdeb feat: Enhanced dues overdue system with detailed time tracking
Build And Push Image / docker (push) Successful in 2m42s Details
- Enhanced update-overdue-statuses API to calculate and return specific overdue durations (years/months)
- Updated overdue-count API to provide detailed member information with overdue durations
- Enhanced DuesOverdueBanner component to display expandable list of overdue members with their specific overdue time
- Added automatic marking of members as inactive when dues are over 1 year overdue
- Improved UI to show 'Dues Overdue - X Members Affected' with detailed breakdown
- Members with overdue dues now display exact time overdue (e.g., '2 years 3 months overdue')
- Added proper TypeScript interfaces for overdue member data
- Enhanced banner shows inactive status and overdue duration for each affected member
2025-08-10 23:42:17 +02:00
Matt ff85d1c722 Add overdue dues management system with notifications and status updates
Build And Push Image / docker (push) Successful in 2m55s Details
- Create DuesOverdueBanner component for displaying overdue member counts
- Add API endpoints for overdue count retrieval and status updates
- Integrate overdue dues banner into admin and member list dashboards
- Implement handlers for viewing overdue members and updating statuses
- Add dues management section to admin dashboard
2025-08-10 23:29:48 +02:00
Matt d3c3a865ba Add dues management system with UI improvements
Build And Push Image / docker (push) Successful in 3m3s Details
- Add BoardDuesManagement and DuesActionCard components
- Create API endpoints for dues status tracking and payment marking
- Integrate dues management section into board dashboard
- Move create portal account button to member card action buttons
- Add edit button to member view dialog
- Implement member update handlers and navigation between views
2025-08-10 23:19:48 +02:00
Matt ecae3795ee Add global branding and implement member ID system
Build And Push Image / docker (push) Successful in 3m2s Details
- Add MonacoUSA logo component with global header placement
- Implement member ID generation and migration system
- Create profile page and improve dashboard navigation
- Add member ID as payment reference in dues banner
- Enable support contact functionality with pre-filled email
2025-08-10 16:49:23 +02:00
Matt c4a0230f42 Fix portal account creation and improve email handling
Build And Push Image / docker (push) Successful in 2m56s Details
- Add explicit POST method to portal account creation API call
- Improve error handling with specific messages for different failure cases
- Remove SMTP verification step that was causing issues with some servers
- Make email sending non-critical to portal account creation success
- Add better response data handling for keycloak_id
- Add integration review documentation
2025-08-09 16:13:52 +02:00
Matt 8d872f9a04 Refactor admin dashboard and fix mobile phone input dropdown
Build And Push Image / docker (push) Successful in 2m54s Details
- Simplify admin dashboard by consolidating configuration sections
- Fix mobile dropdown display issues in PhoneInputWrapper component
- Add proper flex layout and minimum height for mobile country list
- Update email configuration and testing functionality
- Remove redundant configuration cards in favor of unified portal settings
2025-08-09 16:05:00 +02:00
Matt 97a0b5eea6 fixes
Build And Push Image / docker (push) Successful in 2m54s Details
2025-08-08 23:47:21 +02:00
Matt 72492fb754 fixes
Build And Push Image / docker (push) Successful in 3m5s Details
2025-08-08 20:07:47 +02:00
Matt 4365cc53ff fixes
Build And Push Image / docker (push) Successful in 2m55s Details
2025-08-08 19:55:32 +02:00
Matt 0193269749 Created a beautiful, modern phone input
Build And Push Image / docker (push) Successful in 2m41s Details
2025-08-08 00:25:44 +02:00
Matt 9f9cb7db53 comprehensive diagnostic and fix system for the "undefined" member display issue
Build And Push Image / docker (push) Successful in 2m49s Details
2025-08-07 23:57:18 +02:00
Matt dcce2050ee resolved all member management issues, including the critical member creation bug.
Build And Push Image / docker (push) Failing after 2m36s Details
2025-08-07 23:13:31 +02:00
Matt f6bc81cb01 implemented comprehensive member card enhancements with complete multiple nationality support and dues management features.
Build And Push Image / docker (push) Successful in 2m54s Details
2025-08-07 22:53:45 +02:00
Matt 9202509c9c updated member list with improved filtering system and enhanced editing capabilities.
Build And Push Image / docker (push) Successful in 2m53s Details
2025-08-07 22:34:51 +02:00
Matt 5fe015af51 Replace flag-icons with vue-country-flag-next and improve UI styling
Build And Push Image / docker (push) Failing after 2m52s Details
- Replace flag-icons CSS library with vue-country-flag-next component
- Update CountryFlag component to use new library API
- Improve avatar colors with high-contrast color palette
- Adjust dashboard layout column sizing
- Add new EditMemberDialog component
- Remove unused flag-icons CSS dependency
2025-08-07 21:09:00 +02:00
Matt 676420c3fa Refactor admin dashboard layout and improve NocoDB settings dialog handling
Build And Push Image / docker (push) Successful in 3m14s Details
2025-08-07 19:57:03 +02:00
Matt 6f2037e01c Add NocoDB configuration settings and restructure dashboard navigation
Build And Push Image / docker (push) Successful in 3m2s Details
- Add NocoDBSettingsDialog component with API endpoints for config management
- Update dashboard navigation routes and menu structure
- Integrate external user management via auth portal
- Add NocoDB settings dialog to admin panel
2025-08-07 19:46:27 +02:00
Matt af99ea48e2 Add member management system with NocoDB integration
Build And Push Image / docker (push) Successful in 3m5s Details
- Add member CRUD operations with API endpoints
- Implement member list page with card-based layout
- Add member creation and viewing dialogs
- Support multiple nationalities with country flags
- Include phone number input with international formatting
- Integrate NocoDB as backend database
- Add comprehensive member data types and utilities
2025-08-07 19:20:29 +02:00
Matt c6a57c7922 Fix redirect loops and SSR hydration issues in auth flow
Build And Push Image / docker (push) Successful in 2m59s Details
- Replace ref with useState in useAuth for SSR compatibility
- Move navigation logic from top-level to onMounted hooks
- Add guest middleware to login page to prevent auth conflicts
- Simplify dashboard auth checks by relying on middleware
- Add loading state to index page during auth resolution

This prevents infinite redirect loops and hydration mismatches that
occurred during server-side rendering when navigating between
authenticated and unauthenticated states.
2025-08-07 17:21:18 +02:00
Matt 2843bcf4f5 Fix iOS Safari auth loops and simplify admin dashboard
Build And Push Image / docker (push) Successful in 3m4s Details
- Add session check throttling in useAuth to prevent iOS Safari authentication loops
- Simplify admin dashboard by removing complex system metrics and stats
- Remove system-metrics utility and streamline stats API endpoint
- Update admin interface to focus on core user and role management
2025-08-07 16:20:05 +02:00
Matt ec6958375c Add system monitoring with real-time metrics to admin dashboard
Build And Push Image / docker (push) Successful in 2m54s Details
- Add systeminformation package for system metrics collection
- Create system-metrics utility for CPU, memory, disk monitoring
- Update admin stats API to return real system health data
- Replace mock data with live system metrics in admin dashboard
- Update @vite-pwa/nuxt to v0.10.8
2025-08-07 15:51:16 +02:00
Matt d0c9c02bf9 Add PWA support with install banner and app icons
Build And Push Image / docker (push) Successful in 2m56s Details
- Configure @vite-pwa/nuxt module with manifest and service worker
- Add PWA install banner component to login page
- Include app icons (192x192, 512x512) and favicon assets
- Update admin dashboard layout and remove backup section
- Add PWA-related API endpoints and utility scripts
2025-08-07 15:46:17 +02:00
Matt 5c8bf15956 fix: streamline authentication check on dashboard mount and improve routing logic
Build And Push Image / docker (push) Successful in 2m42s Details
2025-08-07 14:42:05 +02:00
Matt cd29123e23 Refactor authentication system with tier-based access control
Build And Push Image / docker (push) Successful in 2m59s Details
- Replace group-based auth with user/board/admin tier system
- Add direct login functionality alongside OAuth
- Implement role-based middleware for route protection
- Create dashboard pages and admin API endpoints
- Add error handling page and improved user management
- Maintain backward compatibility with legacy role methods
2025-08-07 12:28:41 +02:00