// Navigation, Slides and Tabs roll-over buttons
// ------------------------------------------------------------------------------------------------

var RollOvers = new Array();

function initRollOvers(imgpath, imgid_prefix, imgid_suffix, imgcount) {
  if (imgid_prefix == "" || imgcount == 0) return;
  var imgId, imgIndex, imgsrc1, imgsrc2, imgsrc3;
  var imgArray = null, imgObj1 = null, imgObj2 = null, imgObj3 = null;
  for (var i = 0; i < imgcount; i++) {
    imgIndex = i + 1;
    imgId = imgid_prefix + imgIndex;
    if (imgid_suffix != "") imgId += imgid_suffix;
    imgObj1 = document.getElementById(imgId);
    if (imgObj1 != null) {
      imgsrc1 = imgpath + imgid_prefix + imgIndex + "1";
      if (imgid_suffix != "") imgsrc1 += imgid_suffix + ".gif";
      else imgsrc1 += ".gif";
      imgsrc2 = imgpath + imgid_prefix + imgIndex + "2";
      if (imgid_suffix != "") imgsrc2 += imgid_suffix + ".gif";
      else imgsrc2 += ".gif";
      imgsrc3 = imgpath + imgid_prefix + imgIndex + "3";
      if (imgid_suffix != "") imgsrc3 += imgid_suffix + ".gif";
      else imgsrc3 += ".gif";
      imgObj2 = new Image();
      imgObj2.src = imgsrc2;
      imgObj3 = new Image();
      imgObj3.src = imgsrc3;
      imgArray = new Array();
      imgArray.push(imgId);
      imgArray.push(imgObj1);
      imgArray.push(imgsrc1);
      imgArray.push(imgsrc2);
      imgArray.push(imgObj2);
      imgArray.push(imgObj3);
      RollOvers.push(imgArray);
    }
  }
}

function doRollOver(imgId, state) {
  if (imgId == "" || RollOvers.length == 0) return;
  if (state < 0 || state > 1) return;
  var imgArray = null;
  for (var i = 0; i < RollOvers.length; i++) {
    imgArray = RollOvers[i];
    if (imgArray.length != 6) continue;
    if (imgArray[0] == imgId && imgArray[1] != null) {
      if (state == 1) imgArray[1].src = imgArray[3];
      else imgArray[1].src = imgArray[2];
    }
  }
}

// Search form behaviour
// ------------------------------------------------------------------------------------------------

var fadeStep = 0;
var fadeTime = 0;

function checkSrcForm() {
  var formObj = document.srcform;
  if (formObj == null) return;
  var s = formObj.kw.value;
  formObj.kw.value = s.trim();
  var kwcolor = formObj.kw.style.color;
  if (kwcolor == "#909090" || kwcolor == "rgb(144, 144, 144)" || formObj.kw.value == "") {
    var hintinfo = document.getElementById("hintinfo");
    var hinttext = document.getElementById("hinttext");
    var toptable = document.getElementById("toptable");
    if (hintinfo != null && hinttext != null && toptable != null) {
      hinttext.innerHTML = "Nu ai introdus termenii pentru cautare";
      var hintleft = ((980 - toptable.offsetWidth) + 95) - Math.round(hintinfo.offsetWidth / 2);
      hintinfo.style.left = hintleft + "px";
      hintinfo.style.top = "294px";
      hintinfo.style.visibility = "visible";
      fadeTime = setTimeout("fadeHintIn()", 20);
    }
    formObj.kw.focus();
    return false;
  }
  return true;
}

function searchEnter(kwedit) {
  if (kwedit == null) return;
  var kwcolor = kwedit.style.color;
  if (kwcolor == "#909090" || kwcolor == "rgb(144, 144, 144)") {
    kwedit.value = "";
    kwedit.style.color = "#101010";
  }
}

function searchExit(kwedit) {
  if (kwedit == null) return;
  var s = kwedit.value;
  var kwcolor = kwedit.style.color;
  if ((kwcolor == "#101010" ||  kwcolor == "rgb(16, 16, 16)") && s.trim() == "") {
    kwedit.value = "Cauta in site...";
    kwedit.style.color = "#909090";
  }
  hideHintInfo();
}

