1
0
Fork 0
beathaven/app/assets/javascripts/backbone/models/user.js.coffee

37 lines
1.2 KiB
CoffeeScript

class BeatHaven.Models.User extends Backbone.Model
auth: ->
BH.log "Authenticating user ..."
this.query "/api/session/auth", { user: @.get("vk_session")["user"] }, (response) ->
if response.error?
# report error
else
BH.User.set(JSON.parse(response.user))
if response.is_newbie
BH.log "Requesting user tracks from Vkontakte ..."
# BH.VK.set_favorites()
query: (path, params, callback) ->
query_params = $.extend {}, @auth_params(), params
query_params.authenticity_token = $('meta[name="csrf-token"]').attr("content")
$.get path, query_params, callback
false
auth_params: ->
params = @.get("vk_session")
vk_auth:
expire: params["expire"]
mid: params["mid"]
secret: params["secret"]
sid: params["sid"]
sig: params["sig"]
set_favorites: (tracks) ->
BH.log tracks
BH.log "Sending your Vkontakte media collection to BeatHaven ..."
this.query "/user/set_first_favorites", tracks: tracks, (response) ->
if response.error?
BH.log "Got error: #{response.error}"
else
BH.log "We believe your favorite artists are #{response.join(', ')}"