﻿window.onload = init;

function showResult() {
	var parent = pxDOM.byId('resultat').parentNode;
	if (parent.childNodes[1].className == '')
		parent.childNodes[1].className = 'hide';
	else
		parent.childNodes[1].className = '';
}

function showRing(sender) {
	var table = sender.parentNode;
	var className = '';
	if (table.rows[0].className == '') className = 'hide';
	for (var i = 0;  i < table.rows.length; i++) {
			table.rows[i].className = className;
	}
}

function collapce(sender) {
	var table = pxDOM.byId('diapason');
	if (table.className == '') {
		table.className = 'hide';
		sender.innerHTML = 'развернуть';
	}
	else {
		table.className = '';
		sender.innerHTML = 'свернуть';
	}
}

function showAllRange() {
	fr.showAllRange();
}

function showAllMetroDiapason() {
	fr.showAllMetroDiapason();
}

var fr = new FinderRange();

function findRange() {
	return fr.findRange();
}

function findMetroRange() {
	return fr.findMetroRange();
}

function findService() {
	fr.findService();
}

function showMetroServiceDiapason() {
	fr.showMetroServiceDiapason();
}

function findMetroServiceDiapason() {
	fr.findMetroServiceDiapason();
}

function showServiceRange() {
	fr.showServiceRange();
}

function findServiceRange() {
	fr.findServiceRange();
}

function showServiceMetroDiapason() {
	fr.showServiceMetroDiapason();
}

function findServiceMetroDiapason() {
	fr.findServiceMetroDiapason();
}

function init() {
//	window.scrollBy(0, 80);
	var left = pxDOM.byId('left').offsetHeight;
	var center = pxDOM.byId('center').offsetHeight;
	if (parseInt(left) > parseInt(center)) 
		pxDOM.byId('center').style.height = left + 'px';

	var table = pxDOM.byId('diapason');
	if (!table) return;
	var rows = table.rows;
	for (var i = 0; i < rows.length; i++) {
		if (rows[i].cells.length == 3) {
			var cell = rows[i].cells[2];
			cell.childNodes[0].onclick = fr.rangeClick;
		}
	}
}

function FinderRange() {
	this.url = '../script/req.php';
}

FinderRange.prototype.rangeClick = function() {
	var row = this.parentNode.parentNode;
	if (this.checked) {
		row.classOld = row.className;
		row.className = 'selectedRow';
	}
	else {
		row.className = row.classOld;
	}	
}

FinderRange.prototype.findRange = function() {
	var table = pxDOM.byId('diapason');
	var rows = table.rows;
	var result = new Array();
	for (var i = 0; i < rows.length; i++) {
		if (rows[i].cells.length < 3) continue;
		var cell = rows[i].cells[2];
		if (cell.childNodes[0].checked) {
			result[result.length] = cell.childNodes[0].value;
		}
	}
	if (result.length < 1) {
		alert("Выберите диапазоны.");
		return false;
	}
//	pxDOM.byId('priceDiapason').value = result.join(',');
	this.sendDiapason(result.join(','));
}

FinderRange.prototype.findService = function() {
	var owner = pxDOM.byId('servicePlace');
	var input = pxDOM.byTag(owner, 'input');
	var result = new Array();
	for (var i = 0; i < input.length; i++) {
		if (input[i].checked) {
			result[result.length] = input[i].value;
		}
	}
	var place = pxDOM.byId('selectedService');
	place.value = result.join(',');
}

FinderRange.prototype.sendDiapason = function(value) {
	this.Request = pxReq.newRequest(this.afterSendDiapason);
	document.editor = this;  
	if (!this.Request) return;
	pxReq.post(this.Request, this.url);
	this.Request.send("id=15&slice=1" + "&range=" + value);
}

FinderRange.prototype.showAllRange = function(value) {
	this.Request = pxReq.newRequest(this.afterSendDiapason);
	document.editor = this;  
	if (!this.Request) return;
	pxReq.post(this.Request, this.url);
	this.Request.send("id=16&slice=1");
}

FinderRange.prototype.afterSendDiapason = function() {
	if (pxReq.state(document.editor.Request) != 0) return;
	var result = document.editor.Request.responseText;	
	if (result && result != "") {
		alert(result);
		return;
	}
	document.location = 'hotel-table.php';
}

//--------------------------------- метро-диапазон
FinderRange.prototype.findMetroRange = function() {
	var table = pxDOM.byId('diapason');
	var rows = table.rows;
	var result = new Array();
	for (var i = 0; i < rows.length; i++) {
		if (rows[i].cells.length < 3) continue;
		var cell = rows[i].cells[2];
		if (cell.childNodes[0].checked) {
			result[result.length] = cell.childNodes[0].value;
		}
	}
	if (result.length < 1) {
		alert("Выберите диапазоны.");
		return false;
	}
	this.sendMetroDiapason(result.join(','));
}

FinderRange.prototype.sendMetroDiapason = function(value) {
	this.Request = pxReq.newRequest(this.afterSendMetroDiapason);
	document.editor = this;  
	if (!this.Request) return;
	pxReq.post(this.Request, this.url);
	this.Request.send("id=15&slice=2" + "&range=" + value);
}

