OpenLake/Student_Database_COSA

[FOSSOVERFLOW-25] feat: Support Private Room Bookings (Private Events / Meetings)

Open

#229 aperta il 18 feb 2026

Vedi su GitHub
 (0 commenti) (0 reazioni) (0 assegnatari)JavaScript (56 fork)auto 404
enhancementhelp wanted

Metriche repository

Star
 (13 star)
Metriche merge PR
 (Metriche PR in attesa)

Descrizione

Description

Currently, rooms can only be booked by creating a public event. There is no way to book a room for internal purposes like meetings, practice sessions, or informal gatherings.

We need to introduce a "Private Event" (backend terminology) that allows eligible users to book rooms without creating a public-facing event.

On the frontend, this can be shown as something like "Meeting" or "Internal Booking".


Requirements

Backend

  • Introduce a new event type: private_event
  • Store this in DB as a private event
  • Ensure private events are not visible in public event listings
  • Integrate with existing clash detection logic

Authorization

  • Only Core Members and above can create private bookings
  • Roles should be validated in backend middleware

Frontend

  • Add option while booking:
    • "Public Event"
    • "Internal Meeting / Private Booking"
  • Hide private events from public calendar/event feed
  • Show private bookings only to authorized users (if required)

Booking Rules

  • Private bookings must:
    • Use same clash detection logic
    • Respect room availability
    • Follow role permissions

Acceptance Criteria

  • Authorized users can create private room bookings
  • Private bookings don’t appear as public events
  • Clash detection works for private bookings
  • Role-based access is enforced
  • UI clearly differentiates between public and private bookings

Guida contributor