function $() {
	var elements = new Array();
	for (var i = 0; i < arguments.length; i++) {
		var element = arguments[i];
		if (typeof element == 'string')
			element = document.getElementById(element);
		if (arguments.length == 1)
			return element;
		elements.push(element);
	}
	return elements;
}
function do_select(select, fieldset) {
    if(get_value(select) == '1') {
        $(fieldset).style.display="";
    } else $(fieldset).style.display="none";
}
function do_services() {
	var dn = $('SelDN').style.display;
	var ho = $('SelHosting').style.display;
	
	if(dn == 'none') $('SrvDN').style.display = "none";
	else {
	    $('SrvDN').style.display = "";
	    do_select('SrvDNSel', 'SrvDN');
	}
	
	if(ho == 'none') $('SrvHosting').style.display = "none";
	else {
	    $('SrvHosting').style.display = "";
	    do_select('SrvHostingSel', 'SrvHosting');
	}

}
function check_domain(name,d_tld) {
   	tld = d_tld;
   	document.getElementById('ErrorText').style.color="goldenrod";
   	document.getElementById('ErrorText').innerHTML = "ověření domény...";
   	$('Bubble2').style.display = "none";

	$('SelDN').style.display = "none";
	$('SelHosting').style.display = "none";
	do_services();
		
	if (!send_request(check_domain_obsluha, 'GET', 'xml/checkdomain.php?d=' + name + "&t=" + d_tld)) { 
		return false; 
	}
}
function get_programs(tld) {
	if (!send_request(get_programs_obsluha, 'GET', 'xml/periods.php?tld='+tld)) { 
		return false; 
	}
}
function check_login(name) {
   	var ElemBox = document.getElementById('login_report');
	ElemBox.style.color="silver";
	ElemBox.innerHTML = "ověřuji...";
	if (!send_request(check_login_obsluha, 'GET', 'xml/users.php?l=' + name)) { 
		return false; 
	}
}


