/***********************************************************
functions.js
------------------------------------------------------------
History 27.08.2004 created by Janek v. Kaler JvK WebProducts

------------------------------------------------------------
Include Depedency:

***********************************************************/

// function get_umlaute

function get_umlaute(sString)
{
	var sNewString = sString;
	
	sNewString = sNewString.replace(/=ae/,"&auml;"); 
	sNewString = sNewString.replace(/=oe/,"&ouml;"); 
	sNewString = sNewString.replace(/=ue/,"&uuml;"); 
	sNewString = sNewString.replace(/=Ae/,"&Auml;"); 
	sNewString = sNewString.replace(/=Oe/,"&Ouml;"); 
	sNewString = sNewString.replace(/=Ue/,"&Uuml;"); 
	sNewString = sNewString.replace(/=sz/,"&szlig;");
	sNewString = sNewString.replace(/=und/,"&amp;");
	sNewString = sNewString.replace(/=7/,"&frasl;");
	sNewString = sNewString.replace(/=f/,"?");
	
	sNewString = sNewString.replace(/=apos/,"'");	
	sNewString = sNewString.replace(/=i/,"&acute;");
	sNewString = sNewString.replace(/=dp/,":");
	//sNewString = sNewString.replace(/-/,"");

	
	return sNewString; 
}

// Funktion zum überprüfen ob ein Datum vorbei ist

function isDate_over(strDay, strMonth, strFullYear)
{
	var objJetzt = new Date();
	//var strDate = Date.parse("");
	//if (objJetzt.getDate()  str)
	alert(strDate);
	//return true;
}


// Funktion zum schreiben von Text buchstabenweise
// 150 € 
function write_word(sString,sItemname)
{
	var objI;	
	var sInnerText;
	
	objI = document.getElementById(sItemname);

	if (sString.length > 0)
	{
		sInnerText = objI.innerText;
		objI.innerText = sInnerText + sString.substr(0,1);
		window.setTimeout("write_word('" + sString.substr(1) + "','" + sItemname + "')",100);
	}
	//return "";
}

function write_word_id(sItemname)
{
	var objI;	
	var sInnerText;
	
	objI = document.getElementById(sItemname);
	
	if (navigator.appName == "Microsoft Internet Explorer")
	{
		sInnerText = objI.innerText;
		objI.innerText = "";
		objI.style.display = "inline";
	
		write_word(sInnerText,sItemname);
	}
	else
	{
		objI.style.display = "inline";		
	}	
}


// Slideshow die BildId = img_sImg alle Bilder dazu haben den Namen sImg + _0i.jpg
// 50 €
function slideshow(sImg, iNumber, iMax, iTime)
{
	var obj_img;
	var sImgsrc;
	
	obj_img = document.getElementById('img_' + sImg);
	sImgsrc = sImg + "_0" + iNumber + ".jpg";
	obj_img.src = "../../../images/" + sImgsrc;
	if (iNumber<iMax)
	{
		iNumber = iNumber + 1;
	}
	else
	{
		iNumber = 1;
	}
	window.setTimeout("slideshow('" + sImg + "'," + iNumber + "," + iMax + ", " + iTime + ")", iTime);
}

// Anzeigen eines Objektes

function showItem (sItem)
{
	var objItem;
	
	objItem = document.getElementById(sItem);
	
	objItem.style.display = "inline";
}

// Verbergen eines Objektes
function hideItem(sItem)
{
	var objItem;
	objItem = document.getElementById(sItem);
	
	objItem.style.display = "none";
}

//Für mehere Objekte
function onoffItem(sItem,iAnzahl,sOnOff)
{
	var sItemName;
	
	for (var i = 1;i<=iAnzahl;i++)
	{
		sItemName = sItem + i;
		switch (sOnOff)
		{
			case "on":
			{
				showItem(sItemName);
				break;
			}
			case "off":
			{
				hideItem(sItemName);
				break;
			}
		}
	}
}


// Anzeigen eines Bildes in einem Img-Tag

function showImg (sImg, sTarget)
{
	var objDivImg;
	var objImg;

	
	objDivImg = document.getElementById("div_" + sTarget);
	objImg = document.getElementById(sTarget);
	
	objDivImg.style.display = "inline";
	objImg.src = sImg;
}

