Commit Graph

  • 0a022c0917 feat(professors,sms): merge professor with users, add existing user link, professor portal endpoint, and SMS bypass list main kavehhn 2026-08-25 03:48:19 +03:30
  • b708a6b777 fix(healthcheck): use dynamic PORT, IPv4 127.0.0.1, and bind 0.0.0.0 kavehhn 2026-08-25 02:56:42 +03:30
  • 38e048067b fix(docker): copy .npmrc and use npmmirror registry for fast builds kavehhn 2026-08-25 02:43:34 +03:30
  • 4d711fe39c build: add .npmrc with liara npm mirror registry kavehhn 2026-08-25 01:58:16 +03:30
  • dca7250be0 feat(users,professors): add promote student to professor and full student profile aggregation kavehhn 2026-08-24 22:52:38 +03:30
  • 282dd42422 feat: add employee timing system, notification templates, and professor class plan sms kavehhn 2026-08-24 19:31:07 +03:30
  • 53fce86ad5 feat: add waitlist module, quick payment/transaction edit, and catering fee deduction from professor share kavehhn 2026-08-23 23:00:02 +03:30
  • e3b51a1629 feat(financial-reports): add institute-wide analytics endpoint kavehhn 2026-08-23 18:24:32 +03:30
  • 3cc813f24e fix(payments): enhance duplicate payment check query and auto-populate course kavehhn 2026-08-23 16:55:48 +03:30
  • dde0efc72a fix(sessions): respect database sort order in getAllSessions and getMySessions kavehhn 2026-08-23 16:41:49 +03:30
  • 22ce6c3fb1 fix(payments,dates): improve duplicate payment detection and Jalali date parsing kavehhn 2026-08-23 14:15:06 +03:30
  • 945b4e6332 fix(payments): ensure ObjectId casting for duplicate check query kavehhn 2026-08-23 13:35:30 +03:30
  • 28d401fd0e feat(payments): add bulk class payments creation and duplicate check kavehhn 2026-08-23 13:28:06 +03:30
  • 4c07ca2ae1 fix: format prices in notifications, change partial payment label, and add session holding notify API kavehhn 2026-08-21 20:17:30 +03:30
  • 6839685a21 fix(payments): import buildClassScheduleContext to fix sms notifications kavehhn 2026-08-21 15:25:02 +03:30
  • ada1b624b1 fix(payments): prevent auto transaction creation, enable sms by default, and fix transaction sms context kavehhn 2026-08-21 15:17:41 +03:30
  • 30db6582b7 feat: auto generate placeholder nationalId for users and professors, auto calculate class end date kavehhn 2026-08-21 15:03:18 +03:30
  • cbcf3f55db fix(perm): allow array of permissions in permissionMiddleware and accept classes:update or classes:delete kavehhn 2026-08-21 13:35:16 +03:30
  • e34fd25af7 feat: add soft delete for classes with cascade to sessions and linked records kavehhn 2026-08-21 13:19:50 +03:30
  • 5b56171328 fix: allow payload.professors in dataImportController and normalizeImportPayload kavehhn 2026-08-21 13:05:28 +03:30
  • 7c74950c95 feat: add professor import support, user account creation, and IBAN/card fields kavehhn 2026-08-21 12:56:15 +03:30
  • 22b57eeae2 Add professor share calculation and financial reporting feature kavehhn 2026-08-21 12:19:09 +03:30
  • 3c6eb278b0 Allow enabling/disabling individual SMS template types from dashboard with sync to notification settings kavehhn 2026-08-21 11:04:26 +03:30
  • 091e519280 Add sessionHolding template, unique 8-digit codes, reason slot for sessionCancelled, and disable unused notifications kavehhn 2026-08-21 10:44:51 +03:30
  • 5328f36f06 Add admin transaction cancellation without deleting history. kavehhn 2026-08-16 22:38:00 +03:30
  • a436cfeb47 Stop reconcile from overwriting edited transaction amounts. kavehhn 2026-08-16 22:36:12 +03:30
  • 8cd355c24b Fix transaction due date parsing and preserve edited pending amounts. kavehhn 2026-08-16 14:53:46 +03:30
  • 4ad5630cb7 fix: clarify why SMS delivery is skipped when a channel gate is off kavehhn 2026-08-16 13:30:51 +03:30
  • 7d59448991 Improve attendance completion checks and expose recorded counts. kavehhn 2026-08-16 09:22:41 +03:30
  • 0d57854dc3 Add class numberOfSessions and fix attendance completion detection. kavehhn 2026-08-16 08:55:03 +03:30
  • cd98adff84 feat: add pending student registration flow and pricing APIs. kavehhn 2026-08-16 08:42:25 +03:30
  • fafc362689 fix: filter attendance sessions to past-due with incomplete records kavehhn 2026-08-16 08:22:18 +03:30
  • f57d8bbdfa feat: add class discounts, frontend visibility, and public listing kavehhn 2026-08-16 08:11:42 +03:30
  • 21bff0c4ba feat: add admin transaction create/update with auto payment status sync kavehhn 2026-08-16 08:01:37 +03:30
  • 06efcd5b90 feat: store payment installments in a transactions collection kavehhn 2026-08-16 07:32:27 +03:30
  • b4ca5678bf Add user preferences for theme and font size. kavehhn 2026-08-16 07:28:58 +03:30
  • 3348ca5798 feat: import class sessions, attendance, and payments from JSON kavehhn 2026-08-16 07:04:16 +03:30
  • 72be01fee3 feat: add messaging toggles, password reset SMS, and payment discounts kavehhn 2026-08-16 06:58:08 +03:30
  • a6c760c3b7 fix(sms): prefix course time with ساعت kavehhn 2026-08-16 00:16:40 +03:30
  • 4d60755a95 feat(classes): store weekdays and meeting times on the class kavehhn 2026-08-15 23:59:07 +03:30
  • 192c595c68 feat: add password change, class unenroll, and optional notify flags kavehhn 2026-08-15 23:48:18 +03:30
  • 0cdb9cec20 feat(sms): send class start date, days, and course time kavehhn 2026-08-15 23:09:04 +03:30
  • 366cd41bb7 fix(settings): persist every SMS template variable on save kavehhn 2026-08-15 22:55:54 +03:30
  • d3190a8729 fix(settings): support Persian and flexible SMS variable names and improve save persistence kavehhn 2026-08-15 22:03:22 +03:30
  • d2d4ee719b feat(settings): support dynamic number of SMS template variables kavehhn 2026-08-15 21:58:10 +03:30
  • 9472537536 fix(professors): handle nationalId and phone aliases with trimming; update payment sms kavehhn 2026-08-15 19:07:17 +03:30
  • 93f3aeb719 feat(sms): add FULLNAME, PAYMENT_PRICE, and COURSE template variables for invoice SMS kavehhn 2026-08-15 18:55:17 +03:30
  • 1ef54ad414 fix: stream FilePond uploads to S3 and proxy private file previews kavehhn 2026-08-15 18:46:26 +03:30
  • 7ebf9409f0 feat: let SuperAdmin rename SMS template variable names kavehhn 2026-08-15 18:43:24 +03:30
  • 3160f07873 feat: send account and invoice SMS from stored template IDs kavehhn 2026-08-15 18:37:44 +03:30
  • 23edffba6a fix: rewrite temp files with PutObject instead of SeaweedFS CopyObject kavehhn 2026-08-15 03:33:55 +03:30
  • 877dfa65d5 fix: treat SuperAdmin role name case-insensitively in permission checks kavehhn 2026-08-15 03:27:21 +03:30
  • e1772a2559 fix: force HTTPS S3 endpoint to avoid Coolify 307 on uploads kavehhn 2026-08-15 03:04:53 +03:30
  • aa2132f02c fix: disable AWS SDK checksum defaults for SeaweedFS uploads kavehhn 2026-08-15 03:00:42 +03:30
  • 7394829d49 fix: honor table search q param on users and related lists kavehhn 2026-08-15 02:57:19 +03:30
  • 4603b45208 feat: private certificates/documents buckets with SeaweedFS support kavehhn 2026-08-15 02:53:59 +03:30
  • 5c2fad4b44 feat: add adminNotes and registered class counts for users kavehhn 2026-08-15 02:39:10 +03:30
  • bf5e66fa95 feat: add append-only course/user data import and expand user profile kavehhn 2026-08-15 01:31:44 +03:30
  • 35704409ec feat: bootstrap SuperAdmin from env and lock one-time seeding kavehhn 2026-08-14 23:23:06 +03:30
  • 3ca098b74d build(docker): add multi-stage production Dockerfile with health check kavehhn 2026-08-12 06:46:04 +03:30
  • d0cde07a1f feat: add /api/seed endpoint and refactor seed.js kavehhn 2026-08-12 06:29:05 +03:30
  • d28e71c3fa chore: update node version to 22 in Dockerfile kavehhn 2026-08-12 05:55:55 +03:30
  • 07edb98a05 feat: enhance health check endpoint with database status check kavehhn 2026-08-12 05:26:00 +03:30
  • f04c797be6 Initial commit: teaching institution management API. kavehhn 2026-08-09 04:18:08 +02:00