NodeForms_ = new Class({
	
	initialize:function(){
		
		this.total_price = 0;
		this.wsp = 1;
		this.wsp_nowy = 1;
		
		if ($('cala_cena')){
			this.total_price = parseFloat($('cala_cena').get('text'));
		}
	
		//create the tooltips
		this.dymki = new Tips($$('.form_tip'),{
			className: 'form_tipz',
			offsets: {'x': 10, 'y': 25}
		});
	},
	
	rodzaj_pola: function(name){
		var nr = 0;
		for each (var v in pola){
			if (v == name) return nr;
			nr++;
		}
		return -1;
	},
	rodzaj_waluty: function(dig3){
		var nr = 0;
		for each (var v in waluty){
			if (v == dig3) return nr;
			nr++;
		}
		return -1;
	},
	pole_wybrane: function(szukane,lista){
		var nr = 0;
		var alista=lista.split('|');
		for each (var v in alista){
			if (v == szukane) return nr;
			nr++;
		}
		return -1;
	},
	
	//select
	price: function(o,p){
		var kw = kwoty[this.rodzaj_pola(o.name)][this.rodzaj_waluty(domyslna_waluta)][this.pole_wybrane(o.value,p)];
		this.zlicz_cene(-$('price_'+o.name).get('text'));
		$('price_'+o.name).set('text',kw);
		$('h_price_'+o.name).value = kw;
		this.zlicz_cene(kw);
	},
	
	//checkbox
	price1: function(o,p){
		var kw = kwoty[this.rodzaj_pola(o.name)][this.rodzaj_waluty(domyslna_waluta)][this.pole_wybrane(o.value,p)];
		var wartosci = p.split('|');
		var j = 0;
		for each (var i in wartosci){
			if (o.value == i){
				if (o.checked) {
					$('price_'+o.name+'_'+j).set('text',kw);
					$('h_price_'+o.name+'_'+j).value = kw;
					this.zlicz_cene(kw);
				}
				else {
					this.zlicz_cene(-$('price_'+o.name+'_'+j).get('text'));
					$('price_'+o.name+'_'+j).set('text','');
					$('h_price_'+o.name+'_'+j).value = '';
				}
			}
			j++;
		}
	},
	
	//radio
	price2: function(o,p){
		var wartosci = p.split('|');
		var j = 0;
		for each (var i in wartosci){
			if (j<wartosci.length) {
				this.zlicz_cene(-$('price_'+o.name+'_'+j).get('text'));
				$('price_'+o.name+'_'+j).set('text','');
				$('h_price_'+o.name+'_'+j).value = '';
			}
			if (o.value == i){
				var kw = kwoty[this.rodzaj_pola(o.name)][this.rodzaj_waluty(domyslna_waluta)][this.pole_wybrane(o.value,p)];
				$('price_'+o.name+'_'+j).set('text',kw);
				$('h_price_'+o.name+'_'+j).value = kw;
				this.zlicz_cene(kw);
			}
			j++;
		}
	},
	
	recount: function(name,v){
		var nowa_waluta =  this.rodzaj_waluty(v);
		domyslna_waluta = v;
		//pobierz wszystkie pola o klasie price w formularzu i zmien ceny na nowe i wylicz cena przy okazji
		var s = 0;
		var suma = 0;
		($(name).getElements('.price')).each(function(el){
			s = parseFloat(el.get('text'));
			if(s>0){
				var i=0;
				var j=0;
				var k=0;
				var koniec = false;
				//wyszukaj przeliczonej kwoty
				for each (var pol in kwoty){
					if(i>=kwoty.length) break;
					j=0;
					for each (var wal in pol){
						if(j>=pol.length) break;
						k=0;
						for each (var kwo in wal){
							if(k>=wal.length) break;
							if (kwoty[i][j][k]==s) {
								koniec = true;
								break;
							}
							k++;
						}
						if (koniec) break;
						j++;
					}
					if (koniec) break;
					i++;
				}
				if (koniec) {
					suma += parseFloat(kwoty[i][nowa_waluta][k]);
					el.set('text',kwoty[i][nowa_waluta][k]);
				}
			}
			else el.set('text','');
		});
		
		($(name).getElements('.h_price')).each(function(el){
			s = parseFloat(el.value);
			if(s>0){
				var i=0;
				var j=0;
				var k=0;
				var koniec = false;
				//wyszukaj przeliczonej kwoty
				for each (var pol in kwoty){
					if(i>=kwoty.length) break;
					j=0;
					for each (var wal in pol){
						if(j>=pol.length) break;
						k=0;
						for each (var kwo in wal){
							if(k>=wal.length) break;
							if (kwoty[i][j][k]==s) {
								koniec = true;
								break;
							}
							k++;
						}
						if (koniec) break;
						j++;
					}
					if (koniec) break;
					i++;
				}
				if (koniec) {
					el.value = kwoty[i][nowa_waluta][k];
				}
			}
			else el.value = '';
		});
		
		if ($('cala_cena')) {
			this.total_price = suma;
			var cena = new String(this.total_price);
			var dl = cena.length;
			var ind = cena.indexOf(".");
			if (ind>0 && ind<dl-3){
				this.total_price = Math.round((this.total_price*100))/100;
				cena = new String(this.total_price);
				ind = cena.indexOf(".");
				dl = cena.length;
			}
			if (ind == -1) cena += '.00';
			if (ind == dl-2) cena += '0';
			$('cala_cena').set('text',cena);
			$('c_netto').value = cena;
			
			cena = new String(this.total_price*((100+podatek)/100));
			var dl = cena.length;
			var ind = cena.indexOf(".");
			if (ind>0 && ind<dl-3) {
				cena = new String(Math.round((this.total_price*(100+podatek)))/100);
				ind = cena.indexOf(".");
				dl = cena.length;
			}
			if (ind == -1) cena += '.00';
			if (ind == dl-2) cena += '0';
			$('cena_brutto').set('text',cena);
			$('c_brutto').value = cena;
		}
	},
	
	zlicz_cene: function(cena){
		if ($('cala_cena')){
			this.total_price += parseFloat(cena);
			var cena = new String(this.total_price);
			var dl = cena.length;
			var ind = cena.indexOf(".");
			if (ind>0 && ind<dl-3){
				this.total_price = Math.round((this.total_price*100))/100;
				cena = new String(this.total_price);
				ind = cena.indexOf(".");
				dl = cena.length;
			}
			if (ind == -1) cena += '.00';
			if (ind == dl-2) cena += '0';
			$('cala_cena').set('text',cena);
			$('c_netto').value = cena;
			
			cena = new String(this.total_price*((100+podatek)/100));
			var dl = cena.length;
			var ind = cena.indexOf(".");
			if (ind>0 && ind<dl-3) {
				cena = new String(Math.round((this.total_price*(100+podatek)))/100);
				ind = cena.indexOf(".");
				dl = cena.length;
			}
			if (ind == -1) cena += '.00';
			if (ind == dl-2) cena += '0';
			$('cena_brutto').set('text',cena); 
			$('c_brutto').value = cena;
		}
	},
	
	/*nazwa_pliku:function(nazwa){
		if ($(nazwa.name)) $(nazwa.name).value = nazwa.value;
	}*/
	
});

var NodeForms = null;

window.addEvent('domready', function(){
	NodeForms = new NodeForms_();
});