var XmlHttp = getXmlHttp();


function getCetelem(){	
try{		
	var cXmlHttp = getXmlHttp();	
	var parameters = getCetParams();		
	cXmlHttp.open('POST','/cetelem.php',true); 
//	if(XmlHttp.readyState == 4 || XmlHttp == 0  )	  
	cXmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	cXmlHttp.setRequestHeader("Content-length", parameters.length);
	cXmlHttp.setRequestHeader("Connection", "close");     
	cXmlHttp.onreadystatechange = function(){ cetHandleResponse(cXmlHttp); }  ;
	cXmlHttp.send(parameters);	
	return false;
	
	}
	catch(e){
		alert(e.toString());
	}
	
}


// pridavani do kosiku
function process(){	
try{	
	//XmlHttp.overrideMimeType('text/html')
	var parameters = getCartParams();	
	XmlHttp.open('POST','/cart.php',true); 
//	if(XmlHttp.readyState == 4 || XmlHttp == 0  )	  
	XmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	XmlHttp.setRequestHeader("Content-length", parameters.length);
	XmlHttp.setRequestHeader("Connection", "close");     
	XmlHttp.onreadystatechange = handleResponse ;
	XmlHttp.send(parameters);	
	return false;
	
	}
	catch(e){
		alert(e.toString());
	}
	
}
// vytvoreni objednavky
function create_order(){
try{	
	parameters = getOrderParams();
	//alert(parameters);
	XmlHttp.open('POST','/objednavka_ajax.php',true);
	//XmlHttp.open('POST','/php.php',true);
	    
	XmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");	
	XmlHttp.setRequestHeader("Content-length", parameters.length);
	XmlHttp.setRequestHeader("Connection", "close");     
	XmlHttp.onreadystatechange = handleOrderResponse ;
	XmlHttp.send(parameters);		
	return true;	
}
catch(e){
	alert("create order: " + e.toString());
	return true;
}	
}

