/**************************************************/
/* Last updated 20 July 2009 */
/**************************************************/
/** Allgemeine Funktionen */

var winID = 0;
var popUp = new Array();

function fensterAuf(inhalt, breite, hoehe, winname) {
  var xOff = 10;
  var yOff = 10;
  if (parseInt(navigator.appVersion)>=4) {
  	//Koordinaten fuer zentriertes PopUp Fenster festlegen
    xOff = (screen.width-breite)/2;
    yOff = (screen.height-(hoehe))/2;
    yOff -= 20;//Hoehenjustage, Wert anpassen, wenn Fenster Toolbar/Adresszeile/Statuszeile etc. hat
  }
  popUp[winID] = window.open(inhalt, winname, 'toolbar=no,status=no,location=no,directories=no,resizable=no,scrollbars=no,width='+breite+',height='+hoehe+',left='+xOff+',top='+yOff);
  winID++;
}

function loadSelectLink(formID, selectID, contrQuickname) {
    if ((loadSelectLink.arguments.length > 3) && (loadSelectLink.arguments[3] == true)) {
      formular = (document.layers) ? document.container0.document : document;
    } else {
      formular = document;
    }
    var basisLink = formular.forms[formID][selectID].options[formular.forms[formID][selectID].selectedIndex].value;
    if (basisLink.length>1){
      contrQuickname = escape(contrQuickname);
      // Die nächsten 2 Zeilen löschen wenn statt dem rlp:a das rlp:url verwendet wird !!    
      var cutLink = basisLink.replace(/<a href="/, "");
      basisLink = cutLink.replace(/"><\/a>/, "");
      var contrSelectEintrag = formular.forms[formID][selectID].options[formular.forms[formID][selectID].selectedIndex].text;
      contrSelectEintrag = escape(contrSelectEintrag);
      contrSelectEintrag = contrSelectEintrag.replace(/\//, "_");
      contrSelectEintrag = contrSelectEintrag.replace(/&/, "_");
      var nowLink = basisLink;
      if (contrQuickname != '' && contrQuickname != 'seitenname_boxname') {
    	  nowLink = nowLink + "&tr_quickfinder=" + contrQuickname + "&tr_value=" + contrSelectEintrag;
      }

      document.location.href = nowLink;    }
}

function updateView(optionalId, compareValue, radioName) {
	var selectedValue = getRadioValue(radioName);
	showElement(optionalId, selectedValue == compareValue );
}

function getRadioValue(elementName) {
	var radiobuttons = document.getElementsByTagName('input');
	for (i = 0; i < radiobuttons.length; i++) {
		if (radiobuttons[i].type == 'radio' && radiobuttons[i].name == elementName ) {
			if (radiobuttons[i].checked)
				return radiobuttons[i].value;
		}
	}
	return null;
}

function showElement(id, visible) {
	var element = getElement(id);
	if (visible)
		show(element);
	else
		hide(element);
}

function getElement(id) {
	return document.getElementById(id);
}

// Element anzeigen
function show(obj) {
	if (obj) {
		obj.style.display = "block";
	}
}

// Element verstecken
function hide(obj) {
	if (obj) {
		obj.style.display = "none";
	}
}

// Frame neu laden
function refresh(id){
	activeFrame = sFrame + id;
	if(getElement(activeFrame)){
		parent.frames[activeFrame].location.reload();
	}
}

/**************************************************/
/* functions add-info */
var sIconTitleMaximize = "maximieren";
var sIconTitleMinimize = "minimieren";
var sAddInfoPrefix = "add-info-";
var sFrame = "frame-";

var activeAddInfoElement;
var activeAddInfoNavigation;

function showAddInfo(sId)
{
	var sAddInfoId = sAddInfoPrefix + sId;

	if (activeAddInfoElement == getElement(sAddInfoId)){
		hide(activeAddInfoElement);
		resetAddInfoNavigation(activeAddInfoNavigation);
		activeAddInfoElement = null;
		activeAddInfoNavigation = null;
	} else {
		hide(activeAddInfoElement);
		resetAddInfoNavigation(activeAddInfoNavigation);
		activeAddInfoElement = getElement(sAddInfoId);
		getAddInfoNavigation(sId);
		activateAddInfoNavigation(activeAddInfoNavigation);
		refresh(sId);
		show(activeAddInfoElement);
	}
}

function getAddInfoNavigation(sId)
{
	var elm = getParentElement(getElement(sAddInfoPrefix+sId));
	var elmHeadline = elm.getElementsByTagName('div')[0];
	var elmNaviDiv = elmHeadline.getElementsByTagName('div')[1];
	var elmNaviA = elmNaviDiv.getElementsByTagName('a')[0];
	activeAddInfoNavigation = elmNaviA;
}

function activateAddInfoNavigation(obj)
{
	if (obj) {
		obj.className = "open";
		obj.title = sIconTitleMinimize;
	}
}

function resetAddInfoNavigation(obj)
{
	if (obj) {
		obj.className = "";
		obj.title = sIconTitleMaximize;
	}
}

function getParentElement(obj)
{
	if (obj.parentElement) {
		return obj.parentElement;
	} else if (obj.parentNode) {
		return obj.parentNode;
	}
}

/**************************************************/
/* ShortContact */



var sImagePath = "/img/pics/";
var sShortContactEmailId = "short-contact-email";
var sShortContactPhoneId = "short-contact-phone";
var sShortContactBranchId = "short-contact-branch";
var sTabNavEmailId = "tab-nav-email";
var sTabNavPhoneId = "tab-nav-phone";
var sTabNavBranchId = "tab-nav-branch";

function contactShowTab(sId) {

	if (getElement(sShortContactPhoneId)) {
		hide(getElement(sShortContactPhoneId));
		getElement(sTabNavPhoneId).src = sImagePath+sTabNavPhoneId+".gif";
	}

	if (getElement(sShortContactBranchId)) {
		hide(getElement(sShortContactBranchId));
		getElement(sTabNavBranchId).src = sImagePath+sTabNavBranchId+".gif";
	}

	if (getElement(sShortContactEmailId)) {
		hide(getElement(sShortContactEmailId));
		getElement(sTabNavEmailId).src = sImagePath+sTabNavEmailId+".gif";
	}

	getElement("tab-nav-"+sId).src = sImagePath+"tab-nav-"+sId+"-active.gif";
	contactActiveDiv = getElement("short-contact-"+sId);
	show(contactActiveDiv);
}

function setDefault(that, default_value) {
	if (that.value == default_value) {
		if(that.className.indexOf(' ') != -1) {
			that.className = that.className.replace(" label", "");
		} else {
			that.className = that.className.replace("label", "");
		}
		that.value = '';
	}
}

function resetDefault(that, default_value) {
	if (that.value == '') {
		if(that.className == '') {
			that.className = "label";
		} else {
			that.className += " label";
		}
		that.value = default_value;
	}
}

/**************************************************/
/*START: Fix IE 6 Text Selection Bug */
if (window.createPopup && document.compatMode && document.compatMode=="CSS1Compat") {
	document.onreadystatechange = function fixIE6AbsPos()
	{
		if( !document.body ) {
			return;
		}
		if( document.readyState == "complete" ) {
			document.body.style.height = document.documentElement.scrollHeight + 'px';
		}
	}
}
/*END: Fix IE 6 Text Selection Bug */
/**************************************************/
/**************************************************/
/*START: Marktuebersichts-portlet */

var sShortDaxId = "short-dax";
var sShortTecdaxId = "short-tecdax";
var sShortDowId = "short-dow";
var sTabNavDaxId = "tab-nav-dax";
var sTabNavTecdaxId = "tab-nav-tecdax";
var sTabNavDowId = "tab-nav-dow";

function ShortMG(sId) {

	if (getElement(sShortDaxId)) {
		hide(getElement(sShortDaxId));
		getElement(sTabNavDaxId).src = sImagePath+sTabNavDaxId+".gif";
	}

	if (getElement(sShortTecdaxId)) {
		hide(getElement(sShortTecdaxId));
		getElement(sTabNavTecdaxId).src = sImagePath+sTabNavTecdaxId+".gif";
	}

	if (getElement(sShortDowId)) {
		hide(getElement(sShortDowId));
		getElement(sTabNavDowId).src = sImagePath+sTabNavDowId+".gif";
	}

	getElement("tab-nav-"+sId).src = sImagePath+"tab-nav-"+sId+"-active.gif";
	contactActiveDiv = getElement("short-"+sId);
	show(contactActiveDiv);
}

/*START: Marktuebersichts-portlet */
/**************************************************/
/* Setzt den Eingabefokus für das angegebene Eingabefeld im angegebenen Formular */
function setFormFocus( formId, fieldId ) {
	if ( formId ) {
		var targetForm = document.forms[ formId ];
		if ( targetForm != null ) {
			var targetField;
			if ( fieldId ) {
				targetField = targetForm.elements[ fieldId ];
			}
			if ( targetField == null || !targetField.focus ) {
				for ( var elementIndex = 0; elementIndex < targetForm.elements.length; elementIndex++ ) {
					var current = targetForm.elements[elementIndex];
					if ( current.focus
								&& false == current.disabled
								&& 'none' != current.style.display ) {
						targetField = current;
						break;
					}
				}
			}
			if ( targetField != null && targetField.focus ) {
				try {
					targetField.focus();
				}
				catch ( ex ) {
				}
			}
		}
	}
}

/*START: regionen-karte */
/**************************************************/
var initStatesMap = function () {
        var statesMap = document.getElementsByTagName("map")["statesMap"];
        if (statesMap) {
          var statesImg = document.images["statesImg"];
          if (statesImg) {
            statesImg.className = "states script";
            var state = statesMap.firstChild;
            while (state) {
              state.onmouseover = function () {statesImg.className = "states script " + this.id;};
              state.onmouseout = function () {statesImg.className = "states script";};
              state.onfocus = state.onmouseover;
              state.onblur = state.onmouseout;
              state = state.nextSibling;
            }
          }
        }
      };

      if (window.addEventListener) {
        window.addEventListener("load",initStatesMap,true);
      } else if (window.attachEvent) {
        window.attachEvent("onload",initStatesMap);
      }

function showHideStandortPopUpBox(id, show, xpos, ypos)
{
 var isNewID = true;

 if (document.getElementById) var obj = document.getElementById(id);
 else if (document.all) var obj = document.all[id];
 else if (document.layers) var obj = getObjNN4(document,id);

 if(show == 1)
 {
  try
  {
   for (var i=0; i<document.getElementsByTagName("div").length; i++)
   {
    if (document.getElementsByTagName("div")[i].className == "standort-pop-up-box" && document.getElementsByTagName("div")[i].style.display == "block")
    {
     document.getElementsByTagName("div")[i].style.display = "none";
     if (document.getElementsByTagName("div")[i].id == id) { isNewID = false; } 
    }
   }
  } catch(e) {}
  if (isNewID)
  {
   obj.style.display = 'block';
   obj.style.left = xpos +'px';
   obj.style.top = ypos +'px';
  }
 }
 else
 {
 obj.style.display='none';
 }
}
/**************************************************/

/** Logout-Timer */
var counter = 600-1;

var to_win = "";
var timeout = "10:00";
var timeoutmessage = "Ihre Verbindung wurde automatisch beendet.";

function startTimer(){
	to_win = window.setInterval(timeoutCounter, 1000);
}

function timeoutCounter(){
	var empty = "";
	
	if(counter >= 60){
		var min = counter / 60;
		var sek = counter % 60;
		var mintext = Math.floor(min);
		if(sek < 10) empty = "0";
		timeout = "0" + mintext + ":" + empty + sek;
	}
	else{
		if(counter < 10) empty = "0";
		timeout = "00:" + empty + counter;
	}

	counter--;

	if(counter < 0){
		clearInterval(to_win);
		var message = document.getElementById("message");
		if (message != null) message.innerHTML = timeoutmessage;
	}
	
	var sessiontime = document.getElementById("sessiontime");
	if (sessiontime != null) sessiontime.innerHTML = timeout;
}


/* JS Namespace HVB */
var hvb = window.hvb || {};

/* Beginn Cookie */
hvb.cookie = {
	set : function (name, value, expires, path, domain, secure) {
	  var curCookie = name + "=" + escape(value) +
		  ((expires) ? "; expires=" + expires.toGMTString() : "") +
		  ((path) ? "; path=" + path : "") +
		  ((domain) ? "; domain=" + domain : "") +
		  ((secure) ? "; secure" : "");
	  document.cookie = curCookie;
	},

	get : function (name) {
	  var dc = document.cookie;
	  var prefix = name + "=";
	  var begin = dc.indexOf("; " + prefix);
	  if (begin == -1) {
		begin = dc.indexOf(prefix);
		if (begin != 0) return null;
	  }
	  else {
		begin += 2;
	  }
	  var end = document.cookie.indexOf(";", begin);
	  if (end == -1) {
		end = dc.length;
	  }
		return unescape(dc.substring(begin + prefix.length, end));
	},

	remove : function (name, path, domain) {
	  if (hvb.cookie.get(name)) {
		document.cookie = name + "=" +
		((path) ? "; path=" + path : "") +
		((domain) ? "; domain=" + domain : "") +
		"; expires=Thu, 01-Jan-70 00:00:01 GMT";
	  }
	}
}
/* Ende Cookie */ 

/* Beginn Schriftgroessen */
hvb.fontsize = {
	init : function ()
	{
		var fontsize = hvb.cookie.get("fontsize");
		if (fontsize) document.documentElement.className = fontsize;
	},
	
	change : function ()
	{
		var fontsize = "";
		switch (document.documentElement.className)
		{
			case "fontsize1":
				fontsize = "fontsize2";
				break;
			case "fontsize2":
				fontsize = "";
				break;
			default :
				fontsize = "fontsize1";
				break;
		}
		hvb.cookie.set("fontsize",fontsize,false,"/");
		document.documentElement.className = fontsize;
	}
}
/* Setze Fontsize direkt beim Laden */
hvb.fontsize.init();
/* Ende Schriftgroessen */

/* Start Omniture SpecialLinkTracking */
function addEvent( obj, type, fn )
{
	if (obj.addEventListener) {
		obj.addEventListener( type, fn, false );
	} else if (obj.attachEvent) {
		obj["e"+type+fn] = fn;
		obj[type+fn] = function() { obj["e"+type+fn]( window.event ); }
		obj.attachEvent( "on"+type, obj[type+fn] );
	}
}
/* Ende Omniture SpecialLinkTracking */