function compRetire(form) {

// resultat-fenster oeffenen
resultWindow = window.open('', "Resultat", "width=600,height=800,left=50,top=50,scrollbars=yes");


// Auslesen der Werte

var laufzeit = "";
laufzeit = document.form.lz.selectedIndex;

var zinssatz = "";
if (document.form.zs.selectedIndex == 0)	{zinssatz = 2;}
else if (document.form.zs.selectedIndex == 0)	{zinssatz = 2;}
else if (document.form.zs.selectedIndex == 1)	{zinssatz = 2.5;}
else if (document.form.zs.selectedIndex == 2)	{zinssatz = 3;}
else if (document.form.zs.selectedIndex == 3)	{zinssatz = 3.5;}
else if (document.form.zs.selectedIndex == 4)	{zinssatz = 4;}
else if (document.form.zs.selectedIndex == 5)	{zinssatz = 4.5;}
else if (document.form.zs.selectedIndex == 6)	{zinssatz = 5;}
else if (document.form.zs.selectedIndex == 7)	{zinssatz = 5.5;}
else if (document.form.zs.selectedIndex == 8)	{zinssatz = 6;}


var spesen = "";
if (document.form.spesen.selectedIndex == 0)	{spesen = 0;}
else if (document.form.spesen.selectedIndex == 1)	{spesen = 0.25;}
else if (document.form.spesen.selectedIndex == 2)	{spesen = 0.5;}
else if (document.form.spesen.selectedIndex == 3)	{spesen = 0.75;}
else if (document.form.spesen.selectedIndex == 4)	{spesen = 1;}

// Berechnung Nettozinssatz

if (document.form.spesen.selectedIndex != 0)	{
	zinssatz = zinssatz - spesen;
}
zinssatz = zinssatz/100;


var rest = "";
if (document.form.rest.selectedIndex == 0)	{rest = 0;}
else if (document.form.rest.selectedIndex == 1)	{rest = 1;}
else if (document.form.rest.selectedIndex == 2)	{rest = 5;}
else if (document.form.rest.selectedIndex == 3)	{rest = 10;}
else if (document.form.rest.selectedIndex == 4)	{rest = 20;}
else if (document.form.rest.selectedIndex == 5)	{rest = 25;}
else if (document.form.rest.selectedIndex == 6)	{rest = 50;}
else if (document.form.rest.selectedIndex == 7)	{rest = 75;}
else if (document.form.rest.selectedIndex == 8)	{rest = 100;}

var prs = remCom(form.prs.value);
if (form.prs.value == "") alert("Sie muessen einen Betrag eingeben!");
if (prs <= 0) prs=-prs;


rest = prs/100*rest;

/*	var laufzeit = remCom(form.laufzeit.value);
	  if (form.laufzeit.value == "") alert("You must enter the Number of Years of Retirement!");
	var zinssatz = remCom(form.zinssatz.value)/100;
	  if (form.zinssatz.value == "") zinssatz = 0;
	var prs = remCom(form.prs.value);
	  if (form.prs.value == "") alert("You must enter an Amount at Retirement!");
	  if (prs <= 0) prs=-prs;
	var rest = remCom(form.rest.value);
	  if (form.rest.value == "") rest = 0;
*/	  
	if (isNaN(laufzeit) || isNaN(prs) || isNaN(rest) || isNaN(zinssatz)) { 
		alert('Es scheint, als ob in einer Ihrer Zahlen ein unbekanntes Zeichen steht - aendern Sie dies bitte!'); }
		
	else {berechne(prs,laufzeit,rest,zinssatz,spesen)}
}	
	
