/***************************************************************************
* function onKeyPressCheckNumeric
***************************************************************************/
function onKeyPressCheckNumeric() 
{
	var key = event.keyCode;
	//alert(key)
	if (!((key == 8) || (key == 9) || (key == 13) || (key == 46) || (key == 37) || (key == 38) || (key == 39) || (key == 40) || (key == 110) || (key == 190)))
	{
		if ((key < 96) || (key > 105))
		{
			if ((key < 48) || (key > 57))
				event.returnValue = false;
		}
	}
	if (((key == 110) || (key == 190)) && (inStr(event.srcElement.value,".")))
		event.returnValue = false;
}

function inStr(sString,sSubString)
{
	while ((sString.length > 0) && (sString.length >= sSubString.length))
		if (sSubString == sString.substr(0, sSubString.length))
			return true;
		else
			sString = sString.substr(1, sString.length);
	return false;
}

/***************************************************************************
* function trimLeft
***************************************************************************/
function trimLeft(sString) {
    while ((sString.length > 0) && isBlankSpace(sString.substr(0,1)))
		sString = sString.substr(1, sString.length - 1);
    while ((sString.length > 5) && isBlankSpace(sString.substr(0,6)))
		sString = sString.substr(6, sString.length - 6);
    
    return sString;
}

/***************************************************************************
* function trimRight
***************************************************************************/
function trimRight(sString) {
    while ((sString.length > 0) && isBlankSpace(sString.substr(sString.length - 1,1)))
		sString = sString.substr(0, sString.length - 1);
    while ((sString.length > 5) && isBlankSpace(sString.substr(sString.length - 6,6)))
		sString = sString.substr(0, sString.length - 6);
    
    return sString;
}

/***************************************************************************
* function trimAll
***************************************************************************/
function trimAll(sString) {
	return trimLeft(trimRight(sString));
}

/***************************************************************************
* function isBlankSpace
***************************************************************************/
function isBlankSpace(sChar)
{
	switch(sChar)
	{
		case ' ': // space
			return true;
			break;
		case '\n': // line feed
			return true;
			break;
		case '\r': // carriage return
			return true;
			break;
		case '\t': // tab
			return true;
			break;
		case '&nbsp;': // non-blank space
			return true;
			break;
		default:
			return false;
			break;
	}
}

function CountCharactersInString(sString,sSubString)
{
	var i=0;
	while ((sString.length > 0) && (sString.length >= sSubString.length))
	{
		if (sSubString == sString.substr(0, sSubString.length))
			i++;
		sString = sString.substr(1, sString.length);
		//else
		//	sString = sString.substr(1, sString.length);
	}
	return i;
}

// function to open page as a modal window
function showModalWindow(sURL, nWidth, nHeight)
{
	var sWindowAttributes = 'dialogWidth:' + nWidth + 'px;' +
		'dialogHeight:' + nHeight + 'px;';

	// show the modal dialog
	return window.showModalDialog(sURL, 
		window, 
		sWindowAttributes);
}

function getHttpResponse(sURL){
	var sData ='';
	var iRc;
	var dtSeconds = new Date();
	
	if (sURL.indexOf('?') >= 0)
	{
		if (sURL.charAt(sURL.length - 1) != '&') 
		{
			sURL += '&';
		}
		sURL += 'tsDyn=' + dtSeconds.getTime();
	}
	else
	{
		sURL += '?tsDyn=' + dtSeconds.getTime();
	}
	
	try
	{
		var xmlReq = new ActiveXObject("Microsoft.XMLHTTP");
		iRc = xmlReq.Open("GET", sURL, false);
		iRc = xmlReq.send("");

		// get the xml back
		sData = xmlReq.responseText;
    }
    catch(e)
	{
		alert('Unable to get data through XMLHTTP:' + '\n\n' + sURL + '\n\n' + e);
	}
    return sData;
}

