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
46d70d7c8c
chapa minor fixes
2025-11-03 17:20:35 +03:00