/* 
 $RCSfile: ratenrechner_general.js,v $ 
 $Author: jknieling $
 $Revision: 1.13 $
 $Date: 2011/12/27 10:31:07 $ 
 Der Teil aus ratenrechner2.js der auch von anderer Stelle benutzt wird
*/
// Raten-Array = (Ratenzins,effektiver Jahreszins ohne Zahlpause,effektiver Jahreszins mit Zahlpause)
// Zins Stand: 10.01.2012
// Achtung!!!!!!!!! Diese Tabelle gibt es auch noch mal in der Suche fuer MyShop ( weikatec.search.entity.Style ), bei Änderungen also bitte Weikatec informieren
// Achtung!!!!!!!!! Diese Tabelle gibt es auch noch mal in der myaccount/inc/inc_jsp_credititemdetails_rs.isml
// Achtung!!!!!!!!! Diese Tabelle gibt es auch noch mal in der config.xml( Baur und IAW! )
var Mon1  = new Array (0,0,12.45);
var Mon3  = new Array (0.79,15.17,15.96);
var Mon6  = new Array (0.72,15.66,15.88);
var Mon10 = new Array (0.69,15.77,15.77); 
var Mon14 = new Array (0.68,15.86,15.72);
var Mon20 = new Array (0.67,15.76,15.54);
var Mon24 = new Array (0.67,15.77,15.50);
var Mon36 = new Array (0.68,15.86,15.50);
var Mon48 = new Array (0.69,15.83,15.45);

var Mon9 = new Array (0.62,13.98,13.34); 
var Mon12 = new Array (0.60,13.80,13.26);

/* unnötig, iaw hat seine eigene ratenrechner_general.js
if (typeof site != "undefined" && site == "ImWalking")
{
	var Mon1  = new Array (0,0,9.16);
	var Mon3  = new Array (0.66,12.54,12.33);
	var Mon6  = new Array (0.58,12.47,12.26);
	var Mon10 = new Array (0.55,12.44,12.21); 
}*/

function calcRate( RatenAnzahl, GrundBetrag, MitAufschlag ) {
  ZinsWert = eval("Mon"+ RatenAnzahl);
  RatenAufschlag = 0.0;
  if(typeof(MitAufschlag) === 'undefined' || MitAufschlag || RatenAnzahl > 6) {
	  RatenAufschlag = Math.round(((GrundBetrag*100)*(ZinsWert[0]*100)*RatenAnzahl)/10000)/100;
  }
// Ermitteln des Teilzahlungspreises ohne Zahlpausenauschlag (Valuta)
  GesamtOhneValuta = Math.round((GrundBetrag*100) + (RatenAufschlag*100))/100;
// Einzelrate berechnen, 100000 aufgrund von Rundungsfehlern
  EinzelRate = Math.round((GesamtOhneValuta*100000)/(RatenAnzahl))/100000;
// Monatsrate ermitteln
// ab 12/06 Cent genau abrunden
  MonatsRate = Math.floor(EinzelRate*100+0.001)/100;
  return MonatsRate;
}

function calcRateValues( RatenAnzahl, Valuta, GrundBetrag, MitAufschlag ) {
	// zugehoerigen Zinssatz ermitteln
	ZinsWert = eval("Mon"+ RatenAnzahl);
    // Alle Werte werden ohne Kommastellen berechnet, aufgrund des JS-Bugs, also alle mal 100, wegen Genauigkeit
    // Ermitteln des Ratenaufschlages
	RatenAufschlag = 0.0;
	if(typeof(MitAufschlag) === 'undefined' || MitAufschlag || RatenAnzahl > 6) {
		RatenAufschlag = Math.round(((GrundBetrag*100)*(ZinsWert[0]*100)*RatenAnzahl)/10000)/100;
	}
	// bei Valuta angewaehlt
	if( Valuta ) {
		// Valuta berechnen
		ValutaWert = Math.round((GrundBetrag*100) * (valuta*100)/10000)/100;
	}
	else
	{
		ValutaWert = 0;
	}
	// Ermitteln des Teilzahlungspreises
	Gesamt = Math.round((GrundBetrag*100) + (RatenAufschlag*100) + (ValutaWert*100))/100;
	// Ermitteln des Teilzahlungspreises ohne Zahlpausenauschlag (Valuta)
	GesamtOhneValuta = Math.round((GrundBetrag*100) + (RatenAufschlag*100))/100;
	// Einzelrate berechnen, 100000 aufgrund von Rundungsfehlern
	EinzelRate = Math.round(((GesamtOhneValuta*100000)+ (ValutaWert*100000))/(RatenAnzahl))/100000;
	// Monatsrate ermitteln
	// ab 12/06 cent genau abrunden
	MonatsRate = Math.floor(EinzelRate*100)/100;
	// Ermitteln des bis dahin gezahlten Betrages
	MonatsRatenGesamt = Math.round((RatenAnzahl-1)*MonatsRate*100)/100;
	// Ermitteln der ersten Rate
	/* Mantis #95026: Rundung Ratenberechnung */
	//Alt: ErsteRate = EinzelRate;
	ErsteRate = Math.floor(EinzelRate*100)/100; //alternativ: ErsteRate = MonatsRate  => da beide exakt gleich	
}
	
// Achtung: aehnliche Funktion in inc/scripts_variations	
function getRatenRecommendation( tmp_preis_val ) {
	var raten = 0;
	if ( tmp_preis_val < 27 ) 
		raten = 0;
	else if ( tmp_preis_val < 54 ) 	 
		raten = 3;
	else if ( tmp_preis_val < 90 ) 	 
		raten = 6;
	else if ( tmp_preis_val < 126 ) 	 
		raten = 10;
	else if ( tmp_preis_val < 180 ) 	 
		raten = 14;
	else if ( tmp_preis_val < 216 ) 	 
		raten = 20;
	else if ( tmp_preis_val < 324 ) 	 
		raten = 24;
	else if ( tmp_preis_val < 432 ) 	 
		raten = 36;
	else 
		raten = 48;
	return raten;
}     

function prepare_string(tmp_preis) {
	tmp_preis = "" + tmp_preis;
	tmp_preis = tmp_preis.replace( /\./, "," );
	if (tmp_preis.search(",")==-1) {
		tmp_preis = tmp_preis + ",00";
	} else {
		if (tmp_preis.search(",")==tmp_preis.length-2) {
			tmp_preis = tmp_preis + "0";
		}
	}
	if (tmp_preis.search(",")==0) {
		tmp_preis = "0" + tmp_preis;
	}
	return tmp_preis;
}				



