var http = new Array;
var completed = new Array;

function loadXMLDoc(url) {
	if (window.XMLHttpRequest) {
		var i = http.length;

		var request = new XMLHttpRequest();
		request.onreadystatechange = processReqChange;
		request.open("GET", url, true);
		request.send(null);

		http[i] = request;
	} else if (window.ActiveXObject) {
		var i = http.length;
		var request2;

		try {
			request2 = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e) {
			try {
				request2 = new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) { }
		}

		if (request2) {
			request2.onreadystatechange = processReqChange;
			request2.open("GET", url, true);
			request2.send();

			http[i] = request2;
		}
	}
}

function processReqChange() {
	for (var i=0; i < http.length; i++) {
		if (completed[i] || !http[i]) {
			continue;
		}

		if (http[i].readyState == 4) {
			if (http[i].status == 200) {
				var response  = http[i].responseXML.documentElement;
				var method = response.getElementsByTagName('method')[0].firstChild.data;
				var request = response.getElementsByTagName('request')[0];
				var result = response.getElementsByTagName('result')[0];
				eval(method + '(request, result)');
			}
			
			completed[i] = 1;
		}
	}
}

function show_offers(sid) {
	var div = document.getElementById('offers_div');
	var place = document.getElementById('offers_div_content');
	if (place) {
		for (var i=0; i < place.childNodes.length;) {
			place.removeChild(place.childNodes[0]);
		}
	}
	var header = document.getElementById('off_stuff_name');
	if (header) {
		for (var i=0; i < header.childNodes.length;) {
			header.removeChild(header.childNodes[0]);
		}
	}
	var load = document.getElementById('off_loading');
	load.style.display = 'block';
	div.style.display = 'block';

	if (window.navigator.appName.match(/Explorer/i)) {
		div.style.left = document.documentElement.scrollLeft + 200 + 'px';
		div.style.top = document.documentElement.scrollTop + 100 + 'px';
		div.style.right = '200px';
		div.style.height = document.documentElement.clientHeight - 200 + 'px';

		load.style.top = document.documentElement.scrollTop + (document.documentElement.clientHeight - load.clientHeight) / 2 + 'px';
		load.style.left = document.documentElement.scrollLeft + (document.documentElement.clientWidth - load.clientWidth) / 2 + 'px';
	} else if (window.navigator.appName.match(/Opera/i)) {
		div.style.left = document.documentElement.scrollLeft + 200 + 'px';
		div.style.top = document.documentElement.scrollTop + 100 + 'px';
		div.style.right = '200px';
		div.style.height = window.innerHeight - 200 + 'px';

		load.style.top = document.documentElement.scrollTop + (window.innerHeight - load.clientHeight) / 2 + 'px';
		load.style.left = document.documentElement.scrollLeft + (window.innerWidth - load.clientWidth) / 2 + 'px';
	} else {
		div.style.left = window.scrollX + 200 + 'px';
		div.style.top = window.scrollY + 100 + 'px';
		div.style.right = '200px';
		div.style.height = window.innerHeight - 200 + 'px';

		load.style.top = window.scrollY + (window.innerHeight - load.clientHeight) / 2 + 'px';
		load.style.left = window.scrollX + (window.innerWidth - load.clientWidth) / 2 + 'px';
	}

	loadXMLDoc('/ajax/offers/' + sid + '/');

	return false;
}

function off_close_ih() {
	document.getElementById('offers_div').style.display = 'none';
}

function display_offers(req, res) {
	var place = document.getElementById('offers_div_content');
	for (var i=0; i < place.childNodes.length;) {
		place.removeChild(place.childNodes[0]);
	}

	var header = document.getElementById('off_stuff_name');
	for (var i=0; i < header.childNodes.length;) {
		header.removeChild(header.childNodes[0]);
	}
	header.appendChild(document.createTextNode(res.getElementsByTagName('stuff_name')[0].firstChild.data));

	var div = document.getElementById('offers_div');
	place.style.height = div.clientHeight - place.offsetTop + 'px';

	var tbl = document.createElement('table');
	tbl.cellSpacing = "5";
	tbl.style.marginLeft = '10px';
	tbl.className = 'tbl_center';
	tbl.width = '95%';
	var tb = document.createElement('tbody');
	tbl.appendChild(tb);

	var offers = res.getElementsByTagName('offer');
	for (var i = 0; i < offers.length; i++) {
		var tr = document.createElement('tr');
		tb.appendChild(tr);

		var td1 = document.createElement('td');
		td1.style.verticalAlign = 'top';
		tr.appendChild(td1);
		var a1 = document.createElement('a');
		td1.appendChild(a1);
		a1.href = '/redirect/offer/' + offers[i].getElementsByTagName('oid')[0].firstChild.data;
		a1.target = '_blank';
		a1.appendChild(document.createTextNode(offers[i].getElementsByTagName('firm')[0].firstChild.data));

		var td3 = document.createElement('td');
		td3.style.whiteSpace = 'nowrap';
		td3.style.verticalAlign = 'top';
		tr.appendChild(td3);
		var span3 = document.createElement('span');
		td3.appendChild(span3);
		span3.style.fontWeight = 'bold';
		span3.appendChild(document.createTextNode(offers[i].getElementsByTagName('rur_price')[0].firstChild.data));
		td3.appendChild(document.createTextNode(' руб.'));
		td3.appendChild(document.createElement('br'));
		if (offers[i].getElementsByTagName('in_stock')[0].firstChild.data == 1) {
			var span = document.createElement('span');
			span.appendChild(document.createTextNode('в наличии'));
			span.style.fontSize = '80%';
			td3.appendChild(span);
		}

		var td2 = document.createElement('td');
		tr.appendChild(td2);
		var header = document.createElement('div');
		td2.appendChild(header);
		header.appendChild(document.createTextNode(offers[i].getElementsByTagName('name')[0].firstChild.data));

		var desc = offers[i].getElementsByTagName('description')[0];
		if (desc.firstChild) {
			var span2 = document.createElement('span');
			td2.appendChild(span2);
			span2.style.fontSize = '80%';
			span2.appendChild(document.createTextNode(desc.firstChild.data));
		}

	}

	var tr = document.createElement('tr');
	tb.appendChild(tr);
	var td = document.createElement('td');
	td.colSpan = 3;
	td.style.textAlign = 'center';
	td.style.paddingTop = '10px';
	td.style.fontStyle = 'italic';
	td.style.fontSize = '70%';
	tr.appendChild(td);
	td.appendChild(document.createTextNode('Чтобы купить товар, нажмите на название выбранного магазина.'));
	td.appendChild(document.createElement('br'));
	td.appendChild(document.createElement('br'));

	var btn = document.createElement('input');
	btn.type = 'button';
	btn.className = 'button bg';
	btn.value = 'Закрыть окно';
	if (window.navigator.appName.match(/Explorer/i)) {
		btn.onclick = off_close_ih;
	} else {
		btn.setAttribute('onclick', 'document.getElementById(\'offers_div\').style.display = \'none\';');
	}
	td.appendChild(btn);

	document.getElementById('off_loading').style.display = 'none';
	place.appendChild(tbl);
	place.scrollTop = 0;
}

