Commit Graph
27 Commits
Author SHA1 Message Date
F4ilji 63e456088d feat(dashboard): add Roles CRUD with permission-based menu filtering
- Roles CRUD: List/Create/Update/Delete actions, controller, requests
- Roles Vue pages: Index, Create, Edit (Options API, DashboardLayout)
- SidebarNav: filter menu items by user permissions via Inertia shared data
- HandleInertiaRequests: share permissions and roles arrays to frontend
- HttpKernel: register dashboard.permission middleware alias
- SidebarNavItem: add shield-check icon mapping
2026-08-03 10:39:15 +05:00
F4ilji d4ef7daeb1 feat(dashboard): add page export/import functionality
- ExportPageAction: exports page with SEO and section path as JSON
- ImportPageAction: imports page from JSON, resolves section by slug path
- PageController: export/download and import endpoints
- Routes: GET /{page}/export, POST /import
- Index.vue: export button per row, import button in header (local only)
- Import restricted to APP_ENV=local (backend + frontend check)
2026-08-03 10:21:14 +05:00
F4ilji b7259fdd6f refactor(permissions): replace hardcoded route middleware with auto-resolving CheckDashboardPermission
- New middleware extracts permission name from route name automatically
- dashboard.posts.index → view_any_post
- dashboard.admission-campaigns.store → view_any_admission_campaign
- vikon-updates, integration-credentials excluded from check
- Single middleware on parent group instead of 28 individual ones
2026-07-16 12:05:15 +05:00
F4ilji b8fd42d9f8 fix(security): add permission middleware to dashboard routes
Each route group now requires view_any_{resource} permission.
Without the permission, Spatie returns 403 Forbidden.
VIKON updates and integration-credentials remain unprotected.
2026-07-16 11:57:20 +05:00
F4ilji 9bac98d175 fix(logging): route EmailFetchException to email channel instead of app 2026-07-06 13:39:26 +05:00
F4ilji 769b2ff342 feat(logging): migrate remaining files to app channel — all Log:: calls now use domain channels 2026-07-05 23:32:01 +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 fce1d3f454 fix: proper route structure - API in api.php, web in web.php 2026-07-02 17:10:44 +05:00
F4ilji 8b312e0ecd fix: move deploy API routes to web group with session auth 2026-07-02 17:01:32 +05:00
F4ilji c80baf4807 fix: return JSON 401 for unauthenticated API requests 2026-07-02 13:38:03 +05:00
F4ilji 6fb0079e7c feat: add deploy route and sidebar navigation 2026-07-02 12:50:09 +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 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 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 886cac5f95 changes 2026-04-15 16:41:08 +05:00
F4ilji 2e77978d5c changes 2026-04-13 14:37:57 +05:00
F4ilji 9e35cf848d changes 2026-04-10 09:01:47 +05:00
F4ilji 2fc19530ad changes 2026-04-09 17:54:02 +05:00
F4ilji 4aa4b9cadf changes 2026-04-09 17:23:10 +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