
// +-----------------------------------------------------------------------------------------------------+
// | rechner.js                                                                                          |
// +-----------------------------------------------------------------------------------------------------+
// | Copyright (c) 2008 steuerberaten.de                                                                 |
// +-----------------------------------------------------------------------------------------------------+
// | Datum: 07.07.2008                                                                                   |
// +-----------------------------------------------------------------------------------------------------+
// | Urheberrechtshinweis:                                                                               |
// | Diese Script ist urheberrechtlich geschützt. Einer Freigabe zur Publikation in anderen Medien oder  |
// | zu sonstiger Verwendung wird ausdrücklich widersprochen. Jede Zuwiderhandlung wird - unabhängig von |
// | Zweck, Person, Umfang, Einsatzgebiet - sofort und ohne weitere Warnung juristisch verfolgt.         |
// +-----------------------------------------------------------------------------------------------------+
// | Autor: Michael Mühl <muehl@emric.de>                                                                |
// +-----------------------------------------------------------------------------------------------------+



// ********** INFO TEXTE *********
function set_info(type)
{
	var obj;
    var txt;

    if (document.all)
      obj = document.all.infotext;
    else
      obj = document.getElementById("infotext");


	switch (type)
    {
		case "ausgabe":
			txt = txtausgabe
			break;
		case "allgemein":
			txt = "";
			break;
		case "beitrag_summe":
			txt = "Beitragssumme: Geben Sie hier an, wieviel Geld Sie pro Zahlungszeitraum anlegen möchten.";
			break;
		case "zahlungsweise":
			txt = "Zahlungsweise: Geben Sie an, ob Sie die Summe monatlich, vierteljährlich, halbjährlich oder jährlich zahlen möchten.";
			break;		
		case "angespartes_kapital":
			txt = "Bereits angespartes Kapital: Wenn Sie in der Vergangenheit bereits Kapital angespart haben oder jetzt eine Einmalzahlung tätigen, können Sie hier die Summe angeben. Dieses Kapital wird dann auch gemäß der Angaben, die Sie weiter unten treffen können, verzinst.";
			break;
		case "start_datum":
			txt = "Angelegt ab: Bitte wählen Sie hier, ab welchem Zeitpunkt Sie die Zahlungen beginnen möchten.";
			break;
		case "ende_datum":
			txt = "Angelegt bis: Bitte wählen Sie hier, wie lange sie die Zahlungen leisten möchten.";
			break;		
		case "jaehrliche_rendite":
			txt = "Jährliche Rendite: Wählen Sie hier die erwartete jährliche Rendite. Sie können auch unterschiedliche Prozentsätze angeben, um zu sehen, wie sich die jährliche Rendite auf das Endkapital auswirkt.";
			break;
		case "zeitspanne_invalid":
			txt = "Das Startdatum muß kleiner sein, als das Enddatum";
			break;

	}

    obj.innerHTML = txt;

  }
  

// ********** CALC *********
function CalcSparen(widget, style)  
{
	style_action(style);
	
	if (widget == "") widget = false;
	else widget = true;

	var error = false;

	var angespartes_kapital		= change(document.eingabe.angespartes_kapital.value);
	var beitrag_summe			= change(document.eingabe.beitrag_summe.value);
	var zahlungsweise			= document.eingabe.zahlungsweise.value;
	var angespartes_kapital		= document.eingabe.angespartes_kapital.value;
	var jaehrliche_rendite		= document.eingabe.jaehrliche_rendite.value;
			
	var start_monat				= document.eingabe.start_monat.value;
	var start_jahr				= document.eingabe.start_jahr.value;
	var ende_monat				= document.eingabe.ende_monat.value;
	var ende_jahr				= document.eingabe.ende_jahr.value;
	
	// Berechnung
	var start_datum				= new Date(start_jahr, (start_monat - 1), 1);
	var ende_datum				= new Date(ende_jahr, (ende_monat - 1), 1);
	var start_datum_time		= start_datum.getTime();
	var ende_datum_time			= ende_datum.getTime();	
	
	var anz_monate = 0;
	
	if (ende_datum_time <= start_datum_time) {
		
		error = true;
		set_info('zeitspanne_invalid');
		
	} else {
		
		if (start_jahr < ende_jahr) {
			
			jahr_anz_monate = (ende_jahr - start_jahr) * 12;
			
			if (ende_monat < start_monat) {
				anz_monate = (jahr_anz_monate - (start_monat - ende_monat));				
			} else {
				anz_monate = jahr_anz_monate + (ende_monat - start_monat);
			}
		} else {
			anz_monate = ende_monat - start_monat;
		}		

		
	}
	
	// Anzahl der Sparraten
	var sparraten_monate 	= anz_monate;
	var sparraten_quartale	= Math.floor(anz_monate / 3);
	var sparraten_halbjahre	= Math.floor(anz_monate / 6);
	var sparraten_jahre		= Math.floor(anz_monate / 12);
	
	switch (zahlungsweise) {
		case '1':
		var zahlungen		= sparraten_jahre;
		break;
		case '2':
		var zahlungen		= sparraten_halbjahre;
		break;
		case '4':
		var zahlungen		= sparraten_quartale;
		break;
		case '12':
		var zahlungen		= sparraten_monate;
		break;
		
	}
	
	var zinssatz		= 1 + (jaehrliche_rendite / 100);
	var effektvzinssatz	= Math.pow(zinssatz,(1 / zahlungsweise));

	
	// alert("beitrag_summe:"+beitrag_summe+",angespartes_kapital:"+angespartes_kapital+", effektvzinssatz:"+effektvzinssatz+",zahlungen"+zahlungen);
		
	angesparte_summe = angespartes_kapital * (Math.pow(effektvzinssatz,zahlungen)) + beitrag_summe * ((Math.pow(effektvzinssatz, (zahlungen+1)) - effektvzinssatz) / (effektvzinssatz-1));
	
	if (!error)
	{
		textzusammen(widget);
		set_info('ausgabe');
	}

}


function textzusammen(widget) 
{
	
	text = "<TABLE cellspacing=0 cellpadding=1 border=0'>";
	text += "<TR><TD class='cell_line'>&nbsp;</TD><TD class='cell_line_border'>&nbsp;</TD></TR>";

	text += "<TR><TD class='cell'>Angespartes Kapital:</TD>";
	text += "<TD class='cell_border'><nobr>&nbsp;" + komma(angesparte_summe) + " &euro;</nobr></TD>";
	
	text += "<TR><TD class='cell_line'>&nbsp;</TD><TD class='cell_line'>&nbsp;</TD></TR>";
	text += "</TABLE>";



	if (!widget) 
	{ 
		promo = promo_p;
	} 
	else 
	{ 
		promo = "";
	}

	txtausgabe = text+promo;
}