function getXmlHttp(){
 
      var http_request = false;
      if (window.XMLHttpRequest) { // Mozilla, Safari,...
         http_request = new XMLHttpRequest();
         if (http_request.overrideMimeType) {
         	// set type accordingly to anticipated content type
            http_request.overrideMimeType('text/xml');
           // http_request.overrideMimeType('text/html');
         }
      } else if (window.ActiveXObject) { // IE
         try {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
         } catch (e) {
            try {
               http_request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
         }
      }
      if (!http_request) {
         alert('Cannot create XMLHTTP instance');
         return false;
      }
      return  http_request;
}


function handleOrderResponse(){
	
	var response_block = document.getElementById("kos");
	
	if(XmlHttp.readyState == 2){
		display_img(response_block); 		
	 } 	
	
	if(XmlHttp.readyState == 4){
			try{
				if(XmlHttp.status == 200){					
					zpracujOdpoved(response_block);
				}			
			}
			catch(e){
				alert("Chyba v prijimani odpovedi status 200, stav 4 : " +e.toString());
			}				
	 }	
}	

function zpracujOdpoved(response_block){
	var xml_doc = XmlHttp.responseXML ;		
	//alert(XmlHttp.responseText);
	if(xml_doc.documentElement.tagName == "error"){	
		response_block.removeChild(document.getElementById("foto"));
		response_block = document.getElementById("form_info");
		response_block.innerHTML = '';		
	}
	else{
		while(response_block.hasChildNodes()) response_block.removeChild(response_block.childNodes[0]);
	}
			
	if(!xml_doc || !xml_doc.documentElement) throw ("Invalid XML structure!");				
	var xmlRoot = xml_doc.documentElement ;	
	var pocet = xmlRoot.childNodes.length ;
		
	for(var i=0;i < pocet; i++){		
		var elm = document.createElement(xmlRoot.childNodes[i].tagName);
		// osetreni pro IE, jak jinak 
		// pro jednoduche elementy
		if(xmlRoot.childNodes[i].tagName ==  'form'){
			var form = xmlRoot.childNodes[i] ;			
			//var input = xmlRoot.getElementsByTagName('input');
			elm.setAttribute('action','https://www.cetelem.cz/cetelem2_webshop.php/zadost-o-pujcku/on-line-zadost-o-pujcku');
			elm.setAttribute('method','post');			
			for(var e=0; e< form.childNodes.length;e++){			
				var inp  = document.createElement('input');
				inp.setAttribute('type','hidden');
				inp.setAttribute('value',form.childNodes[e].getAttribute('value'));	
				inp.setAttribute('name',form.childNodes[e].getAttribute('name'));				
				elm.appendChild(inp);		
			}
			var inp  = document.createElement('input');
			inp.setAttribute('type','submit');
			inp.setAttribute('value','Dokončit žádost o půjčku');			
			elm.appendChild(inp);
			//form.setAttribute("style","display:block;visibility:visible;");											
			//response_block.appendChild(elm);					
		}
		else{
			if(xmlRoot.childNodes[i].nodeType == 3){			
				var onlytext =  xmlRoot.childNodes[i].nodeValue ;			
			}
			else{
				var onlytext =  xmlRoot.childNodes[i].childNodes[0].nodeValue ;
			}	
		 	var text = document.createTextNode(onlytext);	
			elm.appendChild(text);			
		}
		response_block.appendChild(elm);								
	}
	
	response_block.className = "cart_empty strong minheigt ";	
	
	
}
function getNodeValue(obj,tag)
{
	return obj.getElementsByTagName(tag)[0].firstChild.nodeValue;
}

function display_img(el){
	// natvrdo loading gif
	var sourc = "graphic/loading.gif";
	im = document.createElement('img');
    im.id = 'foto';
    im.src = sourc ;
    im.setAttribute('style', 'z-index:99;position: absolute; top: 400px;left:600px');    
    el.appendChild(im);	
}


function handleResponse(){
	
	var response_block = document.getElementById("response_text");

	if(XmlHttp.readyState == 2) response_block.innerHTML = "Nahravam data ze serveru";
	if(XmlHttp.readyState == 4 && XmlHttp.status == 200) {	
		var response = XmlHttp.responseText;		
		response_block.innerHTML = response  ;	
		var form = document.getElementById('prechod');
		form.innerHTML ="<form method='post' action='/kosik.php'><fieldset><div class='cart_line'><div class='cart_text'><input style='width:240px' type='submit' value='Přejít k objednávce' /></div></div></fieldset></form>";		
	}
	else return false;
}

// prijem odpovedi, nastaveni potrebnych elementu na strance
function cetHandleResponse(cXmlHttp){
try{
	
	if(cXmlHttp.readyState == 2){
		//display_img(document.getElementById("kos")); 		
	 } 
	
	if(cXmlHttp.readyState == 4 && cXmlHttp.status == 200) {	
		var response_fieldset = document.getElementById("cetelem");
			// nastavim hodnoty rucne
		var ary_text = new Array('cenaUveru_text','RPSN_text','vyseSplatky_text', 'vyseUveru_text','primaPlatba_text');
		var ary_input = new Array('cenaUveru','RPSN', 'vyseSplatky','vyseUveru','primaPlatba'  ,'ursaz','odklad','zdarma',
		'cenaUveru','ursaz','RPSN','kodPojisteni','kodBaremu','pocetSplatek');	
				//alert(cXmlHttp.responseText);		
		var xml_doc = cXmlHttp.responseXML;			
	
		if(!xml_doc || !xml_doc.documentElement) throw ("Invalid XML structure!");		
		var xmlRoot = xml_doc.documentElement ;

		info = xmlRoot.getElementsByTagName('status');
		// zobraz info			
		var info =  getText(info[0]);
			
		if(info != 'ok'){
			textNode = document.createTextNode(info);
			response_fieldset.appendChild(textNode);
		}
		else{		
			//document.getElementsByTagName()
									
			var i;
			for(i=0;i < ary_text.length; i++){				
				// potrebne prvky koresponduji  ary a input ary				 				
				var tag = xmlRoot.getElementsByTagName(ary_input[i]) ;						
				var html_el = document.getElementById(ary_text[i]);
				if(html_el)	html_el.innerHTML = getText(tag[0]);				
				//alert(getText(tag[0]));															
			}	
			
			for(i=0;i < ary_input.length; i++){				
				// potrebne prvky koresponduji  ary a input ary				 				
				var tag = xmlRoot.getElementsByTagName(ary_input[i]) ;						
				var html_el = document.getElementById(ary_input[i]);
				if(html_el)	html_el.value = getText(tag[0]);																			
			}			
		
		}	
								//alert(cXmlHttp.responseText);
		//response_fieldset.innerHTML = cXmlHttp.responseText;		
	}
	else return false;
}
catch(e){
	alert("Chyba v prijimani odpovedi ze stranek cetelemu : " +e.toString());
	return false;
}	
}

// tweak pro IE
function getText(node){
	
	try{				
		if(node.nodeType != 'undefined'){
			
			var text = '';
				if(node.nodeType == 3){			
					 text =  node.nodeValue ;			
				}
				else{
					 text =  node.childNodes[0].nodeValue ;
				}
				
			return text;
		}
		else{
			return '';
		}
	}
	catch(e){
		alert("Chyba v ziskani textu : " +e.toString());
	}
}


// proc javascript, vratim z php a basta
function validateOrder(){
	
	fields = new Object();
	fields["jmeno"] = /\S+/i ;
	fields["prijmeni"] = /\S+/i ;
	fields["email"] =  /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/ ;
	fields["dmesto"] =  /\S+/i ;
	fields["dpsc"] = /^\d+\s?\d{0,2}$/ ;
	fields["telefon"] = /^\d+$/ ;	
	
	var info = document.getElementById("form_info");
	
	input = document.getElementsByName(field_name.name);		
	var result = fields[field_name.name].test(input[0].value);					
		if(!result){
			var p= document.createElement("p");
			var br = document.createElement("br");
			p.innerHTML = " Prosim zadejte spravne polozku v poli " + (field_name.name)  ;
			info.appendChild(p);
			stop = true;			
		}
	if(stop == true) return false;
	return true;
} 

function getOrderParams(){
	
	// get user info
	var form = document.getElementById('registration');
    var inputy = form.getElementsByTagName('input');
    var textarea = form.getElementsByTagName('textarea');
    var prodejce = document.getElementById('prodejce');    
	var text= '';
	
	for(i=0;i<inputy.length; i++){
		if(inputy[i].name =='platba' && !inputy[i].checked) continue; // alert(inputy[i].value +' checked = '. inputy[i].checked);
		text += (encodeURIComponent(inputy[i].name) + "=" + encodeURIComponent(inputy[i].value) + "&"  );	
	}
	// jeste textarea
	for(i=0;i<textarea.length; i++){
		//if(textarea[i].name =='platba' && !inputy[i].checked) continue; // alert(inputy[i].value +' checked = '. inputy[i].checked);
		text += ( encodeURIComponent(textarea[i].name) + "=" + encodeURIComponent(textarea[i].value) + "&"  );	
	}	
	
		//if(textarea[i].name =='platba' && !inputy[i].checked) continue; // alert(inputy[i].value +' checked = '. inputy[i].checked);
	
	text += ( encodeURIComponent('prodejce') + "=" + encodeURIComponent(prodejce.value) + "&"  );	
		
	
	
	text += "ajax=true";
	return text;
}

function getCartParams(){	
	var select;
	var text;
	var params;
	var kusu;
	select = document.getElementsByName('velikosti');
	kusu = document.getElementsByName('kusu');
	var val = (select[0].options[select[0].options.selectedIndex].value).split("-") ;	
	params = "kusu="+ kusu[0].value +"&id=" + val[0] + "-"+ val[1] + "&ajax=true&action=add" ;	 
	return params;
	
}
function getCetParams(){
	//document.g`
	var fieldset = document.getElementById('cetelem');
	var i;
	var inputy = fieldset.getElementsByTagName('input');	
	var selecty = fieldset.getElementsByTagName('select');
	var text= '';

	// jeste prepocitani prime platby	
	prepoctiPlatbu();			
	// deaktivace poli 
	skryjPole();
		
	for(i=0;i<inputy.length; i++){		 	
		text += ( encodeURIComponent(inputy[i].name) + "=" + encodeURIComponent(inputy[i].value) + "&"  );	
	}
	for(i=0;i<selecty.length; i++){
		//if(inputy[i].value == '') continue;				
		text += ( encodeURIComponent(selecty[i].name) 
		+ "=" + encodeURIComponent(selecty[i].options[selecty[i].options.selectedIndex].value) + "&"  );	
	}
	
	text += "ajax=true";
	//alert(text);
	return text;
}
function prepoctiPlatbu(){	
try{
	var primaPlatba = document.getElementById('primaPlatba');
	var vyseUveru = document.getElementById('vyseUveru');
	var vyseUveru_text = document.getElementById('vyseUveru_text');
	var cenaZbozi = document.getElementById('cenaZbozi');	
	var vyse_uveru = (cenaZbozi.value - primaPlatba.value) ;	
	vyseUveru_text.innerHTML =  vyse_uveru ;  
	vyseUveru.value =  vyse_uveru ;
}
catch(e){
	alert('chyba v prepocitavani prime platby'+ e.toString());
}
	
}

// funkce znepristupnuje policka pro zadavani hodnot pujcky, ktere nemeni vysledek, zobrazi info o uveru
function skryjPole(){
try{
	var typ_uveru  = document.getElementById('typUveru');
	var select_pocet  = document.getElementById('pocet');
	var primaPlatba  = document.getElementById('primaPlatba');
	var info_uver_p = document.getElementById('info_uver');
	info_uver_p.innerHTML = '';
	
	if(typ_uveru.options[typ_uveru.options.selectedIndex].value  != 100){		
		for(var i=0; i< select_pocet.options.length;i++ ){		
			select_pocet.options[i].disabled = true ;		
		}	
		primaPlatba.disabled = true;				
	}
	else{
		for(var i=0; i< select_pocet.options.length;i++ ){		
			select_pocet.options[i].disabled = false ;		
		}	
		primaPlatba.disabled = false;					
	}
	if(typ_uveru.options[typ_uveru.options.selectedIndex].value  == 104){
		for(var i=0; i< select_pocet.options.length;i++ ){		
			if(select_pocet.options[i].value == 10) select_pocet.options[i].selected= true ;		
		}	
	info_uver_p.innerHTML = "Tento úvěr přitahuje svou jednoduchostí a výhodností. Navýšení představuje pouze 10% z ceny.<br /><strong>Specifikace:</strong><br />&nbsp;-výše úvěru od 3 000 do 80 000 Kč<br />&nbsp;-přímá platba 10% <br />&nbsp;-počet měsíčních splátek 10<br />&nbsp;-výše měsíční splátky 10 % z ceny";		
	}
	
	if(typ_uveru.options[typ_uveru.options.selectedIndex].value  == 216){
		for(var i=0; i< select_pocet.options.length;i++ ){		
			if(select_pocet.options[i].value == 20) select_pocet.options[i].selected= true ;		
		}			
	info_uver_p.innerHTML = 'KLASICKÝ SPOTŘEBITELSKÝ ÚVĚR, který umožňuje klientovi splatit úvěr bezúročně nebo standardně ve 20 měsíčních splátkách ve výši 6% z ceny zboží.<br /><strong>Specifikace:</strong> <br />&nbsp;-možnost zvolit si způsob splácení<br />&nbsp;-bezúročná varianta<br />&nbsp;-nulová přímá platba<br />&nbsp;-výše splátky pouze 6 % z ceny zboží<br />Klient se může rozhodnout splatit celý úvěr bez navýšení, a to formou 6 měsíčních splátek a doplatku nebo standardně splácet 20 měsíčních splátek ve výši 6 % z ceny zboží. Nepotřebuje hotovost, na prodejně nic neplatí.';		
	}
	if(typ_uveru.options[typ_uveru.options.selectedIndex].value  == 100){
	info_uver_p.innerHTML = 'Umožňuje nákup zboží na splátky dle potřeb klienta. Výše splátek a délka splácení je přizpůsobena jeho finančním možnostem. Přímá platba již od 0%. ';		
	}	
	
	
	}
	catch(e){
	alert('Chyba:'+ e.toString());
}
}