function fill_bubble(prog) {
   	var bubble = document.getElementById('Bubble1');
   	if(prog != 0) {
		bubble.style.display = "";
		if (!send_request(fill_bubble_obsluha, 'GET', 'xml/prg_details.php?pid=' + prog)) { 
			return false; 
		}
	} else bubble.style.display = "none";
}
   function fill_bubble_obsluha(http_request) {
      if (http_request.readyState == 4 && http_request.status == 200) {
		var xmldoc = http_request.responseXML;
		var root = xmldoc.getElementsByTagName('xmlresponse').item(0);
		//  if(root.getElementsByTagName('status')[0].hasChildNodes()) {
		var stats = root.getElementsByTagName('Stats')[0].firstChild.data; if(stats == 1) stats = "ano"; else stats = "ne";
		var ssl = root.getElementsByTagName('SSL')[0].firstChild.data; if(ssl == 1) ssl = "ano"; else ssl = "ne";
		var space = root.getElementsByTagName('LimitSpace')[0].firstChild.data; switch(parseInt(space)) { case -1: space = "žádný"; break; case 0: space = "neomezeně"; break; }
		var traffic = '';
		var traffic_int = root.getElementsByTagName('LimitTraffic')[0].firstChild.data; switch(parseInt(traffic_int)) { case -1: traffic = "žádný"; break; case 0: traffic = "neomezeně"; break; default: traffic = traffic_int; break; }
		var mesice = root.getElementsByTagName('BillPeriod')[0].firstChild.data; //if(mesice == 0) mesice = "";
		var price_over_traffic = parseInt(root.getElementsByTagName('OverLimitGBPrice')[0].firstChild.data);
		var bubble = document.getElementById('Bubble1');
        var cena = parseFloat(root.getElementsByTagName('ProgramPrice')[0].firstChild.data);
        var cenas = Math.round(cena * 1.19);
        
        bubble.innerHTML = "Vybraný program: " + root.getElementsByTagName('ProgramName')[0].firstChild.data + "<br>Cena za měsíc (bez dph/s dph) : " +
        	 cena + " Kč / " + cenas + " Kč<br>Diskový prostor / Měsíční traffic: " +
        	space + " / " + traffic + "<br>Minimální účtovací období: " +
        	mesice + " (měsíce)<br>Statistiky / SSL: " +
        	stats + " / " + ssl + "";
	 if(mesice > 0) {
	 	document.getElementById('billper').style.display="";
	 	var selectBox = document.getElementById('bill_period');
		while(selectBox.hasChildNodes()) { // vyčistit selectbox
		  selectBox.removeChild(selectBox.childNodes[0])
		}
	 	for(var i = mesice; i <= 12; i++) {
			var option = document.createElement('option');
			var y = '';
			switch(parseInt(i)) {
				default: y = i + " měsíců"; break;
				case 1: y = i + " měsíc"; break;
				case 2: case 3: case 4: y = i + " měsíce"; break;
				case 12: y = "1 rok"; break;
			}
			var title = document.createTextNode(y);
			option.value = i;
			option.appendChild(title);
			selectBox.appendChild(option);
	 	}
	 } else document.getElementById('billper').style.display="none";
	 if(parseInt(traffic_int) > 0) {
	 	document.getElementById('over_traffic').style.display="";
	 	document.getElementById('over_traffic_price').innerHTML = price_over_traffic;
	 } else document.getElementById('over_traffic').style.display="none";
	}
   }
   function toogle_overtraffic_note(selectB) {
   	document.getElementById('over_traffic_note').style.display="none";
   	if(get_value(selectB) == '2') document.getElementById('over_traffic_note').style.display="";
   }
   function check_domain_obsluha(http_request) {
      if (http_request.readyState == 4) {
         if (http_request.status == 200) {

            var xmldoc = http_request.responseXML;
            var root = xmldoc.getElementsByTagName('xmlresponse').item(0);
               	if(root.getElementsByTagName('status')[0].hasChildNodes())
               		var name = root.getElementsByTagName('status')[0].firstChild.data;
					var ability = root.getElementsByTagName('registerable')[0].firstChild.data;
					var domena = root.getElementsByTagName('domain')[0].firstChild.data;
					var tld = root.getElementsByTagName('tld')[0].firstChild.data;
                var ElemBox = document.getElementById('Bubble2');
                //var ElemBox = document.getElementById('ErrorText');
                $('ErrorText').innerHTML = "";
                $('Bubble2').style.display = "";
                ElemBox.innerHTML = "<div style='text-align: center; font-weight: bold; font-size: 12pt'>"+domena+"</div>";
                var ButtonC = document.getElementById('FormContinue');
				switch(name) {
	                 case '2':
	              		get_programs(tld);
	              		document.getElementById('perrow').style.display="";
	              		$('authid').style.display = "none";
	              		if(ability == 'Y') {
							ElemBox.style.color="green";
							ElemBox.innerHTML = ElemBox.innerHTML + "Doménové jméno lze zaregistrovat. <input type='hidden' name='is_new_domain' value='1' /> <br />U domény lze zaregistrovat hosting.";
							ButtonC.disabled=false;
							
							$('SelDN').style.display = "";
							$('SelHosting').style.display = "";
	                       // do_services();							
	                        
                            var select = $('SrvDNSel');
		                    while(select.hasChildNodes()) { // vyčistit selectbox
		                      select.removeChild(select.childNodes[0]);
		                    }
                            var opt = document.createElement('OPTION');
                            opt.value = '1';
                            opt.text = 'MÁM zájem o doménové jméno';
                            select.options.add(opt, 0);
                            var opt1 = document.createElement('OPTION');
                            opt1.value = '0';
                            opt1.text = 'NEMÁM zájem o doménové jméno';
                            select.options.add(opt1, 0);
							
						} else {
							ElemBox.style.color="red";
							ElemBox.innerHTML = ElemBox.innerHTML + "Doménové jméno nelze zaregistrovat automaticky. Registrovat jej musíte ručně.";
							document.getElementById('perrow').style.display="none";
							$('authid').style.display = "none";
							ButtonC.disabled=false;						
							
							$('SelDN').style.display = "block";
							$('SelHosting').style.display = "";
						}
						do_services();
	              	break;
	              	case '0':
	              		ElemBox.style.color="red";	              		
	              		ElemBox.innerHTML = ElemBox.innerHTML + "Neplatný název domény.";
	              		document.getElementById('perrow').style.display="none";
	              		$('authid').style.display = "none";
	              		ButtonC.disabled=true;

						$('SelDN').style.display = "none";
						$('SelHosting').style.display = "none";
					    do_services();
					    

                        var select = gebi('selecR');
                        if(select.options[0].value == '0') select.remove(0);
	              	break;
	              	case '3':
	              		ElemBox.style.color="dimgray";
	              		ElemBox.innerHTML = ElemBox.innerHTML + "Tato doména už webhosting u nás zaregistrovaný má.";
	              		document.getElementById('perrow').style.display="none";
	              		$('authid').style.display = "none";
	              		ButtonC.disabled=true;
						
						$('SelDN').style.display = "none";
						$('SelHosting').style.display = "none";
						do_services();
						
	              	break;
	              	default:
	              		ElemBox.innerHTML = ElemBox.innerHTML + "";
	              	break;
	              	case '1':
	              		ElemBox.style.color="green";
	              		ElemBox.innerHTML = ElemBox.innerHTML + "Tato doména je již zaregistrována. Pokud jste jejím majitelem, můžeme Vám nabídnout webhosting a její plnou správu.";
	              		document.getElementById('perrow').style.display="none";
	              		ButtonC.disabled=false;
	              		
	              		if(tld == 'cz') {
                            var select = $('SrvDNSel');
	                        while(select.hasChildNodes()) { // vyčistit selectbox
	                          select.removeChild(select.childNodes[0]);
	                        }
                            var opt = document.createElement('OPTION');
                            opt.value = '1';
                            opt.text = 'MÁM zájem o převod doménového jména do správy mysh.cz';
                            select.options.add(opt, 0);
                            var opt1 = document.createElement('OPTION');
                            opt1.value = '0';
                            opt1.text = 'NEMÁM zájem o převod doménového jména do správy mysh.cz';
                            select.options.add(opt1, 0);
                            $('SelDN').style.display = "";
                            $('authid').style.display = "";
                        } else $('SelDN').style.display = "none";
						
						$('SelHosting').style.display = "";
                        do_services();
                        
                        var select = gebi('selecR');
                        if(select.options[0].value == '0') select.remove(0);
	              	break;	              	
	            }
              	//}
         } else {
            alert('There was a problem with the request.');
         }
      }
   }
   function check_login_obsluha(http_request2) {
      if (http_request2.readyState == 4) {
         if (http_request2.status == 200) {
            var xmldoc = http_request2.responseXML;
            var root = xmldoc.getElementsByTagName('xmlresponse').item(0);
               	if(root.getElementsByTagName('exists')[0].hasChildNodes())
               		var exists = root.getElementsByTagName('exists')[0].firstChild.data;
                var ElemBox = document.getElementById('login_report');
                var ButtonC = document.getElementById('FormContinue');
                switch(exists) {
	                 case 'N':
	              		//ElemBox.style.color="green";
	              		ElemBox.innerHTML = "";
	              		ButtonC.disabled=false;
	              	break;
	              	case 'Y':
	              		ElemBox.style.color="red";	              		
	              		ElemBox.innerHTML = "<img align='absmiddle' src='redesign/16Error.png' alt='' /> Jméno je obsazené.";
	              		ButtonC.disabled=true;
	              	break;
	              	case 'B':
	              		ElemBox.style.color="red";
	              		ElemBox.innerHTML = "<img align='absmiddle' src='redesign/16Error.png' alt='' /> Zakázané přihlašovací jméno.";
	              		ButtonC.disabled=true;
	              	break;
	              	default:
	              		ElemBox.innerHTML = "";
	              	ButtonC.disabled=false;
	              	break;
	            }
              	//}
         } else {
            alert('There was a problem with the request.');
         }
      }
   }

   function get_programs_obsluha(http_request2) {
      if (http_request2.readyState == 4) {
         if (http_request2.status == 200) {

            var xmldoc = http_request2.responseXML;
            var root = xmldoc.getElementsByTagName('xmlresponse').item(0);

			var selectBox = document.getElementById('period');
		    // vycistit stare zaznamy pred vykreslinim novych
		    while(selectBox.hasChildNodes()) {
		      selectBox.removeChild(selectBox.childNodes[0])
		    }
            var s_count = 0;
            for (var iNode = 0; iNode < root.childNodes.length; iNode++) {
               var node = root.childNodes.item(iNode);
               if(node.childNodes.length > 0) {
               	var option = document.createElement('option');
               	if(node.getElementsByTagName('period')[0].hasChildNodes())
               		var period = node.getElementsByTagName('period')[0].firstChild.data;
               	if(node.getElementsByTagName('y')[0].hasChildNodes())
               		var y = node.getElementsByTagName('y')[0].firstChild.data;
               	else var y = '';
               	if(node.getElementsByTagName('price')[0].hasChildNodes())
               		var price = node.getElementsByTagName('price')[0].firstChild.data;
               	var title = document.createTextNode(period+" "+y+" | "+price);
               	option.value = period;
               	option.appendChild(title);
               	selectBox.appendChild(option);
               	++s_count;
               }
            }
           /* if(s_count == 0) {
            	var opt = document.createElement('optgroup');
            	var title = document.createTextNode('žádné školení není dostupné');
            	opt.appendChild(title);
               	selectBox.appendChild(opt);
            }*/
         } else {
            alert('There was a problem with the request.');
         }
      }
   }

   function get_value(elem) {
   	var Box = document.getElementById(elem);
   	if(Box.selectedIndex >= 0)
	   	return Box.options[Box.selectedIndex].value;
   }
   function get_value_i(elem) {
	return document.getElementById(elem).value;
   }
	function check_Sec(value) {
		if(value=="new") {
			document.getElementById("new_area").style.display="block";
			document.getElementById("existing_area").style.display="none";
		} else {
			document.getElementById("new_area").style.display="none";
			document.getElementById("existing_area").style.display="block";
		}
	}
	function check_phone(text) {
		var ElemBox = document.getElementById('phone_report');
		var ButtonC = document.getElementById('FormContinue');
		var phoneRE = /^\+\d\d\d\.\d\d\d\d\d\d\d\d\d$/;
		//var phoneRE = /^\+\d\d\d\.\d\d\d\d\d\d\d\d\d$/;
		 if (text.match(phoneRE)) {
		   		ElemBox.innerHTML = "";
				ButtonC.disabled=false;
		 } else {
				ElemBox.style.color="red";	              		
				ElemBox.innerHTML = "<img align='absmiddle' src='redesign/16Error.png' alt='' /> Číslo není ve správném formátu. (+420.123456789)";
		   return false;
		 } 		
	}
	function check_mail(text) {
		var ElemBox = document.getElementById('mail_report');
		var ButtonC = document.getElementById('FormContinue');
		var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
		 if (text.match(filter)) {
		   		ElemBox.innerHTML = "";
				ButtonC.disabled=false;
		 } else {
				ElemBox.style.color="red";	              		
				ElemBox.innerHTML = "<img align='absmiddle' src='redesign/16Error.png' alt='' /> E-mail není ve správném formátu.";
		   return false;
		 } 		
	}
	function check_passwords(P,D) {
		var Prvni = get_value_i(P);
		var Druhe = get_value_i(D);
		var ElemBox = document.getElementById('password_report');
		var ButtonC = document.getElementById('FormContinue');
		if(Prvni.length > 3 ) {
			if(Prvni == Druhe) {
				ElemBox.innerHTML = "";
				ButtonC.disabled=false;
			} else {
				ElemBox.style.color="red";	              		
				ElemBox.innerHTML = "<img align='absmiddle' src='redesign/16Error.png' alt='' /> Hesla se neshodují.";
				ButtonC.disabled=true;
			}
		} else {
			ElemBox.style.color="red";	              		
			ElemBox.innerHTML = "<img align='absmiddle' src='redesign/16Error.png' alt='' /> Heslo musí mít alespoň 4 znaky.";
			ButtonC.disabled=true;
		}
	}
	function gebi(name) {
		return document.getElementById(name);
	}
	function check_submited_form() {
		if(gebi('domain').value == '') {
			window.alert('Není vyplněno žádné doménové jméno.');
			return false;
		}
		if(get_value('selecR') == 0) {
			window.alert('Není zvolen žádný hostinový program.');
			return false;
		}
		if(gebi('LicenseAccept').checked != true) {
			window.alert('Musíte souhlasit se smluvními podmínkami.');
			return false;
		}
		return true;
	}