Scrobbling to lastfm! w00t
This commit is contained in:
@@ -44,26 +44,48 @@ class LastFmController < ApplicationController
|
||||
|
||||
def listening
|
||||
return unless authorized?
|
||||
return if params[:artist].nil? or params[:track].nil?
|
||||
@res = {}
|
||||
|
||||
if params[:artist].nil? or params[:track].nil?
|
||||
render :json => {:status => 'bad params'}
|
||||
return
|
||||
end
|
||||
|
||||
user = User.find_by_vkid(params[:mid])
|
||||
return unless user.lastfm_key.nil?
|
||||
if user.lastfm_key.nil?
|
||||
render :json => {:status => 'lastfm account is not connected', :user => user}
|
||||
return
|
||||
end
|
||||
|
||||
lastfm = Lastfm.new(@@api_key, @@secret)
|
||||
lastfm.session = user.lastfm_key
|
||||
lastfm.update_now_playing(params[:artist], params[:track])
|
||||
r = lastfm.track.update_now_playing(params[:artist], params[:track])
|
||||
|
||||
render :json => {:status => r ? 'success' : 'failed'}
|
||||
return
|
||||
end
|
||||
|
||||
def scrobble
|
||||
return unless authorized?
|
||||
return if params[:artist].nil? or params[:track].nil?
|
||||
@res = {}
|
||||
|
||||
if params[:artist].nil? or params[:track].nil?
|
||||
render :json => {:status => 'bad params'}
|
||||
return
|
||||
end
|
||||
|
||||
user = User.find_by_vkid(params[:mid])
|
||||
return unless user.lastfm_key.nil?
|
||||
if user.lastfm_key.nil?
|
||||
render :json => {:status => 'lastfm account is not connected', :user => user}
|
||||
return
|
||||
end
|
||||
|
||||
lastfm = Lastfm.new(@@api_key, @@secret)
|
||||
lastfm.session = user.lastfm_key
|
||||
lastfm.scrobble(params[:artist], params[:track])
|
||||
r = lastfm.track.scrobble(params[:artist], params[:track])
|
||||
|
||||
render :json => {:status => r ? 'success' : 'failed'}
|
||||
return
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user