function InstallEXEtenderEx(strInstallationPackagePath, strMasterId, strMasterName)
{
	if (g_InstallExetenderInProcessFlag != 0)
	{
		// return;
	}
	g_InstallExetenderInProcessFlag = 1;
	var trackEventParams = "?trackEvent=playerdownloadclicked&playerdownloadclickedsrc=";
	var trackEventSource = "";
	if (strMasterId != null && strMasterId != "0" && strMasterId != "")
	{
		trackEventSource = "gamedownloadbutton";
	}
	else
	{
		trackEventSource = "leftnav";
	}
	trackEventParams = trackEventParams + trackEventSource;

	if ("" == strInstallationPackagePath)
	{
		strInstallationPackagePath = g_ContextPath + "/do/installEXEtender/default/Default/" + g_strInstallerName;
	}
	strInstallationPackagePath += ".exe";// + trackEventParams;
	g_AfterEXEtenderInstallationPageRefreshInterval = 4000;

	// build url
	var insPackgePath = getUrlEscapeString(strInstallationPackagePath);
	var windowUrl = g_ContextPath + "/" + g_strServiceFolderName + "/theme/Common/popups/download/downloadBox3Steps.jsp";
	windowUrl += "?insPackgePath=" + insPackgePath + "&masterId=" + strMasterId	+ "&trackEventParams="+ escape(trackEventParams) +  "&masterName=" + strMasterName;

	var windowWidth = 312;
	var windowHeight = 520;
	/*
	 * if( strMasterId == "0" ) { windowHeight = 487; }
	 */

	showModalWindow(windowUrl, windowWidth, windowHeight);
	// window.location.href = strInstallationPackagePath;
}

function InstallEXEtenderExSilent(strInstallationPackagePath, strMasterId,	strMasterName)
{
	if (g_InstallExetenderInProcessFlag != 0)
	{
		// return;
	}

	g_InstallExetenderInProcessFlag = 1;

	var trackEventParams = "?trackEvent=playerdownloadclicked&playerdownloadclickedsrc=welcomescreen";
	if ("" == strInstallationPackagePath)
	{
		strInstallationPackagePath = g_ContextPath	+ "/do/installEXEtender/welcome/Default/" + g_strInstallerName;
	}
	track(trackEventParams);
	strInstallationPackagePath += ".exe";// + trackEventParams;

	g_AfterEXEtenderInstallationPageRefreshInterval = 4000;

	// build url
	var insPackgePath = getUrlEscapeString(strInstallationPackagePath);
	window.location.href = strInstallationPackagePath;
}

function AfterPlayerInstallationFinished()
{
	g_InstallExetenderInProcessFlag = 0;

	if (GPlayerApi_IsPlayerInstalled(g_strClientVersion, g_strClientVersionMask, g_strClientSkinID, g_strClientSkinVersion,	g_strClientSkinVersionMask))
	{
		// refresh page
		top.window.location.reload();
	}
}

var objHTTPtrack = getXMLHttpRequest();
function track(data)
{
	trackUrl = g_strBaseURL+"/opTools/clientTracking.jsp" + data + "&ts=" + new Date().getTime();
	objHTTPtrack.onreadystatechange = onTrackingResponse;
	objHTTPtrack.open("GET", trackUrl, true);
	try
	{
		objHTTPtrack.send(null);
	}
	catch (e)
	{
		return false;
	}
}

function onTrackingResponse()
{
	if (objHTTPtrack.readyState == 4)
	{
		// if "OK"
		if (objHTTPtrack.status == 200)
		{
			try
			{
				// alert("trackOK");
			}
			catch (e) {}
			;
		}
	}
}

function getXMLHttpRequest()
{
	var xmlhttp;
	if (window.XMLHttpRequest)
	{
		// code for IE7+, Firefox, Chrome, Opera, Safari
		xmlhttp = new XMLHttpRequest();
	}
	else
	{
		if (window.ActiveXObject) {
			// code for IE6, IE5
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		}
		/*	else
		{
			// not supported browsers
		}*/
	}
	return xmlhttp;
}
