var obj;
var pageTracker;

function isValidEmail(str) {
    return str.match(new RegExp("^([a-zA-Z0-9_]|\\-|\\.)+@(([a-zA-Z0-9_]|\\-)+\\.)+[a-zA-Z]{2,4}$"));
}

function checkFields() {
    var i, a = checkFields.arguments, objname = null;
    for(i=0;i<a.length;i++) {
        obj = document.getElementById(a[i]);
        if(obj && !obj.value.length) {
        	objname = document.getElementById(a[i]+'_err_empty');
        	if ( (!objname) || objname.innerHTML == '' ){
        		alert("Empty field '"+obj.name+"'");
        	} else{
				alert(objname.innerHTML);
        	}
            obj.focus();
            return false;
        }
        if (obj && obj.name.match(/email/i)) {
            if (!isValidEmail(obj.value)) {
                alert("Wrong email format");
                obj.focus();
                return false;
            }
        }
    }
    return true;
}

function checkPurchaseForm() {
    if (!checkFields('Name','EMail','Repeat_EMail'))
	return false;
    var f1 = document.getElementById('EMail').value;
    var f2 = document.getElementById('Repeat_EMail').value;
    if (f1!=f2) {
        alert("Repeat EMail address should be the same");
        return false;
    }
    if ( typeof setUrchinInputCode == 'function' ){
		try{
			setUrchinInputCode(pageTracker);
		}catch(e){}
    }
    return true;
}

function preloadimages(){
    for (i=0;i<preloadimages.arguments.length;i++){
        myimages[i]=new Image();
        myimages[i].src=preloadimages.arguments[i];
    }
}

function changePrice(priceId,conns,seats,formObj, peru, pers){
	// number of connections(users)
	var c ;
	if ( typeof(formObj.elements[conns]) == 'undefined' ){
		c = 1;
	} else{
	 	c = parseInt(formObj.elements[conns].options[formObj.elements[conns].selectedIndex].value,10);
	 	if (isNaN(c)){
	 		c = parseInt(formObj.elements[conns].options[0].value,10);
	 		if (isNaN(c)){
	 			c = 1;
	 		}
	 	}
	}
 	
 	// number of seats (server installs)
 	var s = parseInt(formObj.elements[seats].options[formObj.elements[seats].selectedIndex].value,10);
 	if (isNaN(s)){
 		s = parseInt(formObj.elements[seats].options[0].value,10);
 		if (isNaN(c)){
 			s = 1;
 		}
 	}
 	
 	var prObj = document.getElementById(priceId);
 	
 	// price per user
 	var peru = parseFloat(peru);
 	
 	// price per seat
 	var pers = parseFloat(pers);
 	
 	var p = ( peru*c + ( s > 1 ? pers*c*(s-1) : 0 ) );
 	p = (Math.round(p*100))/100;//rounding to the second number after digit
 	if ( typeof(google_conversion_value) != 'undefined' ){
 		google_conversion_value = pp;
 	}
 	var pp = ''+p;
 	var periodPos = pp.indexOf('.');
 	if ( periodPos == -1 ){//period not found
 		pp += '.00';
 	} else{
 		var afterPeriod = pp.substr(periodPos+1,2);
 		if ( afterPeriod.length < 2 ){
 			pp += '0';
 		}
 	}
 	prObj.innerHTML = '$'+pp;
}

function CheckGeoIpCountry(selObj){
	if ( !selObj ){
		return;
	}
	if ( typeof(geoip_country_name) != "function" ){
		return;
	}
	var geoipname = geoip_country_name();
	if ( geoipname == selObj.options[selObj.selectedIndex].text ){
		return;
	}
	var keepsel = selObj.selectedIndex;
	selObj.selectedIndex = -1;
	for ( var i = 0; i < selObj.options.length; i++ ){
		if ( geoipname == selObj.options[i].text ){
			selObj.selectedIndex = i;
			return;
		}
	}
	// if not found
	selObj.selectedIndex = keepsel;
}

function CheckCCardType(sourceObj){
	var isElectron = false;
	var electronPrefix4 = new Array(4917,4913,4508,4844);
	var electronPrefix6 = new Array(417500);
		
	if ( sourceObj.value.length == 0 ) {
		return 'empty';
	}
	
	var ccardvalue = sourceObj.value;
	
	if ( ccardvalue.charAt(0) == '3'){
		if (ccardvalue.charAt(1) == '6') {
			return 'mastercard';
		} else if ( ccardvalue.charAt(1) == '5') {
			return 'jcb';
		} else {
			return 'Amex';
		}
	} else if (ccardvalue.charAt(0) == '4'){
			if (ccardvalue.length >= 4) {
				var check = ccardvalue.substring(0,4);
				for (i=0; i < electronPrefix4.length; i++) {
					if (check == electronPrefix4[i]) {
						isElectron = true;
						break;
					}
				}						
				if ( !isElectron ){
					if ( ccardvalue.length >= 6 ) {
						check = ccardvalue.substring(0,6);
						for (i=0; i < electronPrefix6.length; i++) {
							if ( check == electronPrefix6[i] ) {
								isElectron = true;
								break;
							}
						}
					}
				}
				if (isElectron) {
					//return 'visa-electron';
					return 'Visa';
				}
	       }
		return 'Visa';
	} else if (ccardvalue.charAt(0) == '5'){
		return 'MasterCard';
	} else if (ccardvalue.charAt(0) == '6'){
		return 'Discover';
	} else{
		return 'unknown';
	}	
	return ccardtype;
}

/* 
	//off
			if (enableHighlight) {
				amex.style.opacity="0.13"; 
				amex.style.filter="alpha(opacity=20)"; 
			}
	// on
			amex.style.opacity="1"; 
			amex.style.filter="alpha(opacity=100)"; 
*/