def ParseCommand(self, mycgi): self.log(u"", xbmc.LOGDEBUG) (category, showId, episodeId, title, search, order, page, clearCache, watched, unwatched) = mycgi.Params(u'category', u'show', u'ep', u'title', u'search', u'order', u'page', u'clearcache', u'watched', u'unwatched') if watched != u'': Watched().setWatched(episodeId) xbmc.executebuiltin("Container.Refresh") return True if unwatched != u'': Watched().clearWatched(episodeId) xbmc.executebuiltin("Container.Refresh") return True if clearCache != u'': httpManager.ClearCache() return True if (showId <> u'' and episodeId == u''): return self.ShowEpisodes(showId, title) elif (category <> u''): return self.ShowCategory(category, title, order, page) elif (episodeId <> u''): (episodeNumber, seriesNumber) = mycgi.Params(u'episodeNumber', u'seriesNumber') return self.PlayVideoWithDialog( self.PlayEpisode, (showId, int(seriesNumber), int(episodeNumber), episodeId, title))
def createNewListItem(self, episodeDetail): (infoLabels, thumbnail) = self.getInfolabelsAndLogo(episodeDetail) contextMenuItems = [] if self.showWatched: if Watched().isWatched(episodeDetail.assetId): infoLabels['PlayCount'] = 1 contextMenuItems.append( (u'Mark as unwatched', u"XBMC.RunPlugin(%s?unwatched=1&ep=%s)" % (sys.argv[0], episodeDetail.assetId))) else: contextMenuItems.append( (u'Mark as watched', u"XBMC.RunPlugin(%s?watched=1&ep=%s)" % (sys.argv[0], episodeDetail.assetId))) newListItem = xbmcgui.ListItem(infoLabels['Title']) newListItem.setThumbnailImage(thumbnail) newListItem.setInfo(u'video', infoLabels) if len(contextMenuItems) > 0: newListItem.addContextMenuItems(contextMenuItems) return newListItem