def __init__(self, core, status_func,include_subscriptions=True): 
        self.core = core
        self.logger = logging.getLogger(__name__) 
        #self.logger.setLevel(logging.DEBUG)
        self.status_func=status_func

        self.current_sel=None
        self.include_subscriptions=include_subscriptions
        self.available_schemes=self.core.get_uri_schemes().get()
        self.library_levels = [None] 
        self.refresh_list()
        self.player = MopidyPlayControl(core)
        self.searching = MopidySearch(core)
        self.playable_types = [Ref.TRACK, Ref.ALBUM, Ref.ARTIST, Ref.PLAYLIST]
        self.tracklist = core.tracklist
        self.tracklist.set_consume(True)
        if self.include_subscriptions: 
            self.subscriptions=Subscriptions.load()
        self.favourites=Favourites.load()
        self.status=None
        self.yt_default=yt_default
        self.__fix_current_list()
        
        self.update_timer=threading.Timer(5,self.auto_update)
        self.update_timer.start()
예제 #2
0
    def show_favourites(self, channel):
        """ Show the favourites (for a channel).

        :param ChannelInfo|None channel:    The channel to show favourites for.
                                            Might be None to show all.

        """

        Logger.debug("Plugin::show_favourites")

        if channel is None:
            Logger.info("Showing all favourites")
        else:
            Logger.info("Showing favourites for: %s", channel)

        # Local import for performance
        from favourites import Favourites
        f = Favourites(Config.favouriteDir)
        favs = f.list(channel)
        self.process_folder_list(favs)
예제 #3
0
    def add_favourite(self):
        """ Adds the selected item to the favourites. The opens the favourite list. """

        # remove the item
        item = self._pickler.de_pickle_media_item(
            self.params[self.keywordPickle])
        # no need for dates in the favourites
        # item.clear_date()
        Logger.debug("Adding favourite: %s", item)

        f = Favourites(Config.favouriteDir)
        if item.is_playable():
            action = self.actionPlayVideo
        else:
            action = self.actionListFolder

        # add the favourite
        f.add(self.channelObject, item,
              self._create_action_url(self.channelObject, action, item))

        # we are finished, so just open the Favorites
        self.favourites()
예제 #4
0
    def AddFavourite(self):
        """Adds an item to the favourites"""

        # remove the item
        item = Pickler.DePickleMediaItem(self.params[self.keywordPickle])
        # no need for dates in the favourites
        # item.ClearDate()
        Logger.Debug("Adding favourite: %s", item)

        f = Favourites(Config.favouriteDir)
        if item.IsPlayable():
            action = self.actionPlayVideo
        else:
            action = self.actionListFolder

        # add the favourite
        f.Add(self.channelObject,
              item,
              self.__CreateActionUrl(self.channelObject, action, item))

        # we are finished, so just return
        return self.ShowFavourites(self.channelObject)
예제 #5
0
 def favourites(self):
     """get favourites"""
     from favourites import Favourites
     self.options["mediafilter"] = "musicvideos"
     return Favourites(self.addon, self.metadatautils,
                       self.options).favourites()
예제 #6
0
 def favourites(self):
     '''get favourites'''
     from favourites import Favourites
     self.options["mediafilter"] = "episodes"
     return Favourites(self.addon, self.metadatautils, self.options).favourites()
예제 #7
0
 def favourites(self):
     '''get favourites'''
     from favourites import Favourites
     self.options["mediafilter"] = "songs"
     return Favourites(self.addon, self.artutils, self.options).favourites()
예제 #8
0
 def init_tables(self):
     Categories.init_table()
     Product.init_table()
     Favourites.init_table()
예제 #9
0
    def test_removeEntry(self,favs):

        Favourites.removeEntry(self, 'E09000023', favs)
        assert favs == {'Camden', 'E09000022'}
예제 #10
0
    def test_insertEntry(self,favs):

        Favourites.insertEntry(self, 'E09000003', favs)
        assert favs == {'E09000007', 'E09000022', 'E09000023', 'E09000003'}