//Auf und zu klappen eines Anzeigeelementes (Div) zum Klicken
//sDivPosition ob rechts oder link ausgerichtet
// Style Eigenschaften auf die zugegriffen werden soll müssen im HTML deklariert werden.
// hierbei müssen die orginalen Positionen angegeben werden
// 100 €
function openclose (iSpeed, sId, sDivPosition , iDivHeight, iDivWidth, sOpenClose, sDirection)
{
	var objDiv;
	var objA;
	var iShow;
	var opencloseId;
	
	objDiv = document.getElementById("div_" + sId);
  objA = document.getElementById("a_" + sId);
  var bOpenClose;
  
	switch (sOpenClose)
	{
		case "open":
		{
			if (objDiv.alt >= iDivWidth)
			{//Bewegung beenden
				bOpenClose = false;
			}
			else
			{
				bOpenClose = true;
				switch (sDirection)
				{
					case "left":
					{	
						if ((objDiv.style.display == "none") || (objDiv.style.display == ""))
						{
							switch (sDivPosition)
							{
								case "left":
								{
									objDiv.style.left = parseInt(objDiv.style.left) + iDivWidth; // Linke Position um Breite nach recht verschieben
									break;
								}
								case "right":
								{
									objDiv.style.right = parseInt(objDiv.style.right) - iDivWidth; // Rechte Position um Breite nach recht verschieben
									break;
								}
							}
							objDiv.style.clip = "rect(0, 0," + iDivHeight + ", 0)";
							objDiv.alt = 0;
							objDiv.style.display = "inline";
						}
						switch (sDivPosition)
						{
							case "right":
							{
								objDiv.style.right = parseInt(objDiv.style.right) + 1;
								break;
							}
							case "left":
							{
								objDiv.style.left = parseInt(objDiv.style.left) - 1;
								break;
							}
						}
						objDiv.alt = objDiv.alt + 1;
						iShow = objDiv.alt;
						objDiv.style.clip = "rect(0," + iShow + "," + iDivHeight + ", 0)";
						break; // Bewegungsrichting left
					}
					case "right":
					{	
						if ((objDiv.style.display == "none") || (objDiv.style.display == ""))
						{
							switch (sDivPosition)
							{
								case "left":
								{
									objDiv.style.left = parseInt(objDiv.style.left) - iDivWidth; // Linke Position um Breite nach links verschieben
									break;
								}
								case "right":
								{
									objDiv.style.right = parseInt(objDiv.style.right) + iDivWidth; // Rechte Position um Breite nach links verschieben
									break;
								}
							}
							objDiv.style.clip = "rect(0," + iDivWidth + "," + iDivHeight + "," + iDivWidth + ")";
							objDiv.alt = 0;
							objDiv.style.display = "inline";
						}
						switch (sDivPosition)
						{
							case "right":
							{
								objDiv.style.right = parseInt(objDiv.style.right) - 1;
								break;
							}
							case "left":
							{
								objDiv.style.left = parseInt(objDiv.style.left) + 1;
								break;
							}
						}
						objDiv.alt = objDiv.alt + 1;
						iShow = iDivWidth - objDiv.alt;
						objDiv.style.clip = "rect(0," + iDivWidth + "," + iDivHeight + "," + iShow + ")";
						break; // Bewegungsrichting right
					}
				}
			}
			break; // open
		}	
		case "close":
		{
			if (!(objDiv.style.display == "inline"))  // Nicht schliessen wenn es das Objekt noch nicht offen ist.
			{//Bewegung beenden
				objDiv.style.display = "none";
				bOpenClose = false;
			}
			else
			{
				switch (sDirection)
				{
					case "left":
					{	
						if (objDiv.alt <= 0)
						{
							switch (sDivPosition)
							{
								case "left":
								{
									objDiv.style.left = parseInt(objDiv.style.left) - iDivWidth; // Linke Position zurücksetzten
									break;
								}
								case "right":
								{
									objDiv.style.right = parseInt(objDiv.style.right) + iDivWidth; // Rechte Position zurücksetzten
									break;
								}
							}
							objDiv.style.display = "none";
							bOpenClose = false;
						}
						else
						{
							bOpenClose = true;
							switch (sDivPosition)
							{
								case "right":
								{
									objDiv.style.right = parseInt(objDiv.style.right) - 1;
									break;
								}
								case "left":
								{
									objDiv.style.left = parseInt(objDiv.style.left) + 1;
									break;
								}
							}
							objDiv.alt = objDiv.alt - 1;
							iShow = objDiv.alt;
							objDiv.style.clip = "rect(0," + iShow + "," + iDivHeight + ", 0)";
						}
						break; // Bewegungsrichting left
					}
					case "right":
					{	
						if (objDiv.alt <= 0)
						{
							switch (sDivPosition)
							{
								case "left":
								{
									objDiv.style.left = parseInt(objDiv.style.left) + iDivWidth; // Linke Position zurücksetzten
									break;
								}
								case "right":
								{
									objDiv.style.right = parseInt(objDiv.style.right) - iDivWidth; // Rechte Position zurücksetzten
									break;
								}
							}							
							objDiv.style.display = "none";
							bOpenClose = false;
						}
						else
						{
							bOpenClose = true;
							switch (sDivPosition)
							{
								case "right":
								{
									objDiv.style.right = parseInt(objDiv.style.right) + 1;
									break;
								}
								case "left":
								{
									objDiv.style.left = parseInt(objDiv.style.left) - 1;
									break;
								}
							}
							objDiv.alt = objDiv.alt - 1;
							iShow = iDivWidth - objDiv.alt;
							objDiv.style.clip = "rect(0," + iDivWidth + "," + iDivHeight + "," + iShow + ")";
						}
						break; // Bewegungsrichting right
					}
				}
			}
			break; // close
		}
	}
	if (bOpenClose)
	{
		opencloseId = window.setTimeout("openclose(" + iSpeed + ",'" + sId + "','" + sDivPosition + "'," + iDivHeight + "," + iDivWidth + ",'" + sOpenClose + "','" + sDirection + "')", iSpeed);
	}
}

