Commit Graph
124 Commits
Author SHA1 Message Date
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 8e5f26da8d feat(vikon): add file sync from VIKON file manager (FM) 2026-07-04 20:41:49 +05:00
F4ilji b94e0aad87 fix(vikon): replace router.reload with alert after update success 2026-07-04 19:37:49 +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 2ccfb24d1d fix(vikon): use vikon_core redirect_uri for OAuth (registered on VIKON server)
- vikon_core/update/index.php now redirects OAuth callback to /dashboard/vikon-updates
- Vue frontend sends redirect_uri=https://www.ntspi.ru/vikon_core/update/index.php
- This URL is registered on db-nica.ru for client_id=542
2026-07-04 13:43:42 +05:00
F4ilji 94e17dfbbc fix(vikon): use api_domain for OAuth authorize URL (not auth_domain)
Original vikon_core used db-nica.ru for /oauth2/authorize, not auth.db-nica.ru.
This was causing 'Client authentication failed' error.
2026-07-04 13:33:39 +05:00
F4ilji f4f8bc8e77 feat(vikon): rewrite VikonIntegration from scratch — OAuth + core update
- HttpTask: Laravel Http facade with SSL enabled, retry, timeout
- ValidateTokenTask: token check via auth.db-nica.ru
- RefreshTokenTask: token refresh via db-nica.ru
- FilesystemTask: path traversal protection, blocked extensions (PHP/ASP/etc)
- AuthenticateAction: OAuth2 code→token exchange
- CheckAccessAction: token validation + filesystem writability check
- CheckVersionAction: version comparison against remote API
- UpdateCoreAction: ZIP download, Zip Slip protection, atomic sync with rollback
- VikonController: thin controller, 7 endpoints with Session-based token storage
- Routes: access-check, dashboard.auth, throttle:30,1 middleware
- Vue 3 Composition API frontend with progress bar
- Config: all secrets in .env via config/vikon.php
- vikon_core kept as fallback (not deleted)
2026-07-04 12:53:28 +05:00
F4ilji 47aac647ac feat(vikon): remove broken VikonIntegration container - starting fresh 2026-07-04 12:40:41 +05:00
F4ilji 709c51ea49 remove: all deploy UI/backend code, keep _deploy folder only
- Delete DeployRunCommand, DeployController, deploy API routes
- Delete Dashboard/Deploy Vue pages and components
- Remove deploy route from web.php
- Remove deploy quick action from config
- Remove DeployRunCommand from ConsoleKernel
2026-07-02 17:36:42 +05:00
F4ilji e0cb9642cd fix: add better error logging for deploy API 2026-07-02 16:55:43 +05:00
F4ilji 2b5b4ee48f error alert change 2026-07-02 16:49:55 +05:00
F4ilji aa6c5bc6be error alert change 2026-07-02 13:25:11 +05:00
F4ilji 92bb10faba fix: add CSRF token and cookies to deploy API requests 2026-07-02 13:17:24 +05:00
F4ilji 6fb0079e7c feat: add deploy route and sidebar navigation 2026-07-02 12:50:09 +05:00
F4ilji 13d7d36088 feat: add deploy dashboard page with components 2026-07-02 12:48:49 +05:00
F4ilji 8bc5c367d6 revert: remove deploy UI, controller, actions, tasks, and routes
- Remove Deploy/Index.vue, DeployController, DeploySiteAction, DeployTask
- Remove deploy routes from web.php
- Remove deploy menu item from menuConfig
- Remove deploy button and methods from Main.vue
- Remove deploy logging channel from logging.php
- Keep _deploy/ folder for future CI/CD setup
2026-07-02 12:00:48 +05:00
F4ilji 3da95da099 fix: use X-CSRF-TOKEN header to match Main.vue pattern
X-XSRF-TOKEN is for Laravel's cookie-based CSRF verification,
but this app uses meta tag CSRF. Main.vue uses X-CSRF-TOKEN
and works correctly.
2026-07-02 01:36:05 +05:00
F4ilji de4fdc2c72 fix: add credentials same-origin to Deploy fetch calls
Without this, session cookie is not sent with fetch() requests,
causing server to redirect to login (returning HTML instead of JSON).
2026-07-02 01:29:05 +05:00
F4ilji b42a733f53 error alert change 2026-07-02 01:24:58 +05:00
F4ilji 8364b220cc feat: add Integration Credentials CRUD and Deploy UI
Integration Credentials:
- Add IntegrationCredential model with encrypted payload
- Add full CRUD: ManageIntegrationCredentialsAction, 4 Tasks, Controller, Requests
- Add migration for integration_credentials table
- Add Vue pages: Index, Create, Edit
- AI tasks now read API keys from DB instead of .env
- Add sidebar menu item

