﻿// JScript File


 function ShowPopularProducts(show)
    {
        var objDiv = document.getElementById("recommendedProductCtrl");
        if(objDiv != null)
        {
            if(show==1)
            {
                objDiv.style.display='inline'; 
            }
            else
            {
                objDiv.style.display='none';
            }
        }
    }
    
    function fnValidateQuote(QuoteName,QuoteId)
	{
	    
		//var objQuoteName = eval('document.all.'+QuoteName);
		var objQuoteName = document.getElementById(QuoteName);
		//var objQuoteEmail = eval('document.all.'+QuoteEmail);
		//var objQuoteId = eval('document.all.'+QuoteId);
		var objQuoteId = document.getElementById(QuoteId);
		var quoteName = trim(objQuoteName.value);
		var quoteId = trim(objQuoteId.value);
		
		if (quoteName.length == 0 && quoteId.length == 0) // && quoteEmail.length == 0)
		{
			document.getElementById("QuoteNameError").style.display = "";
			document.getElementById("QuoteIdError").style.display = "";
			//document.all.QuoteNameError.style.display = "";
			//document.all.QuoteIdError.style.display = "";
			//alert("Quote Name or Quote ID should be entered");
			var objErrMsg = document.getElementById("ErrMessage").value;
			alert(objErrMsg);
			return false;
		}
		
		document.forms[0].submit();
		return true;
	}
	
	function fnSearchOrder(OrderId)
	{	    
		var objOrderId = document.getElementById(OrderId);
		
		var varOrderId = trim(objOrderId.value);		
		if (varOrderId.length == 0)
		{
			//document.getElementById("QuoteNameError").style.display = "";
			alert(document.getElementById("MsgEnterOrderID").value);//"Order ID should be entered");
			return false;
		}
		
		document.forms[0].submit();
		return true;
	}
	
	function trim(s) 
	{
		while (s.substring(0,1) == ' ') 
		{
			s = s.substring(1,s.length);
		}
		while (s.substring(s.length-1,s.length) == ' ') 
		{
			s = s.substring(0,s.length-1);
		}
		return s;
	}	
	
	function fnOpenWindow(url)
	{
		window.open(url,'termsandconditions','width=590,height=600,top=40,left=50,scrollbars=yes,resizable=yes');
	}
	
	function fnOpenWindowPassword(url)
	{
	    window.open(url,'passwordRequirements','width=500,height=210,top=200,left=200,scrollbars=no,resizable=no');
	}
	
	function CheckSearch(sender, args)
	{
		var SearchObjectList = args.Value;

		if (!fnValidateSearchList(SearchObjectList))
		{
			args.IsValid = false;
			return;
		}
		args.IsValid = true;
	}
	//modified for issue 134 quality center.
	//It will validate the cotrols of Advance Search page also.
	function fnValidateSearchList(searchList)
	{
		var objArry = searchList.split(',');
		
       if(document.getElementById(objArry[5])!= null)
       {
		    var objPartNoTxt = document.getElementById(objArry[0]);
		    var objKeywordTxt = document.getElementById(objArry[1]);
		    var objProductLst = document.getElementById(objArry[2]);
		    var objFamilyLst = document.getElementById(objArry[3]);
		    var objSubFamilyLst = document.getElementById(objArry[4]);
		    var objMinPrice = document.getElementById(objArry[5]);
		    var objMaxPrice = document.getElementById(objArry[6]);
    		
		    var strPartNo = trim(objPartNoTxt.value);
		    var strKeyword = trim(objKeywordTxt.value);
		    var strProduct = objProductLst.value;
		    var strFamily = objFamilyLst.value;
		    var strSubFamily = objSubFamilyLst.value;
		    var minPrice = trim(objMinPrice.value);
		    var maxPrice = trim(objMaxPrice.value);
    		
		  if (strPartNo.length == 0 && strKeyword.length == 0 &&
			strProduct == "0" && strFamily == "0" && strSubFamily == "0" && minPrice.length == 0 && maxPrice.length == 0)
		    {
			    return false;
		    }

		    return true;
		}
		else
		{
		    var objPartNoTxt = document.getElementById(objArry[0]);
		    var objKeywordTxt = document.getElementById(objArry[1]);
		    var objProductLst = document.getElementById(objArry[2]);
		    var objFamilyLst = document.getElementById(objArry[3]);
		    var objSubFamilyLst = document.getElementById(objArry[4]);
		  
		
    		
		    var strPartNo = trim(objPartNoTxt.value);
		    var strKeyword = trim(objKeywordTxt.value);
		    var strProduct = objProductLst.value;
		    var strFamily = objFamilyLst.value;
		    var strSubFamily = objSubFamilyLst.value;
		    
    		
		    if (strPartNo.length == 0 && strKeyword.length == 0 &&
			    strProduct == "0" && strFamily == "0" && strSubFamily == "0")
		    {
			    return false;
		    }

		    return true;
		}
	}
	
	function showConfigMessage(setconfigId)
	{
		var configProductFlg = eval('document.all.'+setconfigId);

		var hasVB = true;
		var str = document.getElementById("msgConfigurationError").value;
		var results = (hasVB) ? vbConfirm(str) : confirm(str);
		configProductFlg.value = results;

		return true;
	}
	
	function trimAll( strValue ) 
	{
		
		/************************************************
			DESCRIPTION: Removes leading and trailing spaces.
			PARAMETERS: Source string from which spaces will
						be removed;
			RETURNS: Source string with whitespaces removed.
		*************************************************/ 
		var objRegExp = /^(\s*)$/;

		//check for all spaces
		if(objRegExp.test(strValue)) 
		{
			strValue = strValue.replace(objRegExp, '');
			if( strValue.length == 0)
			{
				return strValue;
			}
		}

		//check for leading & trailing spaces
		objRegExp = /^(\s*)([\W\w]*)(\b\s*$)/;
		if(objRegExp.test(strValue)) 
		{
			//remove leading and trailing whitespace characters
			strValue = strValue.replace(objRegExp, '$2');
		}
		return strValue;
	}
			
    function validateNotEmpty( strValue ) 
    {
	    /************************************************
	    DESCRIPTION: Validates that a string is not all
	    blank (whitespace) characters.

	    PARAMETERS:
	    strValue - String to be tested for validity

	    RETURNS:
	    True if valid, otherwise false.
	    *************************************************/
	    var strTemp = strValue;
	    strTemp = trimAll(strTemp);
	    if(strTemp.length > 0){
	    return true;
    }  
	    return false;
    }

    function ValidateSearch()
    {
    	
	    var SearchTextBox = document.getElementById('" + SearchText.ClientID + @"')
	    if (!validateNotEmpty(SearchTextBox.value))
	    {
		    alert(document.getElementById("MsgEnterSearchTerm").value);//'The search critreria is empty.  Please enter a search term.');
		    return false;
	    } 
	    else
	    {
		    return true;
	    }
    }
    
    function fnValidateAffiliateCode(CodeCtrl, message)
    {
         var objControl = document.getElementById(CodeCtrl);
         if (objControl.value == null || trim(objControl.value) == '')
         {     
            document.getElementById("AffiliateCodeError").innerHTML = document.getElementById("ErrMsgAffiliateCode").value;
            document.getElementById("AffiliateCodeError").style.visibility = 'visible';
            return false;
         }        
         else
         {      
            document.getElementById("AffiliateCodeError").style.visibility = 'hidden'; 
            if(document.getElementById("count").value==false)
            {
                var value=confirm(message);
                if(value)
                {
                    return true;   
                }
                else
                {
                    return false;
                }  
            }
            document.getElementById("count").value=true;
            return true;                   
         }
    }

    function ConfirmToAffilateCode(e, ClientID)
    {
        var code;
        if (!e)
        {
            var e = window.event;
        }
        
        if (e.keyCode)
        {
            code = e.keyCode;
        }
	    else if (e.which)
	    {
	        code = e.which;
	    }

        if (code == 13)
        {
            e.cancel = true;
            e.cancelBubble = true;
            e.returnValue = false;

            document.getElementById(ClientID).click();

            return false;
        }
    }
    
    
    function showToolTip(e, text)
    {
        var scrOfX = 0, scrOfY = 0;


        if( typeof( window.pageYOffset ) == 'number' ) 
        {
            //Netscape compliant
            scrOfY = window.pageYOffset;
            scrOfX = window.pageXOffset;
        } 
        else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) 
        {
            //DOM compliant
            scrOfY = document.body.scrollTop;
            scrOfX = document.body.scrollLeft;
        } 
        else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) 
        {
            //IE6 standards compliant mode
            scrOfY = document.documentElement.scrollTop;
            scrOfX = document.documentElement.scrollLeft;
        }

        var left = (e.clientX + 15 + scrOfX) 
        var top = (e.clientY + scrOfY)        
        
        var oDiv = document.getElementById("ToolTip"); 
           
        var divCreated = false;
        if (oDiv == null)
        {
            var oDiv = document.createElement("div");
            oDiv.setAttribute("id", "ToolTip");
            divCreated = true;
        }

        oDiv.innerHTML="<table><tr><td class=ToolTipTD>" + text + "</td></tr></table>";         
        oDiv.style.left = left + "px"; 
        oDiv.style.top = top + "px"; 
        oDiv.style.visibility = "visible";         

        if (divCreated)
        {
            document.body.appendChild(oDiv);
        }
    } 

    function hideToolTip()
    { 
        var objControl = document.getElementById("ToolTip");
        objControl.style.visibility="hidden"; 
    } 

    function RemoveRecommendedData()
    {
        for (var i = 0; i < 5; i++)
        {
            var hdnAction = document.getElementById("hdnRecommendedAction" + i);
            if (hdnAction != null)
            {
                hdnAction.value = "";
            }
        }
    }

    function RemoveFamilyData()
    {
        var hdnAction = document.getElementById("hdnFamilyAction");
        if (hdnAction != null)
        {
            hdnAction.value = "";
        }
    }
 
    function alertTimeOut(timeOutAlertMessage) 
    {
        var now = new Date();
        var minutes = now.getMinutes();
        minutes += 5;           // Add 5 minutes to the time
        now.setMinutes(minutes); // Reset to new value

        alert(timeOutAlertMessage + " " + now.format("hh:mm:ss tt"));
    } 
    
    function executeTimeOut(redirectUrl) 
    {
        location.href = redirectUrl;
    }
    
    function HandleJsButton(PaymentTypeClientId)    
        { 
             
                var selectedOption = PaymentTypeClientId;
    
                switch(selectedOption[0].toLowerCase())
                {
                    case "creditcard":
                    case "check":
                    case "wire":
                    case "directdeposit":
                    case "lease":
                        document.getElementById("AccountAddress").style.display = 'none'
                        document.getElementById("UserAddress").style.display = 'inline'
                        break;
                    case "po":
                    case "operatorcredit":
                         document.getElementById("UserAddress").style.display = 'none'
                         document.getElementById("AccountAddress").style.display = 'inline'
                        break;
                    default:
                        break;    
                }
   	  
        }  
    
    
    Date.prototype.format = function(mask) 
    {
	    var d = this; // Needed for the replace() closure
	
	    return mask.replace(/"[^"]*"|'[^']*'|\b(?:d{1,4}|m{1,4}|yy(?:yy)?|([hHMs])\1?|TT|tt|[lL])\b/g, function($0) 
	    {
		    switch($0) 
		    {
			    case 'hh':	return fixzero(d.getHours() % 12 || 12);
			    case 'mm':	return fixzero(d.getMinutes());
			    case 'ss':	return fixzero(d.getSeconds());
			    case 'tt':	return d.getHours() < 12 ? 'am' : 'pm';
			    // Return quoted strings with the surrounding quotes removed
			    default:	return $0.substr(1, $0.length - 2);
		    }
	    });
    };

var fixzero = function (value, length) 
	{
		if (!length) length = 2;
		value = String(value);
		for (var i = 0, zeros = ''; i < (length - value.length); i++) {
			zeros += '0';
		}
		return zeros + value;
	};


    function findPos(obj) 
    {
	    var curleft = curtop = 0;
        if (obj.offsetParent) 
        {
            do 
            {
		        curleft += obj.offsetLeft;
			    curtop += obj.offsetTop;
            } 
            while (obj = obj.offsetParent);
        }

	    return [curleft,curtop];
    }

