xMousePos = 0; // Horizontal position of the mouse on the screen
yMousePos = 0; // Vertical position of the mouse on the screen
xMousePosMax = 0; // Width of the page
yMousePosMax = 0; // Height of the page
infoElement= null; // node of the Div-Layer that shows the information
xFromMouse=0;
yFromMouse=0;
yUpFromMouse=0;
standardStyle='position:absolute;left:0px;top:0px;width:220px;visibility:hidden;text-align:left;z-index:99999;';
vars=new Object();
vars.tags=[ 'a' ]; // array of tag-names that should provide information
vars.infoAttributeName= 'info'; // in the tags the attribute that contains the text to show     
vars.infoElementCentered= true; // centered relative to mouse-pointer
vars.infoElementId=null; // use this div-Tag for the id to show information, null->create new one
vars.infoElementStyleClass=null; // use this CSS-class if no Id is defined, do not forget padding    
vars.infoElementFontSize= '11px'; // use if no Id and no CSS-class is defined
vars.infoElementTextColor='#5d5d5d';
vars.infoElementBGColor= '#E9E8E4';// // use if no Id and no CSS-class is definded

infoSettings={    infoElementBGColor:"#FFFDE8",infoElementTextColor:"#000000" };

function setVariables(){
var settings= window.infoSettings;
// infoSettings is optional object that contains user variables
// insert infoSettings before adding link to this js-file
if(settings==null){
// default values are used                       
} else {
for(var varName in settings){
if(settings[varName]!=null)
vars[varName]= settings[varName];         
}
}           
};
setVariables();   
begin();

function begin(){ 
attachInfoElement();
installTagListeners();
oldOnmousemove= document.onmousemove;
if (document.all) { // Internet Explorer
yFromMouse=-5;
xFromMouse=-10;
document.onmousemove = captureMousePosition;     
} else if (document.getElementById) { // Netcsape 6 + Mozilla
yFromMouse=-5;
xFromMouse=-10;
document.onmousemove = captureMousePosition;                 
}
}

function captureMousePosition(e) {
if (document.documentElement&& window.event&& document.documentElement.clientWidth>0){
// IE6 (sometimes)
xMousePos = window.event.x+ document.documentElement.scrollLeft; 
yMousePos = window.event.y+document.documentElement.scrollTop;
xMousePosMax = document.documentElement.clientWidth+document.documentElement.scrollLeft;
yMousePosMax = document.documentElement.clientHeight+document.documentElement.scrollTop-12;                  
} else if (document.all) {
// When the page scrolls in IE, the event's mouse position
// reflects the position from the top/left of the screen the
// user is looking at. scrollLeft/Top is the amount the user
// has scrolled into the page. clientWidth/Height is the height/
// width of the current page the user is looking at. So, to be
// consistent with Netscape (above), add the scroll offsets to
// both so we end up with an absolute value on the page, no
// matter if the user has scrolled or not.        
xMousePos = window.event.x+document.body.scrollLeft;
yMousePos = window.event.y+document.body.scrollTop;
xMousePosMax = document.body.clientWidth+document.body.scrollLeft;
yMousePosMax = document.body.clientHeight+document.body.scrollTop;
} else if (document.getElementById) {
// Netscape 6 behaves the same as Netscape 4 in this regard
xMousePos = e.pageX;
yMousePos = e.pageY;
xMousePosMax = window.innerWidth+window.pageXOffset;
yMousePosMax = window.innerHeight+window.pageYOffset;
}
moveElements();           
if(oldOnmousemove!=null){                   
oldOnmousemove(e);
}
}

function out(string){
var outDiv=document.getElementById('out')
if(outDiv!=null) outDiv.firstChild.nodeValue+=string+" ";
}

function moveElements(){
moveInfoElement();
}

function attachInfoElement(){
var str='<div style="'+standardStyle+'" id="';
if(vars.infoElementId!=null &&vars.infoElementId.length>0){
str+= vars.infoElementId+'" ';                  
} else {
vars.infoElementId='infoElement';
str+= vars.infoElementId+'"';       
if(vars.infoElementStyleClass!=null && vars.infoElementStyleClass.length>0){
str+= ' class="'+vars.infoElementStyleClass+'" ';                         
} else {
str+=' class="'+vars.infoElementId+'" ';
var sty='<style type="text/css"><!--';
sty+=('#'+vars.infoElementId+' {');
sty+=('background-color: '+vars.infoElementBGColor+';'); 
sty+='color:'+vars.infoElementTextColor+';';
sty+=('border: 1px solid #B6B6B6;');
sty+=('font-size: '+vars.infoElementFontSize+';');
sty+=('font-family: Arial, Helvetica, sans-serif;');
sty+='padding:2px;';
sty+=('} --></style>');                             
document.writeln(sty);
}
}           
str+=' > </div>'  
out(str);
document.writeln(str);  
}

