Commit Graph
443 Commits
Author SHA1 Message Date
F4ilji e83cd0109d fix(vikon): correct VIKON API endpoint names for part updates 2026-07-05 10:21:27 +05:00
F4ilji d83364432e feat(vikon): replace part select with checkboxes for multi-selection 2026-07-05 09:55:45 +05:00
F4ilji 11b2def517 test(vikon): add validateFileTypes mock to UpdatePartActionTest 2026-07-05 03:02:03 +05:00
F4ilji e8e36156e9 fix(vikon): add file type validation and temp cleanup in UpdatePartAction 2026-07-05 03:01:12 +05:00
F4ilji 059705d60d test(vikon): add feature tests for part update endpoint 2026-07-05 02:58:32 +05:00
F4ilji 1d423adc12 feat(vikon): add part selection UI to Vue dashboard 2026-07-05 02:52:50 +05:00
F4ilji b259809960 feat(vikon): add updatePart endpoint with request validation 2026-07-05 02:50:41 +05:00
F4ilji 15f72b4de1 feat(vikon): add restoreAfterFail for crash recovery in FilesystemTask 2026-07-05 02:47:40 +05:00
F4ilji da90011ad3 feat(vikon): add UpdatePartAction for partial module updates 2026-07-05 02:45:47 +05:00
F4ilji 514123a19f feat(vikon): add parts config for partial updates 2026-07-05 02:42:51 +05:00
F4ilji 4764d4e2d9 feat(vikon): add PollPartStatusTask for part update polling 2026-07-05 02:41:23 +05:00
F4ilji a624b83f18 feat(vikon): add atomicSwap to FilesystemTask for crash-safe updates 2026-07-05 02:35:25 +05:00
F4ilji 982e80027d docs: add partial updates implementation plan 2026-07-05 02:31:27 +05:00
F4ilji 5c081261b0 docs: add partial updates design spec for VikonIntegration module 2026-07-05 02:29:18 +05:00
F4ilji cc69c3566b docs: add dashboard error page final report and plan 2026-07-05 01:21:39 +05:00
F4ilji df6110adf8 feat(dashboard): modify exception handlers to render DashboardError for dashboard routes 2026-07-05 01:19:04 +05:00
F4ilji a4fef0bb3d feat(dashboard): add DashboardError.vue with full error context display 2026-07-05 01:18:04 +05:00
F4ilji e3511462f7 fix(vikon): skip existing files during FM sync, match original PHP diff behavior
Original vikon_core sync_root_dir.php only downloads files that are
missing locally or have size 0. Added local file size check before
downloading to avoid re-fetching 14GB+ of existing files.
2026-07-04 23:25:59 +05:00
F4ilji b538b4119f fix(vikon): all FM files go to files/ dir, matching original PHP getFsPathByModule
Original vikon_core Path::getFsPathByModule() returns moduleRoot/files/,
not moduleRoot. Root FM files, 3-letter subdirs, and new files all go
under files/ directory. index.html etc come from core ZIP, not FM sync.
2026-07-04 23:02:43 +05:00
F4ilji cccdbbbbd8 fix(vikon): keep ZIP and extracted files in temp after update 2026-07-04 22:41:39 +05:00
F4ilji a33d93e163 fix(vikon): root files to module root, 3-letter dirs to files/{code}/
- UpdateCoreAction: split syncDirFiles into syncRootDir (→module root)
  and syncSubDir (→files/{dirId})
