﻿// JScript File
function checkLeftSearch(src1,obj,text)
{
    src1.type = "submit";
    var txt = document.getElementById(obj);
    if(txt.value == "")
    {
        alert(text);
        return false;
    }
    else
    {    
        return true;
    }
}

// Function Use for Displaying search criteria in advance search.
function displaySearchOptions(sObj,dObj)
{
    var panel = document.getElementById(dObj);
    if(panel.style.display == "none")
    {
        panel.style.display = "block";
        sObj.style.display = "none";
    }
    else
    {
        panel.style.display = "none";
    }
}

// Validation of Advance Search Page for All fields. [Start Here]
function ValidateSearch(culture)
{
    var from = document.getElementById("ctl00_CPH1_txtLowerPrice");
    var to = document.getElementById("ctl00_CPH1_txtHigerPrice");
    var txt = document.getElementById("ctl00_CPH1_txtKeyword");
    var ESearch=localizedStrings['EnterSearch'][culture];
    var EPriceTo=localizedStrings['EnterPTo'][culture];
    var EPriceFrom=localizedStrings['EnterPFrom'][culture];
    var FromTo=localizedStrings['FromTo'][culture];
    var EPriceVal=localizedStrings['PriceVal'][culture];
    if(txt.value == "")
    {
        alert(ESearch);
        return false;
    }
    else
    {
        if(from.value != "" && to.value == "")
	    {
	        alert(EPriceTo);
	        return false;
	    }  
	    else if(to.value != "" && from.value == "")
	    {
	        alert(EPriceFrom);
	        return false;
	    } 
	    else if(to.value != "" && from.value != "")
	    {
		    if(!isNaN(from.value) && !isNaN(to.value))
		    {
			    if(parseFloat(from.value) > parseFloat(to.value))
			    {
				    alert(FromTo);
				    return false;
			    }
			    else
				    return true;
		    }
		    else
		    {
			    alert(EPriceVal);
			    return false;
		    }
	    }
	    else
	    {
	        if(from.value == "0")
	            from.value = 1;
	        return true;
	    }
	}    
}
// [End Here]

// Hide Error Display in Product List.
function hideErrorMsg(obj)
{
    var div = document.getElementById(obj);
    div.style.display = "none";
}

