// Global Pipeline Variables
var pipeline_win	= 'status=no,toolbar=no,resizable=no,scrollbars=no,menubar=no,location=no,width=804,height=710';
var preview			= '';
var vid				= '';

// Browser variables
var msie			= false;
var safari			= false;
var firefox			= false;
var windows			= false;

// Video player variables
var isLiveStream	= false;
var cnnVideoVolume	= 6;
var cnnMuteStateOn	= false;

// Global vars for script.aculo.us actions
var emailInMotion	= false;
var fbEmailInMotion	= false;
var fbOpen			= false;


function init() {
//	the_nav.write("flash_nav");
	//document.getElementById("flash_nav").style.visibility = 'visible';

	window.focus();
	check_reg();
}

function setBrowser() {
	var agent = navigator.userAgent.toLowerCase();
	if (agent.indexOf('safari')>-1) safari = true;
	if (agent.indexOf('firefox')>-1) firefox = true;
	if (agent.indexOf('msie')>-1) msie = true;
	if (agent.indexOf('windows')>-1) windows = true;
}

function open_pipeline(url_vars) {
	if (window.name != 'pga_pipeline') {
		var newWin = window.open("/pgachampionship/2006/pipeline/" + url_vars,"pga_pipeline",pipeline_win)

		if (newWin == null || typeof(newWin) == "undefined") {
			window.location = site_root + pipeline_dir + '/launcher.html' + url_vars;
		} else {
			window.location = site_root;
		}
	}
}

function open_link(loc) {
	var newWin = window.open(loc,'pgacom');
	if (window.focus) {
		newWin.focus()
	}
	return false;
}


/***** BEGIN EMAIL VIDEO LINK *****/
function showEmail(permalink) {
	if (!emailInMotion) {
		emailInMotion = true;
		document.getElementById('video_link').value						= permalink;
		document.getElementById("video_email_sending").style.display	= 'none';
		document.getElementById("video_email_sent").style.display		= 'none';
		document.getElementById("video_email").style.display			= 'block';
		Effect.BlindDown('video_email_container');
		setTimeout('emailInMotion = false;',1000);
	}
}
function closeEmail() {
	Effect.BlindUp('video_email_container');
	setTimeout('resetEmail();',1000);
}
function sendEmail() {
	if (isValidEmailForm()) {
		document.getElementById("video_email").style.display			= 'none';
		document.getElementById("video_email_sending").style.display	= 'block';
	
		var params = '';
		params = params + 'from=' + document.getElementById("video_from").value;
		params = params + '&to=' + document.getElementById("video_to").value;
		params = params + '&message=' + document.getElementById("video_message").value;
		params = params + '&video=' + document.getElementById("video_link").value;
		params = params + '&title=' + document.getElementById("video_title").innerHTML;
		params = params + '&type=video';

		var ajax_command = 'new Ajax.Request("/pgachampionship/2006/pipeline/email.cfm", {method:"post", parameters:"' + params + '", onComplete:completeEmail});';
		setTimeout(ajax_command,1000);
	}
}
function completeEmail(request) {
	document.getElementById("video_email_sending").style.display	= 'none';
	document.getElementById("video_email_sent").style.display		= 'block';
	setTimeout('closeEmail();',2000);
}
function resetEmail() {
	document.getElementById("video_to").value		= ''
	document.getElementById("video_message").value	= '';
	document.getElementById("video_link").value		= ''
	document.getElementById("video_title").value	= '';
	document.getElementById("video_email_sent").style.display		= 'none';
}
function isValidEmailForm() {
	if (trim(document.getElementById("video_from").value) == '') {
		alert("Please enter your email address");
		document.getElementById("video_from").focus();
		return false;
	} else if (!isEmail(document.getElementById("video_from").value)) {
		alert("Please enter a valid email address");
		document.getElementById("video_from").focus();
		return false;
	} else if (trim(document.getElementById("video_to").value) == '') {
		alert("Please enter recipient email address");
		document.getElementById("video_to").focus();
		return false;
	} else if (!isEmail(document.getElementById("video_to").value)) {
		alert("Please enter a valid recipient email address");
		document.getElementById("video_to").focus();
		return false;
	} else {
		return true;
	}
}
/***** END EMAIL VIDEO LINK *****/


