// JavaScript Document

	var fb_dialog = false;
	var fb_dialog_params = false;
	//var fb_dialog_mode = 'iframe';
	
	function fbLogin(perms)
	{
		FB.login(function(response) 
		{
			if (response.session) {
				if (response.perms) {
					fb_session = true;
					fbDialogCheck();
				} else {
					fb_session = false;
				}
			} else {
				fb_session = false;
			}
			
		}, { perms:perms });
	}
	
	function fbDialogShow(dialog, dialog_params) 
	{
		fb_dialog = dialog;
		fb_dialog_params = dialog_params;
		
		if (dialog) {
			if (!fb_session && fb_dialog_mode != 'popup') dialog = 'login';
			
			if (dialog == 'login') {
				fbDialogLogin();
			} else {
				fbDialogClose();
				
				if (dialog_params) {
					var params = jQuery.parseJSON(dialog_params);
					if (!params.actions) params.actions = '';
					
					if (dialog == "publish") {
						fbDialogPublish(params.name, params.link, params.picture, params.caption, params.description, params.message, params.actions);
					} else if (dialog == "request") {
						fbDialogRequest(params.title, params.message);
					} else if (dialog == "share") {
						fbDialogShare(params.url);
					}
				}
			}
		}
	}
	
	function fbDialogCheck() 
	{
		if (fb_dialog && fb_dialog != 'login') {
			fbDialogShow(fb_dialog, fb_dialog_params);
		} else {
			fbDialogClose();
		}
	}
	
	function fbDialogClose() 
	{
		fb_dialog = false;
		fb_dialog_params = false;
		
		FB.Dialog.remove(FB.Dialog._active);
	}
	
	
	

	
	function fbDialogLogin() 
	{
		var dialog = FB.Dialog.create({
			closeIcon:			true,
			onClose: 			function() { fbDialogClose(); },
			visible: 			true,
			content: 			'<div class="pop_content">' +
								'	<div class="dialog_title"><div style="background-image: url(https://s-static.ak.facebook.com/rsrc.php/zd/r/Cou7n-nqK52.gif); width: 16px; height: 16px; float: left; margin-right: 5px;"></div>Facebook</div>' +
								'	<div class="dialog_content2">' +
								'		<div class="dialog_body">You have to login to Facebook in order to continue.</div>' +
								'		<div class="dialog_buttons">' +
								'			<label class="uiButton uiButtonLarge uiButtonConfirm"><input type="button" name="Login" value="Login" onclick="fbLogin(fb_perms);"></label>' +
								'			<label class="uiButton uiButtonLarge uiButtonConfirm"><input type="button" name="Cancel" value="Cancel" onclick="fbDialogClose();"></label>' +
								'		</div>' +
								'	</div>' +
								'</div>',
			width: 				400,
			height: 			150
		});	
	}
	
	function fbDialogPublish(name, link, picture, caption, description, message, actions) 
	{
		if (actions) actions = '{ "name":"'+actions.name+'", "link":"'+actions.link+'" }';
		
		FB.ui({
				method: 		'feed',
				display: 		fb_dialog_mode,
				app_id: 		fb_app_id,
				//redirect_uri: fb_app_canvas,
				name: 			name,
				link: 			link,
				picture: 		picture,
				caption: 		caption,
				description: 	description,
				message: 		message,
				actions:		actions
			}, function(response) { 
			
			}
		);
	}
	
	function fbDialogRequest(title, message) 
	{
		FB.ui({
				method:			'apprequests',
				display: 		fb_dialog_mode,
				app_id: 		fb_app_id,
				//redirect_uri: 	fb_app_canvas,
				//filters: 		'app_non_users',
				title: 			title,
				message: 		message
			}, function(response) { 
			
			}
		);
	}
	
	function fbDialogShare(url) 
	{
		FB.ui({
				method: 		'stream.share',
				display: 		fb_dialog_mode,
				app_id: 		fb_app_id,
				//redirect_uri: fb_app_canvas,
				u: 				url
			}, function(response) { 
			
			}
		);
	}
