<!--//
var base ="";
var path = "";
var tz;

function SetBase(b) {	base = b;}

//===========================================
function Hide() {
//===========================================
// Спрятать рисунок для последующего удаления
//===========================================
		document.getElementById("pic").style.display="none";
		document.getElementById("delete_pic").value = 1;
}

function showPic(w, h, pic, alt,prn) {
	w1 = w + 20;
	h1 = h + 50;
	res="no";
	if (h1>750) {alert(h1);res="yes";h1=750;}
	if (typeof(tz)=='object') tz.close();
	tz=window.open("","wnd","width="+w1+",height="+h1+",status=no,left="+(screen.width-w1)/2+",top="+(screen.height-h1)/2+",toolbar=no,menubar=no,resizable="+res+",scrollbars=no")
	tz.document.open();
	tz.document.write('<html><title>'+alt+'</title><BASE href="'+base+'"><link rel=stylesheet type="text/css" href="./css/style.css"><body onload="self.focus();"><div align=center style="margin:10px;"><a href="javascript:window.close();"><img src="./'+pic+'" width='+w+' height='+h+' border=0 alt="Закрыть"></a><br><br><a href="javascript: self.');
	if (prn==1) {tz.document.write('print();">Распечатать');}
	else {tz.document.write('close();">Закрыть окно')}
	tz.document.write("</a>");
	tz.document.write("</body></html>");
	tz.document.close();
}

function showHelp() {
	w = 400;
	h = 400;
	tz=window.open(base+"data/0/help.html","help","width="+w+",height="+h+",status=no,left="+(screen.width-w)/2+",top="+(screen.height-h)/2+",toolbar=no,menubar=no,resizable=no,scrollbars=no")
}

//===========================================
function check(content) {
//===========================================
//  Проверка заполненности полей формы
//===========================================
	if (content == 6) { //заявка
		check_fld = new Array ("org","adr","phone","person","message");
		check_hdr = new Array ("Организация","Адрес","Телефон","Контактное лицо","Сообщение");
	}
	if (content == 4) { //новости
		check_fld = new Array ("titleNews","text");
		check_hdr = new Array ("Заголовок","Текст");
	}
	if (content == 3) { //каталог
		check_fld = new Array ("name");
		check_hdr = new Array ("Название");
	}

  // проверка заполнения полей формы 
	for ( i = 0; i <= check_fld.length-1; i++) {
		if (isEmpty(document.getElementById(check_fld[i]).value)) {
			alert('Не заполнено обязательное поле "'+check_hdr[i]+'".');
			document.getElementById(check_fld[i]).focus();
			return false;
		}
	}
	return true;
}

//===========================================
function isEmpty(str) {
//===========================================
// проверка элемента формы на заполненность
//===========================================
	for (var i = 0; i < str.length; i++)
		if (" " != str.charAt(i))
			return false;
	return true;
}

function showdesc() {
	if (showdesc.arguments.length > 1) {
		w = showdesc.arguments[1];
		h = showdesc.arguments[2];
	} else {
		w = 350;
		h = 200;
	}
	dw=window.open(showdesc.arguments[0], '', 'height='+h+',width='+w+',screenX='+x+',screenY='+y+',top='+y+',left='+x+',toolbar=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no');
	x+=20;
	y+=20;
	if (screen.width) {
		if (x > screen.width - w) x = 0;
		if (y > screen.height - h) y = 0;
	} else {
		if (x > 800 - w) x = 0;
		if (y > 600 - h) y = 0;
	}
}

//===========================================
function ElementClick(id,folder,server){
//===========================================
// Установка Cookie для раскрытия подразделов {0,1}
// 0 - цепочка закрыта
// 1 - цепочка открыта
//===========================================
	setCookie("element["+id+"]", 1 - getCookie("element["+id+"]"),0,folder,server);
} 

/*
Функция установки значения cookie
name - имя cookie
value - значение cookie
expires - дата окончания действия cookie (по умолчанию - до конца сессии)
path - путь, для которого cookie действительно (по умолчанию - документ, в котором значение было установлено)
domain - домен, для которого cookie действительно (по умолчанию - домен, в котором значение было установлено)
secure - логическое значение, показывающее требуется ли защищенная передача значения cookie
*/
function setCookie (name, value, expires, path, domain, secure) {
      document.cookie = name + "=" + escape(value) +
        ((expires) ? "; expires=" + expires : "") +
        ((path) ? "; path=" + path : "") +
        ((domain) ? "; domain=" + domain : "") +
        ((secure) ? "; secure" : "");
}


