//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_onlogin() {
facebook_showPermissionsDialog();
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_showPermissionsDialog() {
// ENSURE WE CAN PUBLISH TO THIS USER'S STREAM!
FB.Connect.showPermissionDialog('publish_stream', facebook_onPermissionsDialogDone);
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_onPermissionsDialogDone() {
facebook_onconnect();
// because this is XFBML, we need to tell Facebook to re-process the document 
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_readyPage() {
jQuery("#tabLogin").hide();

// because this is XFBML, we need to tell Facebook to re-process the document 
FB.XFBML.Host.parseDomTree(); 

jQuery("#tabLoggedIn").show();
jQuery("#videoCommentsPane").show();
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_onconnect() {
facebook_readyPage();
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_warnLogout() {
	if (confirm('This will log you out of Facebook and our video comments section.  Proceed?')) {
	facebook_doLogout();
	}
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_doLogout() {
FB.Connect.logout(facebook_ondisconnect());
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_ondisconnect() {
jQuery("#tabLoggedIn").hide();
jQuery("#tabLogin").show();
jQuery("#videoCommentsPane").hide();
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_doTabComment() {
var cdata				= encodeURIComponent(document.facebookTabForm.COMMENT.value);
var videoID				= document.facebookTabForm.videoID.value;
	if (cdata == '') {
	alert('Please enter your comment before proceeding.');
	document.facebookTabForm.COMMENT.focus();
	return;
	}
facebook_showReviewSpinner();
facebook_sendComment(cdata,videoID);
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_doInlineComment() {
var cdata				= encodeURIComponent(document.facebookInlineReviewForm.COMMENT.value);
var videoID				= document.facebookInlineReviewForm.videoID.value;
	if (cdata == '') {
	alert('Please enter your comment before proceeding.');
	document.facebookInlineReviewForm.COMMENT.focus();
	return;
	}
facebook_sendCommentInline(cdata,videoID);
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_handleReviewFocus(tObj) {
	if (tObj) {
	// STOP OUR TABS ROTATION!
	jQuery("#jQueryTabs").tabs().tabs('rotate',0,false);
	tObj.value 				= '';
	}
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_handleReviewKeyUp(tObj) {
var obj						= jQuery("#facebook_tabReviewButton")
	if (tObj && tObj.value.length > 0) {
	obj.show();
	} else {
	obj.hide();
	}
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_handleInlineReviewKeyUp(tObj) {
var obj						= jQuery("#facebook_reviewButton")
	if (tObj && tObj.value.length > 0) {
	obj.show();
	} else {
	obj.hide();
	}
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_handleInlineReviewFocus(tObj) {
tObj.value 					= '';
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_showTabSpinner() {
jQuery("#tabInnerTextArea").hide();
jQuery("#tabSpinner").show();
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_alertDelete(videoID,reviewID) {
	if (confirm('Are you sure you wish to delete this comment?')) {
	var uri					= "/facebookServer/?section=GetVideoReviews&videoID="+videoID+"&delete=" + reviewID;
	facebook_showReviewSpinner();
	handleGetComplete		= "facebook_handleReviewRefreshDone";
	getAjaxContent(uri);
	}
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_reloadReviews() {
var vr						= document.getElementById('videoReviewsPane');
	if (vr != null && facebook_pageEmbedVideoID != '') {
	var uri					= "/facebookServer/?section=GetVideoReviews&videoID="+facebook_pageEmbedVideoID;
	facebook_showReviewSpinner();
	handleGetComplete		= "facebook_handleReviewRefreshDone";
	getAjaxContent(uri);
	}
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_sendComment(commentText,videoID) {
var uri						= "/facebookServer/?section=AddVideoReview&videoID="+videoID+"&review=" + commentText;
facebook_showTabSpinner();
handleGetComplete			= "facebook_handleSendCommentDone";
getAjaxContent(uri);
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_sendCommentInline(commentText,videoID) {
var uri						= "/facebookServer/?section=AddVideoReviewInline&videoID="+videoID+"&review=" + commentText;
facebook_showReviewSpinner();
handleGetComplete			= "facebook_handleReviewRefreshDone";
getAjaxContent(uri);
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_showReviewSpinner() {
var vr						= document.getElementById('videoReviewsPane');
var spinner					= document.getElementById('reviewSpinner');
	if (vr != null && spinner != null) {
	vr.innerHTML			= spinner.innerHTML;
	}
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_handleSendCommentDone(success,xmlHTTP) {
jQuery("#tabSpinner").hide();
var response						= xmlHTTP.responseText;

	if (response == "SUCCESS=1") {
	jQuery("#tabSuccess").show();
	facebook_reloadReviews();
	} else {
	jQuery("#tabError").show();
	}
	
// because this is XFBML, we need to tell Facebook to re-process the document 
FB.XFBML.Host.refresh(); 
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_addAnother() {
jQuery("#tabSuccess").hide();
jQuery("#tabInnerTextArea").show();
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_handleReviewRefreshDone(success,xmlHTTP) {
var response						= xmlHTTP.responseText;

var vr								= document.getElementById('videoReviewsPane');
	if (vr != null) {
	vr.innerHTML					= response;
	}
	
// because this is XFBML, we need to tell Facebook to re-process the document 
FB.XFBML.Host.parseDomTree(); 
}
//////////////////////////////////////////////////////////////////////////////////////////////
function facebook_showCommentsForReview(reviewID) {
jQuery("#reviewComments_"+reviewID).show();
}