var load_items = 0;
function loading_begin() {
	var div = document.createElement('div');
	div.id = 'loading_div';
	div.className = 'loading';
	div.appendChild( document.createTextNode('Идет загрузка. Пожалуйста подождите..') );
	document.body.appendChild(div);

	if (window.navigator.appName.match(/Explorer/i)) {
		div.style.left = (document.body.clientWidth - div.clientWidth) / 2 + 'px';
		div.style.top = (document.body.clientHeight - div.clientHeight) / 2 + 'px';
	} else {
		div.style.left = (window.innerWidth - div.clientWidth) / 2 + 'px';
		div.style.top = (window.innerHeight - div.clientHeight) / 2 + 'px';
	}
}

function loading_end() {
	if (--load_items == 0) {
		var div = document.getElementById('loading_div');
		if (div) 
			document.body.removeChild(div);
	}
}

var process_geo_tries = new Array;
function process_geo(geoid) {
	place = document.getElementById('geo_' + geoid);
	if (place) {
		if (!place.hasChildNodes()) {
			if (load_items == 0) {
				loading_begin();
			}
			load_items++;

			loadXMLDoc('/ajax/user_delivery/' + geoid);
		} else {
			l = place.childNodes.length;
			for(i=0;i<l; i++) {
				place.removeChild(place.childNodes[0])
			}
		}
	} else {
		if (!process_geo_tries[geoid]) { process_geo_tries[geoid] = 0 };
		if (++process_geo_tries[geoid] < 20) {
			window.setTimeout('process_geo(' + geoid + ')', 1000);
		}
	}

	return false;
}

function ie_handler() {
	imgid = window.event.srcElement.id;
	geoid = imgid.substr(8);
	process_geo(geoid);
}

function expand_geo(req, res) {
	geo = res.getElementsByTagName('geo');
	if (geo.length > 0) {
		place = document.getElementById('geo_'+ geo[0].getElementsByTagName('pgeoid')[0].firstChild.data);
		if (!place) {
			loading_end();
			return false;
		}
	}

	for (i=0; i<geo.length; i++) {
		geoid = geo[i].getElementsByTagName('geoid')[0].firstChild.data;

		geo_el = document.createElement('div');
		geo_el.style.marginLeft = '30px';

		place.appendChild(geo_el);

		input = document.createElement('input');
		input.type = 'checkbox';
		input.name = 'geoid';
		input.value = geoid;
		geo_el.appendChild(input);

		if (geo[i].getAttribute('selected') == 1) {
			input.checked = true;
		}

		geo_el.appendChild( document.createTextNode( geo[i].getElementsByTagName('name')[0].firstChild.data + ' ' ) );

		if (geo[i].getAttribute('has_child') > 0) {
			img = document.createElement('img');
			img.style.cursor = 'pointer';
			img.setAttribute('id', 'img_geo_' + geoid);
			img.setAttribute('src', '/img/catalog-arrow-green.gif');
			if (window.navigator.appName.match(/Explorer/i)) {
				img.onclick = ie_handler;
			} else {
				img.setAttribute('onclick', 'process_geo(' + geoid + ')');
			}

			geo_el.appendChild(img);
		}

		div = document.createElement('div');
		div.setAttribute('id', 'geo_' + geoid);
		geo_el.appendChild(div);
	}
	loading_end();
};
//-->