/*
Функция чтения значения cookie
Возвращает установленное значение или пустую строку, если cookie не существует
name - имя считываемого cookie
*/
function getCookie(name) {
        var prefix = name + "="
        var cookieStartIndex = document.cookie.indexOf(prefix)
        if (cookieStartIndex == -1)
                return null
        var cookieEndIndex = document.cookie.indexOf(";", cookieStartIndex + prefix.length)
        if (cookieEndIndex == -1)
                cookieEndIndex = document.cookie.length
        return unescape(document.cookie.substring(cookieStartIndex + prefix.length, cookieEndIndex))
}

/*
Функция удаления значения cookie
Принцип работы этой функции заключается в том, что cookie устанавливается с заведомо устаревшим параметром expires, в данном случае 1 января 1970 года.
name - имя cookie
path - путь, для которого cookie действительно
domain - домен, для которого cookie действительно
*/
function deleteCookie(name, path, domain) {
        if (getCookie(name)) {
                document.cookie = name + "=" +
                ((path) ? "; path=" + path : "") +
                ((domain) ? "; domain=" + domain : "") +
                "; expires=Thu, 01-Jan-70 00:00:01 GMT"
        }
}

function CheckForm(form) {
    var Message = "Необходимо заполнить поля \n\n";
    var focus = null;
    var result = true;
    for (var i = 0; i < form.elements.length; i++) {
        if (form.elements[i].getAttribute("require") == "true") {
            var doc = document.getElementById(form.elements[i].name);
            var match = "";
            if(null != form.elements[i].getAttribute("match")) {
                match = form.elements[i].getAttribute("match");
            }
            if(!CheckValue(form.elements[i].value, match)) {
                if(focus == null) {
                      form.elements[i].focus();
                      focus = true;
                }
                Message += form.elements[i].getAttribute("info") + "\n";
                result = false;
           }
       }
    }
    if(!result) {
        alert(Message);
    }
    return result;
}


function CheckValue(Value, Match) {
    switch(Match) {
        case "email":
            if(!(Value.length>0&&Value.match(new RegExp("^[a-z0-9_]+@([a-z0-9_]+\.)+[a-z]+$","i")))){
                return false;
            }
            return true;
        break;

        case "kpp":
          if(Value.length!=9) return false;
          if(!Value.match(new RegExp("^[0-9]+$","i"))) {
              return false;
          }
          return true;
        break;

        case "zip":
          if(Value.length!=6) return false;
          if(!Value.match(new RegExp("^[0-9]+$","i"))) {
              return false;
          }
          return true;
        break;

        case "rs":
            if(Value.length < 20) {
                if(Value.match(new RegExp("^[0-9]+$", "i"))) {
                    return true;
                } else {
                    return false;
                }
            } else {
                return false;
            }
        break;

        case "phone":
            if(!Value.match(new RegExp("^[0-9 \(\)\+\-]+$","i"))) {
                return false;
            }
        return true
        break;

        case "digit":
            if(!Value.match(new RegExp("^[0-9]+$","i"))) {
                return false;
            } else {
                return true;
            }
        break;

        case "inn":
            var checkValueArray = Value.split("");
            if(checkValueArray.length==10) {
                cn = chekSum(checkValueArray, [2,4,10,3,5,9,4,6,8,0]);
                if(cn!=checkValueArray[9]){
                    return false;
                }
            } else if(checkValueArray.length==12) {
                cn1 = chekSum(checkValueArray, [7,2,4,10,3,5,9,4,6,8,0]);
                cn2 = chekSum(checkValueArray, [3,7,2,4,10,3,5,9,4,6,8,0]);
                if(cn1!=checkValueArray[10]&&cn2!=checkValueArray[11]){
                    return false;
                }
            } else {
              return false;
            }
            return true;
        break;

        default:
            if(Value == "") {
                return false;
            } else {
                return true;
            }
        break;
    }
}

function chekSum(checkValue,map){
  out = 0;
  for(c=0;c<map.length;c++){out+=map[c]*checkValue[c];}
  return ((cn=out%11)>9)?cn%10:cn;
}
//-->

 