Array.prototype.inArray = function (value) {
	var i;
	for (i=0; i < this.length; i++) {
	if (this[i] === value) {
	return true;}}
	return false;};
function sortNumber(a,b){return b - a;}

var hotels = Array();
var stars  = Array();

function ID(id){return document.getElementById(id);}
function Display(obj) {
if (ID(obj).style.display == "") ID(obj).style.display="none";
else ID(obj).style.display="";}
function Hide(obj) {ID(obj).style.display="none";}
function Show(obj) {ID(obj).style.display="";}

function SendMail(value) {
var req = new JsHttpRequest();
req.onreadystatechange = function() {	
if (req.readyState == 4) {
Hide('fosform');
ID('fospan').innerHTML = _msm+req.responseText;}}
req.open(null, _LA+'inc/sendmail.php', true);
req.send( { q: value } );}

function Mailer(value) {
var req = new JsHttpRequest();
req.onreadystatechange = function() {	
if (req.readyState == 4) {
if (req.responseText == "0") ID('msl').innerHTML = _ms0;
if (req.responseText == "1") ID('msl').innerHTML = _ms1;
if (req.responseText == "2") ID('msl').innerHTML = _ms2;
if (req.responseText == "3") ID('msl').innerHTML = _ms3;}}
req.open(null, _LA+'inc/mailsub.php', true);
req.send( { q: value } );}

function So(obj) {
form = ID(obj);
Hide ('oo');
var req = new JsHttpRequest();
req.onreadystatechange = function() {	
if (req.readyState == 4) {
ID('oo').innerHTML = req.responseText;
Show ('oo');}}
req.open(null, _LA+'inc/ajax_sendresponce.php', true);
req.send( { q: form } );}

function changeRegion(obj) {
	Hide('costresult')
	ID('cost_error').innerHTML = "";
	var v = Array();
	stars = Array();
	v["type"] = "changeRegion";
	v["val"] = obj.value;
	costFon(true);
	var req = new JsHttpRequest();
	req.onreadystatechange = function() {	
	if (req.readyState == 4) {
	
	formhotel = ID("form_hotel")
	formstars = ID("form_stars")
	formbetter = ID("form_better")
	formhotel.disabled = 'true';
	formstars.disabled = 'true';
	formbetter.disabled= 'true';
	ID('cost_error').innerHTML = req.responseText
	
	if (hotels = req.responseJS.hotels) {
		//ID('cost_error').innerHTML = hotels.toSource(); // на будущее
		for (var n=formhotel.length - 1; n > -1; n--) formhotel.options[n]=null;
		formhotel.options[0]=new Option("любой", 0)
		for (var n=0; n < hotels.length; n++) {formhotel.options[n+1]=new Option(hotels[n]["hotel"], hotels[n]["id"]);}
		formhotel.disabled = '';
		for (var n=0; n < hotels.length; n++) {if (!stars.inArray(hotels[n]["stars"]) && hotels[n]["stars"]) stars.push (hotels[n]["stars"]);}
		for (var n=formstars.length - 1; n > -1; n--) formstars.options[n]=null;
		if (stars) {
			stars.sort(sortNumber)
			formstars.options[0]=new Option("все", 0)
			for (var n=0; n < stars.length; n++) {formstars.options[n+1]=new Option(stars[n]+"*", stars[n]);}
			formstars.disabled = '';
			formbetter.disabled = '';
			}
		}
	costFon(false);
	}}
	req.open(null, _LA+'inc/ajax_tourcost.php', true);
	req.send( { q: v } );}


function changeWhat(obj) {
	Hide('costresult')
	ID('cost_error').innerHTML = "";
	var v = Array();
	stars = Array();
	v["type"] = "changeWhat";
	v["val"] = obj.value;
	costFon(true);
	var req = new JsHttpRequest();
	req.onreadystatechange = function() {	
	if (req.readyState == 4) {
	
	formregion = ID("form_region")
	formhotel = ID("form_hotel")
	formstars = ID("form_stars")
	formbetter = ID("form_better")
	formhotel.disabled = 'true';
	formstars.disabled = 'true';
	formbetter.disabled= 'true';
	ID('cost_error').innerHTML = req.responseText
	
	if (regions = req.responseJS.hotels) {
		for (var n=formregion.length - 1; n > -1; n--) formregion.options[n]=null;
		formregion.options[0]=new Option("не выбрано", 0)
		for (var n=0; n < regions.length; n++) {formregion.options[n+1]=new Option(regions[n]["runame"], regions[n]["id"]);}
		formregion.disabled = '';
		for (var n=formhotel.length - 1; n > -1; n--) formhotel.options[n]=null;
		for (var n=formstars.length - 1; n > -1; n--) formstars.options[n]=null;
		}
	costFon(false);
	}}
	req.open(null, _LA+'inc/ajax_tourcost.php', true);
	req.send( { q: v } );}


