Beispiel #1
0
class XbmcRdioOperation:
  _TYPE_ALBUM = 'a'
  _TYPE_ARTIST = 'r'
  _TYPE_PLAYLIST = 'p'
  _TYPE_USER = '******'
  _TYPE_TRACK = 't'
  _TYPE_ALBUM_IN_COLLECTION = 'al'
  _TYPE_ARTIST_IN_COLLECTION = 'rl'

  _PAGE_SIZE_ALBUMS = 100
  _PAGE_SIZE_HEAVY_ROTATION = 14

  def __init__(self):
    self._rdio_api = RdioApi()

  def main(self):

    # TODO should get rid of the recursive references to 'mode=main' here as they mess up the ".." nav

    if self._mandatory_settings_are_valid():
      if not self._rdio_api.authenticated():
        try:
          self._rdio_api.authenticate()
        except RdioAuthenticationException, rae:
          self._addon.show_error_dialog([self._addon.get_string(30903), str(rae)])
Beispiel #2
0
class XbmcRdioOperation:
  _TYPE_ALBUM = 'a'
  _TYPE_ARTIST = 'r'
  _TYPE_PLAYLIST = 'p'
  _TYPE_USER = '******'
  _TYPE_TRACK = 't'
  _TYPE_ALBUM_IN_COLLECTION = 'al'
  _TYPE_ARTIST_IN_COLLECTION = 'rl'

  _PAGE_SIZE_ALBUMS = 100
  _PAGE_SIZE_HEAVY_ROTATION = 14

  def __init__(self, addon):
    self._addon = addon
    self._rdio_api = RdioApi(self._addon)

  def main(self):

    # TODO should get rid of the recursive references to 'mode=main' here as they mess up the ".." nav

    if self._mandatory_settings_are_valid():
      if not self._rdio_api.authenticated():
        try:
          self._rdio_api.authenticate()
        except RdioAuthenticationException, rae:
          self._addon.show_error_dialog([self._addon.get_string(30903), str(rae)])
          self._addon.add_directory({'mode': 'main'}, {'title': self._addon.get_string(30206).encode('UTF-8')})

      if self._rdio_api.authenticated():
        self._addon.add_directory({'mode': 'albums_in_collection'}, {'title': self._addon.get_string(30204).encode('UTF-8')})
        self._addon.add_directory({'mode': 'artists_in_collection'}, {'title': self._addon.get_string(30203).encode('UTF-8')})
        self._addon.add_directory({'mode': 'playlists'}, {'title': self._addon.get_string(30200).encode('UTF-8')})
        self._addon.add_directory({'mode': 'new_releases'}, {'title': self._addon.get_string(30215).encode('UTF-8')})
        self._addon.add_directory({'mode': 'heavy_rotation'}, {'title': self._addon.get_string(30216).encode('UTF-8')})
        self._addon.add_directory({'mode': 'top_charts'}, {'title': self._addon.get_string(30223).encode('UTF-8')})
        self._addon.add_directory({'mode': 'following'}, {'title': self._addon.get_string(30208).encode('UTF-8')})
        self._addon.add_directory({'mode': 'search_artist_album'}, {'title': self._addon.get_string(30209).encode('UTF-8')})
        self._addon.add_directory({'mode': 'search_playlist'}, {'title': self._addon.get_string(30218).encode('UTF-8')})
        self._addon.add_directory({'mode': 'reauthenticate'}, {'title': self._addon.get_string(30207).encode('UTF-8')})
    else:
Beispiel #3
0
 def __init__(self, addon):
   self._addon = addon
   self._rdio_api = RdioApi(self._addon)
Beispiel #4
0
 def __init__(self, addon):
     self._addon = addon
     self._rdio_api = RdioApi(self._addon)
Beispiel #5
0
class XbmcRdioOperation:
    _TYPE_ALBUM = 'a'
    _TYPE_ARTIST = 'r'
    _TYPE_PLAYLIST = 'p'
    _TYPE_USER = '******'
    _TYPE_TRACK = 't'
    _TYPE_ALBUM_IN_COLLECTION = 'al'
    _TYPE_ARTIST_IN_COLLECTION = 'rl'

    _PAGE_SIZE_ALBUMS = 100
    _PAGE_SIZE_HEAVY_ROTATION = 14

    def __init__(self, addon):
        self._addon = addon
        self._rdio_api = RdioApi(self._addon)

    def main(self):

        # TODO should get rid of the recursive references to 'mode=main' here as they mess up the ".." nav
        if self._mandatory_settings_are_valid():
            if not self._rdio_api.authenticated():
                try:
                    self._rdio_api.authenticate()
                except RdioAuthenticationException, rae:
                    self._addon.show_error_dialog(
                        [self._addon.get_string(30903),
                         str(rae)])
                    self._addon.add_directory({'mode': 'main'}, {
                        'title':
                        self._addon.get_string(30206).encode('UTF-8')
                    })

            if self._rdio_api.authenticated():
                self._addon.add_directory(
                    {'mode': 'albums_in_collection'},
                    {'title': self._addon.get_string(30204).encode('UTF-8')})
                self._addon.add_directory(
                    {'mode': 'artists_in_collection'},
                    {'title': self._addon.get_string(30203).encode('UTF-8')})
                self._addon.add_directory(
                    {'mode': 'playlists'},
                    {'title': self._addon.get_string(30200).encode('UTF-8')})
                self._addon.add_directory(
                    {'mode': 'new_releases'},
                    {'title': self._addon.get_string(30215).encode('UTF-8')})
                self._addon.add_directory(
                    {'mode': 'heavy_rotation'},
                    {'title': self._addon.get_string(30216).encode('UTF-8')})
                self._addon.add_directory(
                    {'mode': 'top_charts'},
                    {'title': self._addon.get_string(30223).encode('UTF-8')})
                self._addon.add_directory(
                    {'mode': 'following'},
                    {'title': self._addon.get_string(30208).encode('UTF-8')})
                self._addon.add_directory(
                    {'mode': 'search_artist_album'},
                    {'title': self._addon.get_string(30209).encode('UTF-8')})
                self._addon.add_directory(
                    {'mode': 'search_playlist'},
                    {'title': self._addon.get_string(30218).encode('UTF-8')})
                self._addon.add_directory(
                    {'mode': 'reauthenticate'},
                    {'title': self._addon.get_string(30207).encode('UTF-8')})
        else:
Beispiel #6
0
 def __init__(self):
   self._rdio_api = RdioApi()