Users will have the ability to customize their UPnP content list more flexibly.
Jpsonic's UPnP has long been a style that provides multiple views with slightly different specifications, and allows the user to enable the one of them that they want to use. This pull request will allow users to rename and reorder UPnP items.
Goal
Supports enabling/disabling, renaming, and reordering of UPnP items.
Menu settings will be changed to be managed on the DB instead of the Property file.
In preparation for future feature additions. Make it easy to add missing items.
Non-Goal
This pull request only rewrites the previous menu management structure. No new views have been added.
Enabling/disabling settings previously set by the user will not be migrated. Please note that your previous settings will be discarded.
Web page changes
UPnP settings Page has been changed
"UPnP basic settings" remains unchanged. Newly added "Menu settings" and "Customizing content display".
![image](https://github.com/tesshucom/jpsonic/assets/27724847/4254d33b-4c97-49c8-8d92-2ccbf135efc0)
Menu settings
Currently, there are eight basic menu items such as FOLDER and ARTIST. New items are planned to be added to these menu items in v114.x.
- Can be enabled/disabled.
- You can set the display name.
- To avoid confusion, the initial setting is "Album Artist", but it could be abbreviated to "Artist".
- The purpose is also to avoid i18n. Users can set it to their native language.
- It is possible to change the order. However, it is powerless against Apps that overwrite sorting. Choose good client software. (In UPnP, Apps that force client-specific sorting, at least by default, can be called anarchy.)
Settings can be changed instantly. No service restart is required. With software such as BubbleUPnP, which has an excellent cache refresh design, it will be easy to confirm this.
![image](https://github.com/tesshucom/jpsonic/assets/27724847/20d7f5b2-8076-4cd6-9ffe-c3608d5a0ba7)
Customizing content display
- It is possible to change the display contents of the menu.
- By default, one item is enabled for each item. If multiple Items are enabled for a single menu, the UI will display more nested structures.
- Display name will only be used if multiple items are enabled. If only one is enabled, its contents will be displayed directly. To minimize nesting of the UI, only one item should be enabled.
- If all items are disabled for a menu, the default item will be enabled.
- New items will be added to these sub-items in v114.x.
- Internally, these items can be sorted, but there are no plans to implement this functionality for the time being.
- By design, items that will not surprise the user are provided at the top of the list. Items that currently do not have such general views may have new views added in the future..
- Or items with lower cross-platform characteristics will not be ranked higher. (For example, items that depend on file dates are unlikely to be designed as default value.) In other words, they are not arranged completely based on the user's senses, so it may not meet your expectations.
![image](https://github.com/tesshucom/jpsonic/assets/27724847/468a28ad-7fde-464f-8b9c-09a4dab862da)
Contents of changes
[x] Change settings page to allow customization of UPnP menu
Prerequisites: #2587
Overview
Users will have the ability to customize their UPnP content list more flexibly.
Jpsonic's UPnP has long been a style that provides multiple views with slightly different specifications, and allows the user to enable the one of them that they want to use. This pull request will allow users to rename and reorder UPnP items.
Goal
Non-Goal
Web page changes
UPnP settings Page has been changed
"UPnP basic settings" remains unchanged. Newly added "Menu settings" and "Customizing content display". ![image](https://github.com/tesshucom/jpsonic/assets/27724847/4254d33b-4c97-49c8-8d92-2ccbf135efc0)Menu settings
Currently, there are eight basic menu items such as FOLDER and ARTIST. New items are planned to be added to these menu items in v114.x. - Can be enabled/disabled. - You can set the display name. - To avoid confusion, the initial setting is "Album Artist", but it could be abbreviated to "Artist". - The purpose is also to avoid i18n. Users can set it to their native language. - It is possible to change the order. However, it is powerless against Apps that overwrite sorting. Choose good client software. (In UPnP, Apps that force client-specific sorting, at least by default, can be called anarchy.) Settings can be changed instantly. No service restart is required. With software such as BubbleUPnP, which has an excellent cache refresh design, it will be easy to confirm this. ![image](https://github.com/tesshucom/jpsonic/assets/27724847/20d7f5b2-8076-4cd6-9ffe-c3608d5a0ba7)Customizing content display
- It is possible to change the display contents of the menu. - By default, one item is enabled for each item. If multiple Items are enabled for a single menu, the UI will display more nested structures. - Display name will only be used if multiple items are enabled. If only one is enabled, its contents will be displayed directly. To minimize nesting of the UI, only one item should be enabled. - If all items are disabled for a menu, the default item will be enabled. - New items will be added to these sub-items in v114.x. - Internally, these items can be sorted, but there are no plans to implement this functionality for the time being. - By design, items that will not surprise the user are provided at the top of the list. Items that currently do not have such general views may have new views added in the future.. - Or items with lower cross-platform characteristics will not be ranked higher. (For example, items that depend on file dates are unlikely to be designed as default value.) In other words, they are not arranged completely based on the user's senses, so it may not meet your expectations. ![image](https://github.com/tesshucom/jpsonic/assets/27724847/468a28ad-7fde-464f-8b9c-09a4dab862da)Contents of changes