
/* Hide and Show value in forms */
	hideValue = function(val, ob) {ob.value = (ob.value == val) ? '' : ob.value;}
	showValue = function(val, ob) {ob.value = (ob.value == '') ? val : ob.value;}
/* Get Element By Id */

	var dataCollection = '';

	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 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 = '';
		}
	}

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

/* Get lang */
	var lang = new Array();
	
	function getlang (id)
	{
		if (lang[id]) return lang[id];
		else id;
	}

	
/* User function */
	MyUserFunction = function () {}

	
/* Repair IE footer bug */
	repairTroubleWithJS = function () {
		document.body.style.fontSize = 68 + Math.random()/6 + 0.75 + '%';
	}


/* Print page */
	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);
	}

	
/* Set cookie */
	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();
	}
	
/* Get cookie */
	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));
	}
	
	
	checkmail = function (email) 
	{ 
		dog = email.indexOf("@"); 

		if (email.indexOf(".") == -1) return false; 
		
		if (dog == -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;
	} 

/* Change image code */

refreshCodeImage = function ()
{
	if ($('codeimageChangeable')) $('codeimageChangeable').src = 'codeimage/'+Math.random();
}

/* Page navgiation */

	function go (href, block)
	{
		MyUserFunction = repairTroubleWithJS;
		var waiting = '<img src="templates/common/images/ajax.gif" alt="..." />';
		$('pages').innerHTML = waiting;
		
		data = 'ajax=1';
		data = data + dataCollection;
		ExecuteXMLCall(href, block, 'post', data,	true, '', $(block).innerHTML);
	}


/* Forms  checker */
	checkForm = function ()
	{
		
		var error = 0;
	

		for (var i=0; i<fieldArray.length; i++) 
			if ($('xfield-'+fieldArray[i]))
			{
				if ($('error-'+fieldArray[i])){
					$('error-'+fieldArray[i]).innerHTML = ''; 
					if(($('xfield-'+fieldArray[i]).tagName == 'textarea' &&	 $('xfield-'+fieldArray[i]).innerHTML == '')	||
					   ($('xfield-'+fieldArray[i]).type	   == 'checkbox' && !$('xfield-'+fieldArray[i]).checked)			||
				   		($('xfield-'+fieldArray[i]).value   == ''))
				   	{
				 		$('error-'+fieldArray[i]).innerHTML = getlang('fill_this_field'); error = 1;
				 	}
				}
			}

		for (var i=0; i<checkArray.length; i++) if ($('xfield-'+checkArray[i]))
		{
			var count 	= $('xfield-'+checkArray[i]).value;
			var max 	= $('xfield-'+checkArray[i]+'-max').value;
			var min 	= $('xfield-'+checkArray[i]+'-min').value;

					
			if ($('error-'+checkArray[i])){
			
				$('error-'+checkArray[i]).innerHTML = ''; 
			
				var item = 0;
				for(var j=1; j<=count; j++)
					if($('xfield-'+checkArray[i]+'-'+j).checked) item++;				
		
			
			    if(max && (item > max))
	     		{
				 	$ ('error-'+checkArray[i]).innerHTML = 'Превышено максимальное количество ответов'; error = 1;
				}
				
				if((min > 0) && (item < min))
				{
	 				$ ('error-'+checkArray[i]).innerHTML = 'Отмечено меньше ответов, чем требуется'; error = 1;
	 			}
	 		}
		}
		for (var i=0; i<radioArray.length; i++) if ($('xfield-'+radioArray[i]+'-item'))
		{
			var count 	= $('xfield-'+radioArray[i]+'-item').value;
			var nochecked = true;

			$('error-'+radioArray[i]).innerHTML = '';

			for(var j = 1; j <= count; j++)
			{
				if($('xfield-'+radioArray[i]+'-'+j).checked) nochecked = false;
			}

			if(nochecked)
		   	{                                   
				$ ('error-'+radioArray[i]).innerHTML = getlang('fill_this_field'); error = 1;
			}
		}
	
		for (var i=0; i<emailArray.length; i++) if ($('xfield-'+emailArray[i]) && $('xfield-'+emailArray[i]).value != '')
		{
			$('error-'+emailArray[i]).innerHTML = ''; 
			
			if (!checkmail($('xfield-'+emailArray[i]).value))
			{
				$('error-'+emailArray[i]).innerHTML = getlang('uncorrect_email'); error = 1;
			}
		}
	
		for (var i=0; i<passwordArray.length; i++) if ($('xfield-'+passwordArray[i]) && $('xfield-'+passwordArray[i]).value != '')
		{
			$('error-'+passwordArray[i]).innerHTML = ''; 

			if ($('xfield-'+passwordArray[i]).value != $('password-xfield-'+passwordArray[i]).value)
			{
				$('error-'+passwordArray[i]).innerHTML = getlang('uncorr_pass_rep'); error = 1;
			}
		}

		if (error) return false;
	
		return true;
	}

/* End forms */

/* Drop menu */
	var hideTimeOut = 0;
	var hideTimeOutValue = 180;

	hideAllPopups = function ()
	{

		for (var i = 0; i < document.getElementsByTagName('div').length; i++)
			if (document.getElementsByTagName('div')[i].className == 'menu-drop-items')
			{
				document.getElementsByTagName('div')[i].style.display = 'none';
				document.getElementsByTagName('div')[i].style.position = 'absolute';
			}
	}
	
	hidePopup = function (id)
	{
		if (hideTimeOut == 0 && $(id)) 
			hideTimeOut = setTimeout('$("'+id+'").style.display = "none";', hideTimeOutValue);
	}
	
	refreshTimeOut = function ()
	{
		if(hideTimeOut != 0)
		{
			clearTimeout(hideTimeOut);
			hideTimeOut = 0;
		}
	}
	
	showPopup = function (id)
	{
		refreshTimeOut();
		hideAllPopups ();
		if ($(id)) $(id).style.display = 'block';
	}
	
	changeClass = function(id)
	{
		if($(id).className == 'menu-link')
			$(id).className = 'menu-link-hover';
		else
			$(id).className = 'menu-link';
	}
	
/* Articles */

	function newsShortToLong (id, ob)
	{
		if ($('short-preview-'+id).style.display == 'none')
		{
			ob.src='templates/common/images/down.gif';
			$('short-preview-'+id).style.display = 'block';
			$('full-preview-'+id).style.display = 'none';
			
		}else
		{
			ob.src='templates/common/images/up.gif';
			$('full-preview-'+id).style.display = 'block';
			$('short-preview-'+id).style.display = 'none';
		}
		
		return true;
	}
	
	function showNewsByCat (type, ob, url) 
	{
		ob.className = 'link-hovered';
		
		MyUserFunction = repairTroubleWithJS;
	
		var waiting = '<div><img src="templates/common/images/ajax.gif" alt="..." /></div>';
		var data;
		
		data = 'ajax=1';
		
		data = data + '&type=' + type;
		
		dataCollection = '&type=' + type;
	
		ExecuteXMLCall(site_vdir+'plugins/articles/listext'+url, 'newsblock', 'post', data,	false, '', waiting);
	}
	
/* news */
	
	function showNewsesByCat (type, ob, url) 
	{
		ob.className = 'link-hovered';
		
		MyUserFunction = repairTroubleWithJS;
	
		var waiting = '<img src="templates/common/images/ajax.gif" alt="..." />';
		var data;
		
		data = 'ajax=1';
		
		$('yearNews').innerHTML = waiting;
	
		ExecuteXMLCall(site_vdir+'plugins/news/listext'+url, 'newsblock', 'post', data,	true, '', $('newsblock').innerHTML);
	}
	
/* Alphabet */

	function showAlphabet (url) 
	{
		MyUserFunction = repairTroubleWithJS;
	
		var waiting = '<div><img src="templates/common/images/ajax.gif" alt="..." /></div>';
		var data;
		
		data = 'ajax=1';	
		ExecuteXMLCall(site_vdir+'plugins/headings/list/char/'+url, 'headeringblock', 'post', data,	false, '', waiting);
	}
	
/* Faq group */

	function showFaqGroup (url) 
	{
		MyUserFunction = repairTroubleWithJS;
	
		var waiting = '<img style="position: relative; top: 3px;" src="templates/common/images/ajax.gif" alt="..." />';
		var data;
		
		data = 'ajax=1';
		$('faqgroup').innerHTML = waiting;
		
		ExecuteXMLCall(site_vdir+'plugins/faq/catalogue/id/'+url, 'faqblock', 'post', data,	true, '', $('faqblock').innerHTML);
	}

/* Faq form */

	faqSubmitForm = function()
	{
		var error = 0;
MyUserFunction = function () {};
		$('faqNameSpan').innerHTML = '&nbsp;';
		$('faqEmailSpan').innerHTML = '&nbsp;';
		$('faqQuestionSpan').innerHTML = '&nbsp;';
		$('faqName').className = 'form-input';
		$('faqEmail').className = 'form-input';
		$('formarea').className = 'form-data';

		if ($('faqName').value == '')
		{
			$('faqNameSpan').innerHTML = 'заполните данное поле'; 
			$('faqName').className = 'form-input-err';
			error = 1;
		}
		
		if ($('faqEmail').value == '')
		{
			$('faqEmailSpan').innerHTML = 'заполните данное поле'; 
			$('faqEmail').className = 'form-input-err';
			error = 1;
		}
		if ($('faqEmail').value != '')
		{

			var email = String($('faqEmail').value);

			if (!checkmail(email))
			{
				$('faqEmailSpan').innerHTML = 'некорректный email'; 
				$('faqEmail').className = 'form-input-err';
				error = 1;
			}
		}

		if ($('faqQuestion').value =='')
		{
			$('faqQuestionSpan').innerHTML = 'заполните данное поле'; 
			$('formarea').className = 'form-data-err';
			error = 1;
		}

		if (error == 0)
		{
			var data;
		
			data = 'faqName=' + $('faqName').value;
			data = data + '&faqEmail=' + $('faqEmail').value;
			
			data = data + '&faqPhone=' + $('faqPhone').value;
			data = data + '&faqQuestion=' + $('faqQuestion').value;
			data = data + '&faqSpec=' + $('faqSpec').value;
			data = data + '&faqImage=' + $('faqImage').value;
			data = data + '&formSubmit=' + $('formSubmit').value;
			data = data + '&ajax=1';
			$('faqwaiting').innerHTML = '<img src="templates/common/images/ajax.gif" alt="..." />';
			ExecuteXMLCall(site_vdir+'plugins/faq/catalogue', 'faqform','post',data,true,'','current');//$('faqform').innerHTML);
		}
		else
		{
			return false;
		}
	}
	
	faqNewForm = function()
	{
		data = 'ajax=1';
		data = data + '&formSubmit=1';
		ExecuteXMLCall(site_vdir+'plugins/faq/catalogue', 'faqform','post',data,true,'',$('faqform').innerHTML);
	}	
	
	ShowFaqForm = function ()
	{
		$('faqform').style.display = 'block';
		$('faqLink').style.display = '';
		$('faqLink2').style.display = 'block';
	}

	HideFaqForm = function ()
	{
		$('faqform').style.display = 'none';
		$('faqLink').style.display = 'block';
		$('faqLink2').style.display = '';
	}
		
	ClearFaqForm = function ()
	{
		$('faqFormBlock').style.position = 'absolute';
		$('faqform').style.display = 'none';
		$('faqLink').style.display = 'block';
		$('faqImageSpan').innerHTML = 'Введите код';
	}
	
	
/* Search */
	var ajaxUrlSearch = 'search';
	
	Search = function ()
	{
		$('searchwait').innerHTML = '<div><img src="templates/common/images/ajax.gif" alt="..." /></div>';
		MyUserFunction = repairTroubleWithJS;
		
		var data;
		data = 'ajax=1';
		data += '&searchSiteInner='  	+ $('searchSiteInner').value;
		data += '&search_in_results=' 	+ $('search_in_results').checked;
		data += '&results_query=' 		+ $('results_query').value;
		
		data += '&search_group=' 		+ $('search_group').value;
			
		ExecuteXMLCall(site_vdir+ajaxUrlSearch, 'searchResult', 'post', data, true, '', $('searchResult').innerHTML);
	}
	
/* Send letter */
	LetterShow = function()
	{
		if($('headerletter').style.display == 'block')
			$('headerletter').style.display = 'none';
		else
			$('headerletter').style.display = 'block';	
	}


	var ajaxUrlLetterWait = '<div><img src="templates/common/images/ajax.gif" alt="..." /></div>';
	
	CheckLetterForm = function()
	{
		$('letterNameError').innerHTML 		= '';
		$('letterCompanyError').innerHTML 	= '';
		$('letterPhoneError').innerHTML 	= '';
		$('letterEmailError').innerHTML 	= '';
		$('letterTextError').innerHTML 		= '';
				
		var name 	= $('letterName').value;
		var email 	= $('letterEmail').value;
		var text 	= $('letterText').value;
		var error 	= 0;
		var ajaxUrlLetter = 'send-letter';
		
		/* check empty */
		
		if(name == '') 
		{
			$('letterNameError').innerHTML  = 'заполните данное поле';
			error = 1; 
		}
		if(email == '') 
		{
			$('letterEmailError').innerHTML = 'заполните данное поле';
			error = 1; 
		}
		if(text == '') 
		{
			$('letterTextError').innerHTML  = 'заполните данное поле';
			error = 1; 
		}
		
		/* check correct data */
		if(email != '' && !checkmail(email))
		{
			$('letterEmailError').innerHTML = 'некорректны email';
			error = 1; 
		}
		
		var data
		
		if(error == 0) 
		{
			data = 'ajax=1';
			data += '&letterName='  	+ $('letterName').value;
			data += '&letterCompany=' 	+ $('letterCompany').value;
			data += '&letterPhone='  	+ $('letterPhone').value;
			data += '&letterEmail=' 	+ $('letterEmail').value;
			data += '&letterText=' 		+ $('letterText').value;
			data += '&letterImage=' 	+ $('letterImage').value;
			ExecuteXMLCall(site_vdir+ajaxUrlLetter, 'letterblock', 'post', data, true, '', ajaxUrlLetterWait);
		}
		else
			return false; 
		
		
	}
	
	CheckSideLetterForm = function()
	{
		$('sideletterNameError').innerHTML 		= '';
		$('sideletterCompanyError').innerHTML 	= '';
		$('sideletterPhoneError').innerHTML 	= '';
		$('sideletterEmailError').innerHTML 	= '';
		$('sideletterTextError').innerHTML 		= '';
				
		var name 	= $('sideletterName').value;
		var email 	= $('sideletterEmail').value;
		var text 	= $('sideletterText').value;
		var error 	= 0;
		var ajaxUrlLetter = 'send-letter-side';
		
		/* check empty */
		
		if(name == '') 
		{
			$('sideletterNameError').innerHTML  = 'заполните данное поле';
			error = 1; 
		}
		if(email == '') 
		{
			$('sideletterEmailError').innerHTML = 'заполните данное поле';
			error = 1; 
		}
		if(text == '') 
		{
			$('sideletterTextError').innerHTML  = 'заполните данное поле';
			error = 1; 
		}
		
		/* check correct data */
		if(email != '' && !checkmail(email))
		{
			$('sideletterEmailError').innerHTML = 'некорректны email';
			error = 1; 
		}
		
		var data
		
		if(error == 0) 
		{
			data = 	'ajax=1';
			data += '&sideletterName='  	+ $('sideletterName').value;
			data += '&sideletterCompany=' 	+ $('sideletterCompany').value;
			data += '&sideletterPhone='  	+ $('sideletterPhone').value;
			data += '&sideletterEmail=' 	+ $('sideletterEmail').value;
			data += '&sideletterText=' 		+ $('sideletterText').value;
			data += '&sideletterImage=' 	+ $('sideletterImage').value;
			ExecuteXMLCall(site_vdir+ajaxUrlLetter, 'sideletterblock', 'post', data, true, '', ajaxUrlLetterWait);
		}
		else
			return false; 
	}
	
	CheckAuth = function()
	{
		var ajaxUrlAuthWait = '<div><img src="templates/common/images/ajax.gif" alt="..." /></div>';
		var ajaxUrlAuth = 'auth';
		var error = 0;
		$('AuthSideError').innerHTML = '';
		if(($('sideUsername').value == '') || ($('sidePassword').value == ''))
		{
			$('AuthSideError').innerHTML = 'заполните все поля';
		}
		
		if(error == 0) 
		{
			data = 	'ajax=1';
			data += '&username=' 	+ $('sideUsername').value;
			data += '&password=' 	+ $('sidePassword').value;
			ExecuteXMLCall(site_vdir+ajaxUrlAuth, 'authblock', 'post', data, true, '', ajaxUrlAuthWait);
		}
		
		return false;
	}
	
/* Vacancy */
	var VacancyURL = 'vacancy';
	
	GetCity = function(id)
	{
		var data;
		data  = 'c_id='  + id;
		data += '&ajax=1';
		ExecuteXMLCall(site_vdir + VacancyURL, 'vacancylist', 'post', data, false, '', '<div style="position: relative; float: left; padding: 15px 0 0 15px;"><img src="templates/common/images/ajax.gif" alt="..." /></div>');
	}
	
	GetVac = function(id)
	{
		var data;
		data  = 'v_id='  + id;
		data += '&ajax=1';
		ExecuteXMLCall(site_vdir + VacancyURL, 'vacancyview', 'post', data, false, '', '<div style="padding: 15px 0 0 5px;"><img src="templates/common/images/ajax.gif" alt="..." /></div>');		
	}
	
