Skip to content

Releases: psc-musicwebproject/website

v0.2-1 | Quality of Life Update

18 Feb 08:37

Choose a tag to compare

Pre-release

Description

This release introduces several improvements and bug fixes related to booking and club approval flows, as well as enhancements to how musical abilities are displayed in the admin interface. The most significant changes include correcting approval status checks, improving the display of user abilities, and refining notification and UI logic.

What's Changed

  • qol: recheck function call and value checking by @toonshouin in #6
    • Changed the approval status check in BookingController from 'waiting' to 'waiting_approval' to ensure bookings are properly identified for approval.
    • Updated the club member approval logic in ClubApprovalController to use the status === 'waiting' check for initial decisions, ensuring notifications are only sent on first-time approvals or rejections. Also, fixed a Thai translation in the rejection message.
    • Added a new static method parseAbilitiesForDisplay in ClubMember.php to parse and display musical abilities in a user-friendly format, omitting the "checked" text and providing Thai labels for each instrument.
    • Updated the club approval admin view to use the new ability display method and improved the column header for clarity. [1] [2]

Full Changelog: final-0.2...v0.2-1


This is a first-pre-release that suitable and approved to run in production without an issues (for the most part, still need optimization for some features)

v0.2 Final Exam Build

04 Feb 08:24

Choose a tag to compare

v0.2 Final Exam Build Pre-release
Pre-release

(This still be in 0.1 in the build, since it a initial build for v0.2 and will be update in the future.)

This introduces several new features and improvements across the codebase, focusing on notification handling, calendar event privacy, admin tooling, and developer experience. The most significant changes include enhanced notification logic for bookings and club registrations, improved privacy for calendar events, new endpoints for user and club photo lookup, and the addition of a full devcontainer setup for easier local development.

Notification and Booking Logic Improvements:

  • Enhanced booking creation and approval logic in BookingController: Now sends notifications to owners, attendees (internal and guest), and admins when bookings are created or approved. Also adds support for "book on behalf" for admins and robust attendee parsing from JSON.
  • Club approval and registration now trigger notifications to users and admins, including new notification classes for approved, denied, and submitted actions. [1] [2]

Calendar and Privacy Enhancements:

  • The new CalendarController API endpoint returns booking events, redacting owner names and attendee lists unless the viewer is an admin or authorized attendee, improving privacy for calendar data.

Admin and Utility Endpoints:

  • Added a user lookup endpoint in BookingController for searching users by student ID or email, returning detailed user info if found.
  • Introduced ClubPhotoController with access-controlled endpoint to serve club member profile photos only to admins or the owner.

App Settings and User Type Management:

  • Expanded AppSettingController to support updating notices, general settings, and CRUD operations for user type mappings, with improved validation and error handling. [1] [2]

Developer Experience:

  • Added a complete devcontainer setup (.devcontainer/Dockerfile, devcontainer.json, docker-compose.yml) for local development with PHP, MariaDB, Xdebug, and recommended VS Code extensions. Also added Dependabot config for devcontainer updates. [1] [2] [3] [4]

What's Changed

Full Changelog: midterm-term2-v0.1...final-0.2

midterm-term2-v0.1

05 Dec 22:52
13c9e32

Choose a tag to compare

midterm-term2-v0.1 Pre-release
Pre-release

This is progress for the website part of the project, by introduces significant foundational changes to the project, transitioning it to a Laravel-based structure and implementing modern best practices for configuration, authentication, and controller logic.

What's Changed

  • Added several new Laravel controllers in app/Http/Controllers for handling authentication (LoginController), booking (BookingController), club registration/approval (ClubRegisterController, ClubApprovalController), and application settings (AppSettingController). These controllers implement validation, error handling, and use Laravel's authentication and model features.
  • Removed legacy PHP authentication scripts and direct database connection logic, including api/auth/login/index.php, api/auth/logout/index.php, and api/db/mysql/connect.php. This eliminates old, insecure, or redundant code now replaced by Laravel's built-in mechanisms.
  • The website now on MVP State (Minimum Viable Product) that can do basic booking and Club Member Registration, and other function like attendee and other will coming along the way from now on
Mostly AI Generated, Review the code before committing!

New Contributors

Full Changelog: https://github.com/psc-musicwebproject/website/commits/midterm-term2-v0.1