viankakrisna
11/23/2016 - 8:49 PM

LastFM.js

module.exports = function LastFMFactory ($http, CONFIG) {
  'ngInject'
  return {
    geo: {
      getTopArtists: function () {
        return $http.get(CONFIG.lastfm_url + '?format=json&method=geo.getTopArtists&country=indonesia&api_key=' + CONFIG.lastfm_key)
      },
      getTopTracks: function () {

      }
    },
    artist: {
      getInfo: function (artist) {
        return $http.get(CONFIG.lastfm_url + '?format=json&method=artist.getInfo&autocorrect=1&artist=' + artist + '&api_key=' + CONFIG.lastfm_key)
      },
      getTopTracks: function (artist) {
        return $http.get(CONFIG.lastfm_url + '?format=json&method=artist.getTopTracks&autocorrect=1&artist=' + artist + '&api_key=' + CONFIG.lastfm_key)
      },
      getTopAlbums: function (artist) {
        return $http.get(CONFIG.lastfm_url + '?format=json&method=artist.getTopAlbums&autocorrect=1&limit=10&artist=' + artist + '&api_key=' + CONFIG.lastfm_key)
      },
      addTags: function () {

      },
      getCorrection: function () {

      },
      getSimilar: function () {

      },
      getTags: function () {

      },
      getTopTags: function () {

      },
      removeTag: function () {

      },
      search: function () {

      }
    },
    album: {
      getInfo: function (artist, album) {
        return $http.get(CONFIG.lastfm_url + '?format=json&method=album.getInfo&autocorrect=1&artist=' + artist + '&album=' + album + '&api_key=' + CONFIG.lastfm_key)
      },
      addTags: function () {

      },
      getTags: function () {

      },
      getTopTags: function () {

      },
      removeTag: function () {

      },
      search: function () {

      }
    },
    tag: {
      getInfo: function () {

      },
      getSimilar: function () {

      },
      getTopAlbums: function () {

      },
      getTopArtists: function () {

      },
      getTopTags: function () {
        return $http.get(CONFIG.lastfm_url + '?format=json&method=tag.getTopTags&country=indonesia&api_key=' + CONFIG.lastfm_key)
      },
      getTopTracks: function (tag) {
        return $http.get(CONFIG.lastfm_url + '?format=json&method=tag.getTopTracks&tag=' + tag + '&api_key=' + CONFIG.lastfm_key)
      },
      getWeeklyChartList: function () {

      }
    }
  }
}