function browserCheck() 
{
	var b = navigator.appName;
	if (b == "Netscape") 
		this.b = "ns";
	else if (b == "Microsoft Internet Explorer") 
		this.b = "ie";
	else 
		this.b = b
	this.us = navigator.userAgent;
	
	//Opera check
	
	this.opera = this.us.indexOf("Opera");
	if(this.opera != -1){
		this.opera = true;
		this.b = "";
	}
	else {
		this.opera = false;
	}
	
	//Firefox Check
	
	this.firefox = this.us.indexOf("Firefox");
	if(this.us.indexOf("Firefox")!=-1){
		this.firefox = true;	
	}else{
		this.firefox = false;	
	}
	
	//DOM Check
	
	this.DOM = (document.createElement && document.getElementsByTagName);
	
	this.version = navigator.appVersion;
	if (this.b == 'ie')
	{ 
		var ve = this.version.indexOf("MSIE")
		this.v = parseInt(this.version.substr(ve+4))
	}
	else 
	this.v = parseInt(this.version)
	this.ns = (this.b=="ns" && this.v>=4)
	this.ns4 = (this.b=="ns" && this.v<5)
	this.ns5 = (this.b=="ns" && this.v==5)
	this.ie = (this.b=="ie" && this.v>=4)
	this.ie4 = (this.version.indexOf('MSIE 4')>0)
	this.ie5 = (this.version.indexOf('MSIE 5')>0)
	this.ie55 = (this.version.indexOf('MSIE 5.5')>0)
	this.ie6 = (this.version.indexOf('MSIE 6')>0) 
	this.min = (this.ns||this.ie)
}//end BrowserCheck() 

is = new browserCheck();

function checkForm(name_form)
{

	var Form = document.getElementsByName(name_form);
	if (Form != null)
	{

		var elements = Form[0].getElementsByTagName("select");
		for (var i=0; i<elements.length; i++)
		{
			if (!elements[i].name)
				continue;
			eval("var tt = document.forms." + name_form+ "." + elements[i].name);
			if (tt == null)
				continue;
			if ((elements[i].getAttribute('required') != null) && (elements[i].getAttribute('required') != '') && (elements[i].value == ''))
			{
				alert(elements[i].getAttribute('required'));
				elements[i].focus();
				return false;
			}
		}

		var elements = Form[0].getElementsByTagName("textarea");
		for (var i=0; i<elements.length; i++)
		{
			if (!elements[i].name)
				continue;
			eval("var tt = document.forms." + name_form+ "." + elements[i].name);
			if (tt == null)
				continue;
			if ((elements[i].getAttribute('required') != null) && (elements[i].getAttribute('required') != '') && (elements[i].value == ''))
			{
				alert(elements[i].getAttribute('required'));
				elements[i].focus();
				return false;
			}
		}

		var tElement = Form[0].getElementsByTagName("input");

		for (var i=0; i<tElement.length; i++)
		{
			if (!tElement[i].name || tElement[i].name.indexOf('[')>0)
				continue;
			eval("var tt = document.forms." + name_form+ "." + tElement[i].name);
			if (!tt || tt == null)
				continue;

			if (tElement[i].name.indexOf('pass')>-1)
			{
				eval("var tt1 = document.forms." + name_form+ ".IsChangePassword");
				if (tt1 != null && !tt1.checked)
				{
					continue;
				}
			}

			if ((tElement[i].getAttribute('required') != null) && (tElement[i].getAttribute('required') != ''))
			{
				if (tElement[i].type == 'radio' && get_radio_value(tElement[i].name)==null)
				{
					alert(tElement[i].getAttribute('required'));
					tElement[i].focus();
					return false;
				}
				else if (tElement[i].value == '')
				{
					alert(tElement[i].getAttribute('required'));
					tElement[i].focus();
					return false;
				}
			}
			if ((tElement[i].getAttribute('equal') != null) && (tElement[i].getAttribute('equal') != ''))
			{
				var t = tElement[i].getAttribute('equal');
				eval("var tt = document.forms." + name_form+ "." + t);
				if ((tt != null) && (tt.value != tElement[i].value))
				{
					alert(tElement[i].getAttribute('equaltext'));
					tt.focus();
					return false;
				}
			}
			if ((tElement[i].getAttribute('minlength') != null) && (tElement[i].getAttribute('minlength') != '') && (tElement[i].value.length < tElement[i].getAttribute('minlength')))
			{
				alert(tElement[i].getAttribute('mintext'));
				tElement[i].focus();
				return false;
			}

			if (tElement[i].getAttribute('name') && (tElement[i].getAttribute('name').substring(0,5) == 'email') && (tElement[i].value != ''))
			{
				if (!echeck(tElement[i].value)) {
					tElement[i].focus();
					alert("Введите верный email");
					return false;
					}
			}
			if (tElement[i].getAttribute('valtype') && (tElement[i].getAttribute('valtype') == 'int'))
			{
				if (!isPositiveInteger(tElement[i].value)) {
					tElement[i].focus();
					alert("Введите положительное число");
					return false;
					}
			}
			if (tElement[i].getAttribute('valtype') && (tElement[i].getAttribute('valtype') == 'float'))
			{
				if (!isPositiveFloat(tElement[i].value)) {
					tElement[i].focus();
					alert("Введите положительное число");
					return false;
					}
			}
		}

		return true;
	}
	else
	{
		return fasle;
	}
}

