
function trim(str){
  s = str.replace(/^(\s)*/, '');
  s = s.replace(/(\s)*$/, '');
  return s;
}

var d = document;
var addParameter = function(url,param,value){
	if(!new RegExp("[?]").test(url))
		return url+'?'+param+'='+value;
	if(!new RegExp("[?&]"+param+"=[^$&]*").test(url))
		return url+'&'+param+'='+value;
	return url.replace(new RegExp("([?&]"+param+"=)[^$&]*"),"$1"+value)
}

function confirmPass(pass, confPass, confPassWarning){
	var passEl = d.getElementById(pass);
	var confPassEl = d.getElementById(confPass);
	var res = false;
	if(passEl && confPassEl && (passEl.value == confPassEl.value)){
		res = true;
		var warnEl = d.getElementById(confPassWarning);
		warnEl.style.display = 'none';
	}else{
		var warnEl = d.getElementById(confPassWarning);
		warnEl.style.display = 'block';
	}
	return res;
}

// Form Validator For Empty Filds
function empty(inpId){
	if(inpId.value != ""){
		return true;
	}else{
		inpId.focus();
		inpId.style.borderColor = "red";
		return false;
	}
}
function validateFields(divId, RR, mail, numbs, floatnumbs, telnumbs , regionVal) {
        var flag = true;
		clearError(divId);
		if(regionVal != null) {
		    var fieldCountry  = d.getElementById(regionVal[0]);
		    var fieldRegion  = d.getElementById(regionVal[1]);
		    if(fieldCountry.value == 2) {
    	        if(fieldRegion.value == -1){
  		            flag = false;
			        openInvalidTab(document.getElementById('regionDisplay')); 
			        labelHighLight(divId, fieldRegion);									
		        }
            }
		}
		if (floatnumbs!= null){
			for (var i = 0; i < floatnumbs.length; i++) {
				var floatFieldN = d.getElementById(floatnumbs[i]);
				if(floatFieldN){
					if(floatFieldN.nodeName == "INPUT" && (!(/^((\d+)(\.(\d+))?)?$/.test(trim(floatFieldN.value))))){
						flag = false;
						openInvalidTab(floatFieldN);
						labelHighLight(divId,floatFieldN);
					}
				}
			}
		}			
		
		if (RR != null){
			for (var i = 0; i < RR.length; i++) {
				var field = d.getElementById(RR[i]);
				if(field){
					if((field.nodeName == "INPUT" || field.nodeName == "TEXTAREA") && field.value == "" || field.nodeName == "SELECT" && field.value == -1 || field.type == "checkbox" && field.checked == false){
						flag = false;
					openInvalidTab(field);
					labelHighLight(divId, field);									
					}
				}
			}
		}
		
		if (numbs != null){
			for (var t = 0; t < numbs.length; t++) {
				var fieldN = d.getElementById(numbs[t]);
				if(fieldN){
					if(fieldN.nodeName == "INPUT" && (!(/^(\d)*$/.test(trim(fieldN.value))))){
						flag = false;
					openInvalidTab(fieldN);
					labelHighLight(divId, fieldN);
					}
				}
			}
		}		
		
		if (mail != null){
			for (var i = 0; i < mail.length; i++) {
			var mailfield = d.getElementById(mail[i]);
				if (mailfield){
					/*if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(trim(mailfield.value)))){
					  flag = false;
				      labelHighLight(divId, mailfield);		
					}*/
					/*if (!(/^([a-z0-9])([\w\.\-\"'"\+])+([a-z0-9])\@(([\w\-]?)+\.)+([a-z]{2,4})$/i.test(trim(mailfield.value)))){
					    flag = false;
				        labelHighLight(divId, mailfield);		
					}*/
					if (!(/^\w+([\.-]?[\w+\"'"]+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(trim(mailfield.value)))){
					  flag = false;
				      labelHighLight(divId, mailfield);		
					}
				}
			}
		}
		if (telnumbs != null){
			for (var t = 0; t < telnumbs.length; t++) {
				var fieldN = d.getElementById(telnumbs[t]);
				if(fieldN && (trim(fieldN.value))!=""){
					if(fieldN.nodeName == "INPUT" && (!(/^[\+\d\s][\d\s]*$/.test(trim(fieldN.value))))){
						flag = false;
					openInvalidTab(fieldN);
					labelHighLight(divId, fieldN);
					}
				}
			}
		}
orderTabs(divId);
	return flag; 
}
	
function labelHighLight(divId, field){

var mainCont = d.getElementById(divId);
var labels = mainCont.getElementsByTagName("LABEL");
for(var i = 0; i < labels.length; i++) {
	var lab = labels[i];
	var labF = lab.getAttribute("htmlFor");
if(divId=='regform'){
	if(!labF){
		var labF = lab.getAttribute("for");
		if(labF == field.id || labF+"Invoice" == field.id || labF+"Numb" == field.id || labF+"NumbInvoice" == field.id){
			lab.style.color = "red";
		}
	}else{
		if(labF == field.id || labF+"Invoice" == field.id || labF+"Numb" == field.id || labF+"NumbInvoice" == field.id){
			lab.style.color = "red";
		}
	}
}else{
	if(!labF){ // for Mozilla
	    var labF = lab.getAttribute("for");
		if(labF == field.id){
		    
			lab.style.color = "red";
			
		}	
	}else{ // for IE
		if(labF == field.id){
		   
			lab.style.color = "red";
		}
	}
}
}
}

// Open InValid Tabs
function openInvalidTab(field){
if(!d.getElementById("siteTarrif") && !d.getElementById("popupForm")){
	var invalidTab = field.parentNode.id || field.parentNode.parentNode.id || field.parentNode.parentNode.parentNode.id;
	if(d.getElementById(invalidTab) && d.getElementById(invalidTab).parentNode.parentNode.id == "siteDet"){
		var divKa = d.getElementById("siteDet")	
	}else{
		divKa = d.getElementById("venueDet")
	};
	if(divKa){
		var ULs = divKa.getElementsByTagName("UL");
		
		for(var i = 0; i < ULs.length; i++){
			if(ULs[i].className == "tabsNav"){
				var tabNav = ULs[i];				
				var tabs = tabNav.getElementsByTagName("LI");
				
				for(var i = 0; i < tabs.length; i++) {
					var btns = tabs[i];		
					if(tabNav.parentNode.id == "siteDet"){
						if(invalidTab == "stab"+(i + 1)){
						    
							var btn = btns.firstChild;
							btns.className = "error";
							};
							}else if(tabNav.parentNode.id == "venueDet"){
							 
							    if(invalidTab == "tab"+(i + 1)){
							        var btn = btns.firstChild;
									btns.className = "error"

							}
						}
					}
				}
			}
		}
	}
}
		
function orderTabs(divId){
	var divKa = d.getElementById("venueDet");
	if(divId == "siteDet"){
		divKa = d.getElementById("siteDet");
	}	;
	if(divKa){
		var ULs = divKa.getElementsByTagName("UL");
		for(var t = 0; t < ULs.length; t++) {
			if(ULs[t].className == "tabsNav"){			
				var tabs = ULs[t].getElementsByTagName("LI");
				for(var i = 0; i < tabs.length; i++) {
					if(tabs[i].className == "error"){
								var btn = tabs[i].firstChild;
								if(divId == "siteDet"){
									openTab(("stab"+(i + 1)),btn);
								}else{								
								openTab(("tab"+(i + 1)),btn);
								break;
						}		
					}
				}	
			}
		}
	}
}
		
function clearError(divId){
	if(divId=='venueDet')	{
		var tabNav = d.getElementById(divId);
	var tabs = tabNav.getElementsByTagName("LI");
	for(var i = 0; i < tabs.length; i++) {
		var btns = tabs[i];
		if(btns.className != ""){
			btns.className = "";
}
	}
	}
	var mainCont = d.getElementById(divId);
	var labels = mainCont.getElementsByTagName("LABEL");
	for(var i = 0; i < labels.length; i++) {
		var lab = labels[i];
		lab.style.color = "#666";
		}
	}
		
	function oneEmptyOtherFilled(divId, emptyFieldId, filledFilds){
		var flag = true;
		if (emptyFieldId != null){
				var emptyField = d.getElementById(emptyFieldId);
				if(emptyField){
					if (emptyField.nodeName == "INPUT" && (emptyField.value == null || emptyField.value == "")) {
						if (filledFilds!= null){
							for (var i = 0; i < filledFilds.length; i++) {
								var fieldN = d.getElementById(filledFilds[i]);
								if(fieldN){
									if(fieldN.nodeName == "INPUT" && (fieldN.value == null || fieldN.value == "")){
										flag = false;
										labelHighLight(divId,fieldN);
									}
								}
							}
						}			
					}
				}
			}			
		return flag;
	}

	var allowRealNumbsOnly =  function (e) {
			if(!e)e=window.event;			
			var k=e.keyCode;
			//        0       -             9               0       -             9           arrows          backspace    del
			return (((k>=96 && k<=105 && !e.shiftKey)) || (k>=48 && k<=57 && !e.shiftKey) || (k>=37 && k<=40) || k == 8 || k == 46);
		}

	// BG img cache in IE
	if (d.uniqueID && document.compatMode && !window.XMLHttpRequest && d.execCommand)  
		d.execCommand('BackgroundImageCache', false, true); 
