dataCalendar=function(post){var resp=null;xmlhttp=null;if (window.XMLHttpRequest)xmlhttp = new XMLHttpRequest;else if (window.ActiveXObject)xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");xmlhttp.open('POST','/'+sys_lang+'/calculator/',false);xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');xmlhttp.onreadystatechange = function(){if(xmlhttp.readyState==4){if(xmlhttp.status==200){resp=null;resp=xmlhttp.responseText;}}};xmlhttp.send(post);if(xmlhttp.responseText!=null)resp=xmlhttp.responseText;return resp};
urldecode=function(str){var histogram={},histogram_r={},code=0,str_tmp=[];var ret=str.toString();var replacer=function(search,replace,str){var tmp_arr=[];tmp_arr=str.split(search);return tmp_arr.join(replace);};histogram['!']='%21';histogram['%20']='+';for(replace in histogram){search=histogram[replace];ret=replacer(search,replace,ret);}ret=decodeURIComponent(ret);return ret};
urlencode=function(str){string=encodeURIComponent(str).replace(/~/g,'%7E');return string.replace(/%20/g,'+')};
loadXML=function(txt){try{xmlDoc=new ActiveXObject("Microsoft.XMLDOM");xmlDoc.async="false";xmlDoc.loadXML(txt);return(xmlDoc)}catch(e){try{parser=new DOMParser();xmlDoc=parser.parseFromString(txt,"text/xml");return(xmlDoc);}catch(e){}}return(null)};
in_array=function(needle,haystack){var found=false,key;for(key in haystack){if(haystack[key]==needle){found=true;break;}}return found;};
isMail=function(value){apos=value.indexOf("@");dotpos=value.lastIndexOf(".");return(apos<1||dotpos-apos<2)?false:true;};
function number_format(number,decimals,dec_point,thousands_sep){
    number=(number+'').replace(',', '').replace(' ','');
    var n=!isFinite(+number)?0:+number,
	prec = !isFinite(+decimals) ? 0 : Math.abs(decimals),
	sep = (typeof thousands_sep==='undefined') ? '' : thousands_sep,        dec = (typeof dec_point === 'undefined') ? '.' : dec_point,
	s = '',
	toFixedFix = function (n, prec) {
		var k=Math.pow(10,prec);
		return ''+Math.round(n*k)/k;
	};
	s = (prec ? toFixedFix(n, prec) : '' + Math.round(n)).split('.');
	if(s[0].length>3){s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep)}
	if((s[1]||'').length<prec){
		s[1] = s[1] || '';
		s[1]+=new Array(prec-s[1].length+1).join('0');
	}
	return s.join(dec);
}