function confirmDelete(question, where)
{
	temp = window.confirm(question);
	if (temp) //delete
	{
		window.location=where;
	}
}

function echeck(str) {
		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   return false
		}
		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    return false
		}
		 if (str.indexOf(at,(lat+1))!=-1){
		    return false
		 }
		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    return false
		 }
		 if (str.indexOf(dot,(lat+2))==-1){
		    return false
		 }
		 if (str.indexOf(" ")!=-1){
		    return false
		 }
 		 return true;					
}

function ScreenInfo(){
	this.w=screen.width;
	this.h=screen.height;
}

scrinfo = new ScreenInfo();

function open_window(link,w,h) //opens new window
{
	str = '';
	if (w!='')
		str = str + "width="+w+",";
	if (h!='')
		str = str + "height="+h+",";
	var win = str+"menubar=no,location=no,resizable=yes,scrollbars=yes";
	wishWin = window.open(link,'wishWin',win);
}

function WindowProperty(){
	if(is.ie){
		this.iH = document.body.clientHeight;
		this.iW = document.body.clientWidth;	
	}else{
		this.iH = window.innerHeight;
		this.iW = window.innerWidth;	
	}
}

function newImage(arg) {
	if (document.images) {
		rslt = new Image();
		rslt.src = arg;
		return rslt;
	}
}

function changeImages() {
	if (document.images && (preloadFlag == true)) {
		for (var i=0; i<changeImages.arguments.length; i+=2) {
			document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
		}
	}
}

var preloadFlag = false;
function preloadImages() {
	if (document.images) {
		preloadFlag = true;
	}
}

function clock_status()
{
	window.setTimeout("clock_status()",1000);
	today=new Date();
	if (document.getElementById("clock")!=null)
		document.getElementById("clock").innerHTML="Today: "+today.toLocaleString();
} 

function allowChangePassword(chk)
{
	passwordTR = document.getElementById("trChangePassword");
	passwordRetypeTR = document.getElementById("trChangePasswordRetype");

	if (chk.checked)
	{
		if(!is.ie)
		{
			passwordTR.style.display="table-row";
			passwordRetypeTR.style.display="table-row";
		}
		else
		{
			passwordTR.style.display="block";
			passwordRetypeTR.style.display="block";
		}
	}
	else
	{
		passwordTR.style.display="none";
		passwordRetypeTR.style.display="none";
	}
}

function show_thumb(link, img)
{
	try
	{
		if (img!='')
			link.childNodes[0].src=img;
	}
	catch (err) {}
}

function get_radio_value(el)
{
	var res = null;
	var inputs = document.getElementsByName(el);
		for(var i = 0; i < inputs.length; i ++) 
			if (inputs[i].type=="radio" && inputs[i].checked)
				res = inputs[i].value;
	return res;
}

function ShowPrayer()
{
	var type = get_radio_value('type');
	if (type==null)
		alert('Выбирете тип свечи!');
	else
		showPopWin('prayer_list.html?type='+type, 550, 350, null);
	return false;
}

function SelectPrayer(link)
{
	try
	{
		if (link.innerText)
			$('comment').value = link.innerText;
		else
			$('comment').value = getInnerText(link);
		hidePopWin();
		setTimeout("$('comment').focus();", 500);
	}
	catch (err) {	}
	return false;
}

function getInnerText(el) {
	var txt = '', i;
	for (i = el.firstChild; i; i = i.nextSibling) {
		if (i.nodeType == 3)
			txt += i.data;
		else if (i.nodeType == 1)
			txt += getInnerText(i);
	}
	return txt;
}; 

function limitInputText(input, maxlen, left) {
	try
	{
		inputstr = input.value;
		strlen = inputstr.length;
		if (strlen > maxlen) 
			input.value = inputstr.substring(0, maxlen);
		if (left = $(left)) {
			if (left.tagName == 'INPUT') 
				left.value = maxlen - input.value.length;
			else 
				left.innerHTML = maxlen - input.value.length;
		}
	}
	catch (err) {	}
	return true;
}

function check_all(formobj, fl)
{
	var checkboxes = $(formobj).getElementsByTagName('input');
	for ( var i = 0 ; i <= checkboxes.length ; i++ )
	{
		var e = checkboxes[i];
		if ( e && (e.name == 'id_sklep[]') && (e.type == 'checkbox') && (! e.disabled) )
		{
			e.checked = fl;
		}
	}
}

function set_coord(el, ev)
{
	var x; 
	var y;
	x = ev.clientX - Position.cumulativeOffset($('map'))[0]; 
	y = ev.clientY - Position.cumulativeOffset($('map'))[1];
	$('x').value = x;
	$('y').value = y;
	set_pointer(x, y);
}