var localizedStrings={
    QuantityZero:{
        'en-us':'Quantity must be more than Zero.',
        'it-it':'Quantità deve essere superiore a zero.',
        'de-de':'Menge muss mehr sein als Null.',
        'es-es':'Cantidad debe ser mayor que cero.',
        'he-il':'כמות חייבת להיות גבוהה יותר אפס.'
    },
    Quantity:{
        'en-us':'Please Enter Quantity.',
        'it-it':'Inserisci Quantità.',
        'de-de':'Bitte geben Sie Menge.',
        'es-es':'Por favor, escriba Cantidad.',
        'he-il':'אנא הזן כמות.'
    },
    QuantityNumeric:{
        'en-us':'Please Enter only Numeric Value in Quantity Field.',
        'it-it':'Per favore entra un valore numerico in campo Quantità.',
        'de-de':'Bitte geben Sie nur numerische Wert im Feld Menge.',
        'es-es':'Por favor, escriba sólo valor numérico en el campo Cantidad.',
        'he-il':'אנא הכנס רק ערך מספרי כמות שדה.'
    },
    EnterSearch:{
        'en-us':'Please Enter Search Text.',
        'it-it':'Inserisci il testo di ricerca.',
        'de-de':'Bitte Suchtext eingeben.',
        'es-es':'Por favor, introduzca un texto.',
        'he-il':'אנא הזן טקסט לחיפוש.'
    },
    EnterPTo:{
        'en-us':'Please enter price To!',
        'it-it':'Inserisci il prezzo To!',
        'de-de':'Bitte geben Sie Um Preis!',
        'es-es':'Por favor, introduzca el precio Para!',
        'he-il':'אנא הזן את המחיר!'
    },
    EnterPFrom:{
        'en-us':'Please enter price From!',
        'it-it':'Inserisci il prezzo da!',
        'de-de':'Bitte geben Sie Preise ab!',
        'es-es':'Por favor, introduzca el precio de!',
        'he-il':'אנא הזן מחיר מ!'
    },
    FromTo:{
        'en-us':'From price should be less then To price!',
        'it-it':'Dal prezzo dovrebbe essere inferiore quindi a prezzo!',
        'de-de':'Vom Preis sollte dann weniger Preis!',
        'es-es':'De precio debería ser inferior al precio de entonces!',
        'he-il':'מאת מחיר צריך להיות פחות מכן למחיר!'
    },
    PriceVal:{
        'en-us':'Please Enter Correct Price Value!',
        'it-it':'Inserisci la correttezza del prezzo più conveniente!',
        'de-de':'Bitte geben Sie korrekte Preis Preis!',
        'es-es':'Por favor, escriba Corregir Precio Valor!',
        'he-il':'אנא הזן ערך המחיר נכון!'
    },
    ShipService:{
        'en-us':'Please Select Shipping Service.',
        'it-it':'Selezionare Shipping Service.',
        'de-de':'Bitte wählen Liefer-Service.',
        'es-es':'Seleccione Shipping Service.',
        'he-il':'אנא בחר שירות משלוחים.'
    },
    CardType:{
        'en-us':'Please Select Card Type.',
        'it-it':'Selezionare Tipo di carta.',
        'de-de':'Bitte wählen Card Type.',
        'es-es':'Seleccione Tipo de tarjeta.',
        'he-il':'נא לבחור סוג הכרטיס.'
    },
    ValidCardN:{
        'en-us':'Please Enter Valid Card Number.',
        'it-it':'Inserisci valida carta di Number.',
        'de-de':'Bitte geben Sie eine gültige Kreditkartennummer.',
        'es-es':'Por favor, escriba Valid Número de Tarjeta.',
        'he-il':'אנא הזן את מספר כרטיס חוקי.'
    },
    ValidCardN1:{
        'en-us':'Please Enter Valid Card Number. Use only digits. do not use Spaces or Hyphens.',
        'it-it':'Inserisci valida carta di Number. Utilizzare solo le cifre. Non utilizzare spazi o trattini.',
        'de-de':'Bitte geben Sie eine gültige Kreditkartennummer. Verwenden Sie nur Ziffern. Verwenden Sie keine Leerzeichen oder Bindestriche.',
        'es-es':'Por favor, escriba Valid Número de Tarjeta. Use sólo dígitos. No utilice espacios ni guiones.',
        'he-il':'אנא הזן את מספר כרטיס חוקי. השתמש רק ספרות. אין להשתמש ברווחים או מקפים.'
    },
    VAmericanCardN:{
        'en-us':'Please Enter Valid American Express Card Number.',
        'it-it':'Inserisci Valid American Express Card Number.',
        'de-de':'Bitte geben Sie eine gültige American Express Card-Nr.',
        'es-es':'Por favor, escriba Valid American Express Número de tarjeta.',
        'he-il':'אנא הזן חוקי אמריקן אקספרס מספר כרטיס.'
    },
    VDiscoverCardN:{
        'en-us':'Please Enter Valid Discover Card Number.',
        'it-it':'Inserisci Valid Discover Card Number.',
        'de-de':'Bitte geben Sie eine gültige Discover Card-Nr.',
        'es-es':'Por favor, escriba Valid Discover Número de tarjeta.',
        'he-il':'אנא הזן את מספר כרטיס גלה חוקי.'
    },
    VMasterCardN:{
        'en-us':'Please Enter Valid MasterCard Number.',
        'it-it':'Inserisci Valid Mastercard Numero.',
        'de-de':'Bitte geben Sie eine gültige Mastercard.',
        'es-es':'Por favor, escriba Valid MasterCard Número.',
        'he-il':'אנא הזן מספר חוקי מאסטרקארד.'
    },
    VVisaCardN:{
        'en-us':'Please Enter Valid Visa Card Number.',
        'it-it':'Inserisci Valid Visa Card Number.',
        'de-de':'Bitte geben Sie eine gültige Visa-Card-Nr.',
        'es-es':'Por favor, escriba un visado válido Número de la tarjeta.',
        'he-il':'אנא הזן את מספר כרטיס ויזה בתוקף.'
    },
    ValidCardN2:{
        'en-us':'Sorry! This is not a Valid Credit Card Number.',
        'it-it':'Spiacente! Questa non è una carta di credito valida Number.',
        'de-de':'Bekümmert! Dies ist keine gültige Kreditkartennummer.',
        'es-es':'Perdón! Esto no es una tarjeta de crédito Número.',
        'he-il':'מצטער! זה לא חוקי מספר כרטיס אשראי.'
    },
    ExpDtInvalid:{
        'en-us':'Sorry! The Expiration Date you have Entered would make this Card Invalid.',
        'it-it':'Spiacente! La data di scadenza che hai inserito renderebbe questa carta non valido.',
        'de-de':'Bekümmert! Das Verfallsdatum von Ihnen eingegebenen würde diese Karte ungültig zu machen.',
        'es-es':'Perdón! La fecha de caducidad que han entrado haría que esta tarjeta no válido.',
        'he-il':'מצטער! את תאריך התפוגה שהזנת יעשה את זה לא חוקי כרטיס.'
    },
    CardCode:{
        'en-us':'Please Eneter Card Code.',
        'it-it':'Si prega di Eneter Card Codice.',
        'de-de':'Bitte Eneter Card Code.',
        'es-es':'Si Eneter tarjeta de código.',
        'he-il':'אנא Eneter כרטיס קוד.'
    },
    ValidCardN3:{
        'en-us':'Please Enter Valid Card Code Number. Use only digits.',
        'it-it':'Inserisci valida carta il numero di codice. Utilizzare solo le cifre.',
        'de-de':'Bitte geben Sie eine gültige Card Code-Nr. Verwenden Sie nur Ziffern.',
        'es-es':'Por favor, escriba el número de código válido de tarjeta. Use sólo dígitos.',
        'he-il':'אנא הזן קוד חוקי כרטיס מספר. השתמש רק ספרות.'
    }
}

