function $h(id) {
	return document.getElementById(id);
}

function $$h(className, tag, elm){
	var testClass = new RegExp("(^|\\s)" + className + "(\\s|$)");
	var tag = tag || "*";
	var elm = elm || document;
	var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
	var returnElements = [];
	var current;
	var length = elements.length;
	for(var i=0; i<length; i++){
		current = elements[i];
		if(testClass.test(current.className)){
			returnElements.push(current);
		}
	}
	return returnElements;
}


function haddClass(id,className) {
	if (typeof(id) == 'object') {
		var el = id;
	} else {
		var el = $(id);
	}
	
	if(el) {
		var classes = el.className;
		var exp = classes.split(' ');
		if(exp.indexOf(className) === -1) {
			exp.push(className);
		}
		var c = exp.join(' ');		
		el.className = c;
	}
}

function hremoveClass(id,className) {
	if (typeof(id) == 'object') {
		var el = id;
	} else {
		var el = $(id);
	}
	
	if(el) {
		var classes = el.className;
		var exp = classes.split(' ');
		var index = exp.indexOf(className);
		if(index > -1) {
			exp.splice(index,1);
		}
		var c = exp.join(' ');		
		el.className = c;
	}
}

function evenHeight(str,tgt,mheight) {
	var src = $h(str);
	var h = src.offsetHeight;
	if(mheight) {
		if(h < mheight) {
			h = mheight;
		}
	}
	var tg = $$h('ah_'+str);
	for(var i = 0; i < tg.length; i++) {
		tg[i].style.height = h+'px';
	}
}

function ajax(url,params)
{
var xmlhttp;
if (window.XMLHttpRequest)
  {
  // code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {
  // code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
{
if(xmlhttp.readyState==4)
  {
  //RESPONSE
  var resp = xmlhttp.responseText;
  alert(resp);
  }
}

xmlhttp.open("POST",url,true);
xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xmlhttp.send(params);
}

function ajaxResp(url,params,responseFn)
{
var xmlhttp;
if (window.XMLHttpRequest)
  {
  // code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {
  // code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
{
if(xmlhttp.readyState==4)
  {
  //RESPONSE
  var respTxt = xmlhttp.responseText;
  eval(responseFn+'('+respTxt+')');
  }
}

xmlhttp.open("POST",url,true);
xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xmlhttp.send(params);
}

function parseURL(d) {
	if(!d) { var d = 'hotel'; }
	var str = document.location.href;
	var sp = str.split('#');
	var ident = sp[1];
	if(!ident) { var ident = d; }	
	return ident;
}

function validate(form) {
	var fields = $$h('required','input');
	var len = fields.length;
			
	for(var i = 0; i < len; i++) {
		if (fields[i].type == 'checkbox') {
			if(fields[i].checked == false) {
				alert('Nie wyraziłeś zgody na przetwarznie danych');
				return false;
			} else {
				return true;
			}
		} else {
			if (fields[i].value == '') {
				alert('Proszę wypełnić wszystkie pola oznaczone gwiazdką (*)');
				fields[i].focus();
				haddClass(fields[i], 'error');
				
				var unclass = function(){
					hremoveClass(fields[i], 'error');
				}
				
				fields[i].onblur = unclass;
				fields[i].onclick = unclass;
				
				return false;
			}
		}
	}
	return true;
}

