var showErr = true;
var q = createXMLHttp();
var url = 'http://www.onlineslotsfinder.com/search.php';

function srch(n){
	var val;
	var el = document.getElementById(n);
    //alert(el.name);
    //alert(el.value);
    //alert(el.type);

	if(el.type == 'checkbox'){
		if(el.checked){
			val=el.value;
		}else{
			val=0;
		}
	}
	//alert(el.name+'='+val);
	DisableEnableForm(true);
	requery(el.name+'='+val);
}
function requery(query){
	//alert(query);
	if(q){
		try
		{
			if(q.readyState == 0 || q.readyState == 4){
				// запрос серверу
				q.open('POST', url, true);
				q.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
				q.onreadystatechange = handlerReq;
				q.send(query);
			}else{
			}
		}
		catch(e)
		{
			displayErr(e.toString());
		}
	}
}
function handlerReq(){

 	if(q.readyState == 4){
 		if(q.status == 200){
 			DisableEnableForm(false);
 			try{
 				readResponse();
			}catch(e){
				displayErr(e.toString());
			}
		}else{
			displayErr(e.statusText);
		}
	}else{ 	}
}
function readResponse(){
	var response = q.responseText;
	if(response==''){
	}else{
		if(response == 'reset'){
			document.getElementById('srch_res').innerHTML = '';
			return;
 		}

		var arr = response.split('|');

			//alert(arr[0]);
			//alert(arr[1]);
            //alert(arr[2]);

		availableElements(arr[0]);
		try{
			document.getElementById('srch_res').innerHTML = arr[2]+arr[1];
			//document.getElementById('srch_total').innerHTML = arr[2];
		}catch(e){
			displayErr(e);
		}
	}
}

function availableElements(elementsArr){
	if(elementsArr.length >0){
		elementsHiddenVisible('hidden');
		var elementsArr = elementsArr.split(';');
		for(i=0;i<elementsArr.length;i++){
			document.getElementById(elementsArr[i]).style.visibility = 'visible';
		}
	}else{
		elementsHiddenVisible('visible');
	}
}
function showSearchForm(){
    document.getElementById('srch').style.visibility = 'visible';
    elementsHiddenVisible('visible');
    reset();
}
function closeSearch(){
    elementsHiddenVisible('hidden');
    document.getElementById('srch').style.visibility = 'hidden';
}
function reset(){
	elementsHiddenVisible('visible', 1);

	// reset session
    requery('reset=0');
}
function elementsHiddenVisible(hiddenVisible, reset){
    var n = document.forms.searchForm.elements.length;
   	for(i=0;i<n;i++){
		el = document.searchForm.elements[i].name;
		if(reset){
			if(document.getElementById(el).type == 'checkbox'){
        		document.getElementById(el).checked = 0;
  			}
        }
		document.getElementById(el).style.visibility = hiddenVisible;
	}
}
function DisableEnableForm(xHow){
	objElems = document.forms.searchForm.elements;
	for(i=0;i<objElems.length;i++){
		objElems[i].disabled = xHow;
	}
}

function displayErr(err){
	if(showErr)
	{
		showErr	= false;
		alert('Error: '+ err);
	}
}

