Commit Graph

235 Commits

Author SHA1 Message Date
7e61e34292 Add OPEN_LEARNER role without LMS sequential gating.
Migration 000061 inserts the RBAC role and demo user (openlearner@yimaru.com). STUDENT keeps sequential ApplyAccess and practice ordering; OPEN_LEARNER shares learner permissions and customer flows. Document the role in Swagger and point initial seed SQL at the migration for the demo account.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-19 10:26:25 -07:00
12ad59c409 Add draft vs published status for LMS and exam-prep practices.
Expose publish_status on create/update, filter learner-facing lists and gates, and add migration 000060.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-19 03:57:43 -07:00
6a4fe68628 Add full FAQ management APIs and integration assets.
Implement public FAQ read endpoints and admin CRUD with RBAC, persistence, and migrations, then regenerate Swagger and add a complete Postman collection so frontend/admin teams can integrate and validate the feature end-to-end.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-11 07:58:17 -07:00
3d1b3ad9b8 dynamic question type builder completion 2026-05-08 10:12:02 -07:00
f906862676 partly implemented dynamic question builder + payment routes fix 2026-05-07 08:10:21 -07:00
10954d88b0 subscription management fix + duolingo hierarchy implementation 2026-05-04 10:44:18 -07:00
33d34f0dd2 fix: map default CEFR courses to Beginner/Intermediate/Advanced programs
Seed A1-A2, B1-B2, and C1-C2 only on their matching programs; add migration
000050 for existing databases. Document mapping in domain.

Made-with: Cursor
2026-04-24 01:14:50 -07:00
5b53929d92 learning progress implementation 2026-04-23 03:58:27 -07:00
6c672c4b20 static data for Courses 2026-04-23 02:07:32 -07:00
9db9c9899a module+lesson+practice implementations 2026-04-23 01:59:20 -07:00
152478a96c added program 2026-04-23 00:59:01 -07:00
de95c4d0d2 feat: practice detail API, inactive purge tracking, and related plumbing
- Add GET /api/v1/course-management/practices/:practiceId/detail with full question items

- Add migration 000040 for sub-module content inactive purge tracking

- Hierarchy queries, sqlc gen, config/app purge job, swagger refresh

Made-with: Cursor
2026-04-20 08:24:59 -07:00
ce1b827768 refresh token fix 2026-04-17 10:16:25 -07:00
886b62ed68 feat(levels): flexible cefr_level codes up to 64 chars
- Migration 000038 drops fixed A1-C3 check and widens cefr_level column
- CreateLevel validates length and NUL only; preserve client casing
- Regenerate Swagger docs

Made-with: Cursor
2026-04-17 09:24:34 -07:00
7ff0b639cf added more structure to submodules 2026-04-17 09:07:25 -07:00
c5d3935062 added more structure to levels 2026-04-17 08:33:58 -07:00
518c3ee751 added more structure to lessons 2026-04-17 08:27:40 -07:00
f5e925dc96 separate lessons schema from practices in hierarchy
Replace rename-based lesson migration with additive sub_module_lessons creation, preserve sub_module_practices as its own model, and enforce QUIZ/PRACTICE filtering in hierarchy reads to prevent cross-mixing.

Made-with: Cursor
2026-04-14 07:13:50 -07:00
7613eb583a new course management hierarchy 2026-04-10 03:06:30 -07:00
05cb8715f9 seed data clearer API 2026-03-29 01:31:43 -07:00
800d2a4b3a MinIO integration + speaking implementation adjustment 2026-03-12 07:06:16 -07:00
180e63e975 account deletion API 2026-03-11 06:26:30 -07:00
74efcd5ec2 learning flow + level + sublevel 2026-03-08 05:35:17 -07:00
3500db6435 learning flow fixes 2026-03-07 08:18:13 -08:00
0226275d47 customer RBAC 2026-03-05 07:58:48 -08:00
4adfb011d2 profile completion percentage inconsistency fix 2026-03-04 09:11:53 -08:00
809ab90d30 bulk notification fix + custom role and permission feature implementation + activity log and user list filters 2026-03-04 09:10:28 -08:00
130421e971 added cloudconvert for thumbnails + added ratings service 2026-02-18 02:56:08 -08:00
aa6194013c analytics service + inapp notification websocket fix 2026-02-16 08:36:46 -08:00
7d626d059f inapp notification fix 2026-02-13 06:59:14 -08:00
0f44e63692 cloud convert integration + more advanced activity log + issue reporting + video file management fixes 2026-02-11 06:54:05 -08:00
97c4f3d28f team management + minor fixes 2026-02-06 10:47:42 -08:00
834a807edc vimeo itegration + Google auth and fiberbase messaging minor fixes + profile completed status fix and profile progress (not course progress) tracker immplementation 2026-02-04 09:59:21 -08:00
7f1bf0e7f1 profile picture, birthday format and refresh token expiry fixes 2026-01-28 09:24:31 -08:00
68472b09b1 google auth integration 2026-01-21 12:43:02 -08:00
9ee1d7f714 changed age to agegroup, added refresh route, token generation after otp verification 2026-01-18 03:12:28 -08:00
513927f48f data seed and authorization fixes 2026-01-14 02:27:26 -08:00
19ac718526 initial assessment implementation 2026-01-08 04:42:39 -08:00
7309a2bc83 updated the authentication method from username to email/phone_numner 2026-01-03 06:52:38 -08:00
d94774c138 schema adjustment and profile management fixes 2025-12-31 07:53:59 -08:00
8ed0a5f1c6 course management service 2025-12-30 07:00:02 -08:00
2c907a34db added inittal assessment feature 2025-12-29 07:59:24 -08:00
915185c317 user and otp schema modification, SMTP setup using resend, afro SMS changed to direct API integration instead of using afoSMS library, most authentications implemented using username instead of email or phone number 2025-12-23 18:57:48 +03:00
47d70b029f afro SMS and partial ArifPay Payment Gateway integrations 2025-12-18 18:06:26 +03:00
5e9046eb76 user and auth service refactoring, notification service SQL + repository adjustment 2025-12-16 18:05:57 +03:00
13c470079c virtual_game_providers based SQL queries primary ID data type mismatch fix 2025-11-27 17:56:52 +03:00
299825e797 favourtie game and virtual games + providers orchestration fixes 2025-11-18 16:39:37 +03:00
1c7e076be5 direct depost and veli games fix 2025-11-17 18:45:18 +03:00
ab1d85897e Merge remote-tracking branch 'origin/virtual_games' 2025-11-06 18:28:50 +03:00
d654d5f2ef veli games fixes 2025-11-06 16:37:41 +03:00