Commit Graph

137 Commits

Author SHA1 Message Date
Torsten Schulz (local)
da275061bf Implement age-based gender labels in FalukantWidget and update translations: Added logic to determine gender labels based on age groups and updated locale files for German and English. 2026-02-09 15:16:51 +01:00
Torsten Schulz (local)
c351bad45a Enhance FalukantWidget gender label logic and add age-based labels: Updated gender label computation to include age-based distinctions for children and adults. Added new translation key for "years" in both German and English locale files. 2026-02-09 15:12:23 +01:00
Torsten Schulz (local)
ba4e85a60b Refactor DirectorInfo and SaleSection components to unify speedLabel logic and remove unnecessary watch properties
- Simplified speedLabel method in DirectorInfo.vue and SaleSection.vue to handle null values and translations more efficiently.
- Removed the watch property for branchId in DirectorInfo.vue as it was not needed.
- Cleaned up the code by eliminating redundant checks and improving readability.

Update translations in falukant.json files

- Removed unused keys and cleaned up the structure in both German and English translation files.
- Ensured that all necessary translations are still present while removing obsolete entries.

Refactor BranchView and PoliticsView components for improved performance and clarity

- Removed caching logic for product prices in BranchView.vue to simplify the loading process.
- Streamlined the loadCurrentPositions method in PoliticsView.vue by eliminating unnecessary character ID checks and logging.
- Enhanced the user experience by ensuring that the application submission process is clearer and more efficient.

Clean up MoneyHistoryView and FamilyView components

