FilterDraft
From Moving Pictures
Contents |
Demo
a demo of the navigation examples can be found [here]. The source files of this demo (xml, xslt, js and css) can be used also for other mediaportal guilist mockups (work in progress).
Definitions
- Property
- a movie property (mostly just a database field like: title, genre, etc...)
- Filter
- a condition applied to a property or multiple properties (property = this, property != that, property > this etc)
- Can also be a combination of other filters
- Can be presented as category or as part of a GUI control (watched/watched toggle button etc..)
- results in a movie object list
- Category
- Are used for navigation
- Are linked to ONE filter (this filter in turn can be multiple filters combined ofcourse, but this is to keep it simple)
- Can have their own backdrop, icon/image, and description.
- The backdrop defined in this category will be the default backdrop for movies that don't have a backdrop
- Can list subcategories (children) OR a list of objects (= end result of the current filter-chain).
- Can have multiple parents
- There are two types of categories: root- and subcategories.
- Root-Category
- Only available at the root level and thus has no parent category, it inherits the special subcategories by default (can be turned off)
- Sub-Category
- Is available only within another category.
- Label
- a.k.a. tag
- a property (textfield) that is attached to a movie
- a movie can have multiple labels
Global Filters
Common filters that are always available (side-menu?) no matter what list has focus. Each filter can in fact be a global filter but these ones (i think) should be always available.
Remote Control
Type: User Input
Watched/Unwatched
Type: Toggle button
Online / Offline
Type: Toggle button
Label
Type: User Input Might be available through Remote Filter instead of seperate control
Navigation
Next to global filters, we can also navigate the filters by (sub)categories in a hierarchical fashion. Users start out in the root and can navigate their way through a customized folder structure (folder=category). With each level (category), filters get applied to the chain and when the user reaches the deepest level (the category without any sub-categories) a movie object list is shown. This list is the result of all the filters in the chain. By default the plugin will have root category set up called "All Movies" (or My Movies or something that indicates it's not filtered). This category contains a special set of subcategories that will be available for al custom root categories that will be created also (if the user chooses to inherit them)
Root
The default entry point for the plugin. If the plugin has only one root category than the entry point will be that category. When the user has multiple categories an option would allow the user to mark one root category as entry point. In the future we could figure a way to have multiple listings in the MediaPortal menu that could be directly linked to a root-category.
(Root-)Category
Defineable entry point. Some examples of what a root category could stand for with the proper filter setup:
- All Movies
- Movies produced by Disney
- Movies from specific import path
- Movies labeled with "Kids" by the user
Recently Added
Special subcategory with a static subcategory list (on DBMovieInfo :: DateAdded)
- Latest #
- Today
- Yesterday
- This Week
- Last Week
- This Month
- Last Month
- This Year
- Last Year
Title
Special subcategory with a static List (DBMovieInfo :: Title).
- [#-9]
- [A-C]
- [D-F]
- [G-I]
- [J-L]
- [M-O]
- [P-S]
- [T-V]
- [W-Z]
Genres
Special subcategory with a dynamic list (distinct DBMovieInfo :: Genres)
- Action
- Drama
- ...
Year
Special subcategory with a dynamic list (distinct DBMovieInfo :: Year)
- 2008
- 2007
- ...
Rating
Special subcategory with a dynamic List (distinct DBMovieInfo :: rating).
- PG
- R
- ...
Score
Special subcategory with a static list (Think about exact scaling)
- Great
- Good
- Normal
- Bad
- Awful
Actors
Special subcategory with a dynamic List (distinct DBMovieInfo :: Actors)
- John Doe
- Jane Doe
- ...
Directors
Special subcategory with a dynamic List (distinct DBMovieInfo :: Directors)
- John Doe
- Jane Doe
- ...
Studios
Special subcategory with a dynamic list (distinct DBMovieInfo :: Studio)
- 20th Century Fox
- Universal
- ...
(Sub-)Category
User-defined child of the root-category
(Sub-)Category
User-defined child of the sub-category
Access / Parental control
This affects navigation and/or playback
Locks
- <user defined name>
- pincode
a lock can be applied to:
- category (visibility)
- movie (playback).
Levels
There are two levels on which access can be specified
Categorie
When you create/edit a category you can link it to a lock. a locked category won't be accessible without the pincode that is specified for the lock
Movie
The pincode only applies to playback. The movie will still be listed and details are visible.