// Error functions

function addError(messageId){
    errorArray.push(messageId);
}

function resetError(){
    $('errorContainer').innerHTML = "";
    errorArray = new Array();
    $('dialog_second_error').style.display = "none";

}
function writeError(){
    for (var i=0; i<errorArray.length;i++){
        $('errorContainer').innerHTML += eval(errorArray[i]) + '<br />';
        $('dialog_second_error').style.display = "block";
    }
}
function markError(questionId){
    //errorArray[0] = m1;
    alert($(questionId).id);
    $(questionId).style.backgroundColor  = "#ff0000";
    $(questionId).style.color  = "#ffffff";
    /*for (var i=0; i<errorArray.length;i++){
        $('errorContainer').innerHTML += eval(errorArray[i]) + '<br />';
        $('dialog_second_error').style.display = "block";
    }*/
    return false;
}


function toggle ( targetId ){
    for (var i=0;i<arguments.length;i++){
        targetId = arguments[i];
        if(document.getElementById){
            var target = document.getElementById( targetId );
        }else if(document.all){
            var target = document.all[ targetId ];
        }else if(document.layers){
            var target = document.layers[ targetId ];
        }
        if( target.style.display == "none" || target.style.display == "" ){
            target.style.display = "block";
        }else{
            target.style.display = "none";
        }
    }
}

function showContent ( targetId ){
    for (var i=0;i<arguments.length;i++){
        targetId = arguments[i];
        if(document.getElementById){
            var target = document.getElementById( targetId );
        }else if(document.all){
            var target = document.all[ targetId ];
        }else if(document.layers){
            var target = document.layers[ targetId ];
        }
        if( target.style.display == "none" || target.style.display == "" ){
            target.style.display = "block";
        }
    }
}
function hideContent ( targetId ){
    for (var i=0;i<arguments.length;i++){
        targetId = arguments[i];
        if(document.getElementById){
            var target = document.getElementById( targetId );
        }else if(document.all){
            var target = document.all[ targetId ];
        }else if(document.layers){
            var target = document.layers[ targetId ];
        }
        if( target.style.display == "block"){
            target.style.display = "none";
        }
    }
}

function delData(targetId){
    if(document.getElementById){
        var target = document.getElementById( targetId );
    }else if(document.all){
        var target = document.all[ targetId ];
    }else if(document.layers){
        var target = document.layers[ targetId ];
    }
    var inputElems = target.getElementsByTagName("input");
    for(var i=0;i<inputElems.length;i++){
        //alert(inputElems[i].type);
        if (inputElems[i].type == "text") setValue(inputElems[i], "");
        if (inputElems[i].type == "radio") uncheckElement(inputElems[i]);
    }
    var selectElems = target.getElementsByTagName("select");
    for(var j=0;j<selectElems.length;j++){
        //alert(selectElems[j].selectedIndex);
        if (selectElems[j].type == "select-one") selectElems[j].selectedIndex = 0;
        //if (inputElems[i].type == "radio") uncheckElement(inputElems[i]);
    }
}

// open div on click on radio and uncheck radios in div if div gets closed again
function activateRadio ( targetId ){
    if(document.getElementById){
        var target = document.getElementById( targetId );
    }else if(document.all){
        var target = document.all[ targetId ];
    }else if(document.layers){
        var target = document.layers[ targetId ];
    }
    target.style.display = "block";
}

// open div on click on radio and uncheck radios in div if div gets closed again
function deactivateRadio ( targetId ){
    if(document.getElementById){
        var target = document.getElementById( targetId );

    }else if(document.all){
        var target = document.all[ targetId ];
    }else if(document.layers){
        var target = document.layers[ targetId ];
    }
    var radios =  target.getElementsByTagName('input');
    for (var i=0;i<radios.length;i++){
        uncheckElement(radios[i]);
    }
    target.style.display = "none";
}

// return object
function $() {
    var elements = new Array();
    for (var i=0; i<arguments.length; i++){
        var element = arguments[i];
        if (typeof element == 'string') element = document.getElementById(element);
        if (arguments.length == 1) return element;
        elements.push(element);
    }
    return elements;
}


