/*======================================
      JPMENU Scripts v. 1.0.0
          Created  : 09/10/2004
          Modified : 09/10/2004
======================================*/
function ShowSubMenu(Sender, Display){
//  ShowLink(Sender.name, Display);
/*  ShowLink(Sender.name+'0', Display);
  ShowLink(Sender.name+'1', Display);
  ShowLink(Sender.name+'2', Display);
  ShowLink(Sender.name+'3', Display);*/
  return true;
}

function ShowLink(LinkIndx, IsLinkDisplayed){
  if (IsLinkDisplayed == true)
  {
        /*document.links(LinkIndx).style.display='inline';*/
        document.links(LinkIndx).style.display='inline';
  }
  else
  {
        document.links(LinkIndx).style.display='none';
        //document.objects(LinkIndx).style.display='none';
  }
  return true;
}

function ShowImage(ImageIndx, IsImageDisplayed){
  if (IsImageDisplayed == true)
  {
    document.images[ImageIndx].style.display='inline';
  }
  else
  {
    document.images[ImageIndx].style.display='none';
  }
  return true;
}

function ShowElementByID(EID){
  document.getElementById(EID).style.display='inline';
  return true;
}

function HideElementByID(EID){
  document.getElementById(EID).style.display='none';
  return true;
}

function SwitchSearchBar(){
  if (document.getElementById("TOP_SRCH").style.display != "inline")
  {
//    document.getElementById("TOP_SRCH").style.display='inline';
    ShowElementByID("TOP_SRCH");
//    document.getElementById("NEWS_SRCH").style.display='inline';
    ShowElementByID("NEWS_SRCH");
  }
  else
  {
//    document.getElementById("TOP_SRCH").style.display='none';
    HideElementByID("TOP_SRCH");
//    document.getElementById("NEWS_SRCH").style.display='none';
    HideElementByID("NEWS_SRCH");
  }
  return true;
}

function SwitchElementByID(EID){
//  var is_ft = ((document.getElementById(EID).style.display == "")?true:false);
//  alert(is_ft);
  if (document.getElementById(EID).style.display != "inline")
  {
    ShowElementByID(EID);
  }
  else
  {
    HideElementByID(EID);
  }
//  if (is_ft)
//  {
//    SwitchElementByID(EID);
//  }
  return true;
}

// rewrite to common coockies.js
function getExpDate(days, hours, minutes) {
    var expDate = new Date();
    if (typeof days == "number" && typeof hours == "number" &&
        typeof hours == "number") {
        expDate.setDate(expDate.getDate() + parseInt(days));
        expDate.setHours(expDate.getHours() + parseInt(hours));
        expDate.setMinutes(expDate.getMinutes() + parseInt(minutes));
        return expDate.toGMTString();
    }
}

function setCookie(name, value, expires, path, domain, secure) {
    document.cookie = name + "=" + escape (value) +
        ((expires) ? "; expires=" + expires : "") +
        ((path) ? "; path=" + path : "") +
        ((domain) ? "; domain=" + domain : "") +
        ((secure) ? "; secure" : "");
}

function SwitchAllElementsByPrefix(Sender, Pref, TrueTitle, FalseTitle, CookieName){
  var m = document.all.length;
  var PrefLen = Pref.length;
  var IsDisplay = (Sender.innerText == TrueTitle);
  var el, eid;
  if (CookieName)
  {
    setCookie(CookieName, ((IsDisplay)?'y':'n'), expDate);
  }
  if (FalseTitle && TrueTitle)
  {
    Sender.innerText = (IsDisplay)?FalseTitle:TrueTitle;
    var sender_id = Sender.id;
    for (i=0; i<document.links.length; i++)
    {
      el = document.links(i);
      eid = el.id;
      if (eid == sender_id)
      {
        el.innerText = Sender.innerText;
      }
    }
  }
  for (i=0; i<m; i++)
  {
    el = document.all(i);
    eid = el.id;
    if (eid.substring(0,PrefLen) == Pref)
    {
      var expDate = getExpDate(180, 0, 0);
      if (IsDisplay)
      {
        ShowElementByID(eid);
      }
      else
      {
        HideElementByID(eid);
      }
    }
  }
  return true;
}

/*********** CHECK FORM FUNC'S ******************/

function ChckFmTxtField(Fld, FormDesc)
{
  if (!FormDesc.IsFldNullable(Fld))
  {
    if (!Fld.value)
    {
      alert('Не заполнено поле "'+FormDesc.GetNameByFld(Fld)+'" !');
      Fld.focus();
      return false;
    }
  }
  return true;
}

function ChckFmDtsField(Fld, FormDesc)
{
  if (!FormDesc.IsFldNullable(Fld))
  {
    if (!Fld.value)
    {
      alert('Не заполнено поле "'+FormDesc.GetNameByFld(Fld)+'" !');
      Fld.focus();
      return false;
    }
    if (false)
    {
      alert('Поле "'+FormDesc.GetNameByFld(Fld)+'" не является коректной датой!');
      Fld.focus();
      return false;
    }
  }
  return true;
}

function ChckFmEmlField(Fld, FormDesc)
{
  var p = -1;

  function PosInStr(str, sign)
  {
    var pos = -1;
    return ((((pos = str.indexOf(sign)) == -1)
              || (pos == 0)
              || (pos == str.length-1))?-1:pos);
  }

  if (!Fld.value && !FormDesc.IsFldNullable(Fld))
  {
    alert('Не заполнено поле "'+FormDesc.GetNameByFld(Fld)+'" !');
    Fld.focus();
    return false;
  }
  else if (!Fld.value)
  {
    return true;
  }
  else if (((p = PosInStr(Fld.value, '@')) == -1)
            || (PosInStr(Fld.value.substring(p+1), '.') == -1))
  {
    alert('Поле "'+FormDesc.GetNameByFld(Fld)+'" не является e-mail адресом!');
    Fld.focus();
    return false;
  }
  return true;
}

function ChckFmPhoField(Fld, FormDesc)
{
  return ChckFmTxtField(Fld, FormDesc);
}