﻿var dropDownRef;

function CreateAtlasImage(param)
{
	//empty js function so that atlas tracking function doesn't error. TODO: put in correct atlas tracking function here
}

function switchTabs()
{
	var tabs = document.getElementById("home_tabs").getElementsByTagName("li");
	for(var k=0;k<tabs.length;k++){
		if (tabs[k].className.indexOf("activeTab") == -1)
		{
			document.getElementById("tab" + k).style.display = "block";
			if (tabs[k].className.indexOf("firstItem") == -1)
				tabs[k].className = "activeTab lastItem";
			else
				tabs[k].className = "activeTab firstItem";					
		}
		else
		{
			document.getElementById("tab" + k).style.display = "none";
			if (tabs[k].className.indexOf("firstItem") == -1)
				tabs[k].className = "lastItem";
			else
				tabs[k].className = "firstItem";
			
		}
	}

}

function showElm(id) {
  document.getElementById(id).style.display = "block";
}

function hideElm(id) {
  document.getElementById(id).style.display = "none";
}

//products dropdown
var dropdownDisplay = false;
var dropdownIds = ["productDropdown", "seeitDropdown"];
function showDropdown(dropDownID) {
    for (var i = 0; i < dropdownIds.length; i++) {
        document.getElementById(dropdownIds[i]).style.display="none";
    }
	showElm(dropDownID);
	if ( document.getElementById( "silverlightVideoHost" ) ) 
	{
	    if (document.getElementById("silverlight_object")) {
		    with ( document.getElementById("silverlight_object").style )
		    {
			    height = width = "1px";
		    }
		}

		setTimeout( function(){}, 0);
}
	
	dropdownDisplay = true;
}

function DisplayVideoPlaceholder() {
    document.getElementById("videoPlaceholder").style.display = "block";
}

function hideDropdown(dropDownID)
{
	dropdownDisplay = false;
	dropDownRef = dropDownID;
	setTimeout(hideElement, 1000);
}

function hideElement()
{
	if (dropdownDisplay == false) 
	{
		hideElm(dropDownRef);
		if ( document.getElementById( "silverlightVideoHost" ) ) {
		    var video_placeholder = document.getElementById("videoPlaceholder");
		    if(video_placeholder) {
		        video_placeholder.style.display = "none";
		    }
            if(document.getElementById("silverlight_object")){
			    with ( document.getElementById( "silverlight_object" ).style ) 
			    {
				    width = "518px";
				    height = "340px";
			    }
			}
		}
	}
}

function showVideoPopup() {
  showElm('videoPopup');
}

function closeVideoPopup() {
  hideElm('videoPopup');
  
  //TODO: stop video playback
}

function playVideo(ix) {
  //TODO: reset video clip buttons of off state.

  //TODO: set the active video clip button to on state

  //TODO: load video

  //TODO: load description
}

var activeVideoIx = 0;
function toggleClipImg(ix, oImg) {
  if (!videoPlayList || ix == activeVideoIx) {
    return;
  }
  
  //TODO: exit if ix == current video selected
  
  // setup videoPlayList array indexes
  caption=0;
  tooltip=1;
  videoFile=2;
  clipOn=3;
  clipOff = 4;    

  if (oImg.src.indexOf(videoPlayList[ix][clipOn]) > -1) {    
    oImg.src = videoPlayList[ix][clipOff];
  } else {    
    oImg.src = videoPlayList[ix][clipOn];
  }   
}

// prevent events default behaviour
function stopDef(e) {
  if (e && e.preventDefault) {
    e.preventDefault();
    alert("#1");
  } else if (window.event && window.event.returnValue) {
    window.eventReturnValue = false;
    alert("#2");
  } else {
    alert("#3");
  }
}

//video player functions
function launchPlayer(slVideosXmlPath) {
	document.getElementById("home_hero_video").style.display = "block";
	document.getElementById("home_hero_static").style.display = "none";
	
    if (Silverlight && Silverlight.isInstalled("2.0")) {
    	embedSL("silverlightVideoHost", slVideosXmlPath);
    }
    else {
    	embedWMP("silverlightVideoHost", "media/WLhome.asx", 518, 340);
    }
}

function initializeVideoPlayer() {
	document.getElementById("home_hero_video").style.display = "none";
	document.getElementById("home_hero_static").style.display = "block";
}

