Calendar Management
Manage all community events and activities through a comprehensive calendar system with multiple views and categorization.Activity Events System
The calendar manages Activity Events which are distinct from Zoom meetings but can be synchronized. Fromtypes.ts:lines 716-737:
Creating Activities
Navigate to Calendar Module → Actividades tab.Basic Information
Fill in required fields:
- Title: Event name
- Description: Rich HTML content (supports formatting)
- Start Date / End Date: Date range
- Start Time / End Time: Time range (24-hour format)
Configure Modality
Choose event type:
| Modality | Description | Requirements |
|---|---|---|
Virtual | Online only | Zoom URL optional |
Presencial | In-person | Physical location |
Híbrida | Both virtual and in-person | Zoom URL + location |
Categorize
Assign a category (configured in Categories tab):
- Each category has a color and icon
- Used for visual organization in calendar views
Set Organizer
Select organizer from admin users in the system:From
CalendarModule.tsx:lines 111-112.Configure Status
Set publication status:
- Borrador: Not visible to members
- Publicado: Live and visible
- Archivado: Hidden but preserved
Calendar Views
The calendar tab provides three visualization modes.Day View
Shows all events for a single day in timeline format. FromCalendarModule.tsx:lines 647-677:
- Events displayed with time blocks
- Click event to view details
- Color-coded by category
Week View
Displays 7-day grid with events. FromCalendarModule.tsx:lines 680-720:
- 7 columns (Sunday–Saturday)
- Today highlighted with indigo accent
- Multi-day events span columns
Month View
Full monthly calendar grid. FromCalendarModule.tsx:lines 723-768:
- Shows up to 3 events per day
- “+X más” indicator for additional events
- Color-coded dots for category
- Today highlighted
Navigation Controls
Use navigation bar to move between dates:- ← Button: Previous day/week/month
- Hoy Button: Jump to today
- → Button: Next day/week/month
- View Toggles: Switch between Día, Semana, Mes
CalendarModule.tsx:lines 772-795.
Activity Categories
Organize activities by type using custom categories.Category Structure
Fromtypes.ts:lines 708-712:
Managing Categories
Navigate to Calendar Module → Categorías tab.Create Category
In the “Nueva Categoría” card:
- Nombre: Category name (e.g., “Meditación”, “Retiro”)
- Color: Click color picker or enter hex code
CalendarModule.tsx:lines 326-402.
Event Status Workflow
Status Colors
FromCalendarModule.tsx:lines 32-35:
Quick Toggle
In the activities list, click the toggle icon to switch between:- Borrador ⇄ Publicado
CalendarModule.tsx:lines 137-141:
Modality Configuration
FromCalendarModule.tsx:lines 26-30:
Virtual Events
Whenmodality === 'Virtual':
- Zoom URL field appears in form
- Can link to existing Zoom meeting via
linkedMeetingId - Syncs with Meetings Module
CalendarModule.tsx:lines 257-260:
Filtering and Search
Activities list supports filtering:- Search: Filter by title (case-insensitive)
- Status Filter: Dropdown to filter by Borrador/Publicado/Archivado/All
CalendarModule.tsx:lines 149-151:
Mass Email Distribution
Navigate to Calendar Module → Envío Masivo tab.Sending Event Invitations
Select Activity
Choose a published activity from dropdown.System auto-populates:
- Subject: “Te invitamos: ”
- Body: Template message with event details
Customize Message
Edit subject and body text.Preview shows:
- Event image (if provided)
- Title, date, time, modality
- Description excerpt
CalendarModule.tsx:lines 408-485.
Emails are processed through the same queue system as campaigns, respecting
MAX_EMAILS_PER_HOUR limit.Analytics Dashboard
Navigate to Calendar Module → Analytics tab to view metrics.Key Performance Indicators
FromCalendarModule.tsx:lines 507-512:
Participation Ranking
Shows top 10 members by points:- Points: Accumulated from participation + badges
- Participations: Number of events attended
- Badges: Gamification awards received
db.gamification.getRanking() (see Gamification).
Modality Distribution
Bar chart showing breakdown:CalendarModule.tsx:lines 558-574.
Recent Feedback
Displays last 5 post-event evaluations with star ratings. See Feedback System for details.Synchronization with Zoom Meetings
Activities withmodality: 'Virtual' can link to Zoom meetings.
Bidirectional Sync
- Activity → Meeting: Setting
zoomUrlcreates/updatesCalendarEvent - Meeting → Activity: Creating Zoom meeting can auto-create
ActivityEvent
types.ts:lines 245-247 and types.ts:lines 732-733.
SEO Configuration
Activities support full SEO metadata. Fromtypes.ts:lines 69-75:
Best Practices
Use Categories
Create categories for each activity type (Meditation, Workshop, Retreat).
Publish Early
Publish events at least 1 week in advance for member planning.
Feature Strategically
Only feature 3-5 activities at a time in dashboard to avoid clutter.
Use Tags for Search
Add descriptive tags (“beginner”, “advanced”, “online”) for filtering.
Troubleshooting
Activity Not Appearing in Calendar
- Verify status is
Publicado - Check date is within viewed month/week
- Ensure category exists and is assigned
Featured Activity Not in Dashboard
- Confirm
featuredInDashboard: true - Check member’s profile tags match activity tags (if filtering enabled)
- Verify activity date is current or future
Zoom URL Not Working
- Ensure URL starts with
https://zoom.us/j/ - Check URL is complete with meeting ID
- Verify linked meeting exists in Meetings Module
Related Documentation
- Zoom Integration - Virtual meeting setup
- Feedback System - Post-event surveys
- Gamification - Participation rewards