	GLOBALS = {};

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

	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 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 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 });
	}


