var cache_id = null;

function promptCallback(val) { 

		var params = Form.serialize("hvaForm");
		params += "&nameOfValue=" + cache_id + "&format=label&value=" + val 

		var options = {
			method		: 'post',
			parameters	: params,
			evalJS		: 'force',
			evalScripts : true,
			onComplete  : function(resp) {
				//alert($(e.id + "_Bar").innerHTML);
				//alert(resp.responseText);
				$(cache_id).innerHTML = resp.responseText;
				document.getElementById("prognosezeitraum").style.display = 'block';
	  			document.getElementById("betrachtungszeitraum").style.display = 'block';
			}
		}

		new Ajax.Request("/rechner/ajaxUpdateValue.php", options);
		
}
		
		
function Hva(){

	var self = this;

	this.updateKuenftigerProvisionenAWQ = function() {
		var params = Form.serialize("hvaForm");

		var options = {
			method		: 'post',
			parameters	: params,
			evalJS		: 'force',
			evalScripts : true,
			onComplete  : function(resp) {
				//alert(resp.responseText);
			}
		}


		new Ajax.Updater('pKPAWQ', '/rechner/ajaxPKPAWQ.php', options);
	}
	
	this.updateKuenftigerProvisionenAbzinsungen = function() {
		var params = Form.serialize("hvaForm");

		var options = {
			method		: 'post',
			parameters	: params,
			evalJS		: 'force',
			evalScripts : true,
			onComplete  : function(resp) {
				//alert(resp.responseText);
			}
		}


		new Ajax.Updater('pKPAbzinsungen', '/rechner/ajaxPKPAbzinsungen.php', options);
	}
	
	this.updateZuUndAbschlaege = function(){
		self.updateRAAbschlaege();
		self.updateRAZuschlaege();
		self.updateZuUndAbschlaegeSummen();
	}
	
	this.updateZuUndAbschlaegeSummen = function(){
		self.updateByID("abschlaegeSumme", "money");
		self.updateByID("rAErgebnis", "money");
		self.updateByID("rAErgebnis_tax", "money");
		self.updateByID("rAErgebnis_gross", "money");
	}
	
	this.updateRAAbschlaege = function() {
		var params = Form.serialize("hvaForm");

		var options = {
			method		: 'post',
			parameters	: params,
			evalJS		: 'force',
			evalScripts : true,
			onComplete  : function(resp) {
				//alert(resp.responseText);
			}
		}

		new Ajax.Updater('rAAbschlaege', '/rechner/ajaxRAAbschlaege.php', options);
	}
	
	this.updateRAZuschlaege = function() {
		var params = Form.serialize("hvaForm");

		var options = {
			method		: 'post',
			parameters	: params,
			evalJS		: 'force',
			evalScripts : true,
			onComplete  : function(resp) {
				//alert(resp.responseText);
			}
		}
	

		new Ajax.Updater('rAZuschlaege', '/rechner/ajaxRAZuschlaege.php', options);
	}
	
	this.switchJE = function(number, status) {
		
		var params = Form.serialize("hvaForm");
		params += "&hPAbzug_"+ number +"_JE=" + status;
		
		var options = {
			method		: 'post',
			parameters	: params,
			evalJS		: 'force',
			evalScripts : true,
			onComplete  : function(resp) {
				//alert(e.id);
				//alert(resp.responseText);
				//e.value = resp.responseText;
				self.updateHPAbzuege();
			}
		}
		
		

		new Ajax.Request("/rechner/ajaxUpdateValue.php", options);
	}
	
	this.updateValue = function(e, format) {
		e = $(e);
		
		var params = Form.serialize("hvaForm");
		params += "&nameOfValue=" + e.id +"&format=" + format;
		
		var options = {
			method		: 'post',
			parameters	: params,
			evalJS		: 'force',
			evalScripts : true,
			onComplete  : function(resp) {
				//alert(e.id);
				//alert(resp.responseText);
				e.value = resp.responseText;

			}
		}
		
		

		new Ajax.Request("/rechner/ajaxUpdateValue.php", options);
	}
	
	this.updateBarValue = function(e, format){
		e = $(e);
		
		var params = Form.serialize("hvaForm");
		params += "&nameOfValue=" + e.id +"_Bar&format=" + format;

		var options = {
			method		: 'post',
			parameters	: params,
			evalJS		: 'force',
			evalScripts : true,
			onComplete  : function(resp) {
				//alert($(e.id + "_Bar").innerHTML);
				//alert(resp.responseText);
				$(e.id + "_Bar").innerHTML = resp.responseText;
				self.updateZuUndAbschlaegeSummen();
			}
		}

		new Ajax.Request("/rechner/ajaxUpdateValue.php", options);
	}
	
	this.updateByID = function(id, format){
		
		var params = Form.serialize("hvaForm");
		params += "?nameOfValue=" + id +"&format=" + format;

		var options = {
			method		: 'post',
			parameters	: params,
			evalJS		: 'force',
			evalScripts : true,
			onComplete  : function(resp) {
				//alert($(e.id + "_Bar").innerHTML);
				//alert(resp.responseText);
				$(id).innerHTML = resp.responseText;
			}
		}

		new Ajax.Request("/rechner/ajaxUpdateValue.php", options);
	}
	
	this.editLabel = function(id)	{
	
		cache_id = id;
		
		IEprompt("Geben Sie eine neue Beschriftung ein", $(id).innerHTML);
	}
	
	this.updateByIDValue = function(id, format){
		
		var params = Form.serialize("hvaForm");
		params += "?nameOfValue=" + id +"&format=" + format;

		var options = {
			method		: 'post',
			parameters	: params,
			evalJS		: 'force',
			evalScripts : true,
			onComplete  : function(resp) {
				//alert($(e.id + "_Bar").innerHTML);
				//alert(resp.responseText);
				$(id).value = resp.responseText;
			}
		}

		new Ajax.Request("/rechner/ajaxUpdateValue.php", options);
	}
	
	this.updateHPvXJ = function() {
		var params = Form.serialize("hvaForm");

		var options = {
			method		: 'post',
			parameters	: params,
			evalJS		: 'force',
			evalScripts : true,
			onComplete  : function(resp) {
				//alert(resp.responseText);
			}
		}


		new Ajax.Updater('hPvXJ', '/rechner/ajaxHPvXJ.php', options);
	}
	
	this.updateHPAbzuege = function() {
		var params = Form.serialize("hvaForm");

		var options = {
			method		: 'post',
			parameters	: params,
			evalJS		: 'force',
			evalScripts : true,
			onComplete  : function(resp) {
				//alert(resp.responseText);
			}
		}


		new Ajax.Updater('hPAbzuege', '/rechner/ajaxHPAbzuege.php', options);
	}
	
	this.updateErgebnis = function() {
		var params = Form.serialize("hvaForm");

		var options = {
			method		: 'post',
			parameters	: params,
			evalJS		: 'force',
			evalScripts : true,
			onComplete  : function(resp) {
			}
		}


		new Ajax.Updater('ergebnis', '/rechner/ajaxErgebnis.php', options);
	}
	
	
	
	this.updateRohausgleich = function() {
		self.updateKuenftigerProvisionenAWQ();
		self.updateKuenftigerProvisionenAbzinsungen();
		self.updateByID("summeProvisionenLetztesJahrKorrigiert", "money");
		self.updateErgebnis();
	}
	
	this.updateHoechstprovision = function() {
		self.updateHPvXJ();
		self.updateHPAbzuege();
		self.updateHoechstprovisionSummen();
	}
	
	this.updateHoechstprovisionSummen = function() {
		self.updateByID("zwischenHPVXJ", "money");
		self.updateByIDValue("hPAbzug_1_Summe", "money");
		self.updateByIDValue("hPAbzug_2_Summe", "money");
		self.updateByIDValue("hPAbzug_3_Summe", "money");
		self.updateByIDValue("hPAbzug_4_Summe", "money");
		self.updateByID("zwischenHPAbzuege", "money");
		self.updateByID("differenzHPAbzuege", "money");
		self.updateByID("hPJahresdurchschnitt", "money");
		self.updateByID("hPJahresdurchschnitt_tax", "money");
		self.updateByID("hPJahresdurchschnitt_gross", "money");
		self.updateErgebnis();
	}
	
	this.displayInfo = function(e){
		$(e).style.display = "block";
	}
	
	this.hideInfo = function(e){
		$(e).style.display = "none";	
	}
}

var hva = new Hva();