//Библиотека функций Андрея Лечева :)
//Список функций:
// showElem(elemId) - показать слой
// hideElem(elemId) - спрятать слой
// relPosX(which) и relPosY(which) - положение элемента по осям
// replaceElemContents(elemId, contents) - динамическая замена содержимого слоя
//
// Copyright (c) Art. Lebedev Studio | http://www.design.ru/
// Author - Leechy | leechy@design.ru | http://www.dhtml.ru/
//

opera = (navigator.userAgent.indexOf('Opera') >= 0)? true : false;
dom = (document.getElementById)? true : false;
ie4 = (document.all && !dom)? true : false;
nn4 = (document.layers)? true : false;


function getElem(elemId)
{
if (ie4) elem=document.all[elemId];
if (dom) elem=document.getElementById(elemId);

return elem;
}


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";
 
 return elemId;      
}

function hideElem(elemId) {
  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";
}


function relPosX(which) {
  if (nn4) {
    return document.layers[which].pageX;
  } else {
    var elem = (dom)? document.getElementById(which) : document.all[which];
    var pos = elem.offsetLeft;
    while (elem.offsetParent != null) {
      elem = elem.offsetParent;
      pos += elem.offsetLeft;
      if (elem.tagName == 'BODY') break;
    } return pos;
  }
}

function relPosY(which) {
  if (nn4) {
    return document.layers[which].pageY;
  } else {
    var elem = (dom)? document.getElementById(which) : document.all[which];
    var pos = elem.offsetTop;
    while (elem.offsetParent != null) {
      elem = elem.offsetParent;
      pos += elem.offsetTop;
      if (elem.tagName == 'BODY') break;
    } return pos;
  }
}


function createNN4Leer(leerId, firstLeer, secondLeer) { if (nn4) {
  document.layers[leerId] = new Layer(document.layers[secondLeer].pageX -
    document.layers[firstLeer].pageX);
  document.layers[leerId].left = document.layers[firstLeer].pageX;
  document.layers[leerId].top = document.layers[secondLeer].pageY;
  document.layers[leerId].visibility = "show";
}}

function replaceElemContents(elemId, contents) {
  if (dom && !opera) document.getElementById(elemId).innerHTML = contents;
    else if (ie4 && !opera) document.all[elemId].innerHTML = contents;
      else if (nn4) {
        if (!document.layers[elemId])
          createNN4Leer(elemId, elemId+'LeftAnc', elemId+'RightAnc');
        document.layers[elemId].document.open();
        document.layers[elemId].document.write(contents);
        document.layers[elemId].document.close();
      }
  else alert(contents);
}

function createReplacementElem(elemId, alternativeText) {
  if ((dom && !opera) || (ie4 && !opera))
      document.write('<div id="'+elemId+'">'+alternativeText+'<\/div>');
    else if (nn4)
        document.write('<table cellpadding=0 cellspacing=0 border=0 width=100%>'+
        '<td width=100%><ilayer id="'+elemId+'LeftAnc"><br><\/ilayer><\/td>'+
        '<td align=right><ilayer id="'+elemId+'RightAnc"><br><\/ilayer><\/td><\/table>');
      else if (alternativeText) document.write(alternativeText);
        else document.write('Ваш браузер не поддерживает динамическую замену содержимого элементов!');
}


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

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