function fadeHintIn() {
  if (fadeTime) {
    clearTimeout(fadeTime);
    fadeTime = 0;
  }
  if (!isMoz && !isIE6up) {
    fadeTime = setTimeout("fadeHintOut()", 5000);
    return;
  }
  var hintinfo = document.getElementById("hintinfo");
  if (hintinfo == null) return;
  fadeStep = fadeStep + 10;
  if (fadeStep > 100) fadeStep = 100;
  if (isMoz) hintinfo.style.MozOpacity = (fadeStep / 100);
  else hintinfo.filters[0].opacity = fadeStep;
  if (fadeStep < 100) fadeTime = setTimeout("fadeHintIn()", 20);
  else fadeTime = setTimeout("fadeHintOut()", 5000);
}

function fadeHintOut() {
  if (fadeTime) {
    clearTimeout(fadeTime);
    fadeTime = 0;
  }
  if (!isMoz && !isIE6up) {
    hideHintInfo();
    return;
  }
  var hintinfo = document.getElementById("hintinfo");
  if (hintinfo == null) return;
  fadeStep = fadeStep - 10;
  if (fadeStep < 0) fadeStep = 0;
  if (isMoz) hintinfo.style.MozOpacity = (fadeStep == 0) ? 0 : (fadeStep / 100);
  else hintinfo.filters[0].opacity = fadeStep;
  if (fadeStep > 0) fadeTime = setTimeout("fadeHintOut()", 20);
  else hideHintInfo();
}

function hideHintInfo() {
  fadeStep = 0;
  if (fadeTime) {
    clearTimeout(fadeTime);
    fadeTime = 0;
  }
  var hintinfo = document.getElementById("hintinfo");
  if (hintinfo != null) {
    if (hintinfo.style.visibility == "visible") hintinfo.style.visibility = "hidden";
    if (isMoz) hintinfo.style.MozOpacity = 0;
    else if (isIE6up) hintinfo.filters[0].opacity = 0;
  }
}

// Slides and Tabs behaviour
// ------------------------------------------------------------------------------------------------

var selSlide = null, selSlideDiv = null, selTab = null, selTabDiv = null, newSlide = null;
var slidePause = false, slideTime = 0;
var maxSlides = 3;
var slideMode = "inc";
var animeStep = 0, animeTime = 0, rolloverWaiting = null;
var slidesOk = false;

function switchSlide(slideIndex) {
  if (animeStep != 0) return;
  var slideObj = document.getElementById("slidetab" + slideIndex);
  var sOldIndex = 0;
  if (slideObj != null) {
    if (selSlide != null) {
      var sIndex = selSlide.id;
      sIndex = sIndex.substr(8);
      sOldIndex = parseInt(sIndex);
      if (sOldIndex == slideIndex) return;
      selSlide.src = "/images/tabs/slidetab" + sIndex + "1.gif";
      selSlide.style.cursor = "pointer";
    }
    slideObj.src = "/images/tabs/slidetab" + slideIndex + "3.gif";
    slideObj.style.cursor = "default";
    selSlide = slideObj;
  }
  startAnimeSlide(slideIndex);
}

function animeSlide() {
  if (animeTime) {
    clearTimeout(animeTime);
    animeTime = 0;
  }
  if (selSlideDiv != null && newSlide != null) {
    var canAnime = false;
    if (slideMode == "inc") {
      animeStep = animeStep - 15;
      var newLeft = 412 + animeStep;
      if (newLeft > 0) canAnime = true;
    } else {
      animeStep = animeStep + 15;
      var newLeft = animeStep - 412;
      if (newLeft < 0) canAnime = true;
    }
    if (canAnime) {
      selSlideDiv.style.left = animeStep + "px";
      newSlide.style.left = newLeft + "px";
      animeTime = setTimeout("animeSlide()", 20);
    } else {
      animeStep = 0;
      selSlideDiv.style.visible = "hidden";
      newSlide.style.left = "0px";
      selSlideDiv = newSlide;
      if (rolloverWaiting != null) slideRollOver(rolloverWaiting, true);
      if (!slidePause) slideTime =  setTimeout("slideOnTime()", 6000);
    }
  }
}

function startAnimeSlide(sNewIndex) {
  if (slideTime) {
    clearTimeout(slideTime);
    slideTime = 0;
  }
  newSlide = document.getElementById("slidetabdiv" + sNewIndex);
  if (selSlideDiv != null && newSlide != null) {
    animeStep = 0;
    if (slideMode == "inc") newSlide.style.left = "412px";
    else newSlide.style.left = "-412px";
    newSlide.style.top = "0px";
    newSlide.style.visibility = "visible";
    animeTime = setTimeout("animeSlide()", 20);
  }
}

