Commit graph

129 commits

Author SHA1 Message Date
94c4fb650b
fix: Refactors views to use static for script paths
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.
2024-11-20 21:27:56 +01:00
c0d5e15687
refactor: Standardizes string quotes in settings
Replaces single quotes with double quotes in the settings
file for consistency and clarity.

These changes improve code readability and align with
Python's PEP 8 style guide.
2024-11-20 07:43:59 +01:00
725f566d97
feat: Enhances asset management for dashboard sections
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.
2024-11-20 07:41:50 +01:00
bc8da6b1cc
fix: Refactors data aggregation for heatmap
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.
2024-11-20 07:18:40 +01:00
7f79a79a17
feat: Enhances navigation with collapsible menus
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.
2024-11-19 06:56:52 +01:00
ca2f3eda3a
fix: Enhances date handling for weekly summaries
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.
2024-11-18 18:47:27 +01:00
5c7586bb9a
feat: Modularizes dashboard structure
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.
2024-11-18 10:49:04 +01:00
3c3cfc38ba
fix: Enhances activity visibility control
Replaces conditional rendering with inline style for hidden
activities. This simplifies the template logic and maintains
consistent structure for all activities, enhancing UI flexibility.
2024-11-18 08:35:29 +01:00
d522f23b55
fix: Adds 'hidden' field to ActivityEditView form
Enables editing of the 'hidden' attribute in activity forms,
supporting the management of activity visibility in the UI.
2024-11-18 06:55:01 +01:00
a6025dee31
fix: Switches DecimalFields to FloatFields in GPSPoint
Converts battery, accuracy, speed, and bearing fields from
DecimalField to FloatField in GPSPoint model for improved
performance and simplified operations. Updates migration to
reflect these changes, ensuring consistency across the database.
2024-11-18 06:42:36 +01:00
4de1c966d6
feat(migration): Add hidden field to Activity model
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.
2024-11-18 06:35:54 +01:00
cfc8f6eefc
feat: Add 'hidden' field to Activity model and update templates
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.
2024-11-18 06:35:16 +01:00
8ffdeddf4a
fix: Refines data transformation in heatmap view
Simplifies data processing by removing unnecessary value extraction.
Prepares for future enhancement to return color as value with count as tooltip.
2024-11-17 20:05:40 +01:00
841c5e08de fix: Update footer and reorder enabled modules
Revises footer content to include a new company name and links to
the source code repository, enhancing transparency and resource
accessibility.

Reorders the ENABLED_MODULES list to ensure correct load order.
2024-11-17 16:56:25 +01:00
dcb0f66478 feat: Refines HTML structure in dashboard template
Improves readability by adjusting whitespace and formatting.
Enhances visual consistency in card components by updating
CSS classes and HTML structure for better alignment and spacing.
2024-11-17 16:40:14 +01:00
25e78d424e chore: Update .gitignore to exclude static files
Adds /static/ directory to .gitignore to prevent accidentally
committing generated static assets. Helps maintain a clean
repository by excluding unnecessary files.
2024-11-17 16:40:04 +01:00
b6e7acc564 fix: Add TelegramWebhookView skeleton for POST handling
Introduces a new view class to manage Telegram webhook POST requests.
Lays the groundwork for processing incoming messages with a basic
placeholder returning HTTP 200 status. Future logic implementation
is pending.
2024-11-17 16:01:19 +01:00
ff70221553 refactor: clean up unused imports and improve code quality
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.
2024-06-02 20:27:02 +02:00
9fbfe583be feat: Enhance data security and introduce heatmap UI
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.
2024-05-17 15:03:20 +02:00
3e45ca5c2d feat: add dev dependencies for code formatting
Introduced black and ruff into the development requirements to standardize code formatting and linting processes. This enhancement aims to maintain consistent coding styles and improve code quality, facilitating smoother collaboration among developers.
2024-05-17 13:49:29 +02:00
c1f05fb1bb feat: Added cal-heatmap dependency 2024-05-17 13:36:59 +02:00
5d10e28d69 feat(migrations): Initialize database schema for messaging
This commit introduces the initial set of database migrations required for setting up the foundational models of the messaging system within the application. These models include `GatewayUser`, `GatewayUserSetting`, `Notification`, and various scheduling entities to manage notification delivery timings. It lays the groundwork for linking users to their gateway preferences, storing customizable settings per gateway-user pair, and managing notifications with flexible scheduling options. This schema setup is crucial for supporting a dynamic and configurable messaging system, enabling efficient notification management and dispatching based on user preferences and predefined schedules.

