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

/* 
 * 	Makeup scripts
 */
	function setClass (obj, newClassName) {
		obj.className = newClassName;
	}
	
 	function removeClass (obj) {
		obj.className = '';
	}
	
	function hideValue (obj, defaultValue) {
		obj.value = (obj.value == defaultValue) ? '' : obj.value;
	}

	function showValue (obj, defaultValue) {
		obj.value = (obj.value == '') ? defaultValue : obj.value;
	}

	function setBg (id, picture) {
		document.getElementById(id).style.backgroundImage = 'url("' + picture + '")';
	}

	function hideBlock (id) {
		$myBuks(id).style.display = 'none';
	}

	function showBlock (id) {
		$myBuks(id).style.display = 'block';
	}


	repairTroubleWithJS = function () {document.body.style.fontSize = 68 + Math.random()/6 + 0.75 + '%';}
	refreshCodeImage 		= function (){if ($myBuks('codeimageChangeable')) $myBuks('codeimageChangeable').src = 'codeimage/'+Math.random();}

/* Common functions */
	function getElementsByClass(searchClass,node,tag) {
		
		var classElements = new Array();
		if (node == null)	{node = document;}
		if (tag == null)	{tag = '*';}
		
		var els 	= node.getElementsByTagName(tag);
		var elsLen 	= els.length;
		var pattern = new RegExp('(^|\\\\s)'+searchClass+'(\\\\s|$)');
		
		for (i = 0, j = 0; i < elsLen; i++) {
			if (pattern.test(els[i].className)) {
				classElements[j] = els[i];
				j++;
			}
		}	
		return classElements;
	}

	function hide (id) {
		if ($myBuks(id)) $myBuks(id).style.display = 'none';
		return true;
	}

	function show (id) {
		if ($myBuks(id)) $myBuks(id).style.display = '';
		return true;
	}


	function $myBuks()
	{    
		  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) {$myBuks(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';
			$myBuks('link-'+document.getElementsByTagName('div')[i].id).className = '';
		}
	}
	
	function toggleTabElement(id)
	{
		hideAllTabElements();
		if ($myBuks(id).style.display == 'none')
		{
			$myBuks(id).style.display = '';
			$myBuks('link-'+id).className = 'link-hovered';
		}
		else
		{
			$myBuks(id).style.display = 'none';
			$myBuks('link-'+id).className = '';
		}
	}

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



		
/* 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;
		
		$myBuks('pages').innerHTML = waiting;
		
		data = 'ajax=1';
		data = data + dataCollection;
		ExecuteXMLCall(href, block, 'post', data,	false, '', $myBuks(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;
		
		$myBuks('newsloader').innerHTML = waiting;
	
		ExecuteXMLCall(site_vdir+'plugins/articles/listext'+url, 'newsblock', 'post', data,	false, '', $myBuks('newsblock').innerHTML);
	}
	
	
	
/* Poll */
	function poll () 
	{
		MyUserFunction = function () {};	
		
		data = 'ajax=1';
		data = data + '&pollside=true';
		data = data + '&p_id='+$myBuks('p_id').value;
		data = data + '&qoa='+$myBuks('qoa').value;
		
		var elements = $myBuks('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;
			}
		}
			$myBuks('pollbutton').innerHTML = waiting;

		
		ExecuteXMLCall(site_vdir+'side_poll', 'side_poll', 'post', data,false, '', $myBuks('side_poll').innerHTML);
	}
	
	function pollinner (id) 
	{
		MyUserFunction = function () {};	
		
		data = 'ajax=1';
		data = data + '&p_id='+id;
		data = data + '&qoa'+id+'='+$myBuks('qoa'+id).value;
		
		var elements = $myBuks('form_poll'+id).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;
			}
		}
		$myBuks('pollbutton'+id).innerHTML = waiting;

		
		ExecuteXMLCall(site_vdir+'polls', 'pollinner'+id, 'post', data,false, '', $myBuks('pollinner'+id).innerHTML);
	}

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

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

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

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

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

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

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

		}
	
		for (var i=0; i<passwordArray.length; i++) if ($myBuks('xfield-'+passwordArray[i]) && $myBuks('xfield-'+passwordArray[i]).value != '')
		{
			$myBuks('error-'+passwordArray[i]).innerHTML = '';

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

		if (error) return false;
	
		return true;
	}

