function $(id)
{
	return document.getElementById(id);
}

function side_menu(id)
{
	if($('sidesubmenu_'+id).style.display != 'block')
	{
		$('sidesubmenu_'+id).style.display = 'block';
	}
	else
	{
		$('sidesubmenu_'+id).style.display = 'none';
	}
	return false;
}

function checkForm(form)
{
	var elements = form.elements;
	var error = false;
	for (var i = 0; i < elements.length; i++) {
		if(elements[i].className == 'req' && elements[i].value == '')
		{
			error = true;
			break;
		}
	}
	if(error) 
	{
		alert('Необходимо заполнить обязательные поля, отмеченные звездочкой.');
		return false;
	}
	else return true;
}

printit = function (link)
{
	if($('header').style.display != 'none')
	{
		$('header').style.display = 'none';
		$('footer').style.display = 'none';
		$('left').style.display = 'none';
		$('right').style.display = 'none';
		$('to_print').style.display = 'block';
		link.innerHTML = 'Вернуться назад';
		var browser_name = navigator.appName;
		if(window.print)
		{
			window.print();
		}
		else
		{
			var WebBrowser = '<object id="WebBrowser1" width="0" height="0" classid="clsid:8856F961-340A-11D0-A96B-00C04FD705A2"></object>';
			document.body.insertAdjacentHTML('beforeEnd', WebBrowser);
			WebBrowser1.ExecWB(6, 2);
		}
	}
	else
	{
		$('to_print').style.display = 'none';
		$('header').style.display = 'block';
		$('footer').style.display = 'block';
		$('left').style.display = 'block';
		$('right').style.display = 'block';
		link.innerHTML = 'Распечатать страницу';
	}
	return false;
}

function action_func(f_actions, f_id) // выполняет последовательность действий с группой объектов. 1-й аргумет -- действие или массив действий, 2-й аргумент -- id или массив id
{
	if (typeof f_actions == 'string') // если первый аргумент -- строка, преобразуем в массив
	{
		var f_actions = new Array(f_actions);
	}

	if (typeof f_id == 'string') // если второй аргумент -- строка, преобразуем в массив
	{
		var f_id = new Array(f_id);
	}

	for (i = 0; i < f_id.length; i++)
	{
		for (var j = 0; j < f_actions.length; j++)
		{
			eval('document.getElementById("' + f_id[i] + '").' + f_actions[j]);
		}
	}
}

function intval(e) // при нажитии кнопки внутри текстового поля вовращает false, если нажаты не 0-9, tab, enter, backspace, delete, left, right
{

	if(e.keyCode)
	{
		var button = e.keyCode;
	}
	else
	{
		var button = e.charCode;
	}

	if (button)
	{
		button_array = new Array('48', '49', '50', '51', '52', '53', '54', '55' ,'56' ,'57' ,'37', '39' ,'8', '13', '9', '46');

		for (i = 0; i < button_array.length; i++)
		{
			if (button_array[i] == button)
			{
				return true;
			}
		}
		return false;
	}
}

function send_form(begin_msg, fields) // если нет ошибок -- отправляет форму, иначе нет
{
	var f_error = "";
	for (var i = 0; i < fields.length; i++)
	{
		f_error += (field_check(fields[i][0], fields[i][1]) != true) ? fields[i][2] : '';
	}

	if (f_error)
	{
		alert(begin_msg + f_error);
		return false;
	}

	else
	{
		return true;
	}
}


function field_check(f_type, f_id) // проверка полей формы перед отправкой
{
	if (f_type == 'f_blank' && document.getElementById(f_id)) // для проверки на заполнение поля
	{
		return (document.getElementById(f_id).value != '') ? true : false;
	}

	if (f_type == 'f_email' && document.getElementById(f_id)) // для проверки email на валидность
	{
		var regexp = /[\w-]{1,255}@[\w-\.]{1,255}\.[a-zA-Z]{2,4}/;
		return regexp.test(document.getElementById(f_id).value);
	}

	if (f_type == 'f_radio') // для радиокнопок, передаем name, а не id
	{
		for (var i = 0; i < document.getElementsByName(f_id).length; i++)
		{
			if (document.getElementsByName(f_id)[i] && document.getElementsByName(f_id)[i].checked == true)
			{
				
				return true;
			}
		}
	return false;
	}

	if (f_type == 'f_password') // для сравнения пароля и подтверждания пароля, вместо id передаем массив из 2-х id
	{
		return (document.getElementById(f_id[0]).value == document.getElementById(f_id[1]).value) ? true : false;
	}

	if (f_type.indexOf('f_length') != -1) // для проверки длины строки. Значение передается как "f_length:число", где "число" необходимая длина строки
	{
		return (document.getElementById(f_id).value.length >= f_type.substr(9)) ? true : false;
	}

	return false;
}

function preload_images(dir) //прелоадер картинок, первый параметр фукнции -- путь до папки с картинками, остальное имена картинок
{
	var picture_gallery = new Array;

	for(var i = 1; i < preload_images.arguments.length; i++)
	{
		picture_gallery[preload_images.arguments[i]] = new Image();
		picture_gallery[preload_images.arguments[i]].src = dir + preload_images.arguments[i];
	}
}

/* COOKIE */

function getCookie(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;
	}
	var value = document.cookie.substring(start + prefix.length, end);
	return unescape(value);
}

function setCookie(name, value)
{
	var newCookie = name + "=" + escape(value) + ";path=/;expires=Sat, 15-Jul-40 00:00:01 GMT;";
	document.cookie = newCookie;
}
