/* Global variables */
	var data;
	var dataCollection = '';
	var waiting = '<img style="position: relative; top: 2px;" src="templates/common/images/ajax.gif" alt="..." />';
	var site_vdir = '';

/* Makeup scripts */
	setClass			= function (obj, newClassName) {obj.className = newClassName;}
	setClassById	= function (id, newClassName) {$(id).className = newClassName;}
	removeClass = function (obj){obj.className = '';}
	hideValue		= function (obj, defaultValue){obj.value = (obj.value == defaultValue) ? '' : obj.value;}
	showValue		= function (obj, defaultValue){obj.value = (obj.value == '') ? defaultValue : obj.value;}
	
	repairTroubleWithJS = function () {document.body.style.fontSize = 68 + Math.random()/6 + 0.75 + '%';}
	refreshCodeImage 		= function (){if ($('codeimageChangeable')) $('codeimageChangeable').src = 'codeimage/'+Math.random();}

/* Common functions */
	function $() 
	{    
		  var elements = new Array();    
			for (var i = 0; i < arguments.length; i++) 
		  {    
				var element = arguments[i];    
				if (typeof element == 'string')    
				  element = document.getElementById(element);    
				if (arguments.length == 1)    
				  return element;    
				elements.push(element);    
		  } 
		  return elements;    
	}
	
	function newWindow(url, width, height)
	{
		var left = Math.round((screen.width/2)-(width/2));
		var top = Math.round((screen.height/2)-(height/2));
		FormWin = window.open(url, '', "width="+width+", height="+height+", status=no, menubar=no, resizable=no, scrollbars=no,  border=no, toolbar=no, left="+left+", top="+top);
	}
	
	printit = function ()
	{
		if(window.print) window.print(); return false;
		var WebBrowser = '<object id="WebBrowserPrint" width="0" height="0" classid="clsid:8856F961-340A-11D0-A96B-00C04FD705A2"></object>';
		document.body.insertAdjacentHTML('beforeEnd', WebBrowser);
		WebBrowserPrint.ExecWB(6, 2);
	}
	
	MyUserFunction = function () {}
	
	checkmail = function (email) 
	{ 
		dog = email.indexOf("@"); 
		if (dog == -1) return false; 
		if (email.indexOf(".") == -1) return false; 
		if ((dog < 1) || (dog > email.length - 5)) return false;  
		if ((email.charAt(dog - 1) == '.') || (email.charAt(dog + 1) == '.')) return false; 
		return true;
	} 
	 
	
/* Text tabs function */
	function hideTabElement(id) {$(id).style.display = 'none';}
	
	function hideAllTabElements()
	{
		for(var i = 0; i < document.getElementsByTagName('div').length; i++)
		if (document.getElementsByTagName('div')[i].className == 'tab-text')
		{
			document.getElementsByTagName('div')[i].style.display = 'none';
			$('link-'+document.getElementsByTagName('div')[i].id).className = '';
		}
	}
	
	function toggleTabElement(id)
	{
		hideAllTabElements();
		if ($(id).style.display == 'none')
		{
			$(id).style.display = '';
			$('link-'+id).className = 'link-hovered';
		}
		else
		{
			$(id).style.display = 'none';
			$('link-'+id).className = '';
		}
	}

/* Lang functions */
	var lang = new Array();
	function getlang (id) {if (lang[id]) return lang[id]; else id;}
	lang['save'] 							= 'Сохранить';
	lang['delete'] 						= 'Удалить';
	lang['uncorrect_name'] 		= 'Неверный логин';
	lang['fill_this_field'] 	= 'Заполните данное поле';
	lang['uncorrect_email'] 	= 'Некорректный email';
	lang['search'] 						= 'Поиск по сайту';
	lang['name_is_short'] 		= 'Имя слишком маленькое.';
	lang['name_is_long']			= 'Имя слишком большое.';
	lang['uncorrect_login'] 	= 'Некорректный логин';
	lang['uncorrect_name_pass']= 'Неверны логин или пароль';
	lang['uncorrect_pass'] 		= 'Некорректный пароль.<br /> Внимательно прочитайте пояснение.';
	lang['pass_is_short'] 		= 'Пароль слишком маленький <br />(должен состоять из более<br /> чем 7 символов).';
	lang['uncorr_pass_rep'] 	= 'Значение данного поля <br />должно совпадать со значением <br /> поля "пароль"';
	lang['uncorr_fullname'] 	= 'Некорректное имя.<br /> Внимательно прочитайте пояснение.';
	lang['enter_login'] 			= 'Наберите свое имя';
	lang['uncorr_pass'] 			= 'Некорректный пароль.';
	lang['enter_pass'] 				= 'Наберите пароль';
	lang['sending'] 					= 'sending';
	lang['gallery_wh'] 				= 'Разрешение';
	lang['gallery_size'] 			= 'Размер';
	lang['gallery_date'] 			= 'Дата обновления';
		
/* Cookie function */
	setCookie = function (name, value)
	{
		var exp = new Date();
		var e = exp.getTime()+(24*60*60*30*1000);
		exp.setTime(e);
		document.cookie = name + "=" + escape(value) + ";path=/;expires="+exp.toUTCString();
	}
	getCookie = function (name)
	{
		var prefix = name + "=";
		var start = document.cookie.indexOf(prefix);
		if (start == -1) return false;
		var end = document.cookie.indexOf(";", start + prefix.length)
		if (end == -1)	end = document.cookie.length;
		return unescape(document.cookie.substring(start + prefix.length, end));
	}

