> ## Documentation Index
> Fetch the complete documentation index at: https://wlumsa.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Content model

> Payload CMS collections and globals — what each stores, its key fields, and which domain it belongs to

The content model is defined in `wlumsa.org/src/payload.config.ts`. Collections are rows of content; globals are single-instance documents (one per site). All media files are stored in Supabase S3 storage via the `media` collection.

## Collections

### Prayer info

| Collection             | Slug             | What it stores                    | Key fields                               |
| ---------------------- | ---------------- | --------------------------------- | ---------------------------------------- |
| Jummah Timings         | `jummah-timings` | Jummah prayer slots and locations | `building`, `room_number`, `timing`      |
| Prayer Rooms           | `prayer-rooms`   | On-campus prayer room locations   | `building`, `room_number`, `description` |
| Prayer Spaces (Masjid) | `masjid`         | Broader prayer spaces and masjids | Defined in `PrayerSpaces` collection     |

### Events and forms

| Collection       | Slug               | What it stores                                         | Key fields                                                                                           |
| ---------------- | ------------------ | ------------------------------------------------------ | ---------------------------------------------------------------------------------------------------- |
| Events           | `events`           | Event listings and announcements                       | `name`, `date`, `time`, `location`, `locationLink`, `description`, `image` → media, `link`, `status` |
| Weekly Events    | `weekly-events`    | Recurring weekly event listings                        | Defined in `UI/WeeklyEvents`                                                                         |
| Daily Reminders  | `daily-reminders`  | Daily reminder content                                 | Defined in `DailyReminders`                                                                          |
| Forms            | `forms`            | Registration and event forms (via form-builder plugin) | `title`, `submissionLimit`, `releaseDate`, `closeDate`, `slug`, `webhook`                            |
| Form Submissions | `form-submissions` | Submitted form responses                               | `form` → forms, `submissionData`, `payment.amount`, `payment.status`                                 |

### Blog and media

| Collection | Slug         | What it stores                                  | Key fields                                                                                                                                                  |
| ---------- | ------------ | ----------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Blog Posts | `Posts`      | Blog articles                                   | `title`, `description`, `header_image` → media, `content` (rich text), `categories` → categories, `tags` → tags, `authors` → execs, `status`, `publishedAt` |
| Categories | `categories` | Blog post categories                            | `title` (inferred)                                                                                                                                          |
| Tags       | `tags`       | Blog post tags                                  | `title` (inferred)                                                                                                                                          |
| Recordings | `recording`  | Audio/video recordings (halaqah, khutbah, etc.) | `title`, `url`, `category` (Halaqah / Khutbah / Guest Speaker / Ramadan Series)                                                                             |
| Media      | `media`      | Uploaded image and file assets                  | `alt`, `caption`, file upload                                                                                                                               |

### Resources and services

| Collection   | Slug              | What it stores                  | Key fields                   |
| ------------ | ----------------- | ------------------------------- | ---------------------------- |
| Resources    | `resources`       | Student resource links and info | Defined in `UI/Resources`    |
| Services     | `services`        | Community service listings      | Defined in `UI/Services`     |
| IIA Services | `iia` (inferred)  | IIA-specific services           | Defined in `IIA` collection  |
| Socials      | `socials`         | Social media links              | Defined in `UI/Socials`      |
| Instagram    | `instagram`       | Instagram feed entries          | Defined in `UI/Instagram`    |
| FAQs         | `faqs` (inferred) | Frequently asked questions      | Defined in `FAQ` collection  |
| Link         | `link`            | Generic link entries            | Defined in `Link` collection |

### Halal directory

| Collection           | Slug                   | What it stores                     | Key fields                                                                                                                                                                            |
| -------------------- | ---------------------- | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Halal Directory      | `halal-directory`      | Halal restaurants                  | `name`, `category`, `slaughtered`, `shortDescription`, `location`, `googleMapsLink`, `website`, `image` → media, `is_on_campus`                                                       |
| Halal Grocery Stores | `halal-grocery-stores` | Halal grocery and specialty stores | `name`, `category`, `halalCertification`, `shortDescription`, `location`, `googleMapsLink`, `website`, `phone`, `hours`, `specialties`, `image` → media, `is_on_campus`, `priceRange` |

### Newsletter and outreach

| Collection        | Slug                | What it stores                            | Key fields                                                           |
| ----------------- | ------------------- | ----------------------------------------- | -------------------------------------------------------------------- |
| Members           | `members`           | MSA member signups                        | `firstName`, `lastName`, `mylaurierEmail`, `studentId`, `newsletter` |
| Individuals       | `individuals`       | Individual email contacts for newsletters | `firstName`, `lastName`, `email`                                     |
| Distribution List | `distribution-list` | Named email lists grouping individuals    | `listName`, `emails` → individuals                                   |
| Email Collection  | `email-collection`  | Email content or templates                | Defined in `EmailCollection` collection                              |

### Admin

| Collection | Slug       | What it stores                 | Key fields                                                          |
| ---------- | ---------- | ------------------------------ | ------------------------------------------------------------------- |
| Execs      | `execs`    | Admin and editor user accounts | `name`, `email`, `department`, `position`, `roles` (admin / editor) |
| Products   | `products` | Store products                 | Defined in `Products` collection                                    |
| Sizes      | `sizes`    | Product size options           | Defined in `Products/sizes`                                         |

***

## Globals

Globals are single-instance documents — there is only one of each, edited in place.

| Global                   | Slug                       | What it stores                                                                    | Domain           |
| ------------------------ | -------------------------- | --------------------------------------------------------------------------------- | ---------------- |
| Navbar                   | `nav`                      | Navigation menu items and links                                                   | All              |
| Footer                   | `footer`                   | Footer content and links                                                          | All              |
| Prayer Timings           | `prayer-timings`           | Full monthly prayer timetable (Fajr, Dhuhr, Asr, Maghrib, Isha with iqamah times) | Prayer info      |
| Weekly Prayer Timetables | `weekly-prayer-timetables` | Weekly prayer schedule view                                                       | Prayer info      |
| Events Settings          | `events-settings`          | Global settings for the events section                                            | Events and forms |

***

## Relationships

```mermaid theme={null}
graph LR
  Posts --> media[Media]
  Posts --> categories[Categories]
  Posts --> tags[Tags]
  Posts --> execs[Execs]
  Events --> media
  HalalDirectory[Halal Directory] --> media
  HalalGrocery[Halal Grocery Stores] --> media
  DistributionList[Distribution List] --> individuals[Individuals]
  FormSubmissions[Form Submissions] --> forms[Forms]
```

<Tip>
  When you delete a media record, any collection that references it (events, blog posts, halal directory entries) will lose its image. Check references before deleting.
</Tip>