function slideNav(slideAction) {
  if (!slidesOk) return;
  if (slideTime) {
    clearTimeout(slideTime);
    slideTime = 0;
  }
  switch (slideAction) {
    case 1:
      if (slidePause) {
        var pauseBtn = document.getElementById("slidenav2");
        slidePause = false;
        if (pauseBtn != null) pauseBtn.src = "/images/tabs/slidenav21.gif";
      }
      if (animeStep != 0) return;
      slideMode = "dec";
      slideOnTime();
      break;
    case 2:
      var pauseBtn = document.getElementById("slidenav2");
      if (slidePause) {
        slidePause = false;
        if (pauseBtn != null) pauseBtn.src = "/images/tabs/slidenav21.gif";
        slideTime = setTimeout("slideOnTime()", 6000);
      } else {
        slidePause = true;
        if (pauseBtn != null) pauseBtn.src = "/images/tabs/slidenav23.gif";
      }
      break;
    case 3:
      if (slidePause) {
        var pauseBtn = document.getElementById("slidenav2");
        slidePause = false;
        if (pauseBtn != null) pauseBtn.src = "/images/tabs/slidenav21.gif";
      }
      if (animeStep != 0) return;
      slideMode = "inc";
      slideOnTime();
      break;

  }
}

function slideOnTime() {
  if (slideTime) {
    clearTimeout(slideTime);
    slideTime = 0;
  }
  var slideIndex = 1;
  if (selSlide != null) {
    var sIndex = selSlide.id;
    slideIndex = parseInt(sIndex.substr(8));
  }
  if (slideMode == "inc") {
    slideIndex++;
    if (slideIndex > maxSlides) slideIndex = 1;
  } else {
    slideIndex--;
    if (slideIndex < 1) slideIndex = maxSlides;
  }
  switchSlide(slideIndex); 
}

function slideRollOver(slideObj, state) {
  if (slidePause && state == 0) {
    var pauseBtn = document.getElementById("slidenav2");
    if (pauseBtn != null) {
      if (slideObj.id == pauseBtn.id) {
        pauseBtn.src = "/images/tabs/slidenav23.gif";
        return;
      }
    }
  } else if (animeStep != 0 && state == 1) {
    rolloverWaiting = slideObj;
    return;
  }
  rolloverWaiting = null;
  if (slideObj == null || slideObj == selSlide || RollOvers.length == 0) return;
  doRollOver(slideObj.id, state);
}

function tabRollOver(tabObj, state) {
  if (tabObj == null || tabObj == selTab || RollOvers.length == 0) return;
  doRollOver(tabObj.id, state);
}

function switchTopTab(tabIndex) {
  var tabObj = document.getElementById("toptab" + tabIndex);
  var tabDivObj = document.getElementById("toptabdiv" + tabIndex);
  if (tabObj != null && tabDivObj != null) {
    if (selTab != null) {
      var sIndex = selTab.id;
      sIndex = sIndex.substr(6);
      if (parseInt(sIndex) == tabIndex) return;
      selTab.src = "/images/tabs/toptab" + sIndex + "1.gif";
      selTab.style.cursor = "pointer";
    }
    if (selTabDiv != null) selTabDiv.style.visibility = "hidden";
    tabObj.src = "/images/tabs/toptab" + tabIndex + "3.gif";
    tabObj.style.cursor = "default";
    tabDivObj.style.visibility = "visible";
    selTab = tabObj;
    selTabDiv = tabDivObj;
  }
}

// Global page initialization
// ------------------------------------------------------------------------------------------------

function initPage() {
  initRollOvers( "/images/navbar/", "btn", "", 9);
  selTab = document.getElementById("toptab1");
  selTabDiv = document.getElementById("toptabdiv1");
  if (selTab != null) initRollOvers( "/images/tabs/", "toptab", "", 3);
  selSlide = document.getElementById("slidetab1");
  selSlideDiv = document.getElementById("slidetabdiv1");
  maxSlides = 0;
  var slideDivId = "";
  for (var i = 1; i < 6; i++) {
    if (document.getElementById("slidetabdiv" + i) != null) maxSlides++;
    else break;
  }
  if (selSlide != null) {
    initRollOvers( "/images/tabs/", "slidetab", "", 5);
    initRollOvers( "/images/tabs/", "slidenav", "", 3);
    if (selSlideDiv != null) {
      slideTime =  setTimeout("slideOnTime()", 6000);
      slidesOk = true;
    }
  }
  var toppanel = document.getElementById("toppanel");
  if (toppanel != null) toppanel.style.visibility = "visible";
  if (isOpera) {
    var ekw = document.getElementById("ekw");
    if (ekw != null) ekw.style.paddingBottom = "2px";
  }
}
