onDomReady(set_decoration);

function set_decoration() {
	var areas = new Array();
	var blocks = new Array();
	var block_type = new Array();
	var blocks_00 = new Array();
	var all_tags = document.getElementsByTagName("*");
	for(var i = 0; i < all_tags.length; i++) {
		if(all_tags[i].id.search(/\barea_[0-9]+\b/) != -1) {areas.push(all_tags[i]);}
		if(all_tags[i].id.search(/\bmenu_catalogue\b/) != -1) {all_tags[i].className += " block_02";}
		if(all_tags[i].id.search(/\bsearch_auth\b/) != -1 && !isParent(all_tags[i], document.getElementById("header"))) {all_tags[i].className += " block_03";}
		if(all_tags[i].className.search(/\bpopupdiv\b/) != -1) {all_tags[i].className += " block_02";}
		if(all_tags[i].className.search(/\bblock_[0-9]+\b/) != -1) {blocks.push(all_tags[i]);}
		if(all_tags[i].className.search(/\bblock_00\b/) != -1) {blocks_00.push(all_tags[i]);}
	}
	for(var i = 0; i < areas.length; i++) {
		if(areas[i].children.length == 0) {areas[i].parentNode.removeChild(areas[i]);}
	}
	for(var i = 0; i < blocks.length; i++) {
		block_type = /\bblock_([0-9]+)\b/.exec(blocks[i].className);
		switch(block_type[1]) {
			case "00" :
				break;
			case "03" :
				blocks[i].appendChild(document.createElement("span")).className = "block_" + "r_" + block_type[1];
				blocks[i].appendChild(document.createElement("span")).className = "block_" + "l_" + block_type[1];
				blocks[i].appendChild(document.createElement("span")).className = "block_" + "lt_" + block_type[1];
				blocks[i].appendChild(document.createElement("span")).className = "block_" + "rt_" + block_type[1];
				blocks[i].appendChild(document.createElement("span")).className = "block_" + "rb_" + block_type[1];
				blocks[i].appendChild(document.createElement("span")).className = "block_" + "lb_" + block_type[1];
				blocks[i].appendChild(document.createElement("span")).className = "block_" + "wh_" + block_type[1];
				break;
			default :
//				blocks[i].appendChild(document.createElement("span")).className = "block_" + "c_" + block_type[1];
				blocks[i].appendChild(document.createElement("span")).className = "block_" + "t_" + block_type[1];
				blocks[i].appendChild(document.createElement("span")).className = "block_" + "r_" + block_type[1];
				blocks[i].appendChild(document.createElement("span")).className = "block_" + "b_" + block_type[1];
				blocks[i].appendChild(document.createElement("span")).className = "block_" + "l_" + block_type[1];
				blocks[i].appendChild(document.createElement("span")).className = "block_" + "lt_" + block_type[1];
				blocks[i].appendChild(document.createElement("span")).className = "block_" + "rt_" + block_type[1];
				blocks[i].appendChild(document.createElement("span")).className = "block_" + "rb_" + block_type[1];
				blocks[i].appendChild(document.createElement("span")).className = "block_" + "lb_" + block_type[1];
				blocks[i].appendChild(document.createElement("span")).className = "block_" + "wh_" + block_type[1];
				break;
		}
	}
}
var setting_body_height = false;
function set_body_height() {
	if(setting_body_height == false) {
		setting_body_height = true;
		if(document.getElementById("footer")) {
			document.getElementById("footer").style.display = "block";
			document.body.style.marginTop = document.getElementById("footer").offsetHeight + "px";
		}
		document.body.style.minHeight = "0"; document.body.style.height = "0";
		document.body.style.height = document.documentElement.scrollHeight + "px";
		if(document.getElementById("footer")) {document.body.style.marginTop = "0px";}
		setting_body_height = false;
	}
}
var fields_containers = {fields: [], containers: []};
function set_fields_decoration() {
	var inputs = document.getElementsByTagName("input");
	var buttons = document.getElementsByTagName("button");
	var selects = document.getElementsByTagName("select");
	var textareas = document.getElementsByTagName("textarea");
	var fields = new Array();
	for(var i = 0; i < inputs.length; i++) {fields.push(inputs[i]);}
	for(var i = 0; i < buttons.length; i++) {fields.push(buttons[i]);}
	for(var i = 0; i < selects.length; i++) {fields.push(selects[i]);}
	for(var i = 0; i < textareas.length; i++) {fields.push(textareas[i]);}
	for(var i = 0; i < fields.length; i++) {
		if(fields[i].getAttribute("type") != "hidden" && fields[i].getAttribute("type") != "image" && fields[i].getAttribute("type") != "radio" && fields[i].getAttribute("type") != "checkbox") {
			var starter = document.createElement("span");
			var container = document.createElement("span");
			var c = document.createElement("span");
			var t = document.createElement("span");
			var r = document.createElement("span");
			var b = document.createElement("span");
			var l = document.createElement("span");
			var lt = document.createElement("span");
			var rt = document.createElement("span");
			var rb = document.createElement("span");
			var lb = document.createElement("span");
			var wh = document.createElement("span");
			fields[i].parentNode.insertBefore(starter, fields[i]);
			fields[i].parentNode.insertBefore(fields[i], starter);
			starter.appendChild(container);
			container.appendChild(c);
			container.appendChild(t);
			container.appendChild(r);
			container.appendChild(b);
			container.appendChild(l);
			container.appendChild(lt);
			container.appendChild(rt);
			container.appendChild(rb);
			container.appendChild(lb);
			container.appendChild(wh);
			fields_containers['fields'].push(fields[i]);
			fields_containers['containers'].push(container);
			if(isNaN(parseInt(fields[i].style.zIndex)) || parseInt(fields[i].style.zIndex) < 1) {fields[i].style.zIndex = 1;}
			starter.className = "field_starter";
			fields[i].className = "field_itself";
			if(fields[i].getAttribute("type") == "text" || fields[i].getAttribute("type") == "password") {
				container.className = "field_container_text";
				c.className = "field_c_text";
				t.className = "field_t_text";
				r.className = "field_r_text";
				b.className = "field_b_text";
				l.className = "field_l_text";
				lt.className = "field_lt_text";
				rt.className = "field_rt_text";
				rb.className = "field_rb_text";
				lb.className = "field_lb_text";
				wh.className = "field_wh_text";
			}
			if(fields[i].tagName == "button" || fields[i].tagName == "BUTTON" || fields[i].getAttribute("type") == "button" || fields[i].getAttribute("type") == "submit" || fields[i].getAttribute("type") == "reset") {
				container.className = "field_container_button";
				c.className = "field_c_button";
				t.className = "field_t_button";
				r.className = "field_r_button";
				b.className = "field_b_button";
				l.className = "field_l_button";
				lt.className = "field_lt_button";
				rt.className = "field_rt_button";
				rb.className = "field_rb_button";
				lb.className = "field_lb_button";
				wh.className = "field_wh_button";
			}
			if(fields[i].tagName == "select" || fields[i].tagName == "SELECT") {
				container.className = "field_container_select";
				c.className = "field_c_select";
				t.className = "field_t_select";
				r.className = "field_r_select";
				b.className = "field_b_select";
				l.className = "field_l_select";
				lt.className = "field_lt_select";
				rt.className = "field_rt_select";
				rb.className = "field_rb_select";
				lb.className = "field_lb_select";
				wh.className = "field_wh_select";
			}
			if(fields[i].tagName == "textarea" || fields[i].tagName == "TEXTAREA") {
				container.className = "field_container_textarea";
				c.className = "field_c_textarea";
				t.className = "field_t_textarea";
				r.className = "field_r_textarea";
				b.className = "field_b_textarea";
				l.className = "field_l_textarea";
				lt.className = "field_lt_textarea";
				rt.className = "field_rt_textarea";
				rb.className = "field_rb_textarea";
				lb.className = "field_lb_textarea";
				wh.className = "field_wh_textarea";
			}
		}
	}
	document.addEventListener ? document.addEventListener("click", draw_field_containers, false) : document.attachEvent("onclick", draw_field_containers);
	window.addEventListener ? window.addEventListener("resize", draw_field_containers, false) : window.attachEvent("onresize", draw_field_containers);
	draw_field_containers();
}
function draw_field_containers() {
	for(var i = 0; i < fields_containers["fields"].length; i++) {
		var field_style = window.getComputedStyle(fields_containers["fields"][i], null);
		fields_containers["containers"][i].style.display = field_style.display;
		fields_containers["containers"][i].style.visibility = field_style.visibility;
		fields_containers["containers"][i].style.opacity = field_style.opacity;
		var w = fields_containers["fields"][i].offsetWidth + "px";
		var h = fields_containers["fields"][i].offsetHeight + "px";
		fields_containers["containers"][i].style.width = w;
		fields_containers["containers"][i].style.height = h;
	}
}