/***** BEGIN EMAIL FEEDBACK *****/
function showFbEmail() {
	if (!fbEmailInMotion && !fbOpen) {
		fbEmailInMotion	= true;
		fbOpen			= true;
		document.getElementById("fb_email_sending").style.display	= 'none';
		document.getElementById("fb_email_sent").style.display		= 'none';
		document.getElementById("fb_email").style.display			= 'block';
		Effect.BlindDown('fb_email_container');
		setTimeout('fbEmailInMotion = false;',1000);
	}
}
function closeFbEmail() {
	Effect.BlindUp('fb_email_container');
	setTimeout('resetFbEmail();',1000);
}
function sendFbEmail() {
	if (isValidFbEmailForm()) {
		document.getElementById("fb_email").style.display			= 'none';
		document.getElementById("fb_email_sending").style.display	= 'block';
	
		var params = '';
		params = params + 'from=' + document.getElementById("fb_from").value;
		params = params + '&to=pga.pipeline@turner.com';
		params = params + '&subject=' + document.getElementById("fb_subject").value;
		params = params + '&message=' + document.getElementById("fb_message").value;
		params = params + '&type=fb';
	
		var ajax_command = 'new Ajax.Request("/pgachampionship/2006/pipeline/email.cfm", {method:"post", parameters:"' + params + '", onComplete:completeFbEmail});';
		setTimeout(ajax_command,1000);
	}
}
function completeFbEmail(request) {
	document.getElementById("fb_email_sending").style.display	= 'none';
	document.getElementById("fb_email_sent").style.display		= 'block';
	setTimeout('closeFbEmail();',2000);
}
function resetFbEmail() {
	document.getElementById("fb_message").value = ''
	document.getElementById("fb_subject").value = '';
	document.getElementById("fb_email_sent").style.display		= 'none';
	fbOpen = false;
}
function isValidFbEmailForm() {
	if (trim(document.getElementById("fb_from").value) == '') {
		alert("Please enter your email address");
		document.getElementById("fb_from").focus();
		return false;
	} else if (!isEmail(document.getElementById("fb_from").value)) {
		alert("Please enter a valid email address");
		document.getElementById("fb_from").focus();
		return false;
	} else if (trim(document.getElementById("fb_subject").value) == '') {
		alert("Please enter a subject");
		document.getElementById("fb_subject").focus();
		return false;
	} else if (trim(document.getElementById("fb_message").value) == '') {
		alert("Please enter a message");
		document.getElementById("fb_message").focus();
		return false;
	} else {
		return true;
	}
}
/***** END EMAIL FEEDBACK *****/

function setEmail(email) {
	document.getElementById("video_from").value	= email;
	document.getElementById("fb_from").value	= email;
}



function setVideoString(vid) {
	var video_id;

	// No video to play
	if (vid == '') {
		video_id = '';
	// Live stream
	} else if (isNaN(vid)) {
		video_id = padDigits(vid,5) + ".html";
	// Archived Video
	} else if (!isNaN(vid)) {
		video_id = padDigits(vid,5) + "_pipeline.html";
	// Default case
	} else {
		video_id = '';
	}

	return video_id;
}

function load_video(theStream) {
	document.getElementById("video_player").src = theStream;
}