Deploy UI:
- Add DeployTask with full deploy lifecycle management
- Extend DeployController with index, log, history endpoints
- Add Deploy/Index.vue with live polling and deploy log viewer
- Add sidebar menu item and QuickAction for Sveden

UI:
- Add 'key' icon to SidebarNavItem
- Change deploy button color to amber in Main.vue
2026-07-02 01:03:13 +05:00
F4ilji 938578d217 fix: handle non-JSON server responses in Sveden upload 2026-07-01 13:58:46 +05:00
F4ilji d83ecc3747 debug: show actual error message in Sveden upload 2026-07-01 13:33:49 +05:00
F4ilji 80b88405f1 fix: resolve Sveden upload permissions and CSRF cookie issue
- Add hostgroup (GID 1000) to Dockerfile so www-data inside container can write to sveden/
- Add credentials: 'same-origin' to fetch calls in Sveden.vue and QuickUpload.vue to send session cookies
2026-07-01 13:10:59 +05:00
F4ilji c9fca0bf29 feat: add Sveden update feature
- SvedenController: upload zip and extract to public/sveden
- UpdateSvedenAction: orchestrates temp file handling and extraction
- ExtractSvedenArchiveTask: validates and extracts sveden/abitur folders with security checks
- Sveden.vue: upload UI with progress indicator
- Added routes: GET/POST /dashboard/sveden
- Added quick action: Обновить Sveden
2026-06-30 16:12:16 +05:00
F4ilji 20f615365b changes 2026-04-17 12:38:39 +05:00
F4ilji 3669a0d982 changes 2026-04-14 23:10:00 +05:00
F4ilji 2e77978d5c changes 2026-04-13 14:37:57 +05:00
F4ilji 5eb5a7bc06 changes 2026-04-10 10:51:42 +05:00
F4ilji 9e35cf848d changes 2026-04-10 09:01:47 +05:00
F4ilji 4aa4b9cadf changes 2026-04-09 17:23:10 +05:00
F4ilji 4bde0b10d0 changes 2026-04-09 13:35:02 +05:00
F4ilji e986940680 changes 2026-04-09 09:09:17 +05:00
F4ilji 169a2f5654 changes 2026-04-08 14:14:38 +05:00
F4ilji 936b1fb5b0 changes 2026-04-07 17:54:26 +05:00
F4ilji 1256adba98 changes 2026-03-23 10:50:31 +05:00
F4ilji b1c4f7b054 changes 2026-03-21 15:40:18 +05:00
F4ilji d0a106159d changes 2026-03-21 00:53:49 +05:00
F4ilji 836452add6 Changes 2026-03-20 23:35:09 +05:00
F4ilji a3948c872e Changes 2026-03-20 21:47:02 +05:00
F4ilji 864795749e Update pagination limit and improve author display in PostListItem 2025-11-20 15:58:48 +05:00
F4ilji 2297aab379 Added a check for the emptiness of the array for added programs in Departments/Show.vue 2025-10-08 01:11:52 +05:00
F4ilji d6a5db711d changes 2025-10-05 18:04:32 +05:00
F4ilji f4bfa04690 Refactor Time.vue layout by removing unnecessary margin from schedule and date/time blocks for improved styling consistency. 2025-09-29 16:44:25 +05:00
F4ilji 4146880905 Add time method to TvController and update routes to include time endpoint for TV functionality. 2025-09-28 12:36:38 +05:00
F4ilji 02fb2554c1 Enhance FindSliderBySlugTask to filter slides based on current time, ensuring only active slides within the valid time range are retrieved; update SlidesRelationManager to set default and minimum dates for start and end times. Improve Slider component styling for better visibility during loading state. 2025-09-27 14:11:25 +05:00
F4ilji 3b55909906 Refactor BackButton component in Show.vue to use route name instead of URL; update PostAuthorsList.vue to correct conditional rendering for authors list display. 2025-09-11 12:37:49 +05:00
F4ilji 8b2f9e99f0 add 'info' field as an array in DirectionStudy model; update DirectionStudyResource to include tabs for main information and admission details; modify Show.vue to display direction study information; enhance PageItemBlock.vue for better breadcrumb display 2025-07-27 21:33:00 +05:00
F4ilji cb95af3c46 update form handling in Page.vue and Show.vue components to use optional chaining for safer access to form IDs 2025-07-27 13:29:01 +05:00
F4ilji a4bdde6382 refactor educational components and API routes; update form handling in various actions and Vue components, enhance user interface for form display, and improve data retrieval logic in CreateAdmissionPlan job 2025-07-27 12:52:04 +05:00