-
Notifications
You must be signed in to change notification settings - Fork 2
new uploader UI #202
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
new uploader UI #202
Conversation
apprise install fix removed rclone.conf improved functions scripts
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR introduces a comprehensive UI overhaul for the docker-uploader application with significant frontend and backend enhancements. The changes include new API endpoints for improved status monitoring, environment settings management, queue statistics, and failed uploads tracking. The JavaScript codebase has been refactored with utility functions separated into a dedicated file, and the application now features auto-save functionality, styled select dropdowns, toast notifications, and enhanced real-time statistics.
Key Changes:
- New API endpoints for version checking, environment settings, queue statistics, and failed uploads
- Enhanced entity models with additional fields for job tracking
- Major frontend refactor with separated utility functions and improved UX features
- Database schema updates to add filesize_bytes column and improve query performance
- Enhanced shell scripts with better validation, error handling, and concurrent upload slot management
Reviewed changes
Copilot reviewed 26 out of 27 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| UploadJobStatus.php | Added fields for job metadata (name, timestamp, drive, time_end_clean, successful, error_message) |
| StatusResponse.php | Added uptime and storage fields with formatting improvements |
| version.php | New API endpoint with extensive debug info for version retrieval |
| update_env.php | New API for updating environment settings with validation and backup |
| env_settings.php | New API for reading environment settings |
| status.php | Enhanced with uptime calculation, storage info, and improved error handling |
| clean_history.php | Added exception handling and busy timeout |
| settings/update.php | New unified settings API with section-based organization |
| queue_stats.php | New API for queue statistics with size calculation |
| queue.php | New API for retrieving queue files |
| inprogress.php | Added error handling and busy timeout |
| failed_count.php | New API for counting failed uploads |
| failed.php | New API for retrieving failed uploads with pagination |
| completed_today_stats.php | New API for today's completion statistics |
| completed.php | Added error handling and busy timeout |
| utils.js | New utility file with helper functions (file size formatting, toast notifications, theme management) |
| app.js | Major refactor with auto-save, styled selects, improved event handling, and dashboard activity loading |
| app.js.bak | Backup of previous app.js version |
| style.css | Removed old styles (replaced by new CSS) |
| init-install/run | Added env file validation, database schema updates, and helper functions |
| function.sh | Added env var update function, bandwidth validation, improved concurrency control |
| function-gdsa.sh | Similar improvements to function.sh for GDSA mode |
| function-db.sh | Corrupted file with mixed autoscan/upload logic |
| Dockerfile | Added release.json copy with proper permissions |
| logo.png | New binary logo file |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
|
||
| switch (timeRange) { | ||
| case "day": | ||
| days = 1; |
Copilot
AI
Dec 27, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The value assigned to days here is unused.
| days = 1; |
| let progressClass = "bg-secondary"; | ||
| const progress = parseFloat(data.upload_percentage); | ||
|
|
||
| if (progress < 30) { |
Copilot
AI
Dec 27, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The initial value of progressClass is unused, since it is always overwritten.
| let progressClass = "bg-secondary"; | |
| const progress = parseFloat(data.upload_percentage); | |
| if (progress < 30) { | |
| let progressClass; | |
| const progress = parseFloat(data.upload_percentage); | |
| if (isNaN(progress)) { | |
| progressClass = "bg-secondary"; | |
| } else if (progress < 30) { |
Uh oh!
There was an error while loading. Please reload this page.