function swap_tab(tab) {
	if (msie) {
		if (tab == 'details') {
			document.getElementById("videos_nonflash").style.display = 'none';
			document.getElementById("details_container").style.display = 'block';
			document.getElementById("latest").src = 'http://i.a.pga.com/pga/images/events/pipeline/img/latest_videos_dim.gif';
			document.getElementById("details").src = 'http://i.a.pga.com/pga/images/events/pipeline/img/details.gif';
		} else if (tab == 'latest') {
			document.getElementById("videos_nonflash").style.display = 'block';
			document.getElementById("details_container").style.display = 'none';
			document.getElementById("details").src = 'http://i.a.pga.com/pga/images/events/pipeline/img/details_dim.gif';
			document.getElementById("latest").src = 'http://i.a.pga.com/pga/images/events/pipeline/img/latest_videos.gif';
		}
	} else {
		if (tab == 'details') {
			document.getElementById("videos_nonflash").style.visibility = 'hidden';
			document.getElementById("details_container").style.visibility = 'visible';
			document.getElementById("latest").src = 'http://i.a.pga.com/pga/images/events/pipeline/img/latest_videos_dim.gif';
			document.getElementById("details").src = 'http://i.a.pga.com/pga/images/events/pipeline/img/details.gif';
		} else if (tab == 'latest') {
			document.getElementById("details_container").style.visibility = 'hidden';
			document.getElementById("videos_nonflash").style.visibility = 'visible';
			document.getElementById("details").src = 'http://i.a.pga.com/pga/images/events/pipeline/img/details_dim.gif';
			document.getElementById("latest").src = 'http://i.a.pga.com/pga/images/events/pipeline/img/latest_videos.gif';
		}
	}
}

function start_preview(minutes) {
	var timer = 1000 * 60 * minutes;
	setTimeout('end_preview();',timer);
}

function end_preview() {
	setCookie("PIPELINE_PREVIEW_COMPLETE",1);
	check_reg();
}

function showBox() {
	document.getElementById("flash_nav").style.visibility = 'hidden';
	Effect.Appear('overlay',{duration:2.0, to:0.82});
	setTimeout('center("box");',1000);
	return false;
}

function hideBox() {
	Effect.Fade('box',{duration:0.75});
	Effect.Fade('overlay',{duration:0.75});

	if (msie) {
		setTimeout('document.getElementById("video_player").style.visibility = "visible";',1000);
	} else {
		setTimeout('document.getElementById("video_player").style.display = "block";',1000);
	}

	setTimeout('document.getElementById("flash_nav").style.visibility = "visible";',1000);
	return false;
}

function center(element) {
    try{
        element = $(element);
    }catch(e){
        return;
    }

    var my_width  = 0;
    var my_height = 0;

    if ( typeof( window.innerWidth ) == 'number' ){
        my_width  = window.innerWidth;
        my_height = window.innerHeight;
    }else if ( document.documentElement && 
             ( document.documentElement.clientWidth ||
               document.documentElement.clientHeight ) ){
        my_width  = document.documentElement.clientWidth;
        my_height = document.documentElement.clientHeight;
    }
    else if ( document.body && 
            ( document.body.clientWidth || document.body.clientHeight ) ){
        my_width  = document.body.clientWidth;
        my_height = document.body.clientHeight;
    }

    element.style.position = 'absolute';
	// element.style.zIndex   = 99;

    var scrollY = 0;

    if ( document.documentElement && document.documentElement.scrollTop ){
        scrollY = document.documentElement.scrollTop;
    }else if ( document.body && document.body.scrollTop ){
        scrollY = document.body.scrollTop;
    }else if ( window.pageYOffset ){
        scrollY = window.pageYOffset;
    }else if ( window.scrollY ){
        scrollY = window.scrollY;
    }

    var elementDimensions = Element.getDimensions(element);

    var setX = ( my_width  - elementDimensions.width  ) / 2;
    var setY = ( my_height - elementDimensions.height ) / 2 + scrollY;

    setX = ( setX < 0 ) ? 0 : setX;
    setY = ( setY < 0 ) ? 0 : setY;

    element.style.left = setX + "px";
    element.style.top  = setY + "px";

//    element.style.display  = 'block';
	Effect.Appear(element,{duration:1.0});
}