ga=function(obj,attr){return urldecode(obj.getAttribute(attr))};
var globalData=null;
var unit='mm';
var ln=[];
switch(sys_lang){
	case 'lv':
		ln[0]='Lūdzu, izvēlieties vērtību visās izvēlnēs';
		ln[1]='Norādiet nosaukumu';
		ln[2]='Norādiet valsti';
		ln[3]='Norādiet e-pastu';
		ln[4]='Norādiet tālruni';
		ln[5]='Norādiet tekstu';
		ln[6]='Norādiet drošības kodu';
	break;
	case 'en':
		ln[0]='Please choose a value in all dropdown menus';
		ln[1]='Please specify your name';
		ln[2]='Please specify your country';
		ln[3]='Please specify your e-mail';
		ln[4]='Please specify your phone number';
		ln[5]='Please type the message';
		ln[6]='Please specify the Security key';
	break;
}
pataRound=function(n,s){
	var c=Math.ceil(n/s);
	return s*c
};
recalculateFields=function(obj){
	var v=$(obj).val();
	var r=$(obj).attr('rel');
	var A=$($('#'+r).find('.thickness').get(0)).val();
	var B=$($('#'+r).find('.width').get(0)).val();
	var C=$($('#'+r).find('.length').get(0)).val();
	var D=$($('#'+r).find('.rm').get(0)).val();
	var E=$($('#'+r).find('.m2').get(0)).val();
	var F=$($('#'+r).find('.m3').get(0)).val();
	if(A==0||B==0||C==0){
		var D='';
		var E='';
		var F='';
	}else if(D!=parseFloat(D)&&E!=parseFloat(E)&&F!=parseFloat(F)){
		var D='';
		var E='';
		var F='';
	}else{
		if(/rm/.test($(obj).attr('className'))){
			D=pataRound(D,C);
			if(unit=='mm'){
				D=D*1000
			}
			E=B*D;
			if(unit=='mm'){
				F=(A*B*D)/1000000000;
			}else{
				F=A*B*D;
			}
			$($('#'+r).find('.rm').get(0)).val(number_format((unit=='mm')? D/1000 : D,2));
			$($('#'+r).find('.m2').get(0)).val(number_format((unit=='mm')? E/1000000 : E,2));
			$($('#'+r).find('.m3').get(0)).val(number_format(F,2));
		}else if(/m2/.test($(obj).attr('className'))){
			D=E/B;
			if(unit=='mm'){D=D*1000}
			D=pataRound(D,C);
			E=B*D;
			F=E*A;
			if(unit=='mm'){F=F/1000000}
			$($('#'+r).find('.rm').get(0)).val(number_format(D,2));
			$($('#'+r).find('.m2').get(0)).val(number_format((unit=='mm')? E/1000 : E,2));
			$($('#'+r).find('.m3').get(0)).val(number_format(F,2));
		}else if(/m3/.test($(obj).attr('className'))){
			
//			No m3 uz r.m.: 0.27 (m3) / 0.012 (biezums) / 0.075 (platums) = 300 (nevis 3000)
//			No m3 uz m2: 0.27 (m3) / 0.012 (biezums) = 22.50 (nevis 225.0
			if(unit=='mm'){
				D=F/(A/1000)/(B/1000);
				D=pataRound(D,C/1000);
				//E=B*D;
				E=F/(A/1000);
				$($('#'+r).find('.rm').get(0)).val(number_format(D,2));
				$($('#'+r).find('.m2').get(0)).val(number_format(E,2));
				$($('#'+r).find('.m3').get(0)).val(number_format(F,2));
			}else{
				D=F/A/B;
				D=pataRound(D,C);
				E=B*D;
				$($('#'+r).find('.rm').get(0)).val(number_format(D,2));
				$($('#'+r).find('.m2').get(0)).val(number_format(E,2));
				$($('#'+r).find('.m3').get(0)).val(number_format(F,2));
			}
		}
		return;
	}
	$($('#'+r).find('.rm').get(0)).val(D);
	$($('#'+r).find('.m2').get(0)).val(E);
	$($('#'+r).find('.m3').get(0)).val(F);
};

