Commit Graph

25 Commits

Author SHA1 Message Date
Koha9 9ddc0d9eb2 feat: Refactor backup and sync paths, enhance configuration flexibility 2025-12-15 10:45:28 +09:00
copilot-swe-agent[bot] b483edae74 Implement backup functionality with UI and backend support
Co-authored-by: Koha9 <36852125+Koha9@users.noreply.github.com>
2025-12-04 23:21:26 +00:00
copilot-swe-agent[bot] 1131b81454 Fix Simple Mapping not applying during sync - preserve id field
Root cause: The UUID (id) field was being stripped when saving path mapping:
- Backend ReplacementRule model was missing id field
- Frontend pathMappingToApi() didn't include id in conversion
- Backend update_path_mapping endpoint didn't save id

Changes:
- Add id field to ReplacementRule model in main.py
- Include id when saving path mapping rules in update_path_mapping
- Include id in frontend pathMappingToApi conversion

Co-authored-by: Koha9 <36852125+Koha9@users.noreply.github.com>
2025-12-03 13:46:37 +00:00
Koha9 f9dbe733c3 Merge commit '3f43662c1f19056e81f107357b661b435ee3a876' into copilot/update-regex-replacement-strategy 2025-12-02 10:16:44 +09:00
Koha9 aa4517aaf5 Fix: Fixed an issue where the Sync Now button became unresponsive due to duplicate API calls. 2025-12-02 09:55:57 +09:00
copilot-swe-agent[bot] 350f1d97e6 Add Path Mapping UI with Simple Mapping and Regex Rules modes
- Updated frontend/types.ts with new types: ReplacementRule, PathMappingRules, PathMappingMode, PathMappingConfig
- Replaced StrategySelector.tsx with new UI featuring:
  - Simple Mapping tab for local/cloud path pairs
  - Regex Rules tab with 4 rule groups (localPre, localPost, remotePre, remotePost)
  - MappingGroupEditor sub-component for editing rule lists
- Updated App.tsx to use PathMappingConfig state instead of RegexReplacement[]
- Updated api.ts to handle new PathMappingConfig structure
- Updated backend config.py with path_mapping field support
- Added /api/settings/path-mapping endpoint in main.py

Co-authored-by: Koha9 <36852125+Koha9@users.noreply.github.com>
2025-11-30 22:11:29 +00:00
Koha9 559342fae7 feat: Enhance scheduler and watcher with improved logging and cron trigger helpers 2025-11-29 12:56:18 +09:00
Koha9 fe4061d1a1 feat: Implement sync manager and file watcher for automated playlist synchronization 2025-11-29 12:26:59 +09:00
Koha9 7dae8647e6 feat: Implement scheduling functionality for playlist synchronization
- Added a new scheduler module using APScheduler to manage scheduled sync jobs.
- Introduced cron expression validation and job scheduling based on user-defined settings.
- Enhanced frontend to support schedule settings, including cron, daily, and weekly modes.
- Updated API service to handle fetching and saving schedule settings.
- Modified StrategySelector component to include schedule management UI.
- Added new types for schedule settings and modes in the frontend.
- Updated requirements to include APScheduler for scheduling capabilities.
2025-11-29 10:49:35 +09:00
Koha9 0ede137170 Support backend connection timeout configuration 2025-11-29 08:18:32 +09:00
Koha9 832dbc11d5 Fix frontend entrypoint for Vite build 2025-11-29 00:25:45 +09:00
Koha9 1b6dddacc8 Add a dropdown menu that allows users to select a library. 2025-11-27 21:48:48 +09:00
Koha9 0ad64216f5 Add regex-based path preprocessing for playlist sync 2025-11-25 21:33:04 +09:00
Koha9 08eed569a9 Sync all playlists and track deletions 2025-11-24 22:21:01 +09:00
Koha9 61794b8db9 Add playlist overview homepage 2025-11-24 17:35:42 +09:00
Koha9 c3d1662465 logger added.
plex_client method naming fix.
2025-07-19 18:00:48 +09:00
Koha9 65bd99d3f2 Fix config not save&load 2025-07-19 10:35:14 +09:00
Koha9 969b32ab68 feat(ui): add bootstrap toast for messages 2025-07-13 06:56:26 +09:00
Koha9 992161f9a9 refactor plex_client,config 2025-07-12 19:00:35 +09:00
Koha9 a8863f911b 支持手动token认证 2025-07-08 19:17:18 +09:00
Koha9 d4ed9d22f5 Add scheme dropdown and load defaults from config 2025-06-21 19:34:07 +09:00
Koha9 83c5780c57 Remove library selection and default theme 2025-06-20 22:32:05 +09:00
Koha9 75a413667d Set default Plex port 2025-06-20 22:27:01 +09:00
Koha9 aa4223b413 Refactor Plex interaction into separate module 2025-06-20 21:54:55 +09:00
Koha9 e9fcaf508e Complete bootstrap base frontend prototype.
- login page and playlist setting page frontend templates.
- fast API route.
- reading and saving config files
- mock login logic for UI interaction demo
2025-04-04 20:16:09 +09:00