//////////////////////////////////////////////////////////////////////////////////
//  open windows
//////////////////////////////////////////////////////////////////////////////////

function openWin(strPageName, strOption){
	if(strOption){
		var strMyOption = strOption;
	}else{
		var strMyOption = "width=800,height=600,scrollbars=yes,resizeable=yes";
	}
	var myNumber = Math.round(Math.random()*(1000));
	newWin = window.open(strPageName, "newWin" + myNumber, strMyOption);
}

function showHelp(helpName){
	openWin('hilfe.aspx?helpName='+helpName, 'width=500,height=400,scrollbars=yes,resizeable=no');
}


//////////////////////////////////////////////////////////////////////////////////
//  IE6 png support
//////////////////////////////////////////////////////////////////////////////////

function switchIE6PNG(containerId){
    if (navigator.appVersion.indexOf("MSIE")!=-1){
        var temp=navigator.appVersion.split("MSIE")
        var version=parseFloat(temp[1]);
        if(version>=6&&version<7){
            //IE 6 found
            //get ContentContainer
            var mainElem;
            if(!containerId)
            {
                mainElem = document.body;
            }
            else
            {
                mainElem = document.getElementById(containerId);
            }
            
            if(mainElem)
            {
                //detect all images
                var images = mainElem.getElementsByTagName("img");

                for (var i = 0; i < images.length; i++) {
                    var img = images[i];
                    if (
                           ((img.src.indexOf("&type=png") > 0) || (img.src.indexOf(".png") > 0))
                    // only from this host                               
                    ) {
                        img.style.width = img.width;
                        img.style.height = img.height;
                        img.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + img.src + "');"
                        img.src = "/images/blank.gif";

                    }
                }
            }
        }
    }
}

//////////////////////////////////////////////////////////////////////////////////
//  Contact Form Field Validation
//////////////////////////////////////////////////////////////////////////////////

var arrRequiredFields = new Array();
function AddRequiredField(fieldName, info, regEx, condition)
{
    arrRequiredFields[arrRequiredFields.length] = new RequiredField(fieldName, info, regEx, condition);    
}

function RequiredField(fdName, nfo, regExp, cndtn)
{
    this.fieldName = fdName;
    this.info = nfo;
    this.regEx = regExp;
    this.condition = cndtn;
}

function ValidateFields()
{
    for(var i=0; i<arrRequiredFields.length; i++)
    {
        var fieldName = arrRequiredFields[i].fieldName
        var elem = document.getElementsByName(fieldName)[0];
        if(elem)
        {
            if(elem.getAttribute("type")!="checkbox" && elem.getAttribute("type")!="radio"){
                if(arrRequiredFields[i].regEx && arrRequiredFields[i].regEx.length > 0)
                {
                    //check conditions
                    if(!arrRequiredFields[i].condition || arrRequiredFields[i].condition.length == 0 || eval(arrRequiredFields[i].condition))
                    {
                        var objRegExp = new RegExp(arrRequiredFields[i].regEx);
                        //var ok = objRegExp.test(elem.value);
                        var ok = elem.value.match(objRegExp);
                        if(!ok){
                            alert(arrRequiredFields[i].info);
                            elem.focus();
                            return false;
                        }
                    }
                }
                else if(elem.value.length==0)
                {
                    //check conditions
                    if(!arrRequiredFields[i].condition || arrRequiredFields[i].condition.length == 0 || eval(arrRequiredFields[i].condition))
                    {
                        alert(arrRequiredFields[i].info);
                        elem.focus();
                        return false;
                    }
                }
            }else{
                var found = false;
                for(var elemIndex = 0; elemIndex < document.getElementsByName(fieldName).length; elemIndex++)
                {
                    //check conditions
                    if(!arrRequiredFields[i].condition || arrRequiredFields[i].condition.length == 0 || eval(arrRequiredFields[i].condition))
                    {
                        if(document.getElementsByName(fieldName)[elemIndex].checked)
                        {
                            found=true;
                        }
                    }
                }
                if(!found)
                {
                    alert(arrRequiredFields[i].info);
                    document.getElementsByName(fieldName)[0].focus();
                    return false;
                }
                //alert("radio " + i + ' ' + arrRequiredFields[i].fieldName + ' ' + arrRequiredFields[i].info + '=' + document.forms[0].elements[arrRequiredFields[i].fieldName].value);   
            }
        }
    }
    return true;
}

