

// +-----------------------------------------------------------------------------------------------------+
// | 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 TAXCALC = "19272001169";
	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 "haftung":
			txt = haftung;
			break;
		case "gewerbeertrag":
			txt = "Gewinn aus Gewerbebetrieb gem. Einkommensteuergesetz oder K&ouml;rperschaftsteuergesetz";
			break;
		case "hinzurechnungsbertrag":
			txt = "<b>ab 2008:</b> von allen Zinsen  (langfristig und kurzfristig) werden dann 25% dem Gewerbeertrag hinzugerechnet.Die Finanzierungsanteile von Mieten, Pachten, Leasingraten und Lizenzen werden ebenfalls zu 25 % dem Gewerbeetrag hinzugerechnet. Es wird allerdings ein Freibetrag von EUR 100.000 eingef&uuml;hrt,um kleinere und mittlere Unternehmen von der Ausweitung der Hinzurechnungen auszunehmen.";
			break;
		case "kuerzungsbetrag":
			txt = "z.B. 1,2% des Einheitswertes des zum Betriebsverm&ouml;gen des Unternehmers geh&ouml;renden Grundbesitzes und andere K&uuml;rzungen nach § 9 GewStG. Eingabe bitte positiv & ohne Vorzeichen";
			break;
		case "hebesatz":
			txt = "Durch die Gemeinde festgesetzter Hebesatz ( mindestens 200%).";
			break;
		case "hebesatz_test":
			txt = "Der Hebesatz muss immer zwischen 200% und 600% liegen.";
			break;
	}

    obj.innerHTML = txt;

  }
  
  

// ********** CALC *********
function CalcGewerbe(widget, style, var_hebesatz, var_city)  
{
	style_action(style);
	
	if (widget == "") widget = false;
	else widget = true;

	gewerbeertrag			= change(document.eingabe.gewerbeertrag.value);
	hinzurechnungsbertrag	= change(document.eingabe.hinzurechnungsbertrag.value);
	kuerzungsbetrag			= change(document.eingabe.kuerzungsbetrag.value);
	hebesatz				= change(document.eingabe.hebesatz.value);


	// Berechnung 
	messbetrag_kap		= gewerbeertrag + hinzurechnungsbertrag - kuerzungsbetrag;
	messbetrag_ein		= messbetrag_kap - 24500;
	if (messbetrag_ein < 0) { messbetrag_ein = 0; }


	// Abrunden auf volle Hundert
	messbetrag_kap = Math.floor(messbetrag_kap/100) * 100;
	messbetrag_ein = Math.floor(messbetrag_ein/100) * 100;

	// Gewerbesteuer
	gewerbesteuer_kap_2008 = (-1 * messbetrag_kap) * (hebesatz/100) * 0.035;
	gewerbesteuer_ein_2008 = (-1 * messbetrag_ein) * (hebesatz/100) * 0.035;
	gewerbesteuer_kap_2007 = (-1 * messbetrag_kap) * hebesatz/(2000 + hebesatz);

	if (messbetrag_ein >= 0 && messbetrag_ein <= 12000) 
		{ stufe = messbetrag_ein * 0.01; stufe2 = 1 + 1 * hebesatz/(100*100); }
	if (messbetrag_ein > 12000 && messbetrag_ein <= 24000) 
		{ stufe = 12000 * 0.01 + (messbetrag_ein - 12000) * 0.02; stufe2 = 1 + 2 * hebesatz/(100*100); }
	if (messbetrag_ein > 24000 && messbetrag_ein <= 36000) 
		{ stufe = 12000 * 0.01 + 12000 * 0.02 + (messbetrag_ein - 24000) * 0.03; stufe2 = 1 + 3 * hebesatz/(100*100); }
	if (messbetrag_ein > 36000 && messbetrag_ein <= 48000) 
		{ stufe = 12000 * 0.01 + 12000 * 0.02 + 12000 * 0.03 + (messbetrag_ein - 36000) * 0.04; stufe2 = 1 + 4 * hebesatz/(100*100); }
	if (messbetrag_ein > 48000) 
		{ stufe = 12000 * 0.01 + 12000 * 0.02 + 12000 * 0.03 + 12000 * 0.04 + (messbetrag_ein - 48000) * 0.05; stufe2 = 1 + 5 * hebesatz/(100*100); }

	
	gewerbesteuer_ein_2007 = (-1 * stufe) * ((hebesatz/100)/stufe2);
						
	// Anrechnung
	anrechnung_kap_2008	= "-";
		
	if (messbetrag_ein * 0.035 * 3.8 >= -1 * gewerbesteuer_ein_2008)
	{ 
		anrechnung_ein_2008 = -1 * gewerbesteuer_ein_2008;
	}
	else
	{	
		anrechnung_ein_2008 = messbetrag_ein * 0.035 * 3.8;
	}

	anrechnung_kap_2007	= "-";
	anrechnung_ein_2007	= (stufe/stufe2) * 1.8;
	
	
	
	// Positiv
	gewerbesteuer_kap_2008 = -1 * gewerbesteuer_kap_2008;
	gewerbesteuer_ein_2008 = -1 * gewerbesteuer_ein_2008;
	
	proz_kap = 0;
	proz_ein = 0;
	summe = gewerbeertrag + hinzurechnungsbertrag - kuerzungsbetrag;
	if (summe > 0)
	{
		proz_kap = (gewerbesteuer_kap_2008 * 100) / summe;
		proz_ein = (gewerbesteuer_ein_2008 * 100)/ summe; 
	}
	if (var_hebesatz == 0) var_hebesatz = hebesatz;
	

	// Validitaet
	error = false;
	if (hebesatz < 200 || hebesatz > 600)
	{
		error = true;
		set_info('hebesatz_test'); 
	}
	
	if (!error)
	{

		textzusammen(widget, var_hebesatz);
		set_info('ausgabe');
	}

} 