function berechne(prs,laufzeit,rest,zinssatz,spesen)	{
		var x = 1;
		var left=0;
		var ausgabe="";
		var rentessumme=0;
		var totint=0;
		var kapital=kommaStellen(prs);
		kapital1=hochStrich(kapital);
		var zins=Math.round(zinssatz*100000000)/1000000;
		var check=0;
//		cper="Annually";
		
//	zinssatz=Math.pow(1+zinssatz,1)-1;
	zinssatz=Math.round(zinssatz*10000000)/10000000;
	
		var rest1=kommaStellen(rest);
		rest1=hochStrich(rest1);

		
	formel1=Math.pow(1+zinssatz,-laufzeit);
	kapital2=kapital-(formel1*rest);
//alert(formel1);	
	    var date = new Date();
	    var mo=date.getMonth()+1;
	    var jahre = date.getYear();
		if (jahre < 50)
		{
			jahre+=2000;
		}
		else
		{
			ns = (document.layers)? true:false;
		if(ns)jahre=jahre+1900;
// jahre+=1900; 
		}

		// jahr kontrollieren
		if(jahre<1000)
			jahre+=1900;

		    laufzeit=parseInt(laufzeit);
	ausgabe += "<HTML><HEAD><TITLE>rente-oder-kapital.ch - Zeitrenten-Rechner</TITLE></HEAD><BODY BGCOLOR=white><font face='verdana,helvetica,arial,sans-serif'><center><h2>Zeitrenten-Rechner</h2></center>";
	if ((zinssatz == 0)) {
	    payment=kapital2/laufzeit; 
	}
	else {
	    formel=Math.pow(1+zinssatz,laufzeit);
//	    formel1=Math.pow(1+zinssatz,-laufzeit);

	    rente=(kapital2/(zinssatz+1)*formel*zinssatz)/(formel-1); 
// alert(rente);
	}
	 
	 var rente2=kommaStellen(rente);
	 rente2=hochStrich(rente2);
	var i=zinssatz;
	startkapital=kapital;
	var rente1=rente;
	y=jahre;
	var entnahme = 0;

		ausgabeTabelle = "<br><TABLE border=1 noshade width=100% style=\"font-size: 80%;\"><TR><TD align=center><b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<u>Jahr</u></b></TD><TD align=right><b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<u>Kapital</u></b></TD><TD align=right><b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<u>Ertrag</u></b></TD><TD align=right><b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<u>Entnahme</u></b></TD><TD align=right><b><u>Bezug/Rente</u></b></TD></TR>";
	

  while (x <= laufzeit) {
	ertrag=(startkapital-rente1)*i;
	ertrag1=(startkapital)*i;
	if (ertrag < 0) ertrag=0;
	rente3=rente1;
	totint+=ertrag1;
	left=startkapital-rente1+ertrag;
	rem=kommaStellen(left);
	rem=hochStrich(rem);
	startkapital=kommaStellen(startkapital);
	startkapital=hochStrich(startkapital);
	entnahme=rente1-ertrag;
//alert(rente1);quit;
	rente4=ertrag1+entnahme;
	rentessumme+=rente4;
	rente4=kommaStellen(rente4);
	rente4=hochStrich(rente4);
	entnahme=kommaStellen(entnahme);
	entnahme=hochStrich(entnahme);
	if (entnahme == 0) {entnahme = "0"};
	rente1=kommaStellen(rente1);
	rente1=hochStrich(rente1);
	ertrag1=kommaStellen(ertrag1);
	ertrag1=hochStrich(ertrag1);

		ausgabeTabelle += "<TR><TD align=center>" +y +"</TD><TD align=right>"+startkapital +"</TD><TD align=right><font color=navy>"+ertrag1 +"</TD><TD align=right>"+entnahme +"</TD><TD align=right><font color=red>"+rente4 +"</TD></TR>";

	y++;
	startkapital=left;
	rente1=rente3;
     x++;
    }
    
	startkapital=kommaStellen(startkapital);
	startkapital=hochStrich(startkapital);
	if (startkapital == 0) {startkapital = "0"};
		ausgabeTabelle += "<TR><TD align=center>" +y +"</TD><TD align=right>"+startkapital +"</TD><TD align=left colspan=3>Franken Restkapital</TD></TR>";

	startkapital=kommaStellen(startkapital);
	startkapital=hochStrich(startkapital);
	rentessumme = kommaStellen(rentessumme);
	rentessumme=hochStrich(rentessumme);
	totint = kommaStellen(totint);
	totint=hochStrich(totint);
// 		ausgabeTabelle += "<TR><TD><b>Jahre:<BR>"+laufzeit+"</b></TD><TD><b>Rest:<BR>"+startkapital+"</b></TD><TD><b>Ausbezahlt:<BR>" +rentessumme +"</b></TD><TD><b>Ertrag<BR>" +totint +"</b></TD><TD>&nbsp;</TD></TR>";
		ausgabe += "Bei einem Anfangskapital von <b>"+kapital1+" Franken</b> und einer Rendite von <b>" +zins+" Prozent</b> bei <b>"+spesen+" Prozent</b> Spesen ergibt sich bei einer Laufzeit von <b>" +laufzeit+" Jahren</b> eine Jahresrente <b>"+rente4+" Franken</b> (Rentenzahlung Ende Jahr). Wunschgem&auml;ss betr&auml;gt das Restkapital <b>"+rest1+" Franken</b>. Sie haben damit einen Totalertrag von <b>" +totint +" Franken</b> erzielt und insgesamt <b>" + rentessumme +" Franken</b> ausbezahlt erhalten.<P>Die Kosten f&uuml;r die Einrichtung eines <a href='javascript:opener.location.href=\"http://www.auderset-partner.ch/rok/rente/depot/index.php\"; window.close();'>Zeitrenten-Depots</a> betragen ca. 1 Prozent des Anfangskapitals.<P>";

		ausgabe += ausgabeTabelle + '</TABLE>';
		ausgabe += "<p><font face='verdana,helvetica,arial,sans-serif' size='-2'>&copy; by rente-oder-kapital.ch</p></font></BODY></HTML>";

		resultWindow.document.write(''+ausgabe+'');
		resultWindow.focus();

		resultWindow.print()
//	document.open();
//	document.write(''+ausgabe+'');
//	document.close(); 
} 

function remCom(b) {
        newnum =""; numbs=" .'1234567890"
        for (i=0; i<b.length; i++) {
                ch = b.charAt(i);
                if (ch != "'") newnum+=ch;
				if (numbs.indexOf(ch) == -1) { i=b.length; newnum=NaN; } 
		}
	b=newnum; return parseFloat(b); 
}

function hochStrich(c) {
	neg=""; c1=""; 
    if (c.indexOf(".") >= 0) {
      c1 = c.substring(c.indexOf(".")+1,c.length)+""
      c = c.substring(0,c.indexOf("."))+"";
      c1 = "." + c1; }
    if (c.charAt(0)=="-") {
      c=c.substring(1,c.length); neg="-"; }
    if (c.length >= 4) {
      str=c.length; str1=c.length;
      while (str >= 4) {
        c = c.substring(0,str-3) + "'" + c.substring(str-3,str1);
        str-=3; str1++; } }
    c = neg+c+c1;
    return (c);
}
    
function kommaStellen(x) { // format two digits
//	x = Math.round(x);
//	return x;

	x = Math.round(x);
	x = "" + x;
	return x;
/*
	x = Math.round(x * 100);
	strx = "" + x;
	if (x < 10 && x > 0) strx = "0" +x;
	if (x > -10 && x < 0) { x=-x; strx = "-0" +x; }
	zeros = strx.length;
//	return strx.substring(0, zeros - 2) + "." + strx.substring(zeros - 2, zeros); 
	return strx.substring(0, zeros - 2) ; 
*/
}
	



