	GLOBALS = {};

// Check if browser is IE
	if (navigator.appName.match(/Internet\sExplorer/)) {
		GLOBALS.is_ie = true;
	} else {
		GLOBALS.is_ie = false;
	}

	function checkForAll()
	{
		var all_checked, i;
		all_checked = true;

		if (GLOBALS.my_district) {
			$('District_' + GLOBALS.my_district).checked = true;
		}

		for (i in GLOBALS.district) {
			if (!$('District_' + GLOBALS.district[i]).checked) {
				all_checked = false;
				break;
			}
		}
		$('District_all').checked = all_checked;
	}

	function checkAll(name, obj)
	{
		for (var i = 0; i < document.getElementsByName(name).length; i++) {
			document.getElementsByName(name)[i].checked = obj.checked;
		}
		if (GLOBALS.my_district) {
			$('District_' + GLOBALS.my_district).checked = true;
		}
	}

	function checkField(state, el, default_value)
	{
		switch (state) {
			case('start'):
				if (el.value == default_value) {
					el.value = '';
					el.className = 'vcms_control_text';
				}
				break;
			case('finish'):
				if (el.value == '') {
					el.value = default_value;
					el.className = 'vcms_control_text_gray';
				}
				break;
		}
	}

	function loginForm(show)
	{
		if (GLOBALS.login_form_state) {
			return;
		}
		GLOBALS.login_form_state = true;

		if (show) {
			setTimeout('setLoginFormValue("block");', 10);
		} else {
			setTimeout('setLoginFormValue("none");', 10);
		}
	}

	function setLoginFormValue(value)
	{
		$('login_box').style.display = value;
		GLOBALS.login_form_state = false;
	}

	function coverListAction(a_el, id)
	{
		var i;

		$('collapser').className = '';
		$('expander').className = '';

		if (a_el == 'collapse') {
			for (var i in GLOBALS.cover_ids.district) {
				$(GLOBALS.cover_ids.district[i]).style.display = 'none';
			}
			for (var i in GLOBALS.cover_ids.street) {
				$(GLOBALS.cover_ids.street[i]).style.display = 'none';
				$('a_' + GLOBALS.cover_ids.street[i]).className = '';
			}
			id.className = 'act5';
			return false;
		}
		if (a_el == 'expand') {
			for (var i in GLOBALS.cover_ids.district) {
				$(GLOBALS.cover_ids.district[i]).style.display = 'block';
			}
			for (var i in GLOBALS.cover_ids.street) {
				$(GLOBALS.cover_ids.street[i]).style.display = 'block';
				$('a_' + GLOBALS.cover_ids.street[i]).className = 'act4';
			}
			id.className = 'act5';
			return false;
		}
		if ($(id).style.display == 'none') {
			$(id).style.display = 'block';
			if (a_el) {
				a_el.className = 'act4';
			}
		} else {
			$(id).style.display = 'none';
			if (a_el) {
				a_el.className = '';
			}
		}
		return false;
	}

	function moveHider()
	{
		$('content_soft_hider').style.top = getYScroll() + 'px';
		$('content_soft_hider_fix').style.top = getYScroll() + 'px';
	}

	function switchAdminVersion(val)
	{
		if (val == 'do_nothing') {
			return;
		}
		var tmp = val.split(':');

		if (tmp.length != 2) {
			alert('Invalid input parameter "' + val + '"');
			return;
		}
		switch (tmp[0]) {
			case 'go' :
				document.location.href = tmp[1];
				break;
			case 'stop' :
				alert('Не могу создать элемент, т.к. схожесть структуры языковых версий для этого элемента заканчивается на элементе с заголовком "' + tmp[1] + '"');
				break;
			default:
				alert('Unknown action "' + tmp[0] + '"');
				break;
		}
	}

	function setCharsLimit(field, limit)
	{
		var res = limit - $(field).value.length;
		$(field + '_CharsLimit').innerHTML = res;
		if (res < 0) {
			$(field + '_CharsLimit').style.color = '#990000';
		} else {
			$(field + '_CharsLimit').style.color = '#949494';
		}
		setTimeout('setCharsLimit("' + field + '", ' + limit + ');', 100);
	}

	function fixLeftMenu()
	{
		if ($('tree_box')) {
			$('tree_box').style.width = document.body.clientWidth + 'px';
		} else {
			top.window.frames.frm_menu.window.document.getElementById('tree_box').style.width = top.window.frames.frm_menu.window.document.body.clientWidth + 'px';
		}
	}

	function checkAccessChanges()
	{
		var is_changed = 0;

		for (var id in GLOBALS.Access) {
			if (GLOBALS.Access[id] != $('Access_' + id).checked) {
				is_changed = 1;
				break;
			}
		}

		$('WriteAccess').value = is_changed;
	}

	function sendInquiry(id)
	{
		var data, i, q, stop;

		data = document.getElementsByName('Inquiry_' + id);
		q = {inquiry_id: id, answer: []};
		stop = true;

		for (i = 0; i < data.length; i++) {
			if (data[i].checked) {
				q.answer.push(data[i].value);
				stop = false;
			}
		}
		if (stop) {
			alert('Выберите вариант ответа.');
		} else {
			doLoad(true, false, 'add_inquiry', q);
		}
	}

	function setInquiryResult(rsp)
	{
		$('inquiry_box_' + rsp.data.id).innerHTML = rsp.data.html;
	}

	function checkEraseAbility(el, children)
	{
		if (children) {
			alert('Безвозвратное удаление елементов возможно только для тех елементов, которые не имеют поделементов. Это связано высокой нагрузкой на сервер при выполнении этой операции.');
			el.checked = false;
		}
	}

	function bookmark(url, title)
	{
		if (window.sidebar) {
			window.sidebar.addPanel(title, url, "");
		} else if (window.opera && window.print) {
			var elem = document.createElement('a');
			elem.setAttribute('href', url);
			elem.setAttribute('title', title);
			elem.setAttribute('rel', 'sidebar');
			elem.click();
		} else if (document.all) {
			window.external.AddFavorite(url, title);
		} else {
			alert('Извините, добавить сайт в избранное автоматически не получается. Пожалуйста добавьте сайт в избранное в ручную.');
		}

		return false;
	}

	function typeSelection(s, id)
	{
		if (s.id == 'Type') {
			frames['Addition'].location.href = '/admin/custom_field_addition.php?type=' + s.value + '&id=' + id;
		}
	}

	function cartHandler(entity, id, response)
	{
		var undef;

		if (typeof(undef) == typeof(response)) {
			if (fileName($('cart_handler_control').src) == fileName(GLOBALS.add_to_cart_img)) {
				doLoad(true, false, 'add_to_cart', {entity: entity, id: id});
			} else {
				doLoad(true, false, 'drop_from_cart', {entity: entity, id: id});
			}
		} else {
			if (response.error == '') {
				if (fileName($('cart_handler_control').src) == fileName(GLOBALS.add_to_cart_img)) {
					$('cart_handler_control').src = GLOBALS.drop_from_cart_img;
				} else {
					$('cart_handler_control').src = GLOBALS.add_to_cart_img;
				}
				$('small_cart_box').innerHTML = response.cart;
			} else {
				mistake(response.error);
			}
		}
	}

	function mistake(data)
	{
		alert(var_dump(data));
	}

	function $w(name)
	{
		return window.top[name];
	}

	function showHelp()
	{
		$w('frm_content').document.getElementById('help_box').style.display = 'block';
	}

	function switchTab(n)
	{
		if (GLOBALS.selected_tab) {
			$('tab_' + GLOBALS.selected_tab).className = 'tab_inactive';
		}
		GLOBALS.selected_tab = n;
		$('tab_' + GLOBALS.selected_tab).className = 'tab_active';
	}

	function switchSubTab(n)
	{
		if (GLOBALS.selected_sub_tab) {
			$('sub_tab_' + GLOBALS.selected_sub_tab).className = 'sub_tab_inactive';
			$('sub_tab_content_' + GLOBALS.selected_sub_tab).style.display = 'none';
		}
		GLOBALS.selected_sub_tab = n;
		$('sub_tab_' + GLOBALS.selected_sub_tab).className = 'sub_tab_active';
		$('sub_tab_content_' + GLOBALS.selected_sub_tab).style.display = 'block';
	}

	function commentAnswer(id, str)
	{
		$('pid').value = id;
		if (str) {
			$('answer_to').innerHTML = 'Ответ на пост от ' + str + '&nbsp; <button onclick="commentAnswer(0);">Отмена</button>';
		} else {
			$('answer_to').innerHTML = '';
		}
	}

	function toggleDropDown(id, id2)
	{
		var div=document.getElementById(id);
		var lin=document.getElementById(id2);
		if (div.className=="slide-show") {
			div.className="slide-hide";
		} else {
			div.className="slide-show";
		}
		if (lin.className=="plus") {
			lin.className="min";
		} else {
			lin.className="plus";
		}
		return (false);
	}
	function hide(id, id2)
	{
		return (toggleDropDown(id, id2));
	}

	function doLoad(force, cach, type, element)
	{
		var req = new Subsys_JsHttpRequest_Js();

		req.onreadystatechange = function() {
			if (req.readyState == 4) {
				if (req.responseJS) {
					switch (type) {
						case 'add_to_cart':
						case 'drop_from_cart':
							cartHandler(0, 0, req.responseJS.data);
							break;
						case 'add_inquiry':
							setInquiryResult(req.responseJS.data);
							break;
					}
				}
//				$('debug').innerHTML = req.responseText;
			}
		}

		req.caching = cach;
		req.open('POST', '/load.php', true);
		req.send({ data: element, act: type });
	}


