function addChild(el, name, p, cname) {					//	Append new child [element, localname, parent element name, class name]
	name = document.createElement(el);
	if (cname != '') name.className = cname;
	p.appendChild(name);
	return name;
}

function replace() {									//	Replace std.Select => alt.Select
	var j = 0;
	var opt = new Array();
	var optval = new Array();
	var slc = this.getElementsByTagName("select")[0];
	for (i=0; i<slc.childNodes.length; i++)				//	get city-list
		if (slc.childNodes[i].nodeType != 3) {
			opt[j] = slc.childNodes[i].innerHTML;
			optval[j] = slc.childNodes[i].value;
			j++;
		}
	
	this.innerHTML = "";								//	remove std.select
	
	dselect = addChild("div", "dselect", this, "select");
		addChild("div", "lt", dselect, "lt");
		dselect.appendChild(document.createTextNode("Выбрать другой город"));
		im = dselect.appendChild(document.createElement("img"));
		im.src = "/pics/arr_dwn.gif";
		addChild("div", "rt", dselect, "rt")
	
	url_now = location.href;
	url_now = url_now.replace(/[\&\?]change_region=\d+/ig,'');
	symb = (url_now.search(/\?/ig)!=-1)?'&':'?';
	
	dlist = addChild("div", "dlist", this, "list")
		ul = addChild("ul", "ul", dlist, "");			//	add city-list
			for (i=0; i<opt.length; i++) {
				li = addChild("li", "li", ul, "");
				lia = addChild("a", "lia", li, "");
				lia.href = url_now+symb+'change_region='+optval[i];
				lia.appendChild(document.createTextNode(opt[i]));
			}
		le = addChild("div", "le", dlist, "list-end");
			addChild("div", "lt", le, "lt");
			addChild("div", "rt", le, "rt");
}

function collapse() {									//	Show/hide city-list
	this.childNodes[2].src = (this.className == "select") ? "/pics/arr_up.gif" : "/pics/arr_dwn.gif";
	this.className = (this.className == "select") ? "select open" : "select";
	var lst = this.nextSibling;
	while (lst.nodeType == 3) lst = lst.nextSibling;
	lst.style.display = (lst.style.display == "block") ? "none" : "block";
}

function Altselect(id) {
	sel = document.getElementById(id);
	sel.replace = replace;
	sel.replace();
	sel.clickarea = (sel.firstChild.nodeType == 3) ? sel.childNodes[1] : sel.firstChild;
	sel.clickarea.onclick = collapse;
}