function installTagListeners(delayTime){
infoElement=document.getElementById(vars.infoElementId);
if(infoElement==null){} else {                
for(var k=0; k<vars.tags.length; k++){                
var links=document.getElementsByTagName( vars.tags[k].toUpperCase());
for(var i=0;links!=null&&i<links.length;i++){                                             
var node= links[i];
var infoText=node.getAttribute(vars.infoAttributeName); 
if(infoText!=null && infoText.length > 0&& node.infoText_==null){
node.infoText_= infoText;
// the _ is used to avoid name conflicts with the attributes of the user
node.style.cursor='pointer';
if(node.onmouseover==null){
node.onmouseover= showInfo;                                                   
} else {
node.oldOnmouseover= node.onmouseover;
node.newOnmouseover= showInfo;
node.onmouseover= function(){
this.newOnmouseover();
this.oldOnmouseover();
}
}
if(node.onmouseout==null){
node.onmouseout= hideInfo;                                                     
} else {
node.oldOnmouseout= node.onmouseout;
node.newOnmouseout= hideInfo;
node.onmouseout= function(){
this.newOnmouseout();
this.oldOnmouseout();
}
}
}
}
}
}           
if(delayTime==null)
delayTime=0;
if(delayTime < 2){
delayTime+=0.2;
}           
setTimeout('installTagListeners('+delayTime+')',delayTime*1000); 
}

function moveInfoElement(){       
if(infoElement ==null){
//out('infoElement=null ');
//alert('infoElement=null');
//infoElement=1;
} else if(infoElement.style.visibility != 'hidden'){               
var x=xFromMouse+xMousePos;
if(vars.infoElementCentered==true){
x-=1*infoElement.offsetWidth;                         
}
//out(' width: '+infoElement.offsetWidth+' x: '+x+' fx: '+(x+infoElement.offsetWidth)+' |||');
if(xMousePosMax>0 && x+ infoElement.offsetWidth> xMousePosMax-20){
x= xMousePosMax-20- infoElement.offsetWidth;                        
}
if(x<5){
x=5;
}                       
var y=yFromMouse+yMousePos;
if(yMousePosMax>0 && y+ infoElement.offsetHeight> yMousePosMax){
y-= yFromMouse+yUpFromMouse;
}                       
infoElement.style.left=x+'px'; 
infoElement.style.top=y+'px';                 
} 
}
function setInfoText(text){                                
var subtext='';
for(var i=0;i<text.length;++i){                  
if(text.substr(i,4)=='<br>'){                                 
infoElement.appendChild(document.createTextNode(subtext));
infoElement.appendChild(document.createElement('br'));
subtext='';
i+=3;
} else {
subtext=subtext+text.charAt(i)
}
}           
infoElement.appendChild(document.createTextNode(subtext));               
}

function unsetInfoText(){
while(infoElement.hasChildNodes()){
infoElement.removeChild(infoElement.lastChild);
}           
}

function showInfo(){                   
unsetInfoText();
infoElement.left='0px';
infoElement.top='0px';
setInfoText(this.infoText_);                   
infoElement.style.visibility='visible';
moveInfoElement();                               
}

function hideInfo(){                     
infoElement.style.visibility='hidden';
unsetInfoText(); 
}

function SwitchAusz(){
switch (document.getElementById("Ausz_Art").value) {
case "0":
document.getElementById("TR_Ausz_MaxKreditbetrag").style.display = "none";
document.getElementById("TR_Ausz_Zeitraum3").style.display = "none";

document.getElementById("TR_Ausz_MonKreditbetrag1").style.display = "";
document.getElementById("TR_Ausz_MonKreditbetrag2").style.display = "";
document.getElementById("TR_Ausz_Zeitraum1").style.display = "";
document.getElementById("TR_Ausz_Zeitraum2").style.display = "";
break;
case "1": 
document.getElementById("TR_Ausz_MonKreditbetrag1").style.display = "none";
document.getElementById("TR_Ausz_MonKreditbetrag2").style.display = "none";
document.getElementById("TR_Ausz_Zeitraum1").style.display = "none";
document.getElementById("TR_Ausz_Zeitraum2").style.display = "none";

document.getElementById("TR_Ausz_MaxKreditbetrag").style.display = "";
document.getElementById("TR_Ausz_Zeitraum3").style.display = "";
break;
}
}

function SwitchTilg(){
var c = document.getElementById("Tilg_Art");
if (c.value == 0) {
document.getElementById("TR_Tilg_Rate").style.display = "";
document.getElementById("TR_Tilg_Zeitraum").style.display = "none";
}
if (c.value == 1) {
document.getElementById("TR_Tilg_Rate").style.display = "none";
document.getElementById("TR_Tilg_Zeitraum").style.display = "";
}
}

	function expandVendor() {
		document.getElementById('anbieter').style.display ='';
	}
  
  function hideVendors(){
    var d = $('anbieter');
	  d.hide();
 }
 
function loadVendors() {
	var url = 'focus/loadData.php';
	var myAjax = new Ajax.Request( url, {method: 'get', onLoading: showLoad, onComplete: showResponse} );
}
function showLoad () {
	$('load').style.display = 'block';
}
function showResponse (originalRequest) {
	var newData = originalRequest.responseText;
	$('load').hide();
  $('anbieter').show();
	$('anbieter').innerHTML = newData;
}