
DR.extend('Sva', {

    call : function(type, controller, action, params, data) {
        
        var url = '/apicust/' + controller + action + params;
        url     = url + '/signed_request/' + window.Arcade.user.signed_request;

        DR.log("Making Call: " + url);        
        
        $.ajax({
            type: type,
            url: url,
            dataType: 'json',
            data: data,
            success: function(json) {
                DR.log(json);
                DR.Sva.ajaxResponse(json);
            },
            error: function(request, textStatus, error) {
                DR.log(error);
            }
        });
    },
    
    ajaxResponse : function(json) {
    	/* Kraft Hockeyville Specific */
    	DR.log("Got an AJAX response:", json);
    	if (json.results.invite_friend == true) {
    		DR.log ("Invite Friends Works");
    		$('.puckAchievement').removeClass('notAchieved');
    		$('.puckAchievementText').removeClass('notAchieved');
    	}
    	if (json.results.like_app == true) {
    		DR.log ("Invite Friends Works");
    		$('.skateAchievement').removeClass('notAchieved');
    		$('.skateAchievementText').removeClass('notAchieved');
    	}
    },
    
    trackPost : function(postId) {
        DR.log("SvaApi::Track Post", postId);
        
        var type       = 'get';
        var controller = 'sva/';
        var action     = 'track-post/';
        
        var params = 'post-id/' + postId;
        
        DR.Sva.call(type, controller, action, params);
    },
    
    trackInvite : function(postId) {
        DR.log("SvaApi::Track Invite", postId);
        
        var type       = 'get';
        var controller = 'sva/';
        var action     = 'track-invite'; // Note no ending slash because params are empty!!!!!!!!
        
        var params = '';
        
        DR.Sva.call(type, controller, action, params);
    },
    
    star : function(contentId) {
        DR.log("SvaApi::Star");
        
        var type       = 'get';
        var controller = 'sva/';
        var action     = 'star/';
        
        var params = 'content_id/' + contentId;
        
        DR.Sva.call(type, controller, action, params);
    },
	
	like : function(url) {
		DR.log("SvaApi::Like");
		
		var type       = 'get';
        var controller = 'sva/';
        var action     = 'like/';
		
		//var params = 'uid/' + window.Arcade.user.state.userId + '/url/' + url;
		//var params = 'uid/' + window.Arcade.user.state.userId + '/url/' + encodeURI(url);
		var params = 'uid/' + window.Arcade.user.state.userId;
		
		DR.Sva.call(type, controller, action, params);
	},
	
	appInvite : function(postId) {
		DR.log("SvaApi::app-invite");
		
		var type       = "get";
		var controller = 'sva/';
		var action     = 'app-invite/';
		
		var params = 'uid/' + window.Arcade.user.state.userId;
		
		DR.Sva.call(type, controller, action, params);
	}
});