reDrawData2=function(rowID){
	if(!globalData)return;
	var d=globalData.getElementsByTagName('d');
	var Species=$('#'+rowID).find('.species').get(0);
	var Thickness=$('#'+rowID).find('.thickness').get(0);
	var Width=$('#'+rowID).find('.width').get(0);
	var Length=$('#'+rowID).find('.length').get(0);

	var SpecieText=$($($('#'+rowID).find('.species').get(0)).find('option:selected')).text();
	var Specie=$($('#'+rowID).find('.species').get(0)).val();
	var Profile=$($('#'+rowID).find('.profile').get(0)).val();
	var Thickness_val=$($('#'+rowID).find('.thickness').get(0)).val();
	if(Thickness_val){
		var SpeciesID=$($($('#'+rowID).find('.thickness').get(0)).find('option:selected').get(0)).attr('rel');
	}
	var Width_val=$($('#'+rowID).find('.width').get(0)).val();
	var Length_val=$($('#'+rowID).find('.length').get(0)).val();
	var isP=$('#'+rowID).find('.profile').size();
	
	$($(Width).find('option')).remove();
	$($(Thickness).find('option')).remove();
	$($(Species).find('option')).remove();
	$($(Length).find('option')).remove();
	// ---<--- zero values
	$('<option value="0">---</option>').appendTo(Species);
	$('<option value="0">---</option>').appendTo(Thickness);
	$('<option value="0">---</option>').appendTo(Width);
	$('<option value="0">---</option>').appendTo(Length);
	// --->--- zero values
	var alreadyPrintedSpecies=[];
	var ActiveSpecie='';
	for(i=0;d.length>i;i++){
		if(isP && ga(d[i],'p')!=Profile){
			
		}else{
			var id=ga(d[i],'id');
			var name=ga(d[i],'n');
			if(!in_array(name,alreadyPrintedSpecies)){
				$('<option value="'+id+'">'+name+'</option>')
					.appendTo(Species)
					.attr('selected',Specie==id);
				if(!isP)alreadyPrintedSpecies[alreadyPrintedSpecies.length]=name;
			}
			if(Specie==id){
				ActiveSpecie=ga(d[i],'n');
			}
			
			if(!parseFloat(Specie)) continue;
			if(ActiveSpecie!=ga(d[i],'n')) 	;
			try{
				if(isP || SpecieText==name){
					var _t=ga(d[i],'t_'+unit).split(',');
					var _l=ga(d[i],'l_'+unit).split(',');
					var _w=ga(d[i],'w_'+unit).split(',');
					if(_t.length){
						for(var i2=0;_t.length>i2;i2++){
						$('<option value="'+_t[i2]+'">'+_t[i2]+'</option>')
							.attr({'selected':Thickness_val==_t[i2],'rel':id})
							.appendTo(Thickness);
						}
					}
					
					if(isP || SpeciesID==id){
						if(_w.length){
							for(var i2=0;_w.length>i2;i2++){
								$('<option value="'+_w[i2]+'">'+_w[i2]+'</option>')
									.appendTo(Width)
									.attr('selected',Width_val==_w[i2]);
							}
						}
						
						if(_l.length){
							for(var i2=0;_l.length>i2;i2++){
								$('<option value="'+_l[i2]+'">'+_l[i2]+'</option>')
									.appendTo(Length)
									.attr('selected',Length_val==_l[i2]);
							}
						}
					}
				}
			}catch(e){
			
			}

		}
	}
};

getRowUM=function(){
	return $('.calc-row').size() ? parseFloat($($('.calc-row').get($('.calc-row').size()-1)).attr('id').replace('row_','')) : 0;
};

addRow=function(rel,target,um){
	var rel=rel.split('|');
	var group=$(rel).get(0);
	var type=$(rel).get(1);
	$(dataCalendar('act=addRow&type='+type+'&group='+group+'&um='+um)).appendTo(target);
	var xml=dataCalendar('act=loadCalculatorData&type='+type+'&group='+group);
	if(!globalData){globalData=loadXML(xml)}
	var rowID='row_'+(um+1);
	reDrawData2(rowID);
	$($('#'+rowID).find('.profile').get(0)).change(function(){reDrawData2($(this).attr('rel'))});
	$($('#'+rowID).find('.species').get(0)).change(function(){reDrawData2($(this).attr('rel'))});
	$($('#'+rowID).find('.thickness').get(0)).change(function(){reDrawData2($(this).attr('rel'))});
	$($('#'+rowID).find('.width').get(0)).change(function(){reDrawData2($(this).attr('rel'))});
	$($('#'+rowID).find('.length').get(0)).change(function(){reDrawData2($(this).attr('rel'))});
	$('.removeButton').click(function(){
		$('#row_'+$(this).attr('rel')).remove();
	});
	$('.m3, .m2, .rm').change(function(){
		recalculateFields($(this));
	});
	$('.thickness, .width, .length').change(function(){
		$($('#'+$(this).attr('rel')).find('.m3').get(0)).val('');
		$($('#'+$(this).attr('rel')).find('.m2').get(0)).val('');
		$($('#'+$(this).attr('rel')).find('.rm').get(0)).val('');
	});
};

