Commit Graph

529 Commits

Author SHA1 Message Date
Torsten Schulz (local)
81dbbdd6f5 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)
9e6787fb3f Enhance logging and improve vocabulary trainer functionality in VocabLessonView
- Added detailed console logging to track the flow of the vocabulary trainer, including checks for available vocabulary and question generation.
- Implemented a safeguard against infinite loops when generating choice options by limiting attempts.
- Enhanced the buildChoiceOptions method to ensure a minimum number of options, adding generic choices if necessary.
- Improved the nextVocabQuestion method with additional logging for better debugging and user feedback.
2026-01-19 22:33:12 +01:00
Torsten Schulz (local)
2eee7bb0c1 Enhance logging and prevent redundant execution in VocabLessonView
- Added console logging to provide better feedback during lesson loading and completion checks.
- Improved loadLesson and checkLessonCompletion methods to prevent multiple executions and enhance user experience.
- Updated error handling to include more descriptive logging for easier debugging.
2026-01-19 22:27:22 +01:00
Torsten Schulz (local)
7f57ecc35e Refactor lesson loading and navigation logic in VocabLessonView
- Improved handling of course and lesson changes by resetting flags to prevent multiple executions during navigation.
- Enhanced the loadLesson method to prevent redundant loading and ensure a smoother user experience.
- Added console logging for better debugging and user feedback during navigation and lesson transitions.
- Updated navigation logic to use replace instead of push for better history management.
2026-01-19 22:15:06 +01:00
Torsten Schulz (local)
21f6130666 Enhance lesson completion checks and navigation in VocabLessonView
- Introduced flags to prevent multiple executions of lesson completion checks and navigation, improving user experience and preventing potential issues.
- Updated the checkLessonCompletion method to ensure accurate score calculation and progress updates.
- Enhanced the navigateToNextLesson method to handle course loading and user navigation more effectively, including user prompts for lesson completion.
- Improved the typing mode logic to ensure questions are only presented when available, enhancing the vocabulary trainer functionality.
2026-01-19 22:01:30 +01:00
Torsten Schulz (local)
594b3dac4a Refactor Bisaya course exercises for clarity and consistency
- Updated gap fill and multiple choice exercises to streamline content and improve user understanding.
- Simplified question structures and reduced the number of gaps in exercises for better engagement.
- Enhanced explanations for phrases to provide clearer context and meaning for learners.
2026-01-19 21:57:15 +01:00
Torsten Schulz (local)
ef2b279df6 Refactor exercise handling and improve user feedback in VocabLessonView
- Enhanced the exercise display logic to provide clearer feedback on available grammar exercises, improving user engagement.
- Updated conditional rendering to ensure accurate handling of lesson and exercise data, reducing potential errors.
- Improved logging for exercise counts and active tab states, aiding in debugging and performance monitoring.
2026-01-19 21:52:13 +01:00
Torsten Schulz (local)
2ffd7a6151 Add new survival phrases and exercises in Bisaya course content
- Introduced a comprehensive set of survival phrases in Bisaya, including multiple choice and gap fill exercises to enhance language learning.
- Added detailed explanations for each phrase to aid understanding and context for learners.
- Structured content into two parts for better organization and accessibility, ensuring a progressive learning experience.
- Updated existing exercises to include new vocabulary and improve user engagement with practical language use.
2026-01-19 21:31:18 +01:00
Torsten Schulz (local)
045d32c245 Enhance VocabLessonView with new vocabulary trainer features and improved statistics
- Added functionality for tracking total attempts and success rates in the vocabulary trainer, enhancing user feedback on performance.
- Introduced multiple choice and typing modes for vocabulary practice, allowing users to switch between different learning styles.
- Updated translations in both English and German to include new vocabulary terms and exercise instructions, ensuring consistency across languages.
- Improved UI layout for displaying vocabulary statistics and answer options, enhancing overall user experience.
2026-01-19 21:23:13 +01:00
Torsten Schulz (local)
053588ae74 Refactor hasExercises computed property in VocabLessonView for improved validation
- Enhanced the hasExercises method to include comprehensive checks for lesson and grammarExercises, ensuring robust validation before accessing properties.
- Removed redundant computed property declaration to streamline the code structure.
- Added additional logging for important vocabulary and grammar explanations to aid in debugging and provide better insights during lesson loading.
2026-01-19 21:10:20 +01:00
Torsten Schulz (local)
749a2d6f59 Refactor vocabulary extraction logic in VocabLessonView for multiple choice and gap fill exercises
- Enhanced the handling of multiple choice questions by extracting options and determining the correct answer index, improving accuracy in vocabulary mapping.
- Updated the question analysis to support different patterns for extracting German and Bisaya words, enhancing the learning experience.
- Improved gap fill answer extraction by iterating through possible answers and creating unique keys for vocabulary mapping, ensuring better context handling.
- Added detailed error logging to assist in debugging vocabulary extraction issues.
2026-01-19 21:04:01 +01:00
Torsten Schulz (local)
95ba8f0b33 Enhance VocabLessonView with vocabulary trainer and grammar explanations
- Introduced a vocabulary trainer feature allowing users to practice important vocabulary interactively, with options to start and stop the trainer.
- Added sections for grammar explanations and lesson descriptions to improve user understanding of the content.
- Updated translations in both English and German to reflect changes in vocabulary and exercise terminology.
- Enhanced conditional rendering to ensure proper display of vocabulary and grammar information based on lesson data.
2026-01-19 20:58:39 +01:00
Torsten Schulz (local)
dacf6cb7f8 Add vocabulary information text and improve conditional rendering in VocabLessonView
- Introduced a new translation key for vocabulary information text in both English and German, providing context for users on vocabulary usage in exercises.
- Enhanced conditional rendering in VocabLessonView to ensure lesson data is properly checked before displaying cultural notes and vocabulary lists, improving robustness and user experience.
2026-01-19 19:43:59 +01:00
Torsten Schulz (local)
656c3b3d09 Improve exercise display and logging in VocabLessonView
- Updated the exercise tab button to show the count of available grammar exercises, enhancing user feedback.
- Enhanced conditional rendering to ensure proper handling of lesson and exercise data, preventing potential errors.
- Added detailed logging for exercise count and active tab state, aiding in debugging and monitoring.
2026-01-19 19:40:36 +01:00
Torsten Schulz (local)
44ce6636c0 Refactor answer checking logic in VocabService to support multiple exercise types
- Updated the _checkAnswer method to handle both multiple choice and gap fill exercises more effectively.
- Enhanced the extraction of correct answers and alternatives based on exercise type, improving accuracy in answer validation.
- Added JSON parsing for answer and question data to ensure compatibility with various input formats.
- Improved fallback mechanisms for answer checking to accommodate different data structures.
2026-01-19 19:35:41 +01:00
Torsten Schulz (local)
1413630f11 Fix layout issue in VocabLessonView by closing a div tag for improved rendering of exercise details 2026-01-19 19:15:36 +01:00
Torsten Schulz (local)
8f55f63f77 Enhance logging and conditional rendering in VocabService and VocabLessonView
- Added detailed logging in VocabService for lesson retrieval, including lesson ID, title, and exercise count.
- Improved conditional rendering in VocabLessonView to handle cases where grammar exercises may not be present, enhancing user experience.
- Updated logging in VocabLessonView to provide insights into loaded lessons and exercises, aiding in debugging and monitoring.
2026-01-19 19:12:54 +01:00
Torsten Schulz (local)
0331ffeb93 Improve error handling and validation in importantVocab computed property of VocabLessonView
- Added checks to ensure importantVocab is only processed if lesson and grammarExercises are valid.
- Enhanced error handling with try-catch blocks to log issues during vocabulary extraction, improving robustness.
- Updated the condition for rendering the vocabulary list to prevent errors when importantVocab is undefined.
2026-01-19 19:01:49 +01:00
Torsten Schulz (local)
196b74bebb Enhance VocabLessonView and VocabService with new learning features
- Added a tabbed interface in VocabLessonView for 'Learn' and 'Exercises' sections, improving user navigation.
- Implemented logic to display important vocabulary and cultural notes in the learning section.
- Updated exercise result display to include correct answers and alternatives for better user feedback.
- Enhanced VocabService to extract correct answers and alternatives from exercise data, supporting the new UI features.
- Added new translations for vocabulary-related terms in both English and German, ensuring consistency across the application.
2026-01-19 16:41:10 +01:00
Torsten Schulz (local)
305e137a1a Reset exercise answers and results in VocabLessonView before loading new lessons
- Added logic to clear previous exercise answers and results when loading a new lesson, ensuring accurate tracking of user responses.
- Simplified the handling of exercise answers and results by directly assigning values instead of using Vue's `$set` method, improving code readability.
2026-01-19 16:08:39 +01:00
Torsten Schulz (local)
4e5ddc8027 Enhance VocabLessonView and VocabService for grammar exercise handling
- Added logic to initialize grammar exercises directly from lesson data or load them separately if not included.
- Introduced a new method to initialize answer arrays for gap fill exercises, improving user interaction and response tracking.
- Updated comments for clarity on the exercise loading process and initialization logic.
2026-01-19 15:33:15 +01:00
Torsten Schulz (local)
4bb75de3f0 Enhance grammar exercise functionality in VocabLessonView
- Added support for multiple exercise types including multiple choice, gap fill, and transformation.
- Updated UI to display exercise instructions and results with improved styling.
- Implemented logic to handle answer checking based on exercise type, enhancing user interaction.
- Added new translations for exercise-related terms in both English and German.
2026-01-19 15:23:16 +01:00
Torsten Schulz (local)
0572a0eb50 Add grammar exercise creation in course generation
- Integrated functionality to create example grammar exercises for grammar lessons during course creation.
- Added a new helper function to generate gap fill and multiple choice exercises based on lesson data.
- Enhanced logging to confirm the number of grammar exercises created, improving feedback during course setup.
2026-01-19 15:15:24 +01:00
Torsten Schulz (local)
c13cb40c7b Add lesson retrieval functionality in VocabController and VocabService
- Introduced a new method in VocabService to fetch lesson details, including access control based on user ownership and lesson visibility.
- Updated VocabController to wrap the new method for user access.
- Added a new route in VocabRouter to handle requests for specific lessons.
- Enhanced VocabCourseListView to support navigation to individual lesson views, improving user experience in accessing lesson content.
2026-01-19 15:07:52 +01:00
Torsten Schulz (local)
33787ba796 Refactor VocabCourseListView for improved layout and styling
- Updated the course item structure to enhance visual clarity and organization.
- Introduced new CSS classes for better styling and hover effects on course items.
- Adjusted padding, margins, and gaps for a more cohesive design.
- Improved button styles for enrollment, continuation, and editing actions, enhancing user interaction.
2026-01-19 14:27:41 +01:00
Torsten Schulz (local)
64f4468664 Add endpoint to retrieve all available languages in VocabController and VocabRouter
- Introduced a new method in VocabService to list all languages from the database.
- Updated VocabController to wrap the new method for user access.
- Added a new route in VocabRouter to handle requests for all languages.
- Modified VocabCourseListView to utilize the new endpoint for loading languages, enhancing the course selection experience.
2026-01-19 14:23:37 +01:00
Torsten Schulz (local)
408b65be30 Refactor native language loading in VocabCourseListView for improved clarity and error handling
- Renamed loadMyNativeLanguage to loadMyNativeLanguageId for better context.
- Enhanced error handling to log warnings when the languages list is empty or when the native language is not found.
- Improved debug logging to provide clearer insights into the native language loading process.
2026-01-19 14:11:22 +01:00
Torsten Schulz (local)
891420cb09 Refactor VocabService to improve direct property handling and enhance language loading
- Updated VocabService to calculate direct where properties after setting all direct properties, ensuring accurate query conditions.
- Enhanced filtering of AND conditions to remove empty objects before assignment, improving query efficiency.
- Added logic to load native language names for courses, ensuring accurate mapping of language IDs to names.
- Improved comments for clarity on the new logic and its implications on course retrieval.
2026-01-19 14:07:16 +01:00
Torsten Schulz (local)
a657c59b2c Add support for user's native language in VocabCourseListView
- Introduced a new option for selecting the user's native language in the course selection dropdown.
- Implemented logic to load the user's native language based on the UI language and map it to the corresponding language ID.
- Updated internationalization files to include strings for the user's native language in both German and English, enhancing the user experience.
2026-01-19 13:54:03 +01:00
Torsten Schulz (local)
89ec084106 Refactor VocabService to improve boolean parameter handling and enhance debugging
- Updated VocabService to convert string parameters for course retrieval into booleans, ensuring accurate filtering based on user input.
- Added detailed debug logging to track the state of query conditions and the final WHERE clause, aiding in troubleshooting and performance analysis.
- Improved comments for clarity on the logic and implications of the changes made.
2026-01-19 13:52:27 +01:00
Torsten Schulz (local)
a7a0daaf82 Enhance VocabService to combine AND conditions in query filtering
- Updated VocabService to combine AND conditions with direct where properties when both are present, improving query accuracy.
- Added comments for better understanding of the new logic and its implications on course retrieval.
2026-01-19 13:14:13 +01:00
Torsten Schulz (local)
df5c2a3141 Enhance VocabService logging and update VocabCourseListView state management
- Added debug logging in VocabService to track course retrieval details, aiding in troubleshooting and performance monitoring.
- Updated VocabCourseListView to include additional state properties for managing share codes and search functionality, improving user experience and interaction capabilities.
2026-01-19 13:03:06 +01:00
Torsten Schulz (local)
f902f5298c Refactor native language filtering in VocabService and update frontend handling
- Simplified the logic for filtering courses by native language in VocabService, allowing for better handling of undefined and null values.
- Enhanced the VocabCourseListView to clarify the behavior of nativeLanguageId based on user selection, ensuring accurate course retrieval based on language preferences.
- Improved comments in both files for better understanding of the filtering logic and its implications on course visibility.
2026-01-19 12:09:48 +01:00
Torsten Schulz (local)
ddd038761b Enhance language course creation script to support public courses
- Updated the script to create public language courses for various target and native languages without requiring an ownerHashedId.
- Implemented a function to find or create a system user for course ownership, ensuring automatic user assignment.
- Improved documentation to clarify the script's usage and the types of courses created.
2026-01-19 11:47:55 +01:00
Torsten Schulz (local)
09e53244d9 Add native language support in vocab course management
- Introduced a new field for native language in the VocabCourse model to allow learners to specify their native language.
- Updated the VocabService to handle native language during course creation and retrieval, including filtering options.
- Enhanced the database schema to include foreign key constraints for native language.
- Updated frontend components to support native language selection and display in course listings.
- Added internationalization strings for native language features in both German and English.
2026-01-19 11:43:38 +01:00
Torsten Schulz (local)
714e144329 Add course retrieval by share code feature and enhance course search functionality
- Implemented a new endpoint in VocabController to retrieve courses using a share code.
- Updated VocabService to include logic for validating share codes and checking course access permissions.
- Enhanced course listing functionality with search and language filtering options in the frontend.
- Added a dialog for users to input share codes and search for courses, improving user experience.
- Updated internationalization files to include new strings for share code functionality and search features.
2026-01-19 11:33:20 +01:00
Torsten Schulz (local)
e1b3dfb00a Refactor navigation structure to enhance language learning features
- Renamed 'vocabtrainer' to 'sprachenlernen' in the navigation structure for better clarity.
- Introduced a nested structure under 'sprachenlernen' for 'vocabtrainer' and 'sprachkurse', improving organization of language-related resources.
- Updated internationalization files for both German and English to reflect the new naming and structure, ensuring consistency across the application.
2026-01-19 11:24:46 +01:00
Torsten Schulz (local)
b6a4607e60 Implement vocab course and grammar exercise features in backend and frontend
- Added new course management functionalities in VocabController, including creating, updating, and deleting courses and lessons.
- Implemented enrollment and progress tracking for courses, along with grammar exercise creation and management.
- Updated database schema to include tables for courses, lessons, enrollments, and grammar exercises.
- Enhanced frontend with new routes and views for course listing and details, including internationalization support for course-related texts.
- Improved user experience by adding navigation to courses from the main vocab trainer view.
2026-01-19 10:58:53 +01:00
Torsten Schulz (local)
9553cc811a Update index.html and sitemap.xml for improved SEO and content visibility
- Updated the title and description in index.html to include new features like Vokabeltrainer and additional minigames.
- Added keywords meta tag to enhance search engine optimization.
- Modified sitemap.xml to reflect changes in URLs and update change frequencies for better indexing, including new entries for Vokabeltrainer and minigames.
2026-01-19 10:35:59 +01:00
Torsten Schulz (local)
59c05b3628 Implement job hierarchy and region depth calculations in FalukantService; enhance PoliticsView with own position highlighting
- Added a job hierarchy mapping to determine positions based on their rank.
- Introduced asynchronous region depth calculations to determine the hierarchy of regions.
- Updated the mapping of office data to include job hierarchy levels and region depths.
- Enhanced the PoliticsView to highlight the user's own positions with a distinct style.
- Implemented a method to load the user's character ID for position comparison.
2026-01-16 16:25:22 +01:00
Torsten Schulz (local)
d3629a8a09 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)
a17e8537fb Enhance character name resolution in enrichNotificationsWithCharacterNames function
- Introduced sets for collecting first name and last name IDs to improve character name enrichment.
- Implemented batch loading of first names and last names, optimizing database queries.
- Added a helper function to resolve names from character first and last name IDs, enhancing notification data with resolved character names.
- Improved logic for attaching resolved names to notifications, prioritizing name resolution from IDs over fallback methods.
2026-01-15 13:33:54 +01:00
Torsten Schulz (local)
a7f23c5885 Refactor update-backend.sh script for improved .env file handling and backup process
- Updated the script to securely back up .env files before deleting the old backend, ensuring no loss of environment configurations.
- Enhanced the restoration process of .env files with clearer logging for success and warnings when no files are found.
- Simplified the logic for copying the new backend while excluding .env files, improving clarity and maintainability of the script.
2026-01-15 13:11:44 +01:00
Torsten Schulz (local)
b706191a0e Refactor effect handling in enrichNotificationsWithCharacterNames to improve data parsing
- Simplified the logic for processing notification effects by consolidating the JSON parsing into a single conditional check, enhancing code readability and maintainability.
- Ensured consistent handling of effects regardless of their initial format, improving robustness in notification enrichment.
2026-01-15 09:28:00 +01:00
Torsten Schulz (local)
ba469ef900 Refactor notification handling in FalukantService to improve data processing
- Convert notification rows to plain objects before enriching with character names, ensuring compatibility with subsequent processing.
- Update return structure to include plain notification objects, enhancing data consistency in the response.
2026-01-15 08:16:04 +01:00
Torsten Schulz (local)
e852346b94 Update mood handling in FalukantService and enhance Socket.io configuration in store
- Modified mood assignment in FalukantService to conditionally wrap mood data in an object based on moodId presence, improving data structure consistency.
- Refactored Socket.io initialization in the store to dynamically set the secure option based on the URL scheme, enhancing connection security in production environments.
2026-01-14 16:22:05 +01:00
Torsten Schulz (local)
02d24eccd8 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)
d1359ccc36 Refactor proposal mapping in FalukantService to handle null characters
- Updated the proposal mapping logic to filter out proposals with null proposed characters, enhancing data integrity.
- Ensured that noble title is safely accessed with a fallback to null, improving robustness in character data handling.
2026-01-14 14:58:59 +01:00
Torsten Schulz (local)
52c7f1c7ba Refactor sendMessageToConnection method to enhance user data validation and message handling
- Introduce a local copy of the message to ensure its validity during processing.
- Validate user data retrieved from the WebSocket interface to ensure consistency before queuing messages.
- Streamline logging by removing redundant checks and focusing on critical error handling, improving overall clarity and stability.
2026-01-14 14:38:43 +01:00
Torsten Schulz (local)
7a2749c405 Remove redundant exception handling in sendMessageToConnection method to streamline error logging and improve code clarity. 2026-01-14 14:38:43 +01:00