function embedSL(hostID, videosXmlPath) {
	var initParams = 'VideosXmlPath=' + videosXmlPath;
	initParams += ',InitialVideoID={4c056444-209c-4d9b-bb86-32147fb26cb1}';
	initParams += ',EmailBodyFormatString=,PreviewImagePath=';
	initParams += ',LocalizedStringsPath=/windows/Framework/Services/Content.ashx?contentPath=windows/mediaPlayerStrings.xml';

	var silverlightHTML = '<div id="sl_container" class="sl_on">';
	silverlightHTML += '<div class="sl_objectContainer"><div id="videoPlaceholder" style="display:none;width:518px;height:340px"></div>'
	silverlightHTML += '<object id="silverlight_object" data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="518px" height="340px">';
	silverlightHTML += '<param name="source" value="../WindowsLivePlayerDark.xap"/>';
	silverlightHTML += '<param name="onerror" value="onSilverlightError" />';
	silverlightHTML += '<param name="background" value="#000000" />';
	silverlightHTML += '<param name="minRuntimeVersion" value="2.0" />';
	silverlightHTML += '<param name="windowless" value="false" />';
	silverlightHTML += '<param name="initParams" value="' + initParams + '" />';
	silverlightHTML += '<span style="display:none;"></span>';
	silverlightHTML += '</object>';
	silverlightHTML += '<iframe style="visibility:hidden;height:0;width:0;border:0px"></iframe>';
	silverlightHTML += '</div>';
	silverlightHTML += '</div>';

	document.getElementById(hostID).innerHTML = silverlightHTML;
}

function embedWMP(hostID, url, width, height) {
	var playerID = "contentPlayer";
	var mediaPlayerHtml = "<object id='" + playerID + "'  type='application/x-ms-wmp' classid='CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6'";
	mediaPlayerHtml += "width='" + width + "' height='" + height + "'>";
	mediaPlayerHtml += "<param name='url' value='" + url + "' />";
	mediaPlayerHtml += "<param name='autoStart' value='true' />";
	mediaPlayerHtml += "<param name='ShowStatusBar' value='true' />";
	mediaPlayerHtml += "<param name='windowlessVideo' value='false' />";
	mediaPlayerHtml += "<embed TYPE='application/x-mplayer2' pluginspage='http://www.microsoft.com/Windows/MediaPlayer/' src='" + url + "' id='" + playerID + "' name='MediaPlayer' width='" + width + "' height='" + height + "' showcontrols='true' showdisplay='0' showstatusbar='true' autostart='1' autosize='true' />";
	mediaPlayerHtml += "</object>";
	
	document.getElementById(hostID).innerHTML = mediaPlayerHtml;
}

function onSilverlightError(sender, args) {

	var appSource = "";
	if (sender != null && sender != 0) {
		appSource = sender.getHost().Source;
	}
	var errorType = args.ErrorType;
	var iErrorCode = args.ErrorCode;

	var errMsg = "Unhandled Error in Silverlight 2 Application " + appSource + "\n";

	errMsg += "Code: " + iErrorCode + "    \n";
	errMsg += "Category: " + errorType + "       \n";
	errMsg += "Message: " + args.ErrorMessage + "     \n";

	if (errorType == "ParserError") {
		errMsg += "File: " + args.xamlFile + "     \n";
		errMsg += "Line: " + args.lineNumber + "     \n";
		errMsg += "Position: " + args.charPosition + "     \n";
	}
	else if (errorType == "RuntimeError") {
		if (args.lineNumber != 0) {
			errMsg += "Line: " + args.lineNumber + "     \n";
			errMsg += "Position: " + args.charPosition + "     \n";
		}
		errMsg += "MethodName: " + args.methodName + "     \n";
	}

	throw new Error(errMsg);
}

/* bogus function to remove errors for omni tracking on non tracked tab links */

function omniModTracking(a, b, c, d, e, f, g) {
    return false;
}

/* SOCIAL MEDIA CONNECTOR TRACKING */

function SendTrackingInforamtion(sUrl)
{
    var a = new Image();
    a.src = sUrl;
}

function TrackAndRedirect(sRedirectUrl,sTrackingUrl ){

SendTrackingInforamtion(sTrackingUrl);
window.location.href = sRedirectUrl;
}