- SyncFilesAction: same split, matching original PHP vikon_core behavior
- index.html, file_stubs/ etc go to module root
- 3-letter FM codes (eib, eid, rir) go inside files/
2026-07-04 22:40:30 +05:00
F4ilji a7d0628a13 fix(vikon): use module root as FM sync base path instead of files/ subdir
Root files (index.html, file_stubs/) and non-3-letter directories now go
to module root where VIKON expects them, not into files/ subdirectory.
dir_name from FM API is relative to module root.
2026-07-04 22:31:10 +05:00
F4ilji bf3bcc4eca fix(vikon): revert syncDirFiles - keep 3-letter dirIds as subdirectories 2026-07-04 22:18:20 +05:00
F4ilji c4314e2f43 fix(vikon): use getFileByIdentityInfo dir_name for correct file paths 2026-07-04 22:15:59 +05:00
F4ilji d7c9de2bd6 fix(vikon): restore syncDirFiles subdirs - files go to files/{dirId}/ 2026-07-04 21:55:29 +05:00
F4ilji 241ac576fe fix(vikon): revert syncDirFiles - save files directly in files/ without subdirs 2026-07-04 21:52:21 +05:00
F4ilji 997ef6d483 fix(vikon): syncDirFiles saves to correct subdirectory, increase timeouts to 600s 2026-07-04 21:49:17 +05:00
F4ilji b115cb93fd fix(vikon): increase nginx fastcgi_read_timeout to 600s, PHP set_time_limit 600 2026-07-04 21:40:51 +05:00
F4ilji 204e31c06d fix(vikon): show detailed error message with HTTP status code 2026-07-04 21:33:20 +05:00
F4ilji 87732720ef feat(vikon): merge core update + FM sync into single Update button 2026-07-04 21:25:29 +05:00
F4ilji 20382da0bc fix(vikon): rewrite SyncFilesAction - always download, add logging 2026-07-04 21:11:00 +05:00
F4ilji 0811c4f1fc fix(vikon): add parameter to SyncFilesAction singleton 2026-07-04 20:55:14 +05:00
F4ilji 8e5f26da8d feat(vikon): add file sync from VIKON file manager (FM) 2026-07-04 20:41:49 +05:00
F4ilji e64f9cca83 fix(vikon): save ABITUR API response in temp for reference 2026-07-04 20:26:25 +05:00
F4ilji b4829492e5 fix(vikon): keep ZIP archive in temp after update 2026-07-04 20:17:33 +05:00
F4ilji d358e6fdb0 fix(vikon): keep downloaded files in temp after update 2026-07-04 20:16:56 +05:00
F4ilji b6140b77f5 vsoko conf changes 2026-07-04 20:03:19 +05:00
F4ilji b94e0aad87 fix(vikon): replace router.reload with alert after update success 2026-07-04 19:37:49 +05:00
F4ilji e0cf362433 fix(vikon): create target directories before rename in syncFiles 2026-07-04 19:29:50 +05:00
F4ilji 0097a803b4 fix(vikon): sync from extracted subdirectory inside ZIP 2026-07-04 19:21:32 +05:00
F4ilji 7d6b1a2342 fix(vikon): return actual error message in updateModule response 2026-07-04 19:16:43 +05:00
F4ilji 13df1c3a64 fix(vikon): simplify syncFiles - just overwrite, no backups or deletes 2026-07-04 19:11:25 +05:00
F4ilji 93bd3963bf fix(vikon): use rename() instead of copy() for syncFiles - atomic, no extra disk space 2026-07-04 19:09:13 +05:00
F4ilji e502225e9c fix(vikon): clean up corrupted CheckAccessAction file 2026-07-04 19:01:05 +05:00
F4ilji 44abdb471f fix(vikon): check writability only for module dirs (sveden, abitur, vsoko) 2026-07-04 18:46:23 +05:00
F4ilji cb9639f10f fix(vikon): fix excluded dirs matching for public/build and public/vikon_core 2026-07-04 18:45:34 +05:00
F4ilji 4cc3505050 fix(vikon): exclude non-writable dirs from access check (vendor, build, vikon_core) 2026-07-04 18:34:19 +05:00
F4ilji 11b145861d fix(vikon): use vikon_core redirect_uri in oauthCallback to match VIKON server registration 2026-07-04 18:28:34 +05:00
F4ilji 7b9cf25631 fix(vikon): skip authenticate call on OAuth callback, tokens already saved server-side 2026-07-04 18:22:51 +05:00
F4ilji 90d7cbc270 fix(vikon): redirect OAuth callback to /dashboard/vikon-updates/callback 2026-07-04 18:14:53 +05:00