1
0
Fork 0
beathaven/app/controllers/api/search_controller.rb

39 lines
1.1 KiB
Ruby

module Api
class SearchController < BaseController
before_filter :validate_request!
def complete
return render json: { suggestions: [] } if params[:query].to_s.length == 0
suggestions = (Robbie::Autocomplete.complete(params[:query].to_s) || [])
render json: {
query: params[:query],
suggestions: suggestions
}
end
def wtfis
result = (Robbie::Autocomplete.search(params[:q].to_s) || []).first
unless result.nil?
if result.instance_of? Robbie::Artist
artist = Artist.find_or_create_by_rovi_id(result.id)
puts artist.inspect
unless artist.name?
artist.import
end
return render json: { found: "/artist/#{result.name.gsub(" ", "+")}" }
elsif result.instance_of? Robbie::Album
album = Album.find_or_create_by_rovi_id(result.id)
unless album.title?
album.import
end
return render json: { found: "/album/#{album.id}" }
end
end
render json: { found: nil }
end
end
end