function changeStars() {
	Hide('costresult')
	ID('cost_error').innerHTML = "";
	formhotel = ID("form_hotel")
	formstars = ID("form_stars")
	formbetter = ID("form_better")
	formhotel.disabled = 'true';
	for (var n=formhotel.length - 1; n > -1; n--) formhotel.options[n]=null;
	var nn=0
	formhotel.options[0]=new Option("любой", 0)
	for (var n=0; n < hotels.length; n++) {
		if ((hotels[n]["stars"] == formstars.value) || (formbetter.checked && hotels[n]["stars"] >= formstars.value) || (formstars.value == 0)) {
			formhotel.options[nn+1]=new Option(hotels[n]["hotel"], hotels[n]["id"]);
			nn++;
			}
		}
	if (!formhotel.options.length) formhotel.options[0]=new Option("Нет отелей соответствующих выбранным парамерам", 0);
	formhotel.disabled = '';
	}

function costFon(show) {
	if (show) {
	Show("fon");
	Show("plash");}
	else {
	Hide("fon");
	Hide("plash");}}

function tourCost(form) {
	Hide('costresult');
	Hide('costorder');
	var v = Array();
	v["type"] = "tourCost";
	v["val"] = form;
	costFon(true);
	var req = new JsHttpRequest();
	req.onreadystatechange = function() {	
	if (req.readyState == 4) {
	ID('cost_error').innerHTML = req.responseText
	if (req.responseJS.q) {
		ID('costresult').innerHTML = req.responseJS.q;//req.responseJS.hotels
		Show('costresult');
		}
	costFon(false);
	}}
	req.open(null, _LA+'inc/ajax_tourcost.php', true);
	req.send( { q: v } );
	}
	
function orderCost(region,hotel,room,days,datein,guid) {
	Hide('costresult');
	var v = Array();
	var order = Array();
	order["region"] = region;
	order["hotel"] = hotel;
	order["room"] = room;
	order["days"] = days;
	order["datein"] = datein;
	order["guid"] = guid;
	
	v["type"] = "orderCost";
	v["val"] = order;



	var formorder = ID('formorder');
	var formcost  = ID('cost');
	costFon(true);
	var req = new JsHttpRequest();
	req.onreadystatechange = function() {	
	if (req.readyState == 4) {
	ID('cost_error').innerHTML = req.responseText
	if (req.responseJS.q) {
		ID('costresult').innerHTML = req.responseJS.q;//req.responseJS.hotels
		Show('costresult');
		Show('costorder');
		formorder.region.value = req.responseJS.region;
		formorder.hotel.value = req.responseJS.hotel;
		formorder.room.value = req.responseJS.room;
		formorder.days.value = req.responseJS.days;
		formorder.datein.value = req.responseJS.datein;
		formorder.guid.value = req.responseJS.guid;	
		
		formorder.stars.value = 	formcost.formstars.value;	
		formorder.better.value= 	formcost.formbetter.checked;	
		formorder.adult.value = 	formcost.formadult.value;	
		formorder.child.value = 	formcost.formchild.checked;	
		
		}
	costFon(false);
	}}
	req.open(null, _LA+'inc/ajax_tourcost.php', true);
	req.send( { q: v } );
	}
	
function tourOrder(form) {
	var v = Array();
	v["type"] = "tourOrder";
	v["val"] = form;
	costFon(true);
	var req = new JsHttpRequest();
	req.onreadystatechange = function() {	
	if (req.readyState == 4) {
	ID('cost_error').innerHTML = req.responseText
	if (req.responseJS.q) {
		ID('costresult').innerHTML = req.responseJS.q;//req.responseJS.hotels
		Show('costresult');
		Hide('costorder');
		}
	costFon(false);
	}}
	req.open(null, _LA+'inc/ajax_tourcost.php', true);
	req.send( { q: v } );
	}
	
