feat: add QOL features to optimization - #2
Open
Lolmerkat wants to merge 27 commits into
Open
Conversation
…persist state, expand/collapse all
Split the monolithic 1903-line index.js into 13 focused modules under js/: - constants.js: color palettes, day names, calendar config - state.js: global mutable application state - utils.js: pure utility functions (ID generation, time parsing, type detection) - persistence.js: localStorage save/load - conflicts.js: overlap detection and column layout - calendar.js: weekly grid rendering - sidebar.js: module list rendering - actions.js: user interactions (toggle, remove, clear) - modals.js: modal helpers, add-module/LV forms, keyboard shortcuts - import.js: XHTML parser, file upload/drag-drop - share.js: JSON/iCal export and import - optimizer.js: schedule optimization engine and UI - app.js: application bootstrap Also removes duplicate nextId() and nextColor() declarations that existed at lines 88-93 and 111-116 in the original file.
- Fixed typo where Lehrveranstaltung was abbreviated to 'LV' instead of 'VL' for Vorlesung - Renamed functions, variables, CSS classes, DOM IDs, and German UI text - Added migration to load() and import() to ensure existing localStorage payloads with .lvs arrays are properly mapped to .vls
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
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.
This pull request introduces significant UI enhancements and new features to the application, focusing on improved file handling, module management, and the addition of an optimizer tool for schedule planning. The most notable changes include a new optimizer modal with interactive priority management, updates to import/export functionality, and various user interface improvements for better usability and flexibility.
New Optimizer Feature:
modalOptimize) allowing users to prioritize preferences via drag-and-drop and calculate optimal schedules, with styled results and actions for applying the optimized result. (index.html[1]global.css[2]File Import/Export Improvements:
index.htmlindex.htmlL22-R38)index.htmlindex.htmlL64-R89)Module Sidebar Enhancements:
index.htmlindex.htmlR58-R72)index.htmlindex.htmlR101-R111)Styling and Layout Adjustments:
global.csswith new styles for the optimizer feature, priority lists, enhanced dropzone states, sidebar toggle buttons, and various UI elements to improve consistency and interactivity. (global.cssglobal.cssR751-R1069)bodytoheight: 100vhand addingoverflow: hiddenfor better viewport handling, and adjusted header flex behavior. (global.css[1] [2]