/* Search */
	var ajaxUrlSearch = 'search';
	
	Search = function ()
	{

		MyUserFunction = repairTroubleWithJS;
		
		var data;
		data = 'ajax=1';
		data += '&searchSiteInner='  + $myBuks('searchSiteInner').value;
		data += '&search_site='  + $myBuks('search_site').value;
		data += '&search_group=' + $myBuks('search_group').value;
		
		$myBuks('searchButton').innerHTML	= waiting;

		ExecuteXMLCall(site_vdir+ajaxUrlSearch, 'searchResult', 'post', data, true, '', $myBuks('searchResult').innerHTML);
	}


function checkSubs() {
	
	var error = 0;

	
	
	if ($myBuks('emails').value == '')
	{
		$myBuks('subsEmailsSpan').innerHTML = getlang('fill_this_field');
		error = 1;
	}
	else
	{
	
		var email = String($myBuks('emails').value);

		if (!checkmail(email))
		{
			$myBuks('subsEmailsSpan').innerHTML = getlang('uncorrect_email');
			error = 1;
		}
	}

	if (error == 0)
	{
		$myBuks('subsButton').innerHTML = waiting;
		data = 'emails=' + $myBuks('emails').value;
		data = data + '&subsimage=' + $myBuks('subsimage').value;
		data = data + '&ajax=1';
		ExecuteXMLCall(site_vdir+'subsing', 'subs-content','post', data,true,'',$myBuks('subs-content').innerHTML );
	}
	else
	{
		return false;
	}
}

function CheckSubsForm() {
	var error = 0;

	if ($myBuks('username').value == '')
	{
		$myBuks('error_username').innerHTML = getlang('fill_this_field');
		error = 1;
	}
	
	if($myBuks('email')) {
		if ($myBuks('email').value == '') {
			$myBuks('error_email').innerHTML = getlang('fill_this_field');
			error = 1;
		} else {
		
			var email = String($myBuks('email').value);
	
			if (!checkmail(email)) {
				$myBuks('error_email').innerHTML = getlang('uncorrect_email');
				error = 1;
			}
		}
	}

	if (error == 0) {
		return true;
	} else {
		return false;
	}
}


/* Faq group */

	function showFaqGroup (url) 
	{
		MyUserFunction = function () {};
	
		var data;
		data = 'ajax=1';
		$myBuks('faqgroup').innerHTML = $myBuks('faqgroup').innerHTML + waiting;
		
		ExecuteXMLCall(site_vdir+'plugins/faq/catalogue/id/'+url, 'faqblock', 'post', data,	false, '', $myBuks('faqblock').innerHTML);
	}

/* Faq form */

	faqSubmitForm = function()
	{
		var error = 0;

		$myBuks('faqNameSpan').innerHTML = '&nbsp;';
		$myBuks('faqEmailSpan').innerHTML = '&nbsp;';
		$myBuks('faqQuestionSpan').innerHTML = '&nbsp;';

		if ($myBuks('faqName').value == '')
		{
			$myBuks('faqNameSpan').innerHTML = getlang('fill_this_field');
			error = 1;
		}
		
		if ($myBuks('faqEmail').value == '')
		{
			$myBuks('faqEmailSpan').innerHTML = getlang('fill_this_field');
			error = 1;
		}
		if ($myBuks('faqEmail').value != '')
		{

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

			if (!checkmail(email))
			{
				$myBuks('faqEmailSpan').innerHTML = getlang('uncorrect_email');
				error = 1;
			}
		}

		if ($myBuks('faqQuestion').value =='')
		{
			$myBuks('faqQuestionSpan').innerHTML = getlang('fill_this_field');
			error = 1;
		}

		if (error == 0)
		{
			var data;
		
			data = 'faqName=' + $myBuks('faqName').value;
			data = data + '&faqEmail=' + $myBuks('faqEmail').value;
			
			data = data + '&faqPhone=' + $myBuks('faqPhone').value;
			data = data + '&faqQuestion=' + $myBuks('faqQuestion').value;
			data = data + '&faqImage=' + $myBuks('faqImage').value;
			data = data + '&formSubmit=' + $myBuks('formSubmit').value;
			data = data + '&ajax=1';
			$myBuks('faqWaiting').innerHTML = waiting;
			ExecuteXMLCall(site_vdir+'plugins/faq/catalogue', 'faqform','post',data,true,'',$myBuks('faqform').innerHTML);
		}
		else
		{
			return false;
		}
	}
	
	faqNewForm = function()
	{
		data = 'ajax=1';
		data = data + '&formSubmit=1';
		ExecuteXMLCall(site_vdir+'plugins/faq/catalogue', 'faqform','post',data,true,'',$myBuks('faqform').innerHTML);
	}	
	
	showFaqForm = function (ob)
	{	
		if ($myBuks('faqform').style.display == 'none')
		{
			$myBuks('faqform').style.display = 'block';
			ob.innerHTML = '<span>скрыть</span>';
		}
		else
		{
			$myBuks('faqform').style.display = 'none';
			ob.innerHTML = '<span>задать вопрос</span>';
		}
	}