function checkIfEmpty(form,Feldname,messageId){
    form = document.getElementById(form);
    with (form) {
        Wert = eval(Feldname).value;
        if(Wert == "") {
            //alert("Geben Sie bitte " + message + " ein!");
            //eval(Feldname).focus();
            addError(messageId);

            return true;
        }
        return false;
    }
}

function numerisch(form){
    if (form.value!=""){
        var richtig ="0123456789";
        for (a = 0; a < form.value.length; a++){
            if (richtig.indexOf(form.value.charAt(a))<0 ){
                return false;
            }
        }
     return true;
    }
}


// see if Radiobutton is checked
    function isChecked(el) {
        if(isDefined(el)) {
            if(el.checked) return true;
            else return false;
        } else {
            return false;
        }
    }

    // see if an element exists
    function isDefined(el) {
        if(typeof(el) == "object") return true;
        return false;
    }

// check if Radiobuttons are checked
function radioChecked(el){
    if(isDefined(el)) {
        for (var i=0;i<el.length;i++){
            if(el[i].checked) return true;

        }
    } else {
        return false;
    }
    return false;
}

// check radio and checkboxes
function checkElement(el) {
    if(isDefined(el)) {
        el.checked = true;
    }
}

function setFocus(el) {
    if(el) {
        el.focus();
    }
}

function setValue(el, val) {
    if(el) {
        el.value = val;
    }
}

function getValue(el) {
    if(el) {
        return el.value;
    } else {
        return null;
    }
}

function uncheckElement(el) {
    if(el) {
        el.checked = false;
    }
}

function floatMenu()
{
    if( document.all && document.getElementById )
    {
        navRoot = document.getElementById( "nav" );
        for( i=0; i<navRoot.childNodes.length; i++ )
        {
            node = navRoot.childNodes[ i ];
            if( node.nodeName=="LI" )
            {
                node.onmouseover=function()
                {
                    this.className += " over";
                }
                node.onmouseout=function()
                {
                    this.className = this.className.replace( " over", "" );
                }
            }
        }
    }
}

/* === */

var EventBroadcaster = new Object();
EventBroadcaster.init = function(obj)
{
 obj._listeners = new Array();
 obj.broadcastMessage = this._broadcastMessage;
 obj.addListener = this._addListener;
 return obj;
};
EventBroadcaster._broadcastMessage = function(method)
{
 var listeners = this._listeners;
 var i = listeners.length;
 while (i--)
 {
  var listener = listeners[i];
  if (listener[method])
  {
   listener[method]();
  }
 }
};
EventBroadcaster._addListener = function(obj)
{
 this._listeners.push(obj);
 return true;
};
window.onload = function()
{
 this.broadcastMessage('onload');
};
EventBroadcaster.init(window);

var PopupInit = new Object();
window.addListener(PopupInit);
var global_width=450;
var global_height=300;
PopupInit.onload = function() {
  if (document.getElementById) {
    var allLinks=document.getElementsByTagName('a');
    for (var i=0; i<allLinks.length; i++) {
      if(allLinks[i].target=='dkvpopup') {
        var popuplink = new PopupLink(allLinks[i]);
      }
    }
  }
};
var PopupLink = function(item) {
  this._link = item;
  this._link._obj = this;
  this._link.onclick = this._open;
};
PopupLink.prototype._open = function() {
  var fenster = window.open('', 'dkvpopup', 'width='+global_width+',height='+global_height+',location=no,menubar=no,resizable=yes,scrollbars=yes,status=yes,toolbar=no');
};


function cFontsize( increment )
{
    this.w3c = document.getElementById;
    this.ms = document.all;

    this.userAgent = navigator.userAgent.toLowerCase();

    this.isMacIE = ( (this.userAgent.indexOf('msie') != -1) && (this.userAgent.indexOf('mac') != -1) && (this.userAgent.indexOf('opera') == -1) );
    this.isOldOp = ( (this.userAgent.indexOf('opera') != -1) && (parseFloat(this.userAgent.substr(this.userAgent.indexOf('opera')+5)) <= 7) );

    this.fontSize = 100;

    if( (this.w3c || this.ms) && !this.isOldOp && !this.isMacIE )
    {
        this.increment = increment;
    }
    else
    {
        this.init = new Function( 'return true;' );
    }
}

