var digits = "0123456789";
var phoneNumberDelimiters = "()- ";
var validWorldPhoneChars = phoneNumberDelimiters + "+";
var minDigitsInIPhoneNumber = 10;
var bqsDelay="0.3";
var closeimgBlue = '<img src="../Static/Images/MainFocus/close.gif" alt="Close" width="14" height="15" border="0" '
	+'name="blueExit" id="blueExit" >';

//very important
if(typeof HTMLElement!='undefined'&&!HTMLElement.prototype.click)
	HTMLElement.prototype.click=function(){
	var evt = this.ownerDocument.createEvent('MouseEvents');
	evt.initMouseEvent('click', true, true, this.ownerDocument.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, null);
	this.dispatchEvent(evt);
	}

function blinkIt() {
	 if (!document.all) return;
	 else {
	   for(i=0;i<document.all.tags('blink').length;i++){
	      s=document.all.tags('blink')[i];
	      s.style.visibility=(s.style.visibility=='visible')?'hidden':'visible';
	   }
	 }
	}

function changeVisibilityOfElement(isChecked,elementName)
{	
  $(elementName).value=(isChecked)?"1":"0";
}

function changeVisibilityOfElementDef(isChecked,elementName,defaultValue)
{	
  $(elementName).value=(isChecked)? defaultValue:"0";
}

function openFileAsDownload(fileName,fileDirectory, openType) 
{
	var execPath="ibp.jsp?ibpAction=custom&ibpDisplay=view&ibpPage=BlankPage&ibpActionInfolet=%2Fbin%2FbqFileSaveAndOpen.jsp&ibpDispWhat=object&";
	execPath=ibpUtils.addQueryStringParam(execPath,"fileName",fileName);
	execPath=ibpUtils.addQueryStringParam(execPath,"fileDirectory",fileDirectory);
	execPath=ibpUtils.addQueryStringParam(execPath,"type",openType);
	ibpUtils.execAsync("fraExec",execPath);
}

function isURL(strObj) 
{
  if(ibpUtils.isEmpty(strObj))return;
  if((strObj.value).empty())return;
  var str = $(strObj).value;
  if (window.RegExp) {
      var reg1 = new RegExp(/^(http|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&amp;:/~\+#]*[\w\-\@?^=%&amp;/~\+#])?$/);
    if(!reg1.test(str)){
            alert("Die URL wurde falsch angegeben.");
          strObj.focus();
          strObj.select();
          return false;
      }
      }
}

function eMailcheck(strObj) 
{
  if(ibpUtils.isEmpty(strObj))return;
  if(ibpUtils.isEmpty(strObj.value))return;
  strObj=ibpUtils.objectOrGetId(strObj);
  var str = strObj.value;
  if (window.RegExp) {
   	var reg1 = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
    if(!reg1.test(str)){
		alert('The given eMail address is not valid!');
	    strObj.focus();
	    strObj.select();
	    return false;
    	}
	}
}

function stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function checkInternationalPhone(strPhone){
var bracket=4
strPhone=ibpUtils.trim(strPhone);
if(strPhone.indexOf("+")>1) return false
//if(strPhone.indexOf("-")!=-1)bracket=bracket+1

if(strPhone.indexOf("(")!=-1 && strPhone.indexOf("(")>bracket)return false
var brchr=strPhone.indexOf("(")
if(strPhone.indexOf("(")!=-1){
	if(strPhone.charAt(brchr+6)==")"||strPhone.charAt(brchr+5)==")"){}
	else{
		return false
	}
}
if(strPhone.indexOf("(")==-1 && strPhone.indexOf(")")!=-1)return false

s=stripCharsInBag(strPhone,validWorldPhoneChars);
return (ibpUtils.isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}

var reg = /^([0-9]{4})\-([0-9]{2})\-([0-9]{2})$/;
function dateFormat(field) {
	var val=$(field.id).value;
	var result="true";
	 if (reg.exec(val)){
		var date=val.trim();
		date=date.split("-");
		var d=date[2];
		var m=date[1];
		var y=date[0];

		if( (d>0 && d<32) && (m>0&&m<13) && (y>1980&&y<2050) ){
			if(d>29 && m==2){
				result="false";
			}			
			if(d==31 &&(m==02||m==04||m==06||m==09||m==11)){
				result="false";
			}
		}
		else{
			result="false";	
		}	
		if(result=="false"){
			alert(unescape("Das Datum ist ung%FCltig%21"));
			$(field.id).value="";
			$(field.id).focus();
		}
 	 }
 else{ 
	if(val!=""){ 
		alert ("Falsches Format! Bitte folgendes Format verwenden: yyyy-MM-dd");
		$(field.id).value="";
		$(field.id).focus();
		}
 }
 
}

function checkDateInput(obj, keyCode){
	var key = keyCode;
	if ("47"<key && key <"59" ||key=="45"){	}
	else{
		event.keyCode="0";
	}
	
}

function callPopup(li){  
	//alert("Popup");
	var link=li;
	//alert(link);
	var w = "1000";
	var h = "900";
	var screenw = screen.availWidth; 
	var screenh = screen.availHeight;
	var posx = (screenw / 2) - (w / 2); 
	var posy = (screenh / 2) - (h / 2); 
	window.open(link, "Window2", " top="+posy+",left="+posx+",width="+w+", height=800,location=no scrollbars=yes"); 
}

function callPopup(li, width, heigth){  
	//alert("Popup");
	var link=li;
	//alert(link);
	var w = width;
	var h = heigth;
	var screenw = screen.availWidth; 
	var screenh = screen.availHeight;
	var posx = (screenw / 2) - (w / 2); 
	var posy = (screenh / 2) - (h / 2); 
	window.open(link, "Window2", " top="+posy+",left="+posx+",width="+w+", height="+h+",location=no scrollbars=yes"); 
}