/* Page navgiation */

	function go (href, block)
	{
		MyUserFunction = repairTroubleWithJS;
		
		$('pages').innerHTML = waiting;
		
		data = 'ajax=1';
		data = data + dataCollection;
		ExecuteXMLCall(href, block, 'post', data,	false, '', $(block).innerHTML);
	}
	
/* News functions */
		
	function showNewsByCat (type, ob, url) 
	{
		ob.className 	 = 'link-hovered';
		
		MyUserFunction = repairTroubleWithJS;
	
		data = 'ajax=1';
		data = data + '&type=' + type;
		dataCollection = '&type=' + type;
		
		$('newsloader').innerHTML = waiting;
	
		ExecuteXMLCall(site_vdir+'plugins/articles/listext'+url, 'newsblock', 'post', data,	false, '', $('newsblock').innerHTML);
	}
	
/* Expanded menu */

	hideAllExpands = function ()
	{
		for(var i = 0; i < document.getElementsByTagName('ul').length; i++)
			if (document.getElementsByTagName('ul')[i].className == 'sub-sub-menu')
			{
				document.getElementsByTagName('ul')[i].style.display = 'none';
				document.getElementsByTagName('ul')[i].style.position = 'relative';
				document.getElementsByTagName('ul')[i].style.left = '0';
				document.getElementsByTagName('ul')[i].style.top = '0';
	
			}
	}
	
	
	prepareExpands = function (firstMenuItem)
	{
		hideAllExpands();
		
		var menu_cookie = getCookie('sitemenu');

		if (menu_cookie != '')
		{
			var menu_array = new Array();
			menu_array = menu_cookie.split('[delim]');
			for (var i = 0; i < menu_array.length; i++)
				if ($('menu-item-'+menu_array[i]))
				{
					$('menu-item-'+menu_array[i]).style.display = '';
					//$('menu-' + menu_array[i]).className = 'menu-item menu-item-hover';
				}

		}
		else if ($('menu-item-'+firstMenuItem))
		{
			$('menu-item-'+firstMenuItem).style.display = '';
			//$('menu-' + firstMenuItem).className = 'menu-item menu-item-hover';
		}
		
	}

	expandMenu = function (block_name)
	{
		var menu_cookie = getCookie('sitemenu');
		var menu_array = new Array()
		if (menu_cookie) menu_array = menu_cookie.split('[delim]');
		block_name = block_name.replace('menu-item-','');
	
		if ($('menu-item-' + block_name))
		{
			if ($('menu-item-' + block_name).style.display == 'none')
			{
				hideAllExpands();
				setCookie('sitemenu', '');
				var menu_array = new Array()
				menu_array[menu_array.length] =  block_name;
				$('menu-item-' + block_name).style.display = '';
				//$('menu-' + block_name).className = 'menu-item menu-item-hover';
				
			}
			else
			{
				$('menu-item-' + block_name).style.display = 'none';
				var i = 0;
				while ((menu_array[i] != block_name)&&(i <  menu_array.length)) i++;
				menu_array[i] = '';
				//$('menu-' + block_name).className = 'menu-item';
			}
		}
		
		menu_string = menu_array.join ('[delim]');
		setCookie('sitemenu', menu_string);
	}	
	
/* Catalogue scripts */

	function updateXSearch () 
	{
		MyUserFunction = function () {$('xsearchbutton').innerHTML = '<button class="b" type="submit"  onmouseover="setClass(this,\'b b-h\');" onmouseout="setClass(this,\'b\');"><span>Искать</span></button>'};
	
		data = 'ajax=1';
		data = data + '&docType=' + $('docType').value;
		data = data + '&docFrom=' + $('docFrom').value;
		data = data + '&docTo=' + $('docTo').value;
		data = data + '&docNumber=' + $('docNumber').value;
		dataCollection = data;
		data = data + '&pparse=true';
		
		
		$('xsearchbutton').innerHTML = waiting;
	
		ExecuteXMLCall(site_vdir+'documents', 'content', 'post', data,	false, '', $('content').innerHTML);
	}
	
	function updateSearch () 
	{
		MyUserFunction = function () {$('searchbutton').innerHTML = '<button class="b" type="submit" onmouseover="setClass(this,\'b b-h\');" onmouseout="setClass(this,\'b\');"><span>Искать</span></button>'};	
		
		data = 'ajax=1';
		data = data + '&searchSite=' + $('searchSite').value;
		dataCollection = data;
		data = data + '&pparse=true';
		
		
		$('searchbutton').innerHTML = waiting;
	
		ExecuteXMLCall(site_vdir+'documents', 'content', 'post', data,	false, '', $('content').innerHTML);
	}
	
/* Poll */
	function poll () 
	{
		MyUserFunction = function () {};	
		
		data = 'ajax=1';
		data = data + '&pollside=true';
		data = data + '&p_id='+$('p_id').value;
		data = data + '&qoa='+$('qoa').value;
		
		var elements = $('form_poll').elements;
		for (var i = 0; i < elements.length; i++) {
			switch (elements[i].type.toLowerCase()) {
				case 'checkbox':
				case 'radio':
					if (elements[i].checked)
						data = data + '&'+elements[i].name + '=' + elements[i].value;
			}
		}
			$('pollbutton').innerHTML = waiting;

		
		ExecuteXMLCall(site_vdir+'side_poll', 'side_poll', 'post', data,false, '', $('side_poll').innerHTML);
	}

function ShowHideDocumentSearch(FormID) {
    if(document.getElementById(FormID).style.display=='none')
        {
        //jQuery("#"+FormID).show("slow");
        jQuery("#"+FormID).fadeIn("slow");
        }
    else
        {
        //jQuery("#"+FormID).hide("slow");
        jQuery("#"+FormID).fadeOut("slow");
        }
}