By establishing a robust database schema upfront, we ensure that the application can scale effectively, facilitating ease of maintenance and future enhancements. This migration caters to the need for a cohesive and flexible data model to represent users, their notification preferences, and the logistics of notification dispatching and scheduling within the system.
2024-05-17 13:30:34 +02:00
f7baae834a feat(license): update copyright term and contact email
Extended the copyright term to 2024 and updated the contact email to reflect the current address. This change ensures that the licensing information remains accurate and up-to-date, supporting proper legal attribution and communication avenues for software use and distribution.
2024-05-17 13:29:47 +02:00
53429b9ded feat(dreams): Initialize database models for dream tracking
This commit establishes the initial set of models required for the dream tracking feature within the application, including models for Dream, DreamMedia, Theme, DreamTheme, and ThemeRating, along with their associations. The structure allows for comprehensive tracking and categorization of user dreams, media associated with dreams, thematic elements, and ratings for these themes. This foundational work is critical for enabling detailed dream recording and analysis, supporting functionalities such as dream categorization, mood association, and user-specific customization.

The relationships between models facilitate advanced queries for insights and trends in dream content, mood correlations, and thematic popularity. The choice of fields and types ensures a balance between flexibility for future enhancements and the current performance requirements.
2024-05-17 13:28:29 +02:00
6521204608 feat: Add initial migrations for GPS and Mood modules
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.
2024-05-17 13:27:49 +02:00
710fd7df01 feat(vscode): add Django debug configuration
Added a new `launch.json` configuration for VSCode to enable debugging Django applications directly within the IDE. This setup specifically configures the Python Debugger (`debugpy`) for Django with custom server port `8091`, enhancing the development workflow by allowing developers to debug their Django applications without the need for external tools. The configuration is tailored to provide a smoother integration of debugging capabilities, focusing on improving productivity and efficiency during the development process.

This change reflects a broader effort to streamline the development environment, ensuring that team members can quickly and effectively troubleshoot issues, test new features, and iterate on their Django applications within a familiar and integrated development environment.
2024-05-17 13:19:22 +02:00
9051af6335 fix: pin django-polymorphic to v4.0.0a
Updated the django-polymorphic package to a specific alpha version (v4.0.0a) directly from its Git repository. This change ensures compatibility with ongoing project requirements and addresses potential issues with the previously used version. It is important to monitor the stability and updates of this alpha version closely in the project's development environment.
2024-05-17 13:17:57 +02:00
458651c3cb feat: update django-multiselectfield repo URL
Migrated the django-multiselectfield dependency source to a new
repository URL to align with our updated internal hosting strategy. This
change ensures that our dependency management is consistent with current
guidelines and utilizes our private repository infrastructure for better
control and security.
2024-03-24 16:49:57 +01:00
acc8cf5208 fix: update legend label in moodpies chart
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.
2024-03-24 16:29:27 +01:00
8032375bb5 refactor(mood/stats): streamline and optimize visualizations
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.
2024-03-24 16:28:10 +01:00
37035aad01 refactor(statistics.py): standardize chart height param
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.
2024-03-24 16:23:48 +01:00
a64a404551 feat: streamline topbar notifications
Simplified the alert system in the topbar by removing outdated
notifications and placeholder content for messages. Introduced a generic
alert placeholder to hint at potential future alert implementations.
This change aims to declutter the UI and enhance user experience by
focusing on relevant and streamlined information. Additionally, the
removal of the message center underscores a shift towards simplifying
user interactions within the platform.
2024-03-24 16:15:54 +01:00
5b0ef75396 Updates to documentation 2023-03-26 20:08:18 +00:00
f5582d2a0d Add missing OIDC_CREATE_USER value from config file 2022-10-26 07:00:44 +00:00
3a267aaace Update INSTALL.md
Add license
2022-10-25 14:43:01 +00:00
2ff91abe82 Migrate to AutoSecretKey
Implement OIDC login
2022-10-25 14:40:48 +00:00
ac18f31d9a Start development of gpslog module 2022-09-09 16:59:13 +00:00
67c602ddcf Start gpslog app 2022-09-07 16:15:22 +00:00
649f3bb86e Get requirements fixed (?) for Django4.1 2022-09-07 16:15:10 +00:00
b6659a235f Fix Dashboard link in navigation 2021-10-27 09:01:25 +02:00
2e03956f1d Move nav sections to respective apps 2021-10-24 17:45:23 +02:00
0ed152e061 Try fixing styling error 2021-10-24 17:41:38 +02:00
6c6656abcb Try fixing syntax error 2021-10-24 17:38:20 +02:00
969b63d002 Try implementing sidebar generation 2021-10-24 17:35:52 +02:00
aefcf5dec9 Fix autoescaping 2021-10-24 17:03:33 +02:00
98ab024d8c Missing files 2021-10-24 16:51:12 +02:00
4d2e04435a Minor work on frontend generation
Basic status API
2021-10-24 16:51:04 +02:00
7401b8a87c Add blank environment app 2021-10-07 16:36:19 +02:00
fb8cb5f298 Prepare for dynamic generation of navigation menus 2021-03-03 11:36:25 +01:00
30bc1deb73 Order activities by name by default 2021-03-03 10:35:54 +01:00