function postHttpResponse(sURL, sPostData){
	var sData;
	var iRc;
	var dtSeconds = new Date();
	
	if (sURL.indexOf('?') >= 0)
	{
		if (sURL.charAt(sURL.length - 1) != '&') 
		{
			sURL += '&';
		}
		sURL += 'tsDyn=' + dtSeconds.getTime();
	}
	else
	{
		sURL += '?tsDyn=' + dtSeconds.getTime();
	}
	
	var xmlReq = new ActiveXObject("Microsoft.XMLHTTP");
    iRc = xmlReq.Open("POST", sURL, false);
    iRc = xmlReq.send("<POSTDATA>" + sPostData + "</POSTDATA>");

    // get the xml back
    sData = xmlReq.responseText;
    return(sData);
}
function navigateURL(sURL,sTarget)
{
	var sLinkServerName = document.all["HeaderAndLeftNavMenu_hdnLinkServerName"].value;
	var sFullURL
	if ((sURL.substr(0,7).toUpperCase() != "HTTP://") && (sURL.substr(0,8).toUpperCase() != "HTTPS://"))
	{
		sFullURL = sLinkServerName + "/" + sURL
	}
	else
	{
		sFullURL = sURL
	}
	if (sTarget == '')
		window.navigate(sFullURL)
	else if (sTarget == '_new')
		window.open(sFullURL)
	else
		window.open(sFullURL)
}

function navigateToExternalURL(sURL,sTarget)
{
	var sLinkServerName = document.all["HeaderAndLeftNavMenu_hdnLinkServerName"].value;
	var sChassis;
	if(document.all["VINSearch1_txtChassis"] != null && document.all["VINSearch1_txtChassis"] != 'undefined')
		sChassis = document.all["VINSearch1_txtChassis"].value;
	if(document.all["RbiVINSearch_txtChassis"] != null && document.all["RbiVINSearch_txtChassis"] != 'undefined')
		sChassis = document.all["RbiVINSearch_txtChassis"].value;
	if(document.all["txtChassis"] != null && document.all["txtChassis"] != 'undefined')
		sChassis = document.all["txtChassis"].value;
	if(sChassis == "Last 8 Characters")
		sChassis = "";
	var sFullURL //= sLinkServerName + "/" + sURL + sChassis
	if (trimAll(sChassis) != '')
	{
	if ((sURL.substr(0,7).toUpperCase() != "HTTP://") && (sURL.substr(0,8).toUpperCase() != "HTTPS://"))
	{
		sFullURL = sLinkServerName + "/" + sURL
	}
	else
	{
		sFullURL = sURL
	}
	sFullURL = sFullURL + sChassis;
	
		
	if (sTarget == '')
	
		
		window.navigate(sFullURL)
	
	else if (sTarget == '_new')
		window.open(sFullURL)
	else
		window.open(sFullURL)
	}
	else
	{
		alert('Please enter valid chassis number and click on view before you proceed.')
	}
}

var oPopup = window.createPopup();
function ShowInfo(sMessage,iWindowWidth,iWindowHeight)
{
	var oPopupBody = oPopup.document.body;
	var iClientX =window.event.clientX
	var iClientY =window.event.clientY
	var iBodyWidth =document.body.clientWidth
	var iBodyHeight =document.body.clientHeight
	
	if (iBodyWidth <= iClientX + iWindowWidth)
	{
		if ((iClientX - iWindowWidth) >0 )
		{
			iClientX = iClientX - iWindowWidth;
		}
		else
		{
			iClientX = 10;
		}
	}
	if (iClientY <= iWindowHeight)
	{
		if ((iClientY + iWindowHeight) < iBodyHeight )
		{
			iClientY = iWindowHeight;
		}
		else
		{
			iClientY = iBodyHeight - 10;
		}
	}
	else
	{
		iClientY = iClientY -55
	}
	oPopupBody.style.backgroundColor = "lightyellow";
	oPopupBody.style.border = "solid black 1px";
	oPopupBody.innerHTML = "<table><tr><td><font face='tahoma' size='1'><b>" + sMessage + "<b></font></td></tr></table>";
	
	//oPopup.show(window.event.clientX,window.event.clientY-55, 150, 45, document.body);
	oPopup.show(iClientX,iClientY, iWindowWidth, iWindowHeight, document.body);
}

function HideInfo()
{
	oPopup.hide();	
}
function unload()
{
	//if (window.event.clientY < 0)
	//window.open("Logoff.aspx")
}

function openKBlink(sURL)
{
	var sLinkServerName = document.all["HeaderAndLeftNavMenu_hdnLinkServerName"].value;
	if(document.all["VINSearch1_txtChassis"] != null && document.all["VINSearch1_txtChassis"] != 'undefined')
		sChassis = document.all["VINSearch1_txtChassis"].value;
	if(document.all["txtChassis"] != null && document.all["txtChassis"] != 'undefined')
		sChassis = document.all["txtChassis"].value;
	if(sChassis == "Last 8 Characters")
		sChassis = "";
	var sFullURL //= sLinkServerName + "/" + sURL + sChassis
	if (trimAll(sChassis) != '')
	{
	if ((sURL.substr(0,7).toUpperCase() != "HTTP://") && (sURL.substr(0,8).toUpperCase() != "HTTPS://"))
	{
		sFullURL = sLinkServerName + "/" + sURL
	}
	else
	{
		sFullURL = sURL
	}
	sFullURL = sFullURL + sChassis;
	if (sTarget == '')
		window.navigate(sFullURL)
	else if (sTarget == '_new')
		window.open(sFullURL)
	else
		window.open(sFullURL)
	}
	else
	{
		alert('Please enter valid chassis number and click on view before you proceed.')
	}
}