// Function that will check the quantity in Product Detail & Shopping Cart Page.
function checkQuantity(obj,culture)
{
    var qty = document.getElementById(obj);
    var QZero=localizedStrings['QuantityZero'][culture];
    var Quan=localizedStrings['Quantity'][culture];
    var QNumeric=localizedStrings['QuantityNumeric'][culture];
    
    if(qty.value != "")
    {
        if(isNaN(qty.value) == false)
        {
            if(parseInt(qty.value) <= 0)
            {
                alert(QZero);
                return false;
            }
            else
                return true;
        }
        else
        {
            alert(QNumeric);
            return false;
        }
    }
    else
    {
        alert(Quan);
        return false;
    }
    
}

// This code will use for Enable/disable State at registration.
function clearStateVal()
{
    var drp = document.getElementById("ctl00_CPH1_drpMCUSXintSta0");
    var txt = document.getElementById("ctl00_CPH1_txtother");
    var chk = document.getElementById("ctl00_CPH1_chkother");
    
    if(drp.value == "")
	{
	    txt.value="";
		txt.disabled=true;
		chk.checked=false;
		return;
	}
	
	if(drp.value > 0)
	{
		txt.value="";
		txt.disabled=true;
		chk.checked=false;
	}
	else if(drp.value == 0)
	{
		txt.value="";
		txt.disabled=false;
		chk.checked=true;
	}
}
function setStateVal(obj)
{
    var txt = document.getElementById("ctl00_CPH1_txtother");
    var drp = document.getElementById("ctl00_CPH1_drpMCUSXintSta0");
	if(obj.checked)
	{
		txt.disabled=false;
		drp.value = "0"
	}
	else
	{
		drp.value = "";
		txt.disabled = true;
		txt.value="";
	}
}
// Enable/disable End here

// Validating Payment Field at Pro Method of Payment.
<!--
function mod10( cardNumber ) 
{ 
	// LUHN Formula for validation of credit card numbers.
	var ar = new Array( cardNumber.length );
	var i = 0,sum = 0;

   	for( i = 0; i < cardNumber.length; ++i ) 
	{
    	ar[i] = parseInt(cardNumber.charAt(i));
    }
    
	for( i = ar.length -2; i >= 0; i-=2 ) 
	{ 
		// you have to start from the right, and work back.
    	ar[i] *= 2;		// every second digit starting with the right most (check digit)
   		if( ar[i] > 9 ) ar[i]-=9;	// will be doubled, and summed with the skipped digits.
   	}	// if the double digit is > 9, ADD those individual digits together 

   	for( i = 0; i < ar.length; ++i ) 
	{
    	sum += ar[i];	// if the sum is divisible by 10 mod10 succeeds
   	}
   	return (((sum%10)==0)?true:false);	 	
}

function expired( month, year ) 
{
   	var now = new Date();	// this function is designed to be Y2K compliant.
   	var expiresIn = new Date(year,month,0,0,0);		// create an expired on date object with valid thru expiration date
   	expiresIn.setMonth(expiresIn.getMonth()+1);		// adjust the month, to first day, hour, minute & second
                                                    //	of expired month
   	if(now.getTime() < expiresIn.getTime()) 
   	{
   	    return false;
   	}
    return true;	// then we get the miliseconds, and do a long integer comparison
}