// Bewegen eines Div nach links oder rechts einer bestimmten Weite ohne auf die Aussenbereiche zu achten

function movediv (iSpeed, sFramename, sDivId, iWidth, sDirection, sDivPosition)
{
	var objDiv;
	var run;
	
	if (sFramename != "")
	{
		objDiv = parent.content.document.getElementById(sDivId);
	}
	else
	{
		objDiv = document.getElementById(sDivId);
	}
	if (objDiv.title == "")
	{
		objDiv.title = sDirection;
	}
	if (objDiv.title == sDirection) //Um zu verhindern, dass ein richtungswechsel stattfindet
	{
		if (objDiv.alt >= iWidth)
		{// Bewegung beenden
			objDiv.alt = 0;
			objDiv.title = "";
			return "true";
		}
		else
		{
			if (!objDiv.alt)
			{
				objDiv.alt = 0; // initialisieren
			}
			// Wenn der Rest der Divbreite kleiner als die zu bewegende Pixelanzahl ist
			if ((iWidth-objDiv.alt)<iSpeed)
			{
				iSpeed = iWidth-objDiv.alt;
			} 
			objDiv.alt = objDiv.alt + iSpeed;
			switch (sDirection)
			{
				case "left":
				{
					switch (sDivPosition)
					{
						case "left":
						{
							objDiv.style.left = parseInt(objDiv.style.left) - iSpeed;
							break;
						}
						case "right":
						{
							objDiv.style.right = parseInt(objDiv.style.right) + iSpeed;
							break;
						}
					}
					break; //Bewegungsrichtung left
				}
				case "right":
				{
					switch (sDivPosition)
					{
						case "left":
						{
							objDiv.style.left = parseInt(objDiv.style.left) + iSpeed;
							break;
						}
						case "right":
						{
							objDiv.style.right = parseInt(objDiv.style.right) - iSpeed;
							break;
						}
					}
					break; //Bewegungsrichtung right
				}
			}
			run = window.setTimeout("movediv(" + iSpeed + ",'" + sFramename + "','" + sDivId + "'," + iWidth + ",'" + sDirection +"','" + sDivPosition + "')", 25);
		} // if Bewegung beenden
	} // if Richtungswechsel
	else 
	{
		return false;
	}
}


// Bildlaufleiste zum Auswählen und vergrößern von Bildern 
// Variable zum anhalten der Funktion
// 150 €

var onoffImgscrollframe;
var bScrolling;

