Commit Graph
101 Commits
Author SHA1 Message Date
ssbg04 b04981d7fb feat(system): implement socket.io real-time sync, admin passwords, ocr adjustments, and shortcut fixes 2026-10-02 10:17:44 +08:00
ssbg04 71526fe61e fix(reports): resolve Windows layout overflows and refine UI
- Fix 1px bottom overflow on Overall Compliance KPI card by adjusting height and padding
- Fix text truncation for Pending Docs KPI card
- Fix 49px bottom overflow on Students Per Year card by adjusting container and chart heights
- Fix LayoutBuilder inside IntrinsicHeight issue on desktop report charts
- Refine security settings, audit trail platform tracking, and document handling
- Clean up unused conversion providers and LibreOffice service
2026-09-25 19:04:23 +08:00
ssbg04 1a20994749 feat: document versioning, templates, ZIP backup/restore, and Open/Edit workflow
Backend:
- schema.js: add document_templates, template_versions, document_versions tables;
  migrate documents with template_id/template_version_id columns;
  auto-seed Version 1 for all 190 existing documents
- templateController.js (NEW): full CRUD + file upload/download for templates
  and template versions
- templates.js route (NEW): /api/templates endpoints
- documentController.js: add getDocumentVersions, uploadDocumentVersion,
  downloadDocumentVersion; uploadDocument now seeds Version 1 on creation
- documents.js: wire GET /:id/versions, POST /:id/upload-version
- backupController.js: upgrade backup to ZIP archive (DB + student files +
  template files + SHA-256 manifest); restore handles ZIP and legacy .db;
  safety backup taken before every restore
- package.json: add archiver + unzipper dependencies

Frontend:
- template_model.dart (NEW): DocumentTemplateModel + TemplateVersionModel entities
- document_version_model.dart (NEW): DocumentVersionModel entity
- template_repository.dart (NEW): Dio-based template API client
- document_repository.dart: add getDocumentVersions, uploadDocumentVersion,
  downloadDocumentVersion methods
- document_preview_modal.dart: add Open / Open With (Windows rundll32
  OpenAs_RunDLL / Android chooser) / Edit (download-temp -> open -> upload
  prompt) / Upload New Version (FilePicker) / Version History actions
- document_version_history_sheet.dart (NEW): draggable bottom sheet listing
  all document versions with per-version Preview + Download
- file_folder_card.dart: add Open With, Edit, Upload New Version, Version
  History items to context menu
- documents_screen.dart: wire open_with, edit, upload_version, version_history,
  restore action cases; import version history sheet

Bugfix:
- student_profile_modal.dart: remove enrollment.status access that caused
  NoSuchMethodError (enrollments table has no status column)