function set_pointer(x, y)
{
	if (is.ie) {
		y += document.documentElement.scrollTop;
		x += document.documentElement.scrollLeft;
	} else {
		y += window.scrollY;
		x += window.scrollX;
	}
	$('pointer').innerHTML = '<img width="7" height="7" style="position: absolute; left: '+(x-3)+'px; top: '+(y-3)+'px; z-index: 999;" src="images/selector.jpg" >';
}

function ClearText(el, txt)
{
	if (el.value==txt)
	{
		el.value='';
	}
}

function ChangeCurrency(cur)
{
	if (cur=='WMR' && wmr!='')
	{
		$('LMI_PAYEE_PURSE').value = wmr;
		$('LMI_PAYMENT_AMOUNT').value = price;
		$('cost').innerHTML = $('LMI_PAYMENT_AMOUNT').value + ' р.';
	}
	else if (cur=='WMZ' && wmz!='')
	{
		if (parseFloat(kurs)>0)
		{
			$('LMI_PAYEE_PURSE').value = wmz;
			$('LMI_PAYMENT_AMOUNT').value = Math.round(price/parseFloat(kurs)*100)/100;
			$('cost').innerHTML = $('LMI_PAYMENT_AMOUNT').value + ' $';
		}
	}
}

function form_visible(fl)
{
	if (fl)
	{
		$('add_comment').show();
		$('link_comment').hide();
	}
	else
	{
		$('add_comment').hide();
		$('link_comment').show();
	}
}

function urlEncode(str) {
      // Простая проверка
      if (!str || typeof(str) == "undefined") return;
      // Создаем хеш для хранения символов, где ключ - сам символ,
      // а значение - его шестнадцатеричеый эквивалент
      var utf8Array = {};
      // Сначала добавляем стандартные 255 символов
      var i = j = j2 = 0;
      for (i = 0; i <= 255; i++) {
            j = parseInt(i/16); var j2 = parseInt(i%16);
            utf8Array[String.fromCharCode(i)] = ('%' + j.toString(16) + j2.toString(16)).toUpperCase();
      }
      // И отдельно проработаем кириллицу
      var rusAdditional = {
            '_' : '%5F', 'А' : '%C0', 'Б' : '%C1', 'В' : '%C2', 'Г' : '%C3', 'Д' : '%C4', 'Е' : '%C5',
            'Ж' : '%C6', 'З' : '%C7', 'И' : '%C8', 'Й' : '%C9', 'К' : '%CA', 'Л' : '%CB', 'М' : '%CC',
            'Н' : '%CD', 'О' : '%CE', 'П' : '%CF', 'Р' : '%D0', 'С' : '%D1', 'Т' : '%D2', 'У' : '%D3',
            'Ф' : '%D4', 'Х' : '%D5', 'Ц' : '%D6', 'Ч' : '%D7', 'Ш' : '%D8', 'Щ' : '%D9', 'Ъ' : '%DA',
            'Ы' : '%DB', 'Ь' : '%DC', 'Э' : '%DD', 'Ю' : '%DE', 'Я' : '%DF', 'а' : '%E0', 'б' : '%E1',
            'в' : '%E2', 'г' : '%E3', 'д' : '%E4', 'е' : '%E5', 'ж' : '%E6', 'з' : '%E7', 'и' : '%E8',
            'й' : '%E9', 'к' : '%EA', 'л' : '%EB', 'м' : '%EC', 'н' : '%ED', 'о' : '%EE', 'п' : '%EF',
            'р' : '%F0', 'с' : '%F1', 'т' : '%F2', 'у' : '%F3', 'ф' : '%F4', 'х' : '%F5', 'ц' : '%F6',
            'ч' : '%F7', 'ш' : '%F8', 'щ' : '%F9', 'ъ' : '%FA', 'ы' : '%FB', 'ь' : '%FC', 'э' : '%FD',
            'ю' : '%FE', 'я' : '%FF', 'ё' : '%B8', 'Ё' : '%A8'
      }
      for (i in rusAdditional) utf8Array[i] = rusAdditional[i];
      // Посимвольно заменяем символы на их шестнадцатиречные эквиваленты
      var res = "";
      for(i = 0; i < str.length; i++) {
            var simbol = str.substr(i,1);
            res += typeof utf8Array[simbol] != "undefined" ? utf8Array[simbol] : simbol;
      }
      // Пробелы заменяем на плюсы
      res = res.replace(/\s/g, "+");
      return res;
}

function ChangeCurrency1(cur)
{
	summa = parseFloat($('sum').value);
	if (cur=='WMR')
	{
		$('sum').value = Math.round(summa * parseFloat(kurs)*100)/100;
		$('symbol').innerHTML = ' р.';
	}
	else if (cur=='WMZ')
	{
		if (parseFloat(kurs)>0)
		{
			$('sum').value = Math.round(summa/parseFloat(kurs)*100)/100;
			$('symbol').innerHTML = ' $';
		}
	}
}