// iSpeed = 0 heißt Stop!
// erster Aufruf mit iPos = 0
// Style Eigenschaften auf die zugegriffen werden soll müssen im HTML deklariert werden.
function imgscrollframe (iFrames, iSpeed, iFramesWidth , sFrame, sMainFrame)
{
	var bReplaceFirstFrame;
	var objDivFrame;
	var objDivFirstFrame;

	
	objDivMain = document.getElementById(sMainFrame);
	sDivFrame = sFrame + "_0";
	
	if (iSpeed == 0)
	{
		bScrolling = false;
		window.clearInterval(onoffImgscrollframe);
	}
	else
	{
		for (i=1;i<=iFrames;i++)
		{
			objDivFrame = document.getElementById(sDivFrame + i);
			
			if (parseInt(objDivFrame.style.left) < 0)																			// Ist das erste Bild links aus dem Rahmen?
			{																
				
				objDivFrame.style.width = parseInt(objDivFrame.style.width) -1;
				objDivFrame.style.backgroundPosition = parseInt(objDivFrame.style.backgroundPosition) -1;
				//alert(parseInt(objDivFrame.style.backgroundPosition));
				if (parseInt(objDivFrame.style.width) == 0)  // Ist das erste Bild koplett links weg?
				{
					objDivFrame.style.width = iFramesWidth;
					objDivFrame.style.backgroundPosition = 0;
					objDivFirstFrame = objDivFrame;
					bReplaceFirstFrame = true;
				}
			}	
			else
			{
				objDivFrame.style.left = parseInt(objDivFrame.style.left) - 1;
				if (parseInt(objDivFrame.style.left) < (parseInt(objDivMain.style.width)))
				{
					if (parseInt(objDivFrame.style.width) < iFramesWidth)
					{
						objDivFrame.style.width = parseInt(objDivFrame.style.width) + 1;
					}
				}
				
			} 
		} 
		if (bReplaceFirstFrame)																													// Setzen des ersten Bildes ans Ende der Liste
		{
			objDivFirstFrame.style.width = 0;
			objDivFirstFrame.style.left = iFramesWidth * (iFrames -1) -1;
		}
		if (bScrolling == true)
		{}
		else
		{
			bScrolling = true;
			onoffImgscrollframe = window.setInterval("imgscrollframe(" + iFrames + "," + iSpeed + "," + iFramesWidth + ", '" + sFrame + "', '" + sMainFrame + "')", iSpeed);
		}
	}
}

//Funktion zum Erzeugen eines Tickers Ticker läuft in einer "Box" "div_ticker"
// 50 €

//ACHTUNG TickerText darf keine Kodierten Zeichen enthalten.

var TickerInterval;
var gstrTickerText;
function ticker()
{
	var objDiv;
	var lenght;
	
	objDiv = document.getElementById("div_ticker");
	lenght = objDiv.innerHTML.length * 9;
	if (!parseInt(objDiv.style.marginLeft))
	{
		objDiv.style.marginLeft = 0;
	}
	if(parseInt(objDiv.style.marginLeft) > lenght*-1)
		{ 		
			//alert(parseInt(objDiv.style.marginLeft));
			objDiv.style.marginLeft = parseInt(objDiv.style.marginLeft) - 1;
		}
	else
		{
			objDiv.style.marginLeft = 0;
			window.clearInterval(TickerInterval);
			startTicker(gstrTickerText); 
		}
	
}
function startTicker(strTickerText)
{
	var objDiv;
	var aTickerText; 
	var strTickerTextLine;
	
	objDiv = document.getElementById("div_ticker");
	
	gstrTickerText = strTickerText;
	
	aTickerText = strTickerText.split("/n");
	for (i=0;i<aTickerText.length;i++)
	{
		if ((trim(aTickerText[i]) == trim(objDiv.innerHTML)) && !(i == aTickerText.length-1))
		{
			
			strTickerTextLine = aTickerText[i+1];
			break;
		}
		else
		{
			strTickerTextLine = aTickerText[0];
		}
	} 
	
	
	objDiv.innerHTML = strTickerTextLine;
	window.setTimeout("TickerInterval = window.setInterval('ticker()',10);",1000);
}

