F4ilji
d6c0f48d48
feat(analytics): add site analytics with grouped navigation sections
...
- Add Analytics container: models, tasks, jobs, controllers, routes, services
- Add analytics config with section groups (structure, institute, content, services)
- Add database tables: analytics_sessions, analytics_hits, analytics_daily_stats
- Add frontend: Analytics page, section detail, chart, overview, navigation components
- Add consent banner and JS tracking service (sendBeacon + Inertia listener)
- Add permission sync for view_analytics, view_any_analytic
- Fix trailing slash URL matching in GetNavigationSectionsTask
- Fix event propagation on expand arrows in navigation sections
- Fix RecordVisitJob to not depend on dropped analytics_geo_cache table
- Replace plain text views/visitors with badge-style icons
- Group navigation sections by category with separate blocks
- Add config-driven non-CMS sections (faculties, divisions, DPO, journals)
- Remove Events, TV, Sveden from analytics sections
2026-09-18 22:18:04 +05:00
F4ilji
7ff860feca
feat: block destructive DB commands in production
...
Listen for CommandStarting event and throw RuntimeException for
migrate:fresh, migrate:refresh, migrate:reset, db:wipe, db:seed
when APP_ENV=production. Prevents accidental data loss even with --force.
Also removes old non-functional closure-based override in routes/console.php.
2026-09-18 02:54:42 +05:00
F4ilji
1853b087f4
chore: update seeders, add MockDataSeeder and AssignAllPermissions command
...
- DatabaseSeeder: replace old seeders with MockDataSeeder
- RolesSeeder: update role definitions
- Add AssignAllPermissions artisan command
- Register MockDataSeeder in AppServiceProvider
- Register command in ConsoleKernel
2026-09-18 01:39:28 +05:00
F4ilji
cf18dd660a
fix: add missing HasContainerFactory trait to repo
2026-09-18 01:38:01 +05:00
F4ilji
24387d6767
feat(schedules): add bulk delete via checkboxes
...
- Add BulkDeleteSchedulesTask, BulkDeleteSchedulesAction
- Add route DELETE /dashboard/schedules/bulk-destroy
- Add bulkDestroy method to ScheduleController
- Update Index.vue: select all/individual checkboxes, bulk actions bar
- Fix CheckDashboardPermission: replace naive /s$/ regex with Str::singular()
to resolve irregular plurals (faculties→faculty, categories→category)
2026-08-20 11:16:53 +05:00
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
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
c6ca3258c1
feat(permissions): add dashboard:sync-permissions artisan command
...
Auto-discovers all dashboard permissions from resource/prefix matrix,
creates missing ones in DB, syncs to super_admin and admin roles.
Run on production after deploy or when adding new menu sections.
2026-07-11 14:17:11 +05:00
F4ilji
3ee875a6db
fix(handler): fallback to HTML when Vite manifest missing during error rendering
2026-07-06 13:41:52 +05:00
F4ilji
df6110adf8
feat(dashboard): modify exception handlers to render DashboardError for dashboard routes
2026-07-05 01:19:04 +05:00
F4ilji
15dd66b636
fix(vikon): register vikon.refresh in correct HttpKernel (Ship)
2026-07-04 17:55:53 +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
48ffd217b8
fix: secure deploy API, remove Docker-in-Docker, add DB backup
...
- Add web+superadmin middleware to /api/deploy routes
- Return JSON 403 in EnsureUserIsSuperadmin for API requests
- Remove Docker CLI and docker.sock from app container
- Replace docker compose restart with supervisorctl
- Add mysqldump backup step before migrations
2026-07-02 17:26:38 +05:00
F4ilji
c12ac98387
fix: register deploy:run command in ConsoleKernel
2026-07-02 12:57:14 +05:00
F4ilji
2997558a50
refactor: move ByteConverter from Helpers to Services namespace
...
- Move ByteConverter class to App\Ship\Services
- Update all imports across Filament form blocks
- Update ByteConverterServiceProvider
- Add INTEGRATION_CREDENTIAL_PREFIX to CacheKeys enum
2026-07-02 00:29:29 +05:00
F4ilji
4aa4b9cadf
changes
2026-04-09 17:23:10 +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
a3948c872e
Changes
2026-03-20 21:47:02 +05:00
F4ilji
72af09d93d
Add Yandex Metrika integration for tracking; update FindSliderBySlugTask to ensure active slides are filtered correctly based on time; enhance app.blade.php for conditional Yandex Metrika script inclusion based on environment.
2025-09-27 22:35:36 +05:00
F4ilji
335784231a
Add Fruitcake CORS package and update CORS configuration to allow all methods, origins, and headers for improved API accessibility.
2025-09-06 00:17:51 +05:00
F4ilji
e34d49b3f4
add SlideFactory to Slide model and update DatabaseSeeder to include SlideSeeder for improved data seeding
2025-08-11 22:27:15 +05:00
F4ilji
e62b442991
Error correction and preparation of the project for initial deployment
2025-08-11 16:12:10 +05:00
F4ilji
9a1fcbbf9d
update nginx configuration, enhance API route middleware to include 'web', add session middleware to HttpKernel, and improve educational program item and breadcrumbs components for better data display
2025-07-25 17:56:50 +05:00
F4ilji
0874d3e6b5
refactor sitemap generation and navigation handling; remove old GenerateSitemap command, update to use tasks for better organization, and enhance navigation data retrieval
2025-07-18 13:07:51 +05:00
F4ilji
97bda3d353
small fix
2025-06-18 23:33:41 +05:00
F4ilji
dae6dcf48f
change carousel type
2025-05-25 19:02:09 +05:00
F4ilji
7d6b75b708
added seo for Persons
2025-05-25 19:01:00 +05:00
F4ilji
c3c468c11a
adding custom error page render
2025-05-12 12:14:40 +05:00
F4ilji
c01016a154
Migrate backend to Porto architecture and fix minor bugs
...
- Fully transitioned the backend to the Porto architectural pattern
- Improved code organization and maintainability
- Fixed minor bugs and inconsistencies
2025-05-12 08:47:43 +05:00