function textzusammen(widget, var_hebesatz) 
{

	text = "<TABLE cellspacing=0 cellpadding=1 border=0'>";

	text += "<TR><TD class='cell' valign=bottom>Hebesatz: " + var_hebesatz + "</TD><TD valign=top class='cell_green_border'>Kapitalges.</TD><TD class='cell_green_border'>Personenges.<br>Einzeluntern.</TD></TR>";	

	text += "<TR><TD class='cell_line'>&nbsp;</TD><TD class='cell_line_border'>&nbsp;</TD><TD class='cell_line_border'>&nbsp;</TD></TR>";

	text += "<TR><TD class='cell_green'><nobr>Gewerbesteuer:</nobr></TD><TD class='cell_green_border'><nobr>" + komma(gewerbesteuer_kap_2008) + "  &euro;&nbsp;</TD><TD class='cell_green_border'><nobr>" + komma(gewerbesteuer_ein_2008) + "  &euro;&nbsp;</TD></TR>";

	text += "<TR><TD class='cell'><nobr>Anrechnung:</nobr></TD><TD class='cell_border'><nobr>" + anrechnung_kap_2008 + "</TD><TD class='cell_border'><nobr>" + komma(anrechnung_ein_2008) + "  &euro;&nbsp;</TD></TR>";
	
	text += "<TR><TD class='cell_line'>&nbsp;</TD><TD class='cell_line_border'>&nbsp;</TD><TD class='cell_line_border'>&nbsp;</TD></TR>";
		
	text += "<TR><TD class='cell'><nobr>Steuerbel. in %:</nobr></TD><TD class='cell_border'><nobr>" + komma(proz_kap) + " % </TD><TD class='cell_border'><nobr>" + komma(proz_ein) + "  % &nbsp;</TD></TR>";
	
	text += "<TR><TD class='cell_line'>&nbsp;</TD><TD class='cell_line'>&nbsp;</TD><TD class='cell_line'>&nbsp;</TD></TR>";

	text += "</TABLE>";



	txtausgabe = text;
}


