function setPosition(top2, left2)
{
        //oben  = top2;
        //links = left2;
}

function getLeft()
{
        return links;
}

function getTop()
{
        return oben;
}

function setMonate( monate, ebene, sprache )
{
        var result = "";
        
		switch (sprache)
		{
			case 'de':
						if (monate <= 1) result = "<font class='fis'>und 1 Monat</font>";
        				if (monate >  1) result = "<font class='fis'>und " + monate + " Monate</font>";
						break;
			case 'fr': 
						if (monate <= 1) result = "<font class='fis'>et 1 mois</font>";
        				if (monate >  1) result = "<font class='fis'>et " + monate + " mois</font>";
						break;
			case 'it':
						if (monate <= 1) result = "<font class='fis'>e 1 mese</font>";
        				if (monate >  1) result = "<font class='fis'>e " + monate + " mesi</font>";
						break;
			case 'en':
						if (monate <= 1) result = "<font class='fis'>and 1 month</font>";
        				if (monate >  1) result = "<font class='fis'>and " + monate + " months</font>";
						break;
		}

        if ( document.all ) {
                document.all[ebene].innerHTML = result;
                //document.all[ebene].style.top = getTop();
                //document.all[ebene].style.left = getLeft();
        }
        else if ( document.layers ) {
                document[ebene].document.open();
                //document[ebene].top = getTop();
                //document[ebene].left = getLeft();
                document[ebene].document.write(result);
                document[ebene].document.close();
        }
		else if ( document.getElementById ) {
		       ebene = document.getElementById(ebene)
			   //ebene.style.top = getTop();
			   //ebene.style.left = getLeft();
			   ebene.innerHTML = result;
		}
}

function clearMonate(ebene)
{
        if ( document.all )
                document.all[ebene].innerHTML = " ";
        else if( document.layers ){
                document[ebene].document.open();
				document[ebene].document.clear();
                document[ebene].document.close();
        }
		else if( document.getElementById ){
		       ebene = document.getElementById(ebene)
			   //ebene.style.top = getTop();
			   //ebene.style.left = getLeft();
			   ebene.innerHTML = " ";
        }
}

function check_browser(layer)
{
        // Browsertyp pruefen
        userAgent = navigator.userAgent.toLowerCase();
        n4 = document.layers;
        ie = document.all;
		dom = document.getElementsById;
		
		//ie = (document.all && userAgent.indexOf("mac") < 0);
        if(ie)
                return document;
        if(n4)
                return document[layer].document;
        return document;
}

function invert( x )
{
         // Zeichenfolge umdrehen
         var k;
         var z="";
         for ( k = x.length - 1; k >= 0; k--)
         {
             z = z.concat( x.substr( k, 1 ));
         }
         return z;
}

function komma( x )
{
        // Tausenderpunkte und Komma in der Eingabe bearbeiten
        // Rueckgabe als Zahl
		
        var y = x.toString();
		if ( y == "" ) {
			return y
		}
		
        x = y.replace( /\./g, "" );
        y = x.replace( /,/g, "." );
        return (y * 1.0);
}

