How axb2002/project works
This is a PHP MVC web application for the Port-Cartier municipal library. Users enter through the URL dispatcher, authenticate, then search documents and make reservations; employees and administrators can also manage reservations and member records. The README additionally describes loan/return workflows, account creation, and staff reports. Sampled code supports the dispatcher, document/reservation actions, and shared rendering; loan/return and some report details are documented but their implementation was not sampled.
Main entry points: template-frontend.php Frontend layout · index.php URL dispatcher · ControllerDocument.php Document actions · Template.php Template renderer
Components 21
Web entry and views
- URL dispatcher
index.php - Template renderer
library/Template.php - Frontend layout
view/template-frontend.php - Login form
view/connexion.php - Document list
view/lister-documents.php - Reservation list
view/lister-reservations.php - User creation form
view/creer-utilisateur.php - User list
view/lister-utilisateurs.php
Accounts and access
- Authentication actions
controller/ControllerConnexion.php - User management
controller/ControllerUtilisateur.php - Input validation
library/Validation.php - User model
model/Utilisateur.php
Catalog and circulation
- Document actions
controller/ControllerDocument.php - Reservation actions
controller/ControllerReservation.php - Document model
model/Document.php - Reservation model
model/Reservation.php - Loan and return management
controller
Persistence
- PDO CRUD base
model/CRUD.php - MySQL library database
- Library schema and seeds
_DATABASE/Query_1 - Creation des tables.sql
Other components
- Library user
Connections 28
- Library user → URL dispatcher: requests pages
- URL dispatcher → Authentication actions: dispatches login
- URL dispatcher → Document actions: dispatches document actions
- URL dispatcher → Reservation actions: dispatches reservation actions
- URL dispatcher → User management: dispatches user actions
- Authentication actions → User model: checks credentials
- Authentication actions → Input validation: uses validation
- User management → User model: manages users
- User management → Input validation: validates input
- Document actions → Document model: searches and reserves
- Document actions → Reservation model: checks and updates status
- Document actions → User model: loads members
- Reservation actions → Reservation model: searches and cancels
- Authentication actions → Template renderer: renders login
- Document actions → Template renderer: renders document pages
- Reservation actions → Template renderer: renders reservation list
- User management → Template renderer: renders user pages
- Template renderer → Frontend layout: uses layout
- Frontend layout → Login form: includes page
- Frontend layout → Document list: includes page
- Frontend layout → Reservation list: includes page
- Frontend layout → User creation form: includes page
- Frontend layout → User list: includes page
- User model → PDO CRUD base: extends
- Document model → PDO CRUD base: extends
- Reservation model → PDO CRUD base: extends
- PDO CRUD base → MySQL library database: connects and queries
- Library schema and seeds → MySQL library database: defines tables