cFontsize.prototype.showBtn = function()
{
    this.init();
    document.write
    (
        '<span><img src="../img/buttons/font-larger.gif" id="font_larger" alt="Schrift vergr??ern" onclick="oFontsize.setSize( 1 ); return false;" />'+
        '<img src="../img/buttons/font-smaller.gif" id="font_smaller" alt="Schrift verkleinern" onclick="oFontsize.setSize( -1 ); return false;" /></span>'
    );
}

cFontsize.prototype.init = function()
{
        this.body = this.w3c
                            ? document.getElementsByTagName( 'body' )[0].style
                            : document.all.tags( 'body' )[0].style;

        this.setBody();
}

cFontsize.prototype.setSize = function( direction )
{
    direction > 0 ? this.fontSize += this.increment : this.fontSize -= this.increment;
    this.setBody();
}

cFontsize.prototype.setBody = function()
{
    this.body.fontSize = this.fontSize + '%';
}

var oFontsize = new cFontsize( 10 );


var PopUpFenster = new Array();
function openWin(URL, width, height, name, status, scroll){
    floater=null;
    if(!width) width=336;
    if(!height) height=224;
    if(!name) name="DKV";
    if(!status) status="yes";
    if(!scroll) scroll="yes";
    if (document.layers || document.all) {
        if (floater && !floater.closed){
            floater.focus();
        } else {
            if(document.layers){
                window.open(URL, name, 'WIDTH='+width+',HEIGHT='+height+',SCROLLBARS='+scroll+',TOOLBAR=0,LOCATION=0,DIRECTORIES=0,STATUS='+status+',RESIZABLE=0');
            } else {
                window.open(URL, name, 'WIDTH='+width+',HEIGHT='+height+',TOOLBAR=no,LOCATION=no,DIRECTORIES=no,STATUS='+status+',RESIZABLE=0,SCROLLBARS='+scroll+'');
            }
        }
    } else {
        window.open(URL, name, 'WIDTH='+width+',HEIGHT='+height+',TOOLBAR=no,LOCATION=no,DIRECTORIES=no,STATUS='+status+',RESIZABLE=0,SCROLLBARS='+scroll+'');
    }
}

function NeuesFenster(ID){
   for(i=0;i<PopUpFenster.length;i++){
       if(PopUpFenster[i][0]==ID) pop = openWin(PopUpFenster[i][1],PopUpFenster[i][2],PopUpFenster[i][3],PopUpFenster[i][3]);
   }
}

var tmpCounter = 0;
PopUpFenster[tmpCounter++] = new Array('1235','../versicherungsuebersicht/932.html',0,0);
PopUpFenster[tmpCounter++] = new Array('1248','../versicherungsuebersicht/932.html',0,0);
PopUpFenster[tmpCounter++] = new Array('1249','../versicherungsuebersicht/931.html',0,0);
PopUpFenster[tmpCounter++] = new Array('1251','../versicherungsuebersicht/941.html',0,0);
PopUpFenster[tmpCounter++] = new Array('1252','../versicherungsuebersicht/942.html',0,0);
PopUpFenster[tmpCounter++] = new Array('6807','../versicherungsuebersicht/gesundheitsreform_beispiel_azs.html',380,460);
PopUpFenster[tmpCounter++] = new Array('1576','../versicherungsuebersicht/855.html',0,0);

//Additional functions for BSK and DIIN
function change_lang(language) {
 	if (language == 'en') {  
		location.href='index.php?variante=-3';
	} else {
		location.href='index.php?variante=';
	}	
}

function neufenster(adresse,name,breite,hoehe) {
    fenster = null;
    window_left = (screen.width-breite)/2;
    window_top = (screen.height-hoehe)/2;
    fenster=window.open(adresse,name,"width="+breite+",height="+hoehe+",top="+window_top+",left="+window_left+",resizable=yes");
    fenster.focus();
}

function popup_drucken(adresse,name) {
	breite = 610;
	hoehe = 500;
	window_left = (screen.width-breite)/2;
	window_top = (screen.height-hoehe)/2;
	druckPopup=window.open(adresse,name,"width="+breite+",height="+hoehe+",top="+window_top+",left="+window_left+",location=0,directories=0,status=0,toolbar=1,menubar=1,resizable=yes,scrollbars=yes");
	druckPopup.focus();
}