function validateCard(cardNumber,cardType,cardMonth,cardYear,cardCode,ship,culture) 
{

    var ShipSer=localizedStrings['ShipService'][culture];
    var CardType=localizedStrings['CardType'][culture];
    var ValidCardN=localizedStrings['ValidCardN'][culture];
    var ValidCardN1=localizedStrings['ValidCardN1'][culture];
    var VAmericanCardN=localizedStrings['VAmericanCardN'][culture];
    var VDiscoverCardN=localizedStrings['VDiscoverCardN'][culture];
    var VMasterCardN=localizedStrings['VMasterCardN'][culture];
    var VVisaCardN=localizedStrings['VVisaCardN'][culture];
    var ValidCardN2=localizedStrings['ValidCardN2'][culture];
    var ExpDtInvalid=localizedStrings['ExpDtInvalid'][culture];
    var CardCode=localizedStrings['CardCode'][culture];
    var ValidCardN3=localizedStrings['ValidCardN3'][culture];
    
    if(ship.value.length == 0)
    {
        alert(ShipSer);
        return false;        
    }
    if(cardType.length == 0)
	{
	    alert(CardType);
	    return false;
	}
  	if( cardNumber.length == 0 ) 
	{
		//most of these checks are self explanitory
    	alert(ValidCardN);
    	return false;				
    }
    for( var i = 0; i < cardNumber.length; ++i ) 
	{	
		// make sure the number is all digits.. (by design)
        var c = cardNumber.charAt(i);

   		if( c < '0' || c > '9' ) 
		{
        	alert(ValidCardN1);
        	return false;
        }
    }
    
	var length = cardNumber.length;		//perform card specific length and prefix tests
	
   	switch( cardType ) 
	{
    	case 'a':
			if( length != 15 ) 
			{
             	alert(VAmericanCardN);
                return false;
            }
            var prefix = parseInt( cardNumber.substring(0,2));
   			if( prefix != 34 && prefix != 37 ) 
			{
            	alert(VAmericanCardN);
                return false;
            }
        break;
        case 'd':
			if( length != 16 ) 
			{
             	alert(VDiscoverCardN);
                return false;
            }
            var prefix = parseInt( cardNumber.substring(0,4));
			if( prefix != 6011 ) 
			{
            	alert(VDiscoverCardN);
                return false;
            }
        break;
        case 'm':
			if( length != 16 ) 
			{
             	alert(VMasterCardN);
                return false;
            }
            var prefix = parseInt( cardNumber.substring(0,2));
			if( prefix < 51 || prefix > 55) 
			{
            	alert(VMasterCardN);
                return false;
            }
        break;
        case 'v':
			if( length != 16 && length != 13 ) 
			{
            	alert(VVisaCardN);
                return false;
            }
            var prefix = parseInt( cardNumber.substring(0,1));
			if( prefix != 4 ) 
			{
            	alert(VVisaCardN);
                return false;
            }
        break;
    }
    
	if( !mod10( cardNumber ) ) 
	{ 	
		// run the check digit algorithm
        alert(ValidCardN2);
        return false;
    }
    if( expired( cardMonth, cardYear ) ) 
	{	
		// check if entered date is already expired.
        alert(ExpDtInvalid);
        return false;
    }
    if (cardCode == "")
	{
		alert(CardCode);
        return false;
	}
	else
	{
		 for( var i = 0; i < cardCode.length; ++i ) 
		{	
			var c = cardCode.charAt(i);
			if( c < '0' || c > '9' ) 
			{
				alert(ValidCardN3);
				return false;
			}
		}
	}
	return true;	// at this point card has not been proven to be invalid
}
//-->
function numbersonly(myfield, e) {
	var key;
	var keychar;
	if (window.event) key = window.event.keyCode;
	else if (e) key = e.which;
	else return true;
	keychar = String.fromCharCode(key);
	if (iscontrolkey(key)) return true;
	// numbers or decimal
	else if ((("0123456789").indexOf(keychar) > -1)) return true;
	else return false;
}
	
function iscontrolkey(key) {
	if ((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27) || 
		(key==63232) || (key==63233) || (key==63234) || (key==63235) || (key==63272)) 			return true;
}
 // Start - Loading Center Any Browser with rezolution
    function WindowSizeListener() {
        setWidthHeight();
        if (window.addEventListener) {
            window.addEventListener("resize", getWidthHeight, false);
        }
        else // for IE
        {
            window.attachEvent('onresize', getWidthHeight);
        }
    }

    function getWidthHeight() {
        setWidthHeight();

    }
    function setWidthHeight() {
        var dWidth = document.getElementById('visibleDiv').style.width;
        var dHeight = document.getElementById('visibleDiv').style.height;
        var cWidth = document.body.clientWidth;
        var cHeight = document.body.clientHeight;
        var fWidth;
        var fHeight;
        dWidth = dWidth.toLowerCase().replace("px", "")
        dHeight = dHeight.toLowerCase().replace("px", "")
        dWidth = parseInt(dWidth / 2);
        dHeight = parseInt(dHeight / 2);
        cWidth = parseInt(cWidth / 2);
        cHeight = parseInt(cHeight / 2);
        fWidth = parseInt(cWidth - dWidth);
        fHeight = parseInt(cHeight - dHeight);
        //document.getElementById('visibleDiv').style.left = fWidth + 'px';
        document.getElementById('visibleDiv').style.top = fHeight + 'px';
    }

    // End - Loading Center Any Browser with rezolution

