dom = (document.getElementById) ? true : false;
nn4 = (document.layers) ? true : false;
ie = (document.all) ? true : false;
ie4 = ie && !dom;
Mac = (navigator.appVersion.indexOf("Mac") != -1);
ie4mac = ie4 && Mac;
opera = (navigator.userAgent.indexOf("Opera")!=-1);
Konqueror = (navigator.userAgent.indexOf("Konqueror")!=-1);

function showElem(elemId) {
if (dom) document.getElementById(elemId).style.visibility = "visible";
	else if (ie4) document.all[elemId].style.visibility = "visible";
		else if (nn4) document.layers[elemId].visibility = "show";
}

function hideElem(elemId) {
 try {
   if (dom) document.getElementById(elemId).style.visibility = "hidden";
	  else if (ie4) document.all[elemId].style.visibility = "hidden";
		  else if (nn4) document.layers[elemId].visibility = "hide";
  } catch (e) {  }
}

function putElem(elemId) {
if (dom) document.getElementById(elemId).style.display = "block";
	else if (ie4) document.all[elemId].style.display = "block";
}

function removeElem(elemId) {
	try {
	if (dom) document.getElementById(elemId).style.display = "none";
		else if (ie4) document.all[elemId].style.display = "none";
	} catch (e) {  }
}

function checkEmail( email ){
 return ( email.search(/^[A-Za-z0-9-\._]*@[A-Za-z0-9-\._]*\.[A-Za-z]{1,4}$/)==0?true:false);
}
// ------------ проверка заполненности формы

function field_empty(str) {
for (var i = 0; i < str.length; i++)
     if (" " != str.charAt(i))
  return false;
     return true;
}

function checkform_v2(f) {
  var errMSG = "";
  for (var i = 0; i<f.elements.length; i++)
    if ( f.elements[i].getAttribute("required") )
	if (field_empty(f.elements[i].value)) // пустой
	    errMSG += " " + f.elements[i].title + "\n";
	if ("" != errMSG) {
	    alert("Не заполнены обязательные поля:\n" + errMSG);
	    return false;
	}
  document.all.Submit.disabled=true;
  return true;
}
