-
Notifications
You must be signed in to change notification settings - Fork 0
Cutomizing the Main Menu
The Plex Plugin allows you to define the list of VFS views that you want to see in the Main Menu by providing your own plexmenu.json menu file.
The plexmenu.json file, must exist in the SAGE_HOME/userdata/Phoenix/Menus/ directory, and it must be a valid json structured file.
A sample file looks like this...
[
{
'title':'TV Shows',
'view':'phoenix.view.default.allTV',
'items': 100
},
{
'title':'Recent Recordings',
'view':'phoenix.view.util.recentrecordings',
'items': 50
},
{
'title':'Recent Imports',
'view':'phoenix.view.util.recentimports',
'items': 50
},
{
'title':'Upcomming Movies',
'view':'phoenix.view.default.upcomingmovies',
'items': 50
},
{
'title':'Home Videos',
'view':'phoenix.view.default.homevideos',
'items': 50
},
{
'title':'All Movies',
'view':'phoenix.view.default.allMovies',
'items': 50
},
{
'title':'Video Folders',
'view':'phoenix.view.default.videofolders',
'items': 50
},
{
'title':'Recording Schedule (Grouped by Date)',
'view':'phoenix.view.default.scheduledrecordings'
},
{
'title':'Recording Schedule',
'view':'phoenix.view.primary.scheduledrecordings'
},
{
'title':'Currently Recording',
'view':'phoenix.view.default.currentlyrecording'
}
]
The menu a JSONArray of JSONObjects where each object has a title and a view field.
The title will be what you want displayed in the menu. The view must be a valid Phoenix VFS view name.
Here's a list of VFS views. Please note that some views may not work correctly, or that views that return lots of items may take a long time to load.
- phoenix.view.util.todaysrecordings
- phoenix.view.util.instantstatus.todaysrecordings
- phoenix.view.util.recentrecordings
- phoenix.view.util.instantstatus.recentrecordings
- phoenix.view.util.recentmusic
- phoenix.view.util.recentpictures
- phoenix.view.util.recentlywatchedtv
- phoenix.view.util.instantstatus.recentlywatchedtv
- phoenix.view.util.recentlywatchedmovies
- phoenix.view.util.instantstatus.recentlywatchedmovies
- phoenix.view.util.currentlyrecording
- phoenix.view.util.instantstatus.currentlyrecording
- phoenix.view.util.featuredfavorite
- phoenix.view.util.recentimports
- phoenix.view.util.instantstatus.recentimports
- phoenix.view.util.conflicts
- phoenix.view.util.allsagefanart
- phoenix.view.default.upcomingmovies
- phoenix.view.default.scheduledrecordings
- phoenix.view.default.nowshowing
- phoenix.view.default.videofolders
- phoenix.view.default.archivedTV
- phoenix.view.default.allTV
- phoenix.view.default.allTVseasons
- phoenix.view.default.TV
- phoenix.view.default.allMovies
- phoenix.view.default.bluray
- phoenix.view.default.dvd
- phoenix.view.default.recentlywatched
- phoenix.view.default.currentlyrecording
- phoenix.view.default.homevideos
- phoenix.view.default.playlists
- phoenix.view.default.music.album
- phoenix.view.default.music.artist
- phoenix.view.default.music.genre
- phoenix.view.default.upnpdevices
- phoenix.view.online.videos
These should never be used directly
- phoenix.view.source.music
- phoenix.view.source.pictures
- phoenix.view.source.sagerecordings
- phoenix.view.source.sagearchivedrecordings
- phoenix.view.source.videos
- phoenix.view.source.dvd
- phoenix.view.source.bluray
- phoenix.view.source.allimportedvideo
- phoenix.view.source.mediafiles
- phoenix.view.source.scheduledrecordings
- phoenix.view.primary.importedmovies
- phoenix.view.primary.recordedmovies
- phoenix.view.primary.recordedtv
- phoenix.view.primary.recordedtvarchived
- phoenix.view.primary.importedtv
- phoenix.view.primary.homevideos
- phoenix.view.primary.scheduledrecordings
- phoenix.view.primary.upcomingairings
- phoenix.view.primary.currentlyairing
And if you've created your own views, and they work in BMT and Phoenix, then it might also work here as well.
For a complete list of Phoenix Views (with comments) check out the xml vfs file that Phoenix uses.
https://github.com/stuckless/sagetv-phoenix-ui/blob/master/STVs/Phoenix/vfs/x-vfs.xml
After editing the plexmenu.json please validate it using a json validation tool such as http://jsonformatter.curiousconcept.com/ to make sure it is valid (ie, no missing commas, etc)