Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enhanced Metadata Support, SickBeard, CouchPotato #3

Open
wants to merge 13 commits into
base: master
Choose a base branch
from

Conversation

robnewton
Copy link

Added support for categories as found in the XMLTV data, lookups and
storage of additional meta data such as the TVDBId, TMDBId, season and
epi

Added a TVDB library
Added a TMDB library
Added a SickBeard library
Added a CouchPotato library
Added columns to the programs table in the sqlite database to capture
seriesId (tvdb), movieId (imdb), episode and season numbers, new flag,
category.
Removed all of the test code sent yesterday that was replacing the
behavior of a button
Added loading of the new program database columns when those database
rows for each program in the source are inserted. (no matter the source
type XMLTV, YOUSEE, etc, all will be able to use these features so long
as the source parser is updated to pull the information from somewhere
in the source data)
Enhanced the XMLTV parser to load the new program attributes (columns)
listed above from the XMLTV data combined with additional sources such
as TVDB & TMDB
Modified the epg viewer code to apply a color to the program based upon
it's category (dark green = sports, light green = news, red = movies,
orange = kids). This actually mirrors verizon fios color coding.
The icons for each program in the EPG were swapped out while changing
the category colors to use a vertical gradient instead of a horizontal
one (stretches better horizontally, and again, matches the verizon fios
interface)
Added "Record with SickBeard" option in the menu for a program. It will
add the show to sickbeard with all prior episodes set to "skipped'
Added an icon to the info panel on the EPG view for showing the
sickbeard logo when the show is managed by sickbeard
Added settings pages for each of the new libraries to configure the base
url's, api keys, and enable flag

Added support for categories as found in the XMLTV data, lookups and
storage of additional meta data such as the TVDBId, TMDBId, season and
epi

Added a TVDB library
Added a TMDB library
Added a SickBeard library
Added a CouchPotato library
Added columns to the programs table in the sqlite database to capture
seriesId (tvdb), movieId (imdb), episode and season numbers, new flag,
category.
Removed all of the test code sent yesterday that was replacing the
behavior of a button
Added loading of the new program database columns when those database
rows for each program in the source are inserted. (no matter the source
type XMLTV, YOUSEE, etc, all will be able to use these features so long
as the source parser is updated to pull the information from somewhere
in the source data)
Enhanced the XMLTV parser to load the new program attributes (columns)
listed above from the XMLTV data combined with additional sources such
as TVDB & TMDB
Modified the epg viewer code to apply a color to the program based upon
it's category (dark green = sports, light green = news, red = movies,
orange = kids). This actually mirrors verizon fios color coding.
The icons for each program in the EPG were swapped out while changing
the category colors to use a vertical gradient instead of a horizontal
one (stretches better horizontally, and again, matches the verizon fios
interface)
Added "Record with SickBeard" option in the menu for a program. It will
add the show to sickbeard with all prior episodes set to "skipped'
Added an icon to the info panel on the EPG view for showing the
sickbeard logo when the show is managed by sickbeard
Added settings pages for each of the new libraries to configure the base
url's, api keys, and enable flag
Cleaned up the source code in the meta data source libraries: SickBeard,
CouchPotato, TMDB, TVDB
Added a program options screen to the info button with the ability to
define custom menu items depending on the makeup of the the program.
This is modeled after the program options screen in the FiOS TV
interface.
Started organizing the code a bit for my own sanity. I hope Twinther
doesn't mind me doing that with not just my additions, but some of his
original code as well.

A globals module was created and I pulled the debug method out of gui.py
and into it along with some other global constants used in gui.
Moved the program options class out into it's own module.
Enhanced the debug method to add a consistent debug tag to all log
messages to make it easier to filter with a log viewer. Log messages
will now automatically get the name of the addon plus the class and
method name prepended in brackets.
Updated calls to xbmc.log to use the global debug method instead.
Added better handling of the response from the program options modal for
a starting point (will continue to build this out next week).
Example debug messages are below:
15:20:54 T:14852   DEBUG: [script.tvguide.TVGuide.onAction] Mode is: EPG
15:20:54 T:14852   DEBUG: [script.tvguide.TVGuide.setFocus] setFocus
3002
15:20:54 T:14852   DEBUG: [script.tvguide.TVGuide.setFocus] Focus before
Point(x=180, y=184)
15:20:54 T:14852   DEBUG: [script.tvguide.TVGuide.setFocus] New focus at
Point(x=180, y=234)
15:20:55 T:14852   DEBUG: [script.tvguide.TVGuide.onAction] Mode is: EPG
15:20:55 T:14852   DEBUG: [script.tvguide.TVGuide._showProgramOptions]
mouse controls hidden
15:20:55 T:14852   DEBUG: [script.tvguide.ProgramOptions._renderMenu]
offset: 0
15:20:56 T:14852   DEBUG: [script.tvguide.ProgramOptions.onAction]
activeMenuOption: 1
15:20:56 T:14852   DEBUG: [script.tvguide.ProgramOptions._renderMenu]
offset: 1
Moved classes into python packages under resource/lib/*
Modules that had multiple classes in them were split out to allow for a
module to have a single purpose with a good name.
Sources were moved into individual files and a slightly different class
loading technique was used since they were not all local.
Manually merged latest 3 commits from Twinther on Feb 12th
Reworked the menu systme code to be more re-usable.
Create gui and menu helper classes
Added new DVR screen to emulate the DVR screeen from fios. Available fro
mthe M key on the keyboard for now
Added a few graphics for the new DVR screen
Loaded the DVR screen with latest 100 episodes (organized by show in
date descending order)
Appended the latest 10 movies to the DVR screen. Will eventually merge
these two the intesperse the movies with the episodes in date desc order
There are known problems with the DVR screen loading while a stream is
playing
Bug found by Ryoga79 where I had missed an OS include in the XMLTV
source that was causing XMLTV files from networks shares to stop working
and crashed the addon.
The program options screen is now functional for scheduling TV Shows to
be managed by Sickbeard. You can also select to record just a single
episode and it will setup the show if it is not already, and mark that
episode as wanted". By default, all newly scheduled shows (series) have
their past episodes set to skipped.
Borrowed the uni and ascii methods from pseudotv to add to globals.
Convert all XMLTV sourced data
Added schedules direct to the available sources in teh settings. Still
working on the implimentation behind the scenes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant