/*****************************************************************************/
/*  Schreibt im Fall von ?Print das Attribute von CSS src um
/*****************************************************************************/

var currentURL = window.location.search;
var partnerView = currentURL.search(/partnerView/);
if (partnerView != -1)
{
		var tag = document.getElementsByTagName("link")[0];
		var tagSource = tag.attributes[1];
		
		for (i=0; i< tag.attributes.length; i++ ) {
			if (tag.attributes[i].nodeValue == "/css/viessmann.css") {
				tag.attributes[i].nodeValue = "/css/viessmannPartner.css";
			}
		}
		tag.setAttributeNode(tagSource);
}

var printView = currentURL.search(/printView/);
if (printView != -1)
{
	window.print();
}




/*****************************************************************************/
/*  "Suchbegriff eingeben" wird entfernt, wenn man es mit der Maus aktiviert.
/*****************************************************************************/
function clearForm(currentObj) {
	var currentField = document.getElementById(currentObj.id);
	currentField.value = "";
}

/*****************************************************************************/
/*  Bilder werden gewechselt auf der Produkteseite
/*****************************************************************************/
function showDetailImg(imgId) {
	var i = 1;
	var prefix = "productImg"
	var activeImg = document.getElementById(prefix + imgId);

	if (activeImg == null) return;

	while(document.getElementById(prefix + i))  {
		document.getElementById(prefix + i).className = "imgSize3 passive";
		i++;
	}
	activeImg.className = "imgSize3 active";
	
	hideThumpImg (imgId);
}

/*****************************************************************************/
/*  Thumpnail-Bilder werden gewechselt auf der Produkteseite
/*****************************************************************************/
function hideThumpImg(imgId) {
	var i = 1;
	var prefix = "thumpProductImg"
	var activeImg = document.getElementById(prefix + imgId);

	while(document.getElementById(prefix + i))  {
		document.getElementById(prefix + i).className = "imgSize1 active";
		i++;
	}
	activeImg.className = "imgSize1 passive";
}

/*****************************************************************************/
/*  Sitemap Sublevel werden ein- oder ausgeblendet
/*****************************************************************************/
// Config: Name of classes
var activeClassName = "active";
var activeItemClassName = "activeItem";
// Preload images
var activeActionIcon = new Image();
var deactiveActionIcon = new Image();

function setImagePath(path){
	path = path.substring(0,path.lastIndexOf('/')+1);
	activeActionIcon.src = path + "icon_plus.gif";
	deactiveActionIcon.src = path + "icon_minus.gif";
}

// Firefox interpretiert Leerschläge und Zeilenumbrüche als #text
// IE kümmerts nicht
function getNextSibling(startBrother){
	endBrother = startBrother.nextSibling;
	while(endBrother!=null && endBrother.nodeType!=1){
		endBrother = endBrother.nextSibling;
	}
	return endBrother;
}

function getPrevSibling(startBrother){
	endBrother = startBrother.previousSibling;
	while(endBrother!=null && endBrother.nodeType!=1){
		endBrother = endBrother.previousSibling;
	}
	return endBrother;
}

function getFirstChild(startNode){
	endNode = startNode.firstChild;
	while(endNode!=null && endNode.nodeType!=1){
		endNode = endNode.nextSibling;
	}
	return endNode;
}

function removeClass(object, className)
{
	var lengthOfClassName = object.className.length;
	var positionOfClassName = object.className.indexOf(className);
	var tempClassName = "";
	
	if ((positionOfClassName == 0) && (className.length == lengthOfClassName))
	{
		// Active class is the only class value
		tempClassName = "";
	}
	else if (positionOfClassName == 0)
	{
		// Active class is a the beginning and has a spacer after it
		tempClassName = object.className.substring(positionOfClassName + className.length + 1);
	}
	else if ((positionOfClassName > 0) && (positionOfClassName + className.length == lengthOfClassName))
	{
		// Active class is at the end and has a spacer right before it
		tempClassName = object.className.substring(0, positionOfClassName - 1);
	}
	else 
	{
		// Active class stands somewhere in the class value
		tempClassName = object.className.substring(0, positionOfClassName) +
				object.className.substring(positionOfClassName + className.length + 1);
	}
	
	object.className = tempClassName;
}

function addClass(object, className) 
{
	if (object.className.indexOf(className) == -1)
	{
		object.className = object.className + " " + className;
		return true;
	}
	return false;
}

function subLevel(obj)
{
	var currentLinkItem = obj;
	var currentLevelItem = obj.parentNode;
	var subLevelItem = getNextSibling(currentLevelItem);

    setImagePath(getFirstChild(currentLinkItem).src);	

	if (subLevelItem)
	{
		if (currentLevelItem.className.indexOf(activeItemClassName) == -1)
		{
			try {
				getFirstChild(currentLinkItem).src = deactiveActionIcon.src; 
				addClass(currentLevelItem, activeItemClassName);
				addClass(subLevelItem, activeClassName);
			} catch (e) {}
		}
		else
		{
			try {
				removeClass(subLevelItem, activeClassName);
				removeClass(currentLevelItem, activeItemClassName)
				getFirstChild(currentLinkItem).src = activeActionIcon.src;
				closeSubLevels(subLevelItem);
			} catch (e) {}
		}
	}
	return false;
}

function subLevelAll()
{
  setImagePath(document.getElementById('topShadow').src);

  var childNodes_level1 = document.getElementById("sitemapList").childNodes;
  for(i=0; i < childNodes_level1.length; i= i + 2)
    {
      childNodes_level1[i].className = "sitemapItem level1 activeItem";
	  var attributes = childNodes_level1[i].firstChild.firstChild;
	  attributes.attributes["src"].nodeValue = deactiveActionIcon.src;
	}
    
  for(j=1; j < childNodes_level1.length; j = j + 2)
    {
      childNodes_level1[j].className = "sitemapItem level2 active";
      	
		var childNodes_level2_firstChild = childNodes_level1[j].firstChild;
      	var childNodes_level2 = childNodes_level2_firstChild.childNodes; 
		
		for(m=0; m < childNodes_level2.length - 1; m++)
			{
				
				if(childNodes_level2[m].className == "sitemapItem" && childNodes_level2[m+1].className == "sitemapItem level3")
					{
						childNodes_level2[m].className = "sitemapItem activeItem";
						
						var attributes = childNodes_level2[m].firstChild.firstChild;
	  					attributes.attributes["src"].nodeValue = deactiveActionIcon.src;
	
						{childNodes_level2[m+1].className = "sitemapItem level3 active";}
					}
					
			}
		
    }
}


function closeSubLevels(obj)
{
	
	var subLevelItem = obj;
	var subLevelList = null;

    setImagePath(getFirstChild(obj).src, img_path);
	
	// Get SubLevelList
	if (obj)
	{
		subLevelList = getFirstChild(obj);
		if (subLevelList)
		{
			// Run through list and close all siblings
			var listItem = getFirstChild(subLevelList);
			while (listItem != null)
			{
				if (listItem.className.indexOf(activeItemClassName) != -1)
				{
					try {
						// If List Item is marked as active, close it
						removeClass(listItem, activeItemClassName);
						getFirstChild(getFirstChild(listItem)).src = activeActionIcon.src;
					} catch (e) {}
				}
				else if(listItem.className.indexOf(activeClassName) != -1)
				{
					try {
						// If ListItem is marked as active and is a Sub Level Item, close it recursively
						removeClass(listItem, activeClassName);
						closeSubLevels(listItem);
					} catch (e) {}
				}
				
				// Get next Sibling
				listItem = getNextSibling(listItem)
			}
		}
	}
}

function closeSubLevelsAll()
{

setImagePath(document.getElementById('topShadow').src);

var childNodes_level1 = document.getElementById("sitemapList").childNodes;
  for(i=0; i < childNodes_level1.length; i= i + 2)
    {
      childNodes_level1[i].className = "sitemapItem level1";
	  var attributes = childNodes_level1[i].firstChild.firstChild;
	  attributes.attributes["src"].nodeValue = activeActionIcon.src;
	}
    
  for(j=1; j < childNodes_level1.length; j = j + 2)
    {
      childNodes_level1[j].className = "sitemapItem level2";
      	
		var childNodes_level2_firstChild = childNodes_level1[j].firstChild;
      	var childNodes_level2 = childNodes_level2_firstChild.childNodes; 
		
		for(m=0; m < childNodes_level2.length - 1; m++)
			{
				
				if(childNodes_level2[m].className == "sitemapItem activeItem" && childNodes_level2[m+1].className == "sitemapItem level3 active")
					{
						childNodes_level2[m].className = "sitemapItem";
						
						var attributes = childNodes_level2[m].firstChild.firstChild;
	  					attributes.attributes["src"].nodeValue = activeActionIcon.src;
	
						{childNodes_level2[m+1].className = "sitemapItem level3";}
					}
					
			}
		
    }
}

