Enhances `StatusListView` to support filtering based on
a date range by adding 'from' and 'to' query parameters.
This enables users to view status updates within a specified
date range, improving data accessibility.
Implements click event on calendar heatmap to redirect to
filtered mood page, supporting targeted data exploration.
Adds black to heatmap color range for undefined mood states.
Removes infinite values from domain except for upper boundary
to simplify handling and improve visual clarity.
Eliminates the addition of "#000000" in the heatmap color
range, which simplifies the domain mapping process.
This change maintains visual consistency in the heatmap
display and avoids unnecessary color assignment.
Corrects the heatmap color scale by adjusting the domain's
initial value to negative infinity. This ensures appropriate
color mapping for all mood values from lowest to highest.
Introduces console logging to debug mood average mapping
to the closest mood option key, aiding in verifying the
calculation and understanding discrepancies.
Ensures that the end date includes the entire day by setting
the time to 23:59:59 when a specific end date is provided.
This avoids excluding entries from the last day in the range.
Updates the logic for finding the nearest mood option key by comparing the numeric key directly to the average value.
This resolves incorrect mood determinations by ensuring that comparisons are based on numeric values, thus preventing potential mismatches in mood calculations.
Includes console logs to output the domain and range arrays
during the heatmap data retrieval. This helps in debugging
by providing visibility into the data structure used for
the heatmap color mapping.
Refines date range object to avoid redundancy.
Removes unnecessary 'value' key in chart data config
Updates tooltip to correctly display 'Mood Count' using
'extract_data' object for improved accuracy
Eliminates the inclusion of the Legend.min.js script as it is no longer needed in the mood section. This simplifies the codebase by removing dead code, ensuring that only essential scripts are loaded and potentially improving load performance.
Adds additional scripts for tooltips and legends in the heatmap,
enhancing data visualization and usability.
Refactors dashboard logic to dynamically fetch and render mood
data, allowing for more customized color scales and average
mood calculations.
Introduces a new API endpoint to provide mood value details,
necessary for proper heatmap rendering.
Improves the handling of mood data to compute averages for each
day, allowing for richer insights into mood patterns.
Updates script and style paths to use Django's static() function
for better path resolution and management. This ensures that
the paths are correctly resolved relative to the static files
configuration, enhancing maintainability and reliability.
Updates the import path for the static method to reflect
recent changes in Django's module structure, ensuring
compatibility with newer versions.
This change helps prevent deprecation issues under
up-to-date Django setups.
Changes hardcoded script URL paths to use Django's static function for better resource management and maintainability.
Improves code readability by breaking lines, adopting PEP 8 style guidelines.
Simplifies model imports and uses consistent string formatting for various UI elements.
Introduces methods to manage styles and scripts in dashboard
sections, promoting modularity and reusability.
Updates templates to dynamically render styles and scripts
directly from context, ensuring better integration with
existing features system.
Migrates related static assets to 'mood' section to streamline
the module structure.
These changes enable smoother customization and extendability
of the dashboard's look and feel.
Relates to improved frontend architecture.
Replaces count annotation with custom aggregation logic to
correctly count status entries per date in heatmap data.
Improves data processing by calculating occurrences manually.
Removes previous annotation and modifies output format.
This ensures data accuracy before encoding into JSON response.
Introduces NavCollapse to manage grouped navigation items.
Simplifies 'features.py' by organizing items under collapsible sections.
Updates HTML generation for both NavItem and NavCollapse classes.
Improves user experience by improving sidebar organization.
Sets the end date to the current day's end time for weekly
calculations, ensuring accuracy when calculating weekly
averages and most common activities.
Improves code readability by reformatting long conditionals
and query filter conditions for better clarity.
Introduces DashboardSection class to encapsulate dashboard logic,
enabling easier extension and customization. Adds separate mood
and dreams dashboard templates to streamline content rendering.
Refactors main dashboard template to dynamically render content
from enabled modules using a new template tag system, improving
flexibility and maintainability.
Replaces conditional rendering with inline style for hidden
activities. This simplifies the template logic and maintains
consistent structure for all activities, enhancing UI flexibility.
Introduces a boolean field 'hidden' to the Activity model to
allow activities to be marked as hidden. This can be utilized
for filtering visible activities without deleting them from
the database.
Introduces a 'hidden' BooleanField to the Activity model to manage
visibility of activities. Updates activity_edit and status_edit
templates to support toggling this option.
Improves clarity and maintainability by formatting HTML with better
indentation and structuring. Excludes hidden activities from being
displayed in status_edit.
Enhances user interface for selective display and editing of activities.
Removed unnecessary imports across various modules to streamline the application's dependencies and improve loading times. Specific changes include the removal of unused Django model and admin imports in several apps, simplifying view imports by eliminating unutilized components, and cleaning up static CSS for better maintainability. Corrections were made to conditional expressions for clearer logic. The removal of the django.test.TestCase import in test files reflects a shift towards a different testing strategy or the current lack of tests. Exception handling has been made more explicit to avoid catching unintended exceptions, paving the way for more robust error handling and logging in the future. Additionally, a new CSS file was added for frontend enhancements, indicating ongoing UI/UX improvements.
These changes collectively aim to make the codebase more maintainable and efficient, reducing clutter and focusing on used functionalities. It's a step towards optimizing the application's performance and ensuring a clean, manageable codebase for future development.
Reinforced user data access rules to bolster security and reorganized distribution files into separate directories for cleaner structure. Added a new heatmap visualization for mood statistics on the dashboard, making user engagements more interactive and insightful. Implemented a JSON view to support the heatmap feature, fetching mood entries within a specified time range.
This change responds to the need for improved data security and a more engaging user interface, directly addressing user feedback for clearer insights into their mood patterns over time.
Introduced initial database migrations for GPS logging and Mood tracking functionality, setting the foundation for data model structures in these modules. The migrations define essential entities such as GPSTrack, GPSToken, GPSPoint for the GPS logging module, and Mood, Activity, Aspect among others for the Mood tracking module. This pivotal change enables storing and managing user-generated GPS and mood data efficiently, paving the way for the implementation of core features related to GPS tracking and mood analysis. By removing 'migrations/' from .gitignore, we ensure future migrations are tracked and version-controlled, facilitating smoother database schema updates and deployments.
Updated the property for setting the chart legend's label from `legend`
to `legend_label` in the `moodpies` function to align with the latest
library syntax. This change ensures compatibility with newer versions of
the visualization library, preventing potential issues with legend
rendering in mood statistics charts.
This commit streamlines mood and activity visualization code in
mood/statistics.py for better readability and maintainability. By
consolidating similar code blocks, replacing ' extension calls with
consistent double quotes, and reformatting large data structures for
clarity, we ensure the code is more Pythonic and easier to follow.
Additionally, the alterations in how pie charts and mood statistics are
generated not only maintain functionality but also reduce cognitive load
when navigating the codebase. These changes pave the way for future
enhancements and debugging efforts by making the codebase more
approachable.
Standardized the parameter name for setting chart height across all
chart creation functions in statistics.py. Replaced `plot_height` with
`height` to align with the latest visualization library conventions.
This change enhances code consistency and adheres to the updated library
API, ensuring future compatibility and easier maintenance.