// Funktion zum bewegen von Bildern von links nach rechts und umgekehrt
// _2.gif wechsel der Blickrichtung
// Kontainer
//		<div id="div_box" style="width:50px">
//			<div id="div_auto" style="left:100;position:relative;top:-50px">
//				<img id="img_auto" src="../../images/auto_2.gif">
//			</div>
//		</div>
// Die Ebene gibt an wie weit der Images-Folder entfernt ist "../"

	function scroll_img(sEbene, sName, iBreite, sRichtung, iSpeed)
	{
		var sDiv;
		var sImg;
		var objDiv;
		var objImg;
		
		sDiv = "div_" + sName;
		sImg = "img_" + sName;
		objDiv = document.getElementById(sDiv);
		objImg = document.getElementById(sImg);
		
		if (sRichtung == "nachrechts")
		{
			if (parseInt(objDiv.style.left) < iBreite)
			{
				objDiv.style.left = parseInt(objDiv.style.left) + 1;
				window.setTimeout("scroll_img('" + sEbene + "','" + sName + "','" + iBreite + "','nachrechts')",iSpeed);
			}
			else
			{
				objImg.src = sEbene+ "images/" + sName + ".gif";
				window.setTimeout("scroll_img('" + sEbene + "','" + sName + "','" + iBreite + "','nachlinks')",iSpeed);
			}
		}
		else
		{
			if (parseInt(objDiv.style.left) > 0)
			{
				objDiv.style.left = parseInt(objDiv.style.left) - 1;				
				window.setTimeout("scroll_img('" + sEbene + "','" + sName + "','" + iBreite + "','nachlinks')",iSpeed);
			}
			else
			{
				objImg.src = sEbene + "images/" + sName + "_2.gif";
				window.setTimeout("scroll_img('" + sEbene + "','" + sName + "','" + iBreite + "','nachrechts')",iSpeed);
			}
		}
	}



//functionen zum Bilderwechsel bei Thie Dental-Studio

	function change_pic(sPicname)
	{
		var objImg;
		var sPicbefore;
		
		//alert(sPicname);
		objImg = document.getElementById('img_nav');
		sPicbefore = objImg.src;
		objImg.src = "../images/" + sPicname + ".jpg";
		if (sPicname == "Das_Umweltsiegel")
		{
			objDiv = document.getElementById('div_img_rahmen');
			objDiv.style.display = "none"; 
			bUmweltsiegel = true;
		}
		else
		{
			objDiv = document.getElementById('div_img_rahmen');
			objDiv.style.display = "inline"; 
			bUmweltsiegel = false;
		}
	}

	function normal_pic()
	{
		var objImg;
		
		objImg = document.getElementById('img_nav');
		if (bUmweltsiegel && !bUmweltsiegel_clicked)
		{
			objDiv = document.getElementById('div_img_rahmen');
			objDiv.style.display = "inline"; 
		}
		if (bUmweltsiegel_clicked)
		{
			objDiv = document.getElementById('div_img_rahmen');
			objDiv.style.display = "none"; 
		}
		objImg.src = sPicbefore;
	}

	function clicked_pic()	
	{
		var objImg;
		var sPicbefore;
		
		objImg = document.getElementById('img_nav');
		sPicbefore = objImg.src;
		if (bUmweltsiegel)
		{
			bUmweltsiegel_clicked = true;
		}
		else
		{
			bUmweltsiegel_clicked = false;
		}
	}


// Funktionen zum setzen von CSS Klassennamen von Objekten F3

function setAllClassnames (sObjId, iAnzahl, sClassnameFirst, sClassnameLast)
{
	var objObj;
	var sObjIdName;
	var sClassname;

	for (i=1;i<=iAnzahl;i++)
	{
		sObjIdName = sObjId + i;
		if (sClassnameLast)
		{
			sClassname = sClassnameFirst + i + sClassnameLast;
		}
		else
		{
			sClassname = sClassnameFirst;
		}
		objObj = document.getElementById(sObjIdName);
		if (objObj==null)
		{}
		else
		{
			objObj.className = sClassname;
		}
	}	
}

function setClassname (sObjId, sClassname)
{
	var objObj;
	
	objObj = document.getElementById(sObjId);
	objObj.className = sClassname;
}


// End F3



function trim(str)
{
	while(str.substring(0,1)==' ')str=str.substring(1,str.length);
	while(str.substring(str.length-1,str.length)==' ')str=str.substring(0,str.length-1);
	return str;
}
