// show 3 random news
var incms_pricetable = function(){
	return {
		// private vars		
		formPanel: {},
		card: {},
		
		// functions
		init: function()
		{
			Ext.QuickTips.init();
			
			/* Anzahl Felder erstellen */
			this.createNumberField('midi_lang');
			this.createNumberField('maxi_lang');
			//this.createNumberField('initial_try');
			
			/* Checkboxen */
			Ext.select('.price_midi_checkbox').on('click', this.calcMidi);
			Ext.select('.price_maxi_checkbox').on('click', this.calcMaxi);
			//Ext.select('.price_initial_checkbox').on('click', this.calcInitial);
			
			on('click', function(){
				incms_pricetable.calcMini();
			});
			
			/* Berechnungsfunktionen aufrufen */
			
			/* NPO */
			/*	
			Ext.get('npo_1_checkbox').on('click', function(){
				incms_pricetable.calcMini();
			});
			Ext.get('npo_2_checkbox').on('click', function(){
				incms_pricetable.calcMidi();
			});
			Ext.get('npo_3_checkbox').on('click', function(){
				incms_pricetable.calcMaxi();
			});
			/*
			
			/* Partner */
			/*
			Ext.get('partner_1_checkbox').on('click', function(){
				incms_pricetable.calcMini();
			});
			Ext.get('partner_2_checkbox').on('click', function(){
				incms_pricetable.calcMidi();
			});
			Ext.get('partner_3_checkbox').on('click', function(){
				incms_pricetable.calcMaxi();
			});
			/*
			
			/* RZ Kunden */
			/*
			Ext.get('rzkunden_1_checkbox').on('click', function(){
				incms_pricetable.calcMini();
			});
			Ext.get('rzkunden_2_checkbox').on('click', function(){
				incms_pricetable.calcMidi();
			});
			Ext.get('rzkunden_3_checkbox').on('click', function(){
				incms_pricetable.calcMaxi();
			});
			/*
			
			
			/* Erklärungen der einzelnen Module */
			Ext.select('.explain_this a').on('click', function(event){ var paragraph = Ext.get(this.parentNode).child('p'); paragraph.toggleClass('show'); return false; });
			
	
			
		},
		
		/* Anzahl-Felder */
		createNumberField: function(id)
		{
			var fieldDiv = Ext.get(id);
			var baseValue = parseInt(fieldDiv.child('input').dom.value);
			fieldDiv.update('');
			
			var listeners = {
			  keyup: null
			};
			
			switch (id) 
			{
				case 'midi_lang': listeners.keyup = this.calcMidi; break;
				case 'maxi_lang': listeners.keyup = this.calcMaxi; break;
				//case 'initial_try': listeners.keyup = this.calcInitial; break;
			}
			
			var midi_lang = new Ext.form.NumberField({
				id: id + '_field',
				hideLabel: true,
				emptyText: 'Anz.',
				allowNegative: false,
				maxValue: 20,
				width: 40,
				style: 'text-align:right',
				baseValue: baseValue,
				enableKeyEvents: true,
				listeners: listeners,
				renderTo: id
			});
		},
		
		/* Berechnungen */
		calcMini: function()
		{
			var total = 35;
			
			/* NPO */
			/*
			var npoCheckbox = Ext.get('npo_1_checkbox');
			if(npoCheckbox.dom.checked) total = total * npoCheckbox.dom.value;
			*/
			
			/* Partner */
			/*
			var partnerCheckbox = Ext.get('partner_1_checkbox');
			if(partnerCheckbox.dom.checked) total = total * partnerCheckbox.dom.value;	
			*/
			
			/* RZ Kunden*/
			/*
			var rzkundenCheckbox = Ext.get('rzkunden_1_checkbox');
			if(rzkundenCheckbox.dom.checked) total = total * rzkundenCheckbox.dom.value;
			*/

			/* Deaktivieren der Checkboxen, wenn eine andere gewählt wird */
			/*
			if(npoCheckbox.dom.checked || partnerCheckbox.dom.checked) rzkundenCheckbox.dom.disabled = true; 
			else rzkundenCheckbox.dom.disabled = false;
			
			if(npoCheckbox.dom.checked || rzkundenCheckbox.dom.checked) partnerCheckbox.dom.disabled = true; 
			else partnerCheckbox.dom.disabled = false;
			
			if(partnerCheckbox.dom.checked || rzkundenCheckbox.dom.checked) npoCheckbox.dom.disabled = true; 
			else npoCheckbox.dom.disabled = false;
			*/
		
			Ext.get('total_mini').update(Math.round(total));
		},
		
		calcMidi: function()
		{
			var total = 75;
			
			Ext.select('.price_midi_checkbox').each(function(){
				if(this.dom.checked) total += parseInt(this.dom.value);
			});
			
			var midiLang = Ext.getCmp('midi_lang_field');
			
			total += midiLang.baseValue * (midiLang.maxValue<midiLang.getValue()?midiLang.maxValue:midiLang.getValue());

			/* NPO */
			/*
			var npoCheckbox = Ext.get('npo_2_checkbox');
			if(npoCheckbox.dom.checked) total = total * npoCheckbox.dom.value;
			*/
			
			/* Partner */
			/*
			var partnerCheckbox = Ext.get('partner_2_checkbox');
			if(partnerCheckbox.dom.checked) total = total * partnerCheckbox.dom.value;	
			*/
			
			/* RZ Kunden*/
			/*
			var rzkundenCheckbox = Ext.get('rzkunden_2_checkbox');
			if(rzkundenCheckbox.dom.checked) total = total * rzkundenCheckbox.dom.value;
			*/

			/* Deaktivieren der Checkboxen, wenn eine andere gewählt wird */
			/*
			if(npoCheckbox.dom.checked || partnerCheckbox.dom.checked) rzkundenCheckbox.dom.disabled = true; 
			else rzkundenCheckbox.dom.disabled = false;
			
			if(npoCheckbox.dom.checked || rzkundenCheckbox.dom.checked) partnerCheckbox.dom.disabled = true; 
			else partnerCheckbox.dom.disabled = false;
			
			if(partnerCheckbox.dom.checked || rzkundenCheckbox.dom.checked) npoCheckbox.dom.disabled = true; 
			else npoCheckbox.dom.disabled = false;
			*/

			Ext.get('total_midi').update(Math.round(total));
			
			Ext.get('total_midi_cell').highlight('#ffeeee');
		},
		
		calcMaxi: function()
		{
			var total = 125;
			
			Ext.select('.price_maxi_checkbox').each(function(){
				if(this.dom.checked) total += parseInt(this.dom.value);
			});
			
			var maxiLang = Ext.getCmp('maxi_lang_field');
			
			total += maxiLang.baseValue * (maxiLang.maxValue<maxiLang.getValue()?maxiLang.maxValue:maxiLang.getValue());
			
			/* NPO */
			/*
			var npoCheckbox = Ext.get('npo_3_checkbox');
			if(npoCheckbox.dom.checked) total = total * npoCheckbox.dom.value;
			*/
			
			/* Partner */
			/*
			var partnerCheckbox = Ext.get('partner_3_checkbox');
			if(partnerCheckbox.dom.checked) total = total * partnerCheckbox.dom.value;			
			/*
			
			/* RZ Kunden*/
			/*
			var rzkundenCheckbox = Ext.get('rzkunden_3_checkbox');
			if(rzkundenCheckbox.dom.checked) total = total * rzkundenCheckbox.dom.value;
			/*
			
			/* Deaktivieren der Checkboxen, wenn eine andere gewählt wird */
			/*
			if(npoCheckbox.dom.checked || partnerCheckbox.dom.checked) rzkundenCheckbox.dom.disabled = true; 
			else rzkundenCheckbox.dom.disabled = false;
			
			if(npoCheckbox.dom.checked || rzkundenCheckbox.dom.checked) partnerCheckbox.dom.disabled = true; 
			else partnerCheckbox.dom.disabled = false;
			
			if(partnerCheckbox.dom.checked || rzkundenCheckbox.dom.checked) npoCheckbox.dom.disabled = true; 
			else npoCheckbox.dom.disabled = false;
			*/
			

			Ext.get('total_maxi').update(Math.round(total));
			
			Ext.get('total_maxi_cell').highlight();
		},
		
		
		
		
	};
}();
Ext.onReady(incms_pricetable.init, incms_pricetable);
