-
Notifications
You must be signed in to change notification settings - Fork 72.8k
Add four csv exports #8401
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
Closed
Closed
Add four csv exports #8401
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- Added export buttons to the main navigation menu (requires admin access) - Implemented client-side exportData function with API_SECRET authentication - Export buttons trigger CSV downloads for entries and treatments data - Uses existing backend CSV export API endpoints with proper authentication - Exports up to 10,000 records with timestamped filenames - Only visible to authenticated admin users
- Added authenticatedExport() function to properly handle API secret validation - Export buttons now check if user is authenticated before allowing data export - If not authenticated, user is prompted to enter API secret via authentication dialog - API secret hash is now properly appended to export URLs as query parameter - Added proper URL encoding for all query parameters - Improved code structure with reusable function for both entries and treatments exports This fixes the issue where CSV exports were failing due to missing authentication, ensuring that the API_SECRET is properly required and validated before allowing data exports.
…ections - Added export buttons for Profile, DeviceStatus, and Food to the reports page - Implemented CSV format support in profile, devicestatus, and food API endpoints - Added date range filtering support for all new exports - All exports require API secret authentication - Export buttons placed above 'Show' button for easy access
Fixed multiple issues with CSV exports: 1. Entries CSV export: - Added header row to CSV output (dateString, date, sgv, direction, device) - Fixed incomplete data export by bypassing in-memory cache for large exports (count >= 10000) - Database is now queried directly for large exports to ensure all rows are included 2. Treatments CSV export: - Fixed incomplete data export by bypassing in-memory cache for large exports (count >= 10000) - Database is now queried directly for large exports to ensure all rows are included 3. Profile CSV export: - Changed /profile/ endpoint to use query_models function to support CSV format - Previously only returned JSON, now properly returns CSV when .csv extension is used 4. Devicestatus CSV export: - Fixed blank output by bypassing in-memory cache for large exports (count >= 10000) - Database is now queried directly for large exports to generate proper CSV with all data 5. Food CSV export: - Added null check to ensure empty array is returned when no results - Improved error handling for blank output scenarios All exports now properly query the database when count parameter is 10000 or higher, ensuring complete data export rather than being limited by in-memory cache size.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.