var FP = new Object();
FP.namespace=function(b){
var d=b.split(".");
var a=FP;
    for(var c=0;c<d.length;c++){
        if(typeof a[d[c]]=="undefined"){
            a[d[c]]=new Object()
        }
        a=a[d[c]]
    }
};
FP.namespace('referral');
FP.referral.init = function() {
	FB.init({
			appId: FP.referral.FBAppId,
			oauth:true,
			status: true,
			cookie:true,
			xfbml:false
	});
}
FP.referral.login = function(btnId) {
	
	FP.referral.facebookLoginButtonId = btnId;		
		FB.getLoginStatus(function(response) {
			if (response.status === 'connected') {
				FP.referral.onFBLogin(response.authResponse);
			} else {
				FB.login(function(response2) {
					if (response2.authResponse) {
						FP.referral.onFBLogin(response2.authResponse);
					}
				}, {scope: FP.referral.FBPermList});
			}
	});
};
FP.referral.onFBLogin = function(session) {
		if (session) {
			var postData = 'mode=AUTH&accessToken=' + session.accessToken;
			if ($('redirect')) postData += '&redirect='+$('redirect').value;
			if ($('token')) postData += '&token='+$('token').value;
			if ($('crypted')) postData += '&crypted='+$('crypted').value;
			if ($('login_type')) postData += '&login_type='+$('login_type').value;			
			if (FP.referral.facebookLoginButtonId != 'facebook-login-button') {
				postData += '&reg=1';
			}
			//alert( "postdata: " + postData );
			$.ajax({
				url: '/fb/fblogin.php',
				type: 'post',
				data: postData,
				success: FP.referral.handleFacebookLoginSuccess
				});
		}
 };
FP.referral.handleFacebookLoginSuccess = function(response) {	
	var res = eval( '(' + response + ')');
	
	$( '#user_id' ).val( res.user_id );
	$( '#email' ).val( res.email );
	$( '#screenname' ).val( res.screenname );
	$( '#msgCatId' ).val( res.msgCatId );
	$('#facebookLoginForm').submit();
 };
 
FP.referral.logout = function( response ) {
	FB.logout(); 
}

 FP.referral.showErrors = function(errors) {	
	var html = '<ul>';
	for(var i=0; i<errors.length; i++) {
		html += '<li>'+errors[i]+'</li>';
	}
	html += '</ul>';
	if ($('login-error-details')) {
		$('login-error-details').innerHTML = html;
		$('login-error').removeClass('displayNone');
	}
 };