FinderRange.prototype.showAllMetroDiapason = function(value) {
	this.Request = pxReq.newRequest(this.afterSendMetroDiapason);
	document.editor = this;  
	if (!this.Request) return;
	pxReq.post(this.Request, this.url);
	this.Request.send("id=16&slice=2&clear=range");
}

FinderRange.prototype.afterSendMetroDiapason = function() {
	if (pxReq.state(document.editor.Request) != 0) return;
	var result = document.editor.Request.responseText;	
	if (result && result != "") {
		alert(result);
		return;
	}
	document.location = 'hotel-metro-daipason.php';
}

//--------------------------------- метро-сервис-диапазон
FinderRange.prototype.findMetroServiceDiapason = function() {
	var table = pxDOM.byId('diapason');
	var rows = table.rows;
	var result = new Array();
	for (var i = 0; i < rows.length; i++) {
		if (rows[i].cells.length < 3) continue;
		var cell = rows[i].cells[2];
		if (cell.childNodes[0].checked) {
			result[result.length] = cell.childNodes[0].value;
		}
	}
	if (result.length < 1) {
		alert("Выберите диапазоны.");
		return false;
	}
	this.sendMetroServiceDiapason(result.join(','));
}

FinderRange.prototype.sendMetroServiceDiapason = function(value) {
	this.Request = pxReq.newRequest(this.afterMetroServiceDiapason);
	document.editor = this;  
	if (!this.Request) return;
	pxReq.post(this.Request, this.url);
	this.Request.send("id=15&slice=2" + "&range=" + value);
}

FinderRange.prototype.showMetroServiceDiapason = function(value) {
	this.Request = pxReq.newRequest(this.afterMetroServiceDiapason);
	document.editor = this;  
	if (!this.Request) return;
	pxReq.post(this.Request, this.url);
	this.Request.send("id=16&slice=2&clear=range");
}

FinderRange.prototype.afterMetroServiceDiapason = function() {
	if (pxReq.state(document.editor.Request) != 0) return;
	var result = document.editor.Request.responseText;	
	if (result && result != "") {
		alert(result);
		return;
	}
	document.location = 'hotel-metro-service-diapason.php';
}

//--------------------------------- сервис-диапазон
FinderRange.prototype.findServiceRange = function() {
	var table = pxDOM.byId('diapason');
	var rows = table.rows;
	var result = new Array();
	for (var i = 0; i < rows.length; i++) {
		if (rows[i].cells.length < 3) continue;
		var cell = rows[i].cells[2];
		if (cell.childNodes[0].checked) {
			result[result.length] = cell.childNodes[0].value;
		}
	}
	if (result.length < 1) {
		alert("Выберите диапазоны.");
		return false;
	}
	this.sendServiceRange(result.join(','));
}

FinderRange.prototype.sendServiceRange = function(value) {
	this.Request = pxReq.newRequest(this.afterServiceRange);
	document.editor = this;  
	if (!this.Request) return;
	pxReq.post(this.Request, this.url);
	this.Request.send("id=15&slice=3" + "&range=" + value);
}

FinderRange.prototype.showServiceRange = function(value) {
	this.Request = pxReq.newRequest(this.afterServiceRange);
	document.editor = this;  
	if (!this.Request) return;
	pxReq.post(this.Request, this.url);
	this.Request.send("id=16&slice=3&clear=range");
}

FinderRange.prototype.afterServiceRange = function() {
	if (pxReq.state(document.editor.Request) != 0) return;
	var result = document.editor.Request.responseText;	
	if (result && result != "") {
		alert(result);
		return;
	}
	document.location = 'hotel-service-daipason.php';
}


//--------------------------------- сервис-метро-диапазон
FinderRange.prototype.findServiceMetroDiapason = function() {
	var table = pxDOM.byId('diapason');
	var rows = table.rows;
	var result = new Array();
	for (var i = 0; i < rows.length; i++) {
		if (rows[i].cells.length < 3) continue;
		var cell = rows[i].cells[2];
		if (cell.childNodes[0].checked) {
			result[result.length] = cell.childNodes[0].value;
		}
	}
	if (result.length < 1) {
		alert("Выберите диапазоны.");
		return false;
	}
	this.sendServiceMetroDiapason(result.join(','));
}

FinderRange.prototype.sendServiceMetroDiapason = function(value) {
	this.Request = pxReq.newRequest(this.afterServiceMetroDiapason);
	document.editor = this;  
	if (!this.Request) return;
	pxReq.post(this.Request, this.url);
	this.Request.send("id=15&slice=3" + "&range=" + value);
}

FinderRange.prototype.showServiceMetroDiapason = function(value) {
	this.Request = pxReq.newRequest(this.afterServiceMetroDiapason);
	document.editor = this;  
	if (!this.Request) return;
	pxReq.post(this.Request, this.url);
	this.Request.send("id=16&slice=3&clear=range");
}

FinderRange.prototype.afterServiceMetroDiapason = function() {
	if (pxReq.state(document.editor.Request) != 0) return;
	var result = document.editor.Request.responseText;	
	if (result && result != "") {
		alert(result);
		return;
	}
	document.location = 'hotel-service-metro-diapason.php';
}