/* Catalogue */

	removeInvalidChars = function (ob) {
		currentValue = Math.abs(Number(ob.value.replace(/[^\d]/g,"")));
		ob.value =  (currentValue > 100000) ? 100000 : currentValue;
	}
		

	MakePrice = function (price) {

		priceArray = String(price).split('.');
		
		if (!priceArray[1]) priceArray[1] = '';

		if (priceArray[1].length > 3) priceArray[1] =  priceArray[1].substr(0,3);
		
		strpad = ''

		for (i=0;i < 3 - priceArray[1].length;i++) {
			strpad += '0';
		}
		
		return priceArray[0] + '.' + priceArray[1] + strpad;
	}

	ChangeSum = function (id) {
		$myBuks('sum'+id).value = $myBuks('price'+id).value * $myBuks('count'+id).value;
		
		if (isNaN($myBuks('sum'+id).value)) {
			$myBuks('sum'+id).value = 0;
		}

		$myBuks('sumshow'+id).innerHTML = MakePrice($myBuks('sum'+id).value);

		var summa = 0;
			
		for (var j=0; j< document.basket.sum.length; j++) {
			summa += Number(document.basket.sum[j].value);
		}



		$myBuks('summashow').innerHTML = MakePrice(summa);
	}

	reloadMiniBasket = function() {
		MyUserFunction = function () {};
		data = 'ajax=1';
		ExecuteXMLCall(site_vdir + 'minibasket', 'minibasket', 'post', data, true,'',$myBuks('minibasket').innerHTML);
	}
	
		
AddFav = function ()
{
	browserVer = parseInt(navigator.appVersion);
	if (navigator.appName == "Microsoft Internet Explorer" && browserVer >= 4)
	{
		window.external.AddFavorite('http://www.metallist.ru', 'Металлист');
	} 
	else 
	{ 
		alert("К сожалению ваш браузер не поддерживает автоматическое добавление в избранное. Пожалуйста нажмите Ctrl-D"); 
	}
}
SetHome = function () {
	var HomePage = document.location.href;
	if ((navigator.appName == "Microsoft Internet Explorer") && (navigator.appVersion.indexOf("MSIE") != -1) && (parseInt(navigator.appVersion.substr(navigator.appVersion.indexOf("MSIE")+5)) >= 5)) 
	{
		document.body.style.behavior='url(#default#homepage)';
		if (document.body.isHomePage(HomePage))
		{
			alert('"'+HomePage+'" - уже ваша текущая стартовая страница!');
		}
		else
		{
			document.body.setHomePage(HomePage);
		}
	}
	else 
	{
		alert("К сожалению ваш браузер не поддерживает автоматическую установку стартовой страницы. Вы может установить её воспользовавшись настройками, предоставляемыми вашим браузером."); 
	}
}
change_menu = 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-group-','');
	
		if (document.getElementById('menu-group-' + block_name))
		{
			if (document.getElementById('menu-group-' + block_name).style.display == 'none')
			{
				//clear_menu();
				var menu_array = new Array();
				menu_array[menu_array.length] =  block_name;
				document.getElementById('menu-group-' + block_name).style.display = '';
			}
			else
			{
				document.getElementById('menu-group-' + block_name).style.display = 'none';
				//var i = 0;
				//while ((menu_array[i] != block_name)&&(i <  menu_array.length)) i++;
				//menu_array.splice(i, 1);

				//menu_array[i] = '';

			}
		}
/*
		menu_string = menu_array.join ('[delim]');
		setCookie('sitemenu', menu_string);
		*/
	}




    