$(document).ready(function(){
	
	$('.calculator').each(function(){
		$($(this).find('form').get(0)).submit(function(e){
			var ok=0;
			var stop=0;
			$('.calc-row').each(function(){
				if(!stop){
					var f6s=parseFloat($($(this).find('.rm').get(0)).val());
					var f7s=parseFloat($($(this).find('.m2').get(0)).val());
					var f8s=parseFloat($($(this).find('.m3').get(0)).val());
					if(!f6s||f7s||f8s) {
						var f1s=$(this).find('.profile').size();
						var f2s=$(this).find('.species').size();
						var f3s=$(this).find('.thickness').size();
						var f4s=$(this).find('.width').size();
						var f5s=$(this).find('.length').size();
						var f1=f1s ? $($(this).find('.profile').get(0)).val() : 1;
						var f2=f2s ? $($(this).find('.species').get(0)).val() : 1;
						var f3=f3s ? $($(this).find('.thickness').get(0)).val() : 1;
						var f4=f4s ? $($(this).find('.width').get(0)).val() : 1;
						var f5=f5s ? $($(this).find('.length').get(0)).val() : 1;
						if((!f1||f1=='0')||(!f2||f2=='0')||(!f3||f3=='0')||(!f4||f4=='0')||(!f5||f5=='0')){
							stop=1;
							alert(ln[0]);
							e.preventDefault();
							return false
						} else {
							ok=1;
						}
					} else {
						ok=1;
					}
				}
			});
			if(!ok&&!stop){
				alert(ln[0]);
				e.preventDefault();
				return false;
			}
			
		});
		addRow($(this).attr('rel'),$(this).find('table').get(0),getRowUM());
		
		
	});
	$('.type-submit').hover(
		function(){$(this).addClass('type-submit-hovered')},
		function(){$(this).removeClass('type-submit-hovered')}
	);
	$('.gray').hover(
		function(){$(this).addClass('gray-hovered')},
		function(){$(this).removeClass('gray-hovered')}
	);
	
	unit=$('#unit').val();
	$('#unit').change(function(){
		unit=$(this).val();
		switch($('#unit').val()){
			case 'mm':
				$('#unitinput').val('mm');
				$('#unit1').html('r.m.');
				$('#unit2').html('m<sup>2</sup>');
				$('#unit3').html('m<sup>3</sup>');
				$('#unit4').html('mm');
				$('#unit5').html('mm');
				$('#unit6').html('mm');
			break;
			case 'ft':
				$('#unitinput').val('ft');
				$('#unit1').html('r.ft');
				$('#unit2').html('ft<sup>2</sup>');
				$('#unit3').html('ft<sup>3</sup>');
				$('#unit4').html('ft');
				$('#unit5').html('ft');
				$('#unit6').html('ft');
			break;
		}
		$('.calc-row').each(function(){reDrawData2($(this).attr('id'))});
		
	});
	
	$('#forma').submit(function(){
		if(!$('#ff1').val().length){alert(ln[1]);$('#ff1').focus();return false}
		if(!$('#ff3').val().length){alert(ln[2]);$('#ff3').focus();return false}
		if(!isMail($('#ff4').val())){alert(ln[3]);$('#ff4').focus();return false}
		if(!$('#ff5').val().length){alert(ln[4]);$('#ff5').focus();return false}
		if(/other-products/.test(window.location)){
			if(!$('#ff7').val().length){alert(ln[5]);$('#ff7').focus();return false}
		}
		if($('#ff8').val().length!=4){alert(ln[6]);$('#ff8').focus();return false}
	});
		
	$('#addNewRow').click(function(e){
		e.preventDefault();
		var table=null;
		var rel=$(this).attr('rel');
		$('.calculator').each(function(){if(rel==$(this).attr('rel')){table=$(this).find('table').get(0)}});
		addRow(rel,table,getRowUM());
		
	});
	
	$('.gray[type=button]').click(function(){window.location='/'+sys_lang+'/other-products'});
	
});
