[Facilities] Public facility pages + ratings & reviews

New /Facilities/Details public page: verified badge, info, Neshan map + directions, the facility's open shifts & jobs, and a complaint form; facility cards on /Facilities link to it. Ratings & reviews: Review model (1-5 stars + comment, one per user/facility, unique index, migration); logged-in users rate/review on the facility page; average + count shown in the header and the review list; admins moderate (hide/delete) at /Admin/Reviews.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
soroush.asadi
2026-06-07 07:44:25 +03:30
parent 437258294b
commit d87afb577c
11 changed files with 1802 additions and 4 deletions
+7
View File
@@ -120,6 +120,13 @@ a { color: inherit; text-decoration: none; }
.resume-link { font-size: 12px; color: var(--primary); font-weight: 600; }
.applicant-actions { display: inline-flex; gap: 6px; align-items: center; flex: 0 0 auto; }
/* Star rating input (5..1 in DOM; hover/checked fills downward) */
.star-input { display: inline-flex; font-size: 28px; line-height: 1; }
.star-input input { display: none; }
.star-input label { color: var(--line); cursor: pointer; padding: 0 1px; transition: color .1s; }
.star-input label:hover, .star-input label:hover ~ label,
.star-input input:checked ~ label { color: #f59e0b; }
/* Profile-completeness nudge */
.profile-nudge { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
background: #fff7ed; border: 1px solid var(--accent); border-radius: 12px; padding: 12px 16px; margin-bottom: 16px; }