function komma_ch( x )
{
        // Tausenderpunkte und Komma in der Eingabe bearbeiten
        // Rueckgabe als Zahl
		// Aenderung der Formatierung fuer Schweiz
		
        var y = x.toString();		
        x = y.replace( /\'/g, "" );
        return (x * 1.0);
}


function zahl( x )
{
        // Tausenderpunkte in der Eingabe loeschen
        // Rueckgabe als Zahl
        var y = x.toString();
        x = y.replace( /\./g, "" );
        return (y * 1.0);
}

function zahl_ch( x )
{
        // Tausenderpunkte in der Eingabe loeschen
        // Rueckgabe als Zahl
		// Aenderung der Formatierung fuer Schweiz
        var y = x.toString();
        x = y.replace( /\\'/g, "" );
        return (x * 1.0);
}

function toKomma( x )
{
        // umwandeln in Komma- Zahl mit Tausenderpunkten
        // Rueckgabe als String fuer Ausgabe
        var y = x.toString();
        var s = y.split(".");
        var a = invert( s[0] );
        var b = "";
        for (k = 0; k < a.length; k++)
        {
            b = b.concat( a.substr(k, 1));
            if ((k%3 == 2) && (k != a.length - 1))
               b = b.concat( "." );
        }
        var z = invert( b );
        z = z.concat( "," );
        if ( !s[1] )
           return z.concat( "00" );
        else
           if (s[1].length == 1 )
           {
             z = z.concat( s[1].substr( 0,1 ) );
             return z.concat( "0" );
           }
           else
             return z.concat( s[1].substr( 0,2 ) );
}

function toKomma_ch( x )
{
        // umwandeln in Komma- Zahl mit Tausenderpunkten
        // Rueckgabe als String fuer Ausgabe
        // Aenderung der Formatierung ins Schweizer Format
        var y = x.toString();
        var s = y.split(".");
        var a = invert( s[0] );
        var b = "";
        for (k = 0; k < a.length; k++)
        {
            b = b.concat( a.substr(k, 1));
            if ((k%3 == 2) && (k != a.length - 1))
               b = b.concat( "'" );
        }
        var z = invert( b );
        z = z.concat( "." );
        if ( !s[1] )
           return z.concat( "00" );
        else
           if (s[1].length == 1 )
           {
             z = z.concat( s[1].substr( 0,1 ) );
             return z.concat( "0" );
           }
           else
             return z.concat( s[1].substr( 0,2 ) );
}

function kommaZahl( x )
{
        // auf Zahl ggfs. mit Komma (Punkt) pruefen
        var ausdruck = /^[0-9]+\.?[0-9]*$/;
        if (ausdruck.test( x ))
                return true;
        else
                return false;
}

function ganzeZahl( x )
{
        // auf ganze Zahl pruefen
        var ausdruck = /\\D+/;
        if (ausdruck.test( x ))
                return false;
        else
                return true;
}

function runden( x )
{
        // auf 2 Stellen hinterm Komma runden
        return toKomma( Math.round( x * 100.0 ) / 100.0 );
} 

function runden_ch( x )
{
        // auf 2 Stellen hinterm Komma runden
        return toKomma_ch( Math.round( x * 100.0 ) / 100.0 );
} 

function WertInvest( x, p, n  )
{
        // Einmal- Anlage
        return x * Math.pow((1 + (p / 100)), n);
}

function Rentenbarwert_vor( r, p, m, n )
{
        // r Rate, p Zins, m Anzahl Zahlungen, n Laufzeit
        if ( p == 0 )
                return r * m * n;
        else {
                p = p / 100.0;
                return r * (m + p/2.0 * (m+1.0)) * (Math.pow(1.0 + p, n) - 1.0) / p / Math.pow( 1.0 + p, n );
        }
}

function Rentenendwert_vor( r, p, m, n )
{
        // r Rate, p Zins, m Anzahl Zahlungen, n Laufzeit
        if ( p == 0 )
                return r * m * n;
        else {
                p = p / 100.0;
                return r * (m + p/2.0 * (m+1.0)) * (Math.pow(1.0 + p, n) - 1.0) / p;
        }
}

function Ratebarwert_vor( r, p, m, n )
{
        // r Rate, p Zins, m Anzahl Zahlungen, n Laufzeit
        if ( (p == 0) || (n == 0) ) {
           if ( (n == 0) || (m == 0))
               return 0.0;
           else
               return (r / m / n);
        }
        else {
             p = p / 100.0;
             return (r / (m + (p/2.0 * (m + 1.0))) / (Math.pow( 1.0 + p, n) - 1.0) * p * Math.pow(  1.0 + p, n));
        }
}

function Rateendwert_vor( r, p, m, n )
{
        // r Rate, p Zins, m Anzahl Zahlungen, n Laufzeit
        if ( (p == 0) || (n == 0) ) {
           if ( (n == 0) || (m == 0))
               return 0.0;
           else
               return (r / m / n);
        }
        else {
             p = p / 100.0;
             return (r / (m + (p/2.0 * (m + 1.0))) / (Math.pow( 1.0 + p, n) - 1.0) * p);
        }
}