2026-09-21 12:55:58 +08:00
ssbg04 e2f10f6260 feat(ui,audit): redesign folder cards and polish student actions, fix audit trail crash and count queries
- Fix audit trail AppPagination infinite width layout crash on Windows and Android
- Fix Android audit trail header 41px horizontal overflow with responsive layout
- Add missing user and history table joins to dashboard and user activity count queries
- Implement StyledFolderIcon matching modern tabbed folder design with internal JHS/SHS chips
- Align bulk operations bar margin to match list and grid widget containers
- Make student screen Add Student button elevated with emerald gradient and shadow
- Move edit student modal close button from leading to actions bar
- Polish Edit Details and Edit Enrollment actions in student profile modal
2026-09-19 22:56:42 +08:00
ssbg04 69b4879ac2 feat(dashboard,ui): overhaul dashboard KPIs, audit trail tab, responsive controls, and settings
- Remove recent activities and user history from dashboard; relocate to dedicated History tab
- Fix Document Breakdown overflow and rebalance Bento KPI grid layout
- Fix Android overflow on student profile Edit Details button
- Simplify grid view cards in documents and archives screens with minimal folder styling
- Fix transparency board filter contrast and export button styling in reports
- Default auto-update enrollment to off, add grace period input, and fix settings danger zone
2026-09-19 02:26:49 +08:00
ssbg04 78035685a3 fix(desktop): fix Windows 10 crash vectors across screens, dialogs, and audio 2026-09-18 12:03:00 +08:00
ssbg04 64b58537bd feat(ui): update student, document preview, document filter, and archive screens
- Add elevated Add Student CTA button to Android header and AddStudentModal.show helper
- Make document preview AppBar actions responsive with copy and delete always in more menu
- Switch document filter to direct document type dropdown
- Align archives screen layout, mobile search, and filter dropdown with documents screen
2026-09-17 22:12:06 +08:00
ssbg04 0af3c726eb feat(ui): update mobile headers, selection animation, and folder lrn detection 2026-09-17 21:10:45 +08:00
ssbg04 6fa533d530 feat(ui): redesign student cards, responsive pagination, and fix doc status sheet button 2026-09-17 20:19:06 +08:00
ssbg04 df60ee9c39 feat(ui): add mini checkbox to grid view and disable multi-select on preview tap 2026-09-17 16:06:55 +08:00
ssbg04 05e11068f4 feat: add account self-deletion, hidden super admin, and selection morph animations 2026-09-17 09:26:56 +08:00
ssbg04 470a8999a6 Redesign and optimize Documents and Archives screens header and list/grid views 2026-09-12 01:07:20 +08:00
ssbg04 bf33ac6544 feat(ui): hide desktop multi-select on Windows and harmonize filter icon colors 2026-09-11 23:13:04 +08:00
ssbg04 fb5ba24571 fix(ui): adjust grid card sizing, add modal padding, and format pagination 2026-09-08 22:57:57 +08:00
ssbg04 287fe831e6 feat(ui): password modal in settings, compliance export relocation, and minimized grid cards 2026-09-08 22:35:50 +08:00
ssbg04 440dbae906 fix(ui): wrap file folder cards in local Material to prevent selection color bleed 2026-09-08 22:16:22 +08:00
ssbg04 7141f51e08 feat(ui): unify multi-select CAB design, card opacity, and padding across screens 2026-09-08 22:01:17 +08:00
ssbg04 175b959eac fix(system): enhance student folders scoping, modal responsive sizing, reports scrollbar and clean password reset requests 2026-08-30 15:06:18 +08:00
ssbg04 42d97dd32a feat: add animated LRN copy button, restore teacher upload, single-word dialog titles, and system-wide admin stats 2026-08-30 13:45:22 +08:00
ssbg04 ae2cfe1495 feat: hide archived documents from active lists and exclude from requirement counts 2026-08-29 10:42:06 +08:00
ssbg04 2edca09efb feat: teacher dashboard KPI filtering and dark theme colors for no assigned sections 2026-08-27 22:36:31 +08:00
ssbg04 c6384642c2 refactor: update student folders UI in documents and archives screen 2026-08-23 00:35:39 +08:00
ssbg04 1361fe753f fix(mobile): restrict multi-select icon and more options to desktop only, keeping FAB on Android 2026-08-23 00:24:40 +08:00
ssbg04 7f069e0663 feat(documents): enhance document and archive screens ui and add properties modal 2026-08-23 00:08:04 +08:00
ssbg04 6e1f001fd3 fix(ui): adjust bottom spacing dynamically for opened folder tables and student screen based on pagination presence 2026-08-22 22:58:10 +08:00
ssbg04 09fcd479f4 feat(ui): implement vertical Speed Dial expandable FAB menu for Documents and Archives screens on Android 2026-08-22 22:49:11 +08:00
ssbg04 c6bd932c43 fix(ui): unify table bottom spacing and pagination across Documents and Archives screens from Student screen 2026-08-22 22:23:43 +08:00
ssbg04 5c9f959a2f fix(ui): adjust bottom spacing dynamically for opened student folder table based on pagination presence 2026-08-22 21:53:08 +08:00
ssbg04 2e25b78c52 fix(ui): add backdrop overlay mini blur, search bar margins, and lock backdrop positioning on search active 2026-08-22 20:22:40 +08:00
ssbg04 a141b67612 feat: enhance document file icons by extension and update academic setup 2026-08-22 09:32:14 +08:00
ssbg04 27ec086389 feat: align table designs, place all pagination outside tables, and add bottom spacing for opened student folders 2026-08-21 16:37:33 +08:00
ssbg04 77d3af8aee feat: show convert to pdf menu item for excel files in documents mobile row, context menu and archives list 2026-08-21 16:12:03 +08:00
ssbg04 e100d6bdf4 feat: add headless LibreOffice Excel to PDF conversion for Windows and Android 2026-08-21 15:58:43 +08:00
ssbg04 b6f202e72f feat: overhaul dashboard logs, student screen name layouts, scanner cancellation, and unified error states 2026-08-19 19:54:28 +08:00
ssbg04 bec1e4fba7 feat(ui): update recent activities, student modals, documents filters, and settings theme button 2026-08-18 23:13:08 +08:00
ssbg04 db42cf3050 fix: resolve Sheetifye Excel viewer integration, Riverpod autoDispose type bounds, and Dashboard initState error 2026-08-18 10:30:34 +08:00
ssbg04 9e4ed42806 feat(ui): fullscreen preview modal, button refinements, and notification slide fix 2026-08-18 09:46:43 +08:00
ssbg04 74f4dfff33 fix(documents): responsive filter modal with scrollable section and fixed buttons 2026-08-16 23:23:08 +08:00
ssbg04 57e0c201f8 feat: scope dashboard KPIs to teacher students and restrict teacher actions on documents screen 2026-08-16 02:05:01 +08:00
ssbg04 314337c443 fix: add ctrl+f search shortcut and format search tooltips with italicized hotkeys across dashboard, students, documents, archives, and users screens 2026-08-14 00:14:33 +08:00
ssbg04 77ee87a6f8 fix(ui): isolate drag and drop bulk import to students screen and update users screen filter header style 2026-08-13 14:32:45 +08:00
ssbg04 acba1b4eb0 fix: resolve OCR parser middle name and extension extraction for bulk add and add student 2026-08-12 16:35:25 +08:00
ssbg04 01605bc8fd fix: remove duplicate variable declaration in documents_screen.dart 2026-08-12 14:03:39 +08:00
ssbg04 1169347893 style: enhance chip text colors contrast and saturation in dark theme 2026-08-12 14:02:23 +08:00
ssbg04 ff00bc4e1b fix(frontend): resolve bracket matching error in documents_screen RefreshIndicator 2026-08-08 23:08:22 +08:00
ssbg04 5a0eb25ad2 feat(frontend): complete phase 4 platform-specific optimizations and accessibility updates 2026-08-08 23:06:48 +08:00
ssbg04 c98fbb6a6e feat(frontend): complete phase 3 screen decomposition and phase 4 platform optimizations 2026-08-08 22:42:40 +08:00
ssbg04 6f2d8865c9 feat(frontend): extract shared UI components and complete SnackBar to dialog migration 2026-08-08 21:51:03 +08:00
ssbg04 a723eed805 fix(frontend): drag and drop now works on students and documents screens
- documents: drops accepted on all tabs and inside student folders (was gated to All Documents tab), overlay hint shows anywhere, route guard prevents double modals
- students: added drop zone that opens Bulk OCR Import with the dropped files preloaded
- bulk import dialog: accepts preloadedFiles to seed the queue on open
2026-08-08 01:21:06 +08:00
ssbg04 c5998468b7 feat: archives file menu, copy (1) naming, excel to pdf, and OCR enrollment validation
- archives: per-file menu (preview/print/download) via icon, right-click, long-press
- documents: copy renames to "name (1).ext" with incrementing collision handling
- documents: convert xls/xlsx/csv to multi-sheet PDF saved in student folder (excel kept)
- students: OCR enrollment scan is review-only with 7-12 grade gate and manual validation modal
- add student: linear OCR progress, SF9/SF10 grade 7-12 validation with auto-fill enrollment
2026-08-08 00:57:04 +08:00