- Removed the graph section from MoneyHistoryView.vue to simplify the UI.
- Adjusted the mood display logic in FamilyView.vue to ensure proper translation handling.
2026-02-09 11:44:26 +01:00
Torsten Schulz (local)
e18bd6f51e Update z-index values in DialogWidget and OverviewView components to improve layout stacking context and ensure proper element visibility. 2026-02-05 10:46:16 +01:00
Torsten Schulz (local)
e724fde5b7 Update z-index values in DialogWidget and StatusBar components, and remove negative z-index in OverviewView component for improved layout and stacking context. 2026-02-05 08:41:15 +01:00
Torsten Schulz (local)
a10334e891 Add watcher for branchId in DirectorInfo component: Implemented a watcher to trigger loadDirector method when branchId changes, enhancing data responsiveness in the UI. 2026-02-04 15:44:16 +01:00
Torsten Schulz (local)
fcf0d36902 Implement noBackground prop in Character3D component: Add functionality to conditionally render the background and background image based on the noBackground prop. Update OverviewView to utilize the new prop, enhancing the character display logic and improving visual customization options. 2026-02-02 08:46:12 +01:00
Torsten Schulz (local)
e442b5dca7 Refactor trigger creation logic: Update the created_at and updated_at fields to use the election date instead of the current timestamp, ensuring accurate term end calculations. Enhance socket event handling in StatusBar component by implementing setup and teardown methods for improved event management and user notifications. 2026-02-02 07:48:53 +01:00
Torsten Schulz (local)
4b1554757e Add widget functionality for birthdays, upcoming events, and mini calendar: Implement new API endpoints in calendarController and calendarService to retrieve upcoming birthdays and events, as well as mini calendar data. Update calendarRouter to include widget routes and enhance DashboardWidget to dynamically render new widget components. This update improves user experience by providing quick access to important calendar information. 2026-01-30 15:14:37 +01:00
Torsten Schulz (local)
b2b42d1eec Refactor DashboardWidget to use dynamic widget components: Replace static slot content with a dynamic component rendering based on the endpoint prop. This change simplifies the widget structure and enhances flexibility by allowing different widget types to be displayed. Additionally, update error handling to provide more specific error messages. 2026-01-30 13:42:22 +01:00
Torsten Schulz (local)
68bc7590fa Refactor age display logic in DashboardWidget: Simplify age representation to always show years, removing the conditional check for days. This change streamlines the age display functionality. 2026-01-30 13:34:02 +01:00
Torsten Schulz (local)
9525ecbb07 Enhance drag-and-drop experience in DashboardWidget: Implement a visual drag ghost image during widget dragging for improved user feedback. Adjust dragging state styles, including opacity and border, to better indicate active dragging. This update aims to refine the overall interaction and visual cues during widget rearrangement. 2026-01-30 11:13:51 +01:00
Torsten Schulz (local)
8963e31690 Refine DashboardWidget and LoggedInView styles: Adjust transition effects and dragging state in DashboardWidget for improved visual feedback. Update grid row height in LoggedInView for better responsiveness and enhance drop indicator styling for a more polished user experience. 2026-01-30 10:44:46 +01:00
Torsten Schulz (local)
9da4f7dca1 Enhance drag-and-drop functionality in Dashboard: Update styles for dragging state in DashboardWidget, including opacity and box-shadow adjustments. Improve LoggedInView by adding drop indicators for better user experience during widget rearrangement. Refactor drag-and-drop logic to maintain visual cues and ensure smoother interactions. 2026-01-30 10:30:07 +01:00
Torsten Schulz (local)
75ee2fdbd0 Update age representation in DashboardWidget: Modify falukantAgeLabel computed property to display age in days if less than a year, otherwise show in years. Add localization for "days" in both German and English language files to support the new age format. 2026-01-30 10:05:30 +01:00
Torsten Schulz (local)
fd758da93d Update DashboardWidget and LoggedInView styles: Adjust min-height and max-height properties for better layout flexibility. Enhance dashboard grid cell styling to support dynamic content display and improve overall UI responsiveness. 2026-01-30 09:26:00 +01:00
Torsten Schulz (local)
595f6e3a7a Improve AppNavigation item handling: Update the logic to only expand items with non-empty children, enhancing user experience by preventing unnecessary interactions on items without submenus. 2026-01-30 09:05:55 +01:00
Torsten Schulz (local)
b1f0938b81 Enhance DashboardWidget functionality: Integrate Vuex state management for socket connections, enabling real-time updates for Falukant widgets. Refactor computed properties and methods to handle socket events and improve data fetching logic. Update localization for age representation and adjust styles for better UI presentation. 2026-01-30 08:18:50 +01:00
Torsten Schulz (local)
797bcac94d Enhance character name display in DashboardWidget: Refactor character name construction logic in FalukantService to include title handling and create a new computed property for display name in DashboardWidget. Update styles for gender display and ensure proper localization for age representation. 2026-01-29 17:28:58 +01:00
Torsten Schulz (local)
2ba32a4a7f Refactor DashboardWidget and LoggedInView: Update DashboardWidget to display a single news article instead of a list, enhancing user experience. Remove logout button and related functionality from LoggedInView to streamline the interface. 2026-01-29 17:26:43 +01:00
Torsten Schulz (local)
75051322d5 Fix conditional rendering in DashboardWidget: Change v-else-if to v-if for newsDataResults to ensure proper display of news articles when data is available. 2026-01-29 17:22:53 +01:00
Torsten Schulz (local)
084bacc20d Add news widget functionality: Integrate newsRouter for fetching news data, update initializeWidgetTypes to include news endpoint, and enhance DashboardWidget component to display news articles with pagination support. Update LoggedInView to manage widget request counters for unique endpoint handling. 2026-01-29 17:20:06 +01:00
Torsten Schulz (local)
ab5620dea8 Add dashboard widget functionality: Implement getDashboardWidget method in FalukantService to retrieve compact user data for the dashboard. Update FalukantController and router to expose the new endpoint, and enhance DashboardWidget component to display user-specific information including character name, gender, age, money, unread notifications, and children count. 2026-01-29 17:03:32 +01:00
Torsten Schulz (local)
3769f95f63 Add dashboard functionality: Integrate dashboardRouter and UserDashboard model, enabling user-specific dashboard configurations. Update LoggedInView to support dynamic widget management, including adding, removing, and saving widget configurations, enhancing user experience and interactivity. 2026-01-29 16:52:54 +01:00
Torsten Schulz (local)
d0f98cdb81 Add batch processing for product price retrieval: Implement getProductPricesInCitiesBatch method in FalukantService for handling multiple product price requests in a single API call. Update FalukantController and router to support new endpoint, and refactor RevenueSection and SaleSection components to utilize batch processing for improved performance and reduced API calls. 2026-01-29 15:58:31 +01:00
Torsten Schulz (local)
a7c159a4af Refactor FalukantService and SaleSection components: Optimize product and knowledge retrieval by using Promise.all for concurrent database queries, improving performance. Additionally, reorganize the speedLabel method for better readability and maintainability, ensuring accurate localization handling for transport speed values. 2026-01-29 15:20:38 +01:00
Torsten Schulz (local)
c16574d9e2 Refactor price loading logic in RevenueSection and SaleSection components: Replace for-loops with Promise.all for concurrent API requests, improving performance and responsiveness. This change enhances the handling of loading states and ensures better management of price data retrieval. 2026-01-29 15:12:13 +01:00
Torsten Schulz (local)
bbd0b731a4 Refactor SaleSection component: Introduce methods section to organize component logic, enhancing readability and maintainability. This change improves the structure of the component by clearly separating computed properties and methods. 2026-01-29 15:11:16 +01:00
Torsten Schulz (local)
769b2b788a Add synchronous price calculation method: Introduce calcRegionalSellPriceSync for improved performance in price calculations when worthPercent is known. Refactor getAllProductPricesInRegion to utilize this new method, enhancing efficiency by reducing database calls. Update BranchView to manage product prices cache with regionId for better data handling. 2026-01-29 15:06:38 +01:00
Torsten Schulz (local)
a32af9a8e4 Refactor speedLabel method across components: Enhance localization handling for speed values by adding support for object types and improving fallback logic. This change ensures more accurate translations and better user experience in displaying transport speed information. 2026-01-29 14:22:25 +01:00
Torsten Schulz (local)
822ac5984b Refactor StatusBar component: Improve status item rendering by enhancing icon and label display, and update CSS for better alignment and styling. This change enhances the visual clarity and user experience of the status bar. 2026-01-29 11:58:15 +01:00
Torsten Schulz (local)
ee3dda9476 Refactor SaleSection component: Simplify sell item and sell all logic, remove unnecessary state management, and improve UI feedback. Update translations and clean up unused code in i18n files. Optimize price loading in BranchView and remove legacy product loading in MoneyHistoryView. Streamline PoliticsView by removing own character ID handling and related logic. 2026-01-26 16:03:48 +01:00
Torsten Schulz (local)
25ee3cbbb6 Add RelationshipChangeLog model and enhance character loading logic 2026-01-26 09:54:40 +01:00
Torsten Schulz (local)
c1773ac9c7 Update color scheme across components to use new primary orange variable
- Replaced hardcoded orange color values with the new CSS variable for primary orange in multiple components, ensuring consistency in styling.
- Updated styles in DialogWidget, MessageboxWidget, SettingsWidget, SimpleTabs, and various Falukant components to enhance maintainability and readability.
2026-01-23 13:56:19 +01:00
Torsten Schulz (local)
9e2ccf1a62 Refactor model path handling in Character3D component
- Introduced a constant for the models API path to streamline model path construction.
- Updated modelPath method to utilize the new constant, improving code clarity and maintainability.
- Adjusted fallback model path logic to ensure consistent API usage.
2026-01-22 13:42:27 +01:00
Torsten Schulz (local)
6b01625f56 Implement model optimization and caching for 3D characters
- Added a new modelsProxyRouter to handle requests for optimized 3D character models.
- Introduced modelsProxyService to manage GLB file optimization using gltf-transform with Draco compression.
- Updated app.js to include the new modelsProxyRouter for API access.
- Enhanced .gitignore to exclude model cache files.
- Added scripts for optimizing GLB models and updated README with optimization instructions.
- Integrated DRACOLoader in Character3D.vue for loading compressed models.
- Updated FamilyView.vue to streamline character rendering logic.
2026-01-22 13:24:47 +01:00
Torsten Schulz (local)
086ceee502 Update color scheme in AppHeader and AppNavigation components for visual consistency
- Changed background color in AppHeader.vue and AppNavigation.vue to a new shade for improved aesthetics.
- Adjusted hover states and submenu background colors in AppNavigation.vue to match the updated theme.
- Refactored FamilyView.vue to enhance layout with additional padding for better alignment of elements.
2026-01-22 12:56:53 +01:00
Torsten Schulz (local)
e6441c891b Update AppHeader and FamilyView components for improved styling and layout
- Changed background color in AppHeader.vue for enhanced visual appeal.
- Refactored FamilyView.vue to improve layout by introducing a flexbox structure for better alignment of relationship details and 3D character models.
- Added new CSS classes to support the updated layout and ensure responsive design.
2026-01-22 12:49:48 +01:00
Torsten Schulz (local)
d956ccca36 Enhance deployment scripts and frontend components for improved functionality and styling
- Added dependency installation step in deploy-frontend.sh and update-frontend.sh to ensure all required packages are available before building the frontend.
- Updated AppNavigation.vue to change background color for better visual appeal.
- Refactored FamilyView.vue to include 3D character models for both the user and their relationships, enhancing the visual representation of family dynamics.
- Modified OverviewView.vue to switch from 3D character rendering to a 2D avatar display, improving loading performance and user experience.
2026-01-22 12:39:24 +01:00
Torsten Schulz (local)
b71d29fba5 Update Vite configuration and Character3D component for improved module handling
- Added 'three' to the dedupe array in Vite config to optimize dependency resolution.
- Updated CommonJS options to enable transformation of mixed ES modules for better compatibility.
- Changed the import path for GLTFLoader in Character3D.vue to align with the latest Three.js structure.
2026-01-22 12:26:52 +01:00
Torsten Schulz (local)
e07e07e57b Update color palette and styles across components for improved visual consistency
- Changed theme color in index.html to a brighter orange for better aesthetics.
- Introduced a modern color palette in styles.scss for enhanced readability and consistency.
- Updated various components (AppFooter, AppNavigation, DialogWidget, etc.) to utilize new color variables, ensuring a cohesive look throughout the application.
- Adjusted button styles and hover effects for improved user interaction feedback.
- Enhanced background colors and text colors for better contrast and visibility.
2026-01-22 12:22:05 +01:00
Torsten Schulz (local)
4d0cc97f96 Add 3D character rendering to Character3D component
- Integrated Three.js for 3D character visualization based on user gender and age.
- Simplified the character structure by removing outdated HTML elements and replacing them with a dynamic 3D model loader.
- Implemented model loading with fallback options and added animation capabilities for enhanced visual appeal.
- Updated CSS for the character container to ensure proper rendering and responsiveness.
2026-01-22 11:53:40 +01:00
Torsten Schulz (local)
461ffdf7aa Refactor OverviewView and NoLoginView to integrate Character3D component
- Replaced avatar display logic in OverviewView with a 3D character representation based on user gender and age.
- Updated NoLoginView to utilize Character3D for displaying mascots, enhancing visual consistency.
- Removed outdated avatar positioning logic and related computed properties for improved code clarity and maintainability.
- Adjusted CSS styles for better layout and responsiveness of character displays.
2026-01-22 11:06:38 +01:00
Torsten Schulz (local)
a6ec430be2 Refactor MessagesDialog.vue for improved readability and functionality
- Replaced hardcoded button definitions with a computed property for better maintainability.
- Enhanced pagination logic by introducing a reset function and simplifying page navigation methods.
- Improved notification handling by restructuring parameter extraction and formatting, ensuring better clarity and consistency in displaying messages.
- Updated CSS styles for better visual presentation and consistency across the component.
2026-01-22 10:25:00 +01:00
Torsten Schulz (local)
0a3864f0a9 Optimize falukantService and DirectorInfo component for improved performance and user experience
- Refactored proposal handling in falukantService to load existing proposals before cleaning expired ones, reducing unnecessary database queries.
- Enhanced fetchProposals method with explicit joins for better performance and added a limit to avoid excessive data retrieval.
- Updated DirectorInfo component to reload data after hiring a director, ensuring the UI reflects the latest information.
2026-01-22 10:15:45 +01:00
Torsten Schulz (local)
9991555326 Update falukantService and MessagesDialog for improved data handling and parameter extraction
- Changed the join in falukantService from 'title_of_nobility' to 'title' for better clarity in data relationships.
- Enhanced MessagesDialog.vue to directly extract parameters from parsed data when no value object is present, improving the handling of character-related parameters and ensuring backend names take precedence.
2026-01-21 08:33:59 +01:00
Torsten Schulz (local)
e266742cec Add family vocabulary exercises in Bisaya course content
- Introduced a new set of multiple choice and gap fill exercises focused on family-related vocabulary in Bisaya, enhancing language learning.
- Included detailed explanations for each term to provide context and aid understanding for learners.
- Removed dummy exercises for unknown lessons, streamlining the exercise return logic for better user experience.
2026-01-19 22:48:10 +01:00
Torsten Schulz (local)
beed1b4aeb Enhance character name resolution logic in MessagesDialog component
- Improved character name extraction by prioritizing names resolved from the backend over those from notification values.
- Simplified fallback mechanisms for character names, ensuring a more robust handling of character IDs.
- Streamlined the logic for handling character names in various effect types, enhancing clarity and maintainability of the code.
2026-01-15 14:08:02 +01:00
Torsten Schulz (local)
3aac0476df Add 'sleep' status to Production model and update related components
- Introduced a new 'sleep' boolean field in the Production model to indicate if production is suspended.
- Updated FalukantService to include 'sleep' in the production attributes.
- Enhanced MessagesDialog and ProductionSection components to display the production status and handle branch names.
- Added corresponding translations for 'status', 'sleep', and 'active' in both German and English locale files.
2026-01-14 15:29:53 +01:00
Torsten Schulz (local)
d0c34d0826 Enhance MessagesDialog component and localization for overproduction notifications
- Updated MessagesDialog.vue to extract additional parameters (value, branch_id, region_id) for better handling of overproduction scenarios.
- Modified localization files (de/falukant.json and en/falukant.json) to reflect changes in the overproduction notification format, including branch information.
- Improved data formatting for clarity in notifications related to production levels.
2026-01-12 16:48:10 +01:00