/*****************************************************************************/
/*  Link für PopUp Window
/*****************************************************************************/
function popUp(ref, windowName, properties) {
	newWindow = window.open(ref,windowName,properties);
	newWindow.focus();
}

/*****************************************************************************/
/*  Link für Zentriertes-PopUp Window
/*****************************************************************************/
function popUpCentered(ref, windowName, width, height, scrollbars, resizable) {
	if (scrollbars == "") scrollbars = "yes";
	var str = "scrollbars="+scrollbars+",resizable="+ resizable +",width="+width+",height="+height;
	if (window.screen) {
		var ah = screen.availHeight - 50;
		var aw = screen.availWidth - 10;
		var top = (ah - height) / 2;
		var left = (aw - width) / 2;
		str += ",top="+top+",left="+left;
	}
	popUp(ref, windowName, str);
}

/*****************************************************************************/
/*  Link für Fullscreen-PopUp Window
/*****************************************************************************/
function WinOpenFull(WinName,url) {
    var str = "left=0,screenX=0,top=0,screenY=0,toolbar=no,menubar=no,scrollbars=yes,status=yes,resizable";
    if(window.screen) {
      var ah = screen.availHeight - 50;
      var aw = screen.availWidth - 10;
      str += ",height=" + ah;
      str += ",innerHeight=" + ah;
      str += ",width=" + aw;
      str += ",innerWidth=" + aw;
    }
    win=window.open(url, "w", str);
    win.focus();
}
/*****************************************************************************/
/*  src für Iframe wird gesetzt
/*	Layer "Weiterempfehlung" wird ein und ausgeblendet
/*****************************************************************************/
function recommendation(rec_url) {
	var iframeObject = document.getElementById("recommendIframe");
	var layerObj = document.getElementById("recommend");
	var rec_url = rec_url;

	if (iframeObject && layerObj) {
		if (layerObj.className == "passive")	{
			var iframeSource = document.createAttribute("src");
			iframeSource.nodeValue = rec_url;
 			iframeObject.setAttributeNode(iframeSource);
			
			layerObj.className = "active";
		}
		
		else {
			layerObj.className = "passive";
		}
	}
}
/*****************************************************************************/
/*  Focus auf ein bestimmtes Element setzen
/*****************************************************************************/
function setFocus(formIndex, elementName) {
	if (document.forms.length > 0) {
		document.forms[formIndex].elements[elementName].focus();
	}
}

/*****************************************************************************/
/*  set Bookmark for IE and Firefox
/*****************************************************************************/
function setBookmark(b_text) {
	var browser = navigator.appName;
	var text = b_text;

	if(browser=="Netscape"){
		
	window.sidebar.addPanel(text,window.location.href, '');
}

	if(browser=="Microsoft Internet Explorer"){
	window.external.AddFavorite(window.location.href,text);

}
}

/*****************************************************************************/
/*  check pageUpSibling Prüft ob das vorherige Element ein PageUp ist
/*****************************************************************************/
function pageUpSibling() {
	var lastParagraph = document.getElementsByTagName("p").length;
	var pageUpParagraph = document.getElementsByTagName("p")[lastParagraph -1];
	var prevSibling = getPrevSibling(pageUpParagraph);
	if (prevSibling.className == "pageControll pageBack") {
		
		newPageUp = prevSibling.cloneNode(true);
		pageUpParagraph.insertBefore(newPageUp, pageUpParagraph.nextSibling);
		prevSibling.style.display = "none";
		//pageUpParagraph.className = "pageControll pageUpModified";
	}
}

/*****************************************************************************/
/*  wechselt die Sichtbarkeit zweier Elemente
/*  Elemente werden anhand ihrer style id identifiziert
/*****************************************************************************/
function switchElementsDisplay( oldId, newId ) {
	var oldObj = document.getElementById( oldId );
	var newObj = document.getElementById( newId );
	oldObj.style.display = "none";
	newObj.style.display = "";
}