Admin panel
Users, refunds, categories (Career, Family, Finance, DIY, Intellect, Pets, Community, Spiritual, Travel), featured courses, failed mail, S3 usage. Admin does not edit Julie’s lesson script unless asked.
Laravel adminOur Sistahood (oursistahood.com.au) onderwijst Indigenous women via videomodules — Job Ready, How to Start a Business, en acht life-area-categorieën. De build is een productie-LMS: PHP / Laravel, geen pagina met YouTube-links en een Facebookgroep.
Wat live ging: studentencampus en instructorstudio op het web, een Laravel admin panel, email + password auth met resetmail, ecommerce checkout voor betaalde cursussen (gratis lifetime-cursussen blijven gratis), video learning from cloud storage, en transactionele email. Data: MySQL voor de live campus, PostgreSQL voor afrondingsrapporten.
Julie Okely bouwt Job Ready. Maya kijkt. Admin ziet elke betaling en elke vastgelopen inschrijving. Dat zijn drie Laravel-guards, geen gedeeld wachtwoord.
Users, refunds, categories (Career, Family, Finance, DIY, Intellect, Pets, Community, Spiritual, Travel), featured courses, failed mail, S3 usage. Admin does not edit Julie’s lesson script unless asked.
Laravel adminCursus, modules, lessen, quizzes maken. Mp4 uploaden naar cloudopslag. Publiceren. Zien wie is ingeschreven, wie vastliep op les 2, wie de quiz haalde. Kan de payout van een andere instructor niet zien, behalve de eigen.
StudioRegistreren met e-mail + wachtwoord. Catalogus browsen. Checkout (of gratis inschrijven). Video kijken, hervatten, quiz maken. My learning-lijst is inschrijvingen, geen bookmarks.
CampusVoor Laravel leefde Job Ready (0,32 uur, bijgewerkt oktober 2023) als Zoom-bestand en Word-outline. Maya registreerde interesse in een Google Form. Niemand kon zeggen of ze module twee af had. Betaalde workshops waren overschrijving en een spreadsheet. Wachtwoordreset was “mail Julie.”
orders rij zodat gratis en betaald één pipeline delen. Enrolmentstatus: active. Lifetime access-flag: true.lesson_progress.seconds = 184. Hervatten op de keukenlaptop die avond bij 184s, niet 0.Dit is de control tower. Disable een student die een wachtwoord deelde. Refund een workshop van $49. Zie SES-bounces. Feature Job Ready op het homegrid. Admin herschrijft Julies quiz niet.
| Time | Event | Who | Status |
|---|---|---|---|
| 19:11 | Enrol Job Ready (free) | Maya W. | Active |
| 18:40 | Stripe workshop $49 | Tia N. | Paid |
| 17:02 | Password reset mailed | Maya W. | SES |
| 16:11 | Bounce · bad domain | old@mail | Held |
Julie bezit Job Ready en How to Start a Business. Ze uploadt de mp4, zet de quizdrempel, publiceert. Ze ziet Maya’s 8/10. Ze ziet Tia’s Stripe-receipt niet.
| Student | Lesson | Quiz | Enrolment |
|---|---|---|---|
| Maya W. | 1 · 184s | 8/10 | OS-ENR-10482 |
| Tia N. | Complete | 10/10 | Lifetime |
| Sam K. | Not started | — | Stalled 9d |
Ze logt in met hetzelfde e-mailadres op telefoon of laptop. Job Ready staat op de lijst omdat enrolment bestaat. How to Start a Business niet, tot ze checkout doet. Voortgang is geen cookie.
Yaama, Maya
2 enrolments · email session
Login, enrolment, studio, checkout, video, admin, S3, mail en rapporten — geen featurelijst. Hieronder hoe elk eruitzag vóór, en wat Maya nu écht gebruikt.
Google Form. Julie mailde een Zoom-link. Geen hash, geen reset.
Laravel register, verify, login. 60-minuten-resettoken per mail. Dezelfde credentials op telefoon en laptop.
“She’s in Job Ready” leefde in Messenger.
Enrolment OS-ENR-10482: student, cursus, order, status, lifetime. Die rij is wat de player opent.
Een developer dumpte een mp4 op de server.
Julie publiceert modules, lessen en quizzes zelf. How to Start a Business werkt bij zonder ticket.
Overschrijving. Spreadsheet. Geen receipt.
Stripe of PayPal. Gratis Job Ready maakt nog steeds een $0-order zodat access en mail één pad delen. Refunds vanuit admin.
YouTube unlisted. Plek kwijt. Ads in de les.
Signed S3-URL, HLS indien nodig, hervatten bij 184s op elk device na login.
cPanel en een hoop.
Laravel admin: users, orders, categories, coupons, mail log, disable account. Not phpMyAdmin.
mp4 op een 20GB VPS. Schijf vol op publishedag.
AWS S3 (of R2) voor video en PDFs. Laravel disk s3. De appserver blijft dun.
Julie typte “here’s the Zoom” vanuit Gmail.
SES-wachtrij: verify, reset, enrolment-receipt, “your course is live.” Bounces tonen in admin.
90% completion was een slide.
MySQL draait de campus. Nightly rollup in PostgreSQL voor “who finished Job Ready this month” zonder checkout te locken.
E-mail + wachtwoord. Verify via SES. User-rij in MySQL. Geen social login vereist voor dit product.
$0 community course or Stripe/PayPal. Order + enrolment written in one Laravel transaction.
Queued receipt: cursusnaam, enrolment id, “lifetime access” als die flag aanstaat — passend bij de livesite.
Player vraagt Laravel om een kortlevende S3-URL. Progress tikt in MySQL. Postgres-rapport pakt het ’s nachts op.
De publieke catalogus op oursistahood.com.au (Job Ready, How to Start a Business, acht categorieën, levenslange toegang op mobile en desktop) wordt vanuit Laravel geserveerd. Auth is e-mail en wachtwoord — Fortify-achtige verificatie en reset. Docenten, studenten en inschrijvingen zijn first-class modellen. Ecommerce is Stripe + PayPal met een $0-pad voor communitycursussen. Videobestanden staan nooit op de app-disk.
MySQL houdt users, cursussen, lessen, enrolments, orders, attempts. PostgreSQL houdt opgerolde completion voor staf die “who finished Job Ready in October” moet exporteren zonder checkout-tabellen aan te raken. Mail is SES. Storage is S3. Queues retrien failed jobs zodat een mailstoring geen enrolment verliest.
Campus, instructor studio, admin, queues, signed URLs, checkout webhooks.
MySQL: operationeel LMS. PostgreSQL: reporting warehouse voor completion-exports.
S3/R2 voor mp4/HLS en PDFs. Player krijgt nooit een permanente publieke bucket-URL.
SES: verify, reset, receipt, “course published.” Queued. Bounces visible in admin.
Stripe en PayPal. Gratis enrolments minten nog steeds een order zodat access één codepad is.
OS-ENR-10482 bewijst dat Maya lifetime Job Ready heeft. Closing-the-Gap-achtige exports komen uit PostgreSQL, geen slide.
How to Start a Business werkt bij vanuit de instructorstudio. Video landt in S3. Studenten krijgen de mail.
$0 communitycursussen en $49-workshops delen checkout, enrolment en SES-receipts. Refunds zijn adminacties.
Instructor, student, admin, e-maillogin, ecommerce, S3-video, SES — dezelfde productiesplit als Our Sistahood.