- Simplified AdminController to minimal version
- Removed complex dependency injection
- Added @NoAdminRequired and @NoCSRFRequired annotations
- Minimal constructor with just appName
- Simplified routes.php
- Removed requirements array
- Clean route definitions
- Fixed admin template
- Kept same UI but removed non-standard calls
- Self-contained CSS and simple form
- This addresses 'Access forbidden' error when accessing admin page
The issue was likely caused by:
1. Missing annotations on admin controller
2. Complex DI not working properly
3. Route configuration issues
Simplified version should resolve access issues.
- Removed settings/navigation from appinfo/info.xml
- These sections can cause routing conflicts
- App now relies purely on routes.php
- Simplified Application.php
- Removed manual service/controller registration
- Let Nextcloud DI framework handle it automatically
- Fixed admin template to use Nextcloud standards
- Removed non-standard style() call
- Added proper l10n support with p($l->t(...))
- Clean template structure
- Created css/admin.css
- Nextcloud-compatible styling
- Matches design language
- Created js/admin.js
- Handles Save Configuration button
- Handles Test Connection button
- Uses OC, OC.Notification APIs
This should fix admin page not appearing issue.
Users can access via: Settings → Administration → Additional Settings
- Renamed analytics-hub/ → analyticshub/
- App ID in info.xml is 'analyticshub' (no hyphen)
- Nextcloud requires folder name to match app ID exactly
- Fixes 'Could not download app analyticshub' error during installation
Installation:
- Upload analyticshub/ folder to /var/www/nextcloud/apps/
- Folder name must match app ID in info.xml