function MenuHandler1(){
	try{ 
	document.all['HeaderAndLeftNavMenu_divMenuMainLeft'].style.display = 'none'	
	document.all['HeaderAndLeftNavMenu_InfoMenu-menuItem000'].style.display = 'block'
	if (document.all['HeaderAndLeftNavMenu_divMenuMainLeft'].style.display != 'none')
		{
			document.all['HeaderAndLeftNavMenu_InfoMenu-menuItem000'].style.display = 'none'
		}
		else
		document.all['HeaderAndLeftNavMenu_InfoMenu-menuItem000'].style.display = 'block'
	}
	catch (e)
	{
	}
}

function MenuHandler2(){
	try{
	/*
	document.all['HeaderAndLeftNavMenu_divMenuMainLeft'].style.display = 'none'	
	document.all['HeaderAndLeftNavMenu_InfoMenu-menuItem000'].style.display = 'block'
	*/
	if (document.all['HeaderAndLeftNavMenu_divMenuMainLeft'].style.display != 'none')
	{
		document.all['HeaderAndLeftNavMenu_InfoMenu-menuItem000'].style.display = 'none'
	}
	else
	document.all['HeaderAndLeftNavMenu_InfoMenu-menuItem000'].style.display = 'block'
	}
	catch (e)
	{
	}
}

function MenuHandler3(){
	try{
	document.all['HeaderAndLeftNavMenu_divMenuMainLeft'].style.height = document.body.clientHeight-document.all['HeaderAndLeftNavMenu_divMenuMainLeft'].offsetTop;
	//document.all['HeaderAndLeftNavMenu_divMenuMainLeft'].style.display = 'none'	
	//document.all['HeaderAndLeftNavMenu_InfoMenu-menuItem000'].style.display = 'block'
	if (document.all['HeaderAndLeftNavMenu_divMenuMainLeft'].style.display != 'none')
	{
		document.all['HeaderAndLeftNavMenu_InfoMenu-menuItem000'].style.display = 'none'
	}
	else
	document.all['HeaderAndLeftNavMenu_InfoMenu-menuItem000'].style.display = 'block'
	}
	catch (e)
	{
	}
}

function openWindow(sLink,sNewWindow) {
	var sURL
    var bPDAccess
    
    aUrlHold = window.location.toString();
    aUrlHold = aUrlHold.split("?");
    sURL = aUrlHold[0];

    sURL = sURL.toLowerCase();
    
    
    if (sURL.indexOf("https://evalue") != -1)
		bPDAccess = true
    else
        bPDAccess = false

    if (sNewWindow == true) {
		if (sLink.indexOf("http") !=-1)
			window.open(checkAndReplaceURL(sLink,bPDAccess));
        else {
			if (bPDAccess == true)
				window.open("/Service_Info/" + sLink);
			else
			   
				window.open(sLink);
        }
    }
    else {
        if (sLink.indexOf("http") !=-1)
			window.location.href = checkAndReplaceURL(sLink,bPDAccess);
        else {
			if (bPDAccess == true)
				window.location.href = "/Service_Info/" + sLink;
			else
				window.location.href = sLink;
		}
	}
}


//Below function search for hardcoded url and make them reletive url if user is on PD.

function checkAndReplaceURL(oLink, bAccessType) {
		 var sLink
		 sLink = oLink;
		 
		 if (bAccessType == true) {
		 		 sLink = sLink.replace(/http:\/\/sales.navistar.com/,"/sales")
		 		 sLink = sLink.replace(/http:\/\/testsales.navistar.com/,"/sales")
		 		 sLink = sLink.replace(/http:\/\/dealer.navistar.com/,"/dealer")
		 		 sLink = sLink.replace(/http:\/\/testdealer.navistar.com/,"/dealer")
		 		  sLink = sLink.replace(/http:\/\/parts.navistar.com/,"/parts")
		 		 sLink = sLink.replace(/http:\/\/parts.navistar.com/,"/parts")
		 }
		 return sLink;
}