// JavaScript Document

/* --- submenu --- */

var subMenu = new Object;
subMenu.id = '';
subMenu.direction = '-';
subMenu.stoped = true;
subMenu.microtime = 20;
subMenu.speedstep = 3;
subMenu.hiddingtime = 3000;
subMenu.heightmax = 144;
subMenu.heightmin = 114;
subMenu.offsetLeft = 14;
subMenu.timerID = null;
subMenu.timerID2 = null;

function subMenuGener() {
  for (i=0;i<menuItems.length;i++) {
    var bigMenuItem = document.getElementById('tmb'+menuItems[i]);
    var subMenuItem = document.getElementById('tms'+menuItems[i]);
    if (bigMenuItem) {
      bigMenuItem.onmouseover = subMenuStart;
    }
    if (subMenuItem) {
      subMenuItem.className = 'top-submenu';
      subMenuItem.onmousemove = subMenuItemShow;
      subMenuItem.style.left = bigMenuItem.offsetLeft+subMenu.offsetLeft+10+'px';
    }
  }
}

function subMenuStart() {
  subMenu.id = '';
  if (this.id) {
    subMenu.id = this.id.replace('b','s');
  }
  var subMenuItem = document.getElementById(subMenu.id);
  if (!subMenuItem) {
    subMenu.direction = '-';
  } else {
    subMenu.direction = (subMenuItem.offsetTop<subMenu.heightmax?'+':'-');
  }
  clearInterval(subMenu.timerID);
  subMenu.timerID = setInterval("subMenuItemShow()",subMenu.microtime);
}

function subMenuItemShow() {
  subMenu.stoped = true;
  for (i=0;i<subMenuItems.length;i++) {
    var subMenuItem = document.getElementById('tms'+subMenuItems[i]);
    if (subMenu.id=='tms'+subMenuItems[i]) {
      if (subMenu.direction=='+' && subMenuItem.offsetTop<subMenu.heightmax) {
        subMenuItem.style.top = subMenuItem.offsetTop+subMenu.speedstep+'px';
        subMenu.stoped = false;
      }
      if (subMenu.direction=='-' && subMenuItem.offsetTop>subMenu.heightmin) {
        subMenuItem.style.top = subMenuItem.offsetTop-subMenu.speedstep+'px';
        subMenu.stoped = false;
      }
    } else {
      if (subMenuItem.offsetTop>subMenu.heightmin) {
        subMenuItem.style.top = subMenuItem.offsetTop-subMenu.speedstep+'px';
        subMenu.stoped = false;
      }
    }
  }
  if (subMenu.stoped == true) {
    clearInterval(subMenu.timerID);
    if (subMenu.direction=='+') {
      clearInterval(subMenu.timerID2);
      subMenu.timerID2 = setInterval("subMenuHidding()",subMenu.hiddingtime);
    } else {
      clearInterval(subMenu.timerID2);
    }
  }
}

function subMenuHidding() {
  clearInterval(subMenu.timerID2);
  subMenuStart();
}

/* --- detail tabs --- */

function flipListClassOn() {
  this.className = 'active';
  var elem1 = document.getElementById(this.id.replace('ci','cn'));
  var elem2 = document.getElementById(this.id.replace('cn','ci'));
  if (elem1) elem1.className = 'active';
  if (elem2) elem2.className = 'active';
}

function flipListClassOff() {
  this.className = '';
  var elem1 = document.getElementById(this.id.replace('ci','cn'));
  var elem2 = document.getElementById(this.id.replace('cn','ci'));
  if (elem1) elem1.className = '';
  if (elem2) elem2.className = '';
}

function flipDetail() {
  if (this.parentNode && this.parentNode.className=='button-active') {
    return false;
  }
  var divListFull = document.getElementById('catalogdetail').getElementsByTagName('div');
  if (divListFull) {
    for (i=0;i<divListFull.length;i++) {
      flipper = false;
      if (divListFull[i].className == 'button-active') {
        divListFull[i].className = 'button';
        flipper = true;
      }
      if (divListFull[i].className == 'button' && flipper == false) {
        divListFull[i].className = 'button-active';
      }
      flipper = false;
      if (divListFull[i].className == 'space-left') {
        divListFull[i].className = 'space-right';
        flipper = true;
      }
      if (divListFull[i].className == 'space-right' && flipper == false) {
        divListFull[i].className = 'space-left';
      }
    }
  }
  if (this.id) {
    if (this.id=='ca1') {
      document.getElementById('ct1').className = 'catalog-text';
      document.getElementById('ct2').className = 'hidden';
    }
    if (this.id=='ca2') {
      document.getElementById('ct1').className = 'hidden';
      document.getElementById('ct2').className = 'catalog-text';
    }
  } else {
    document.getElementById('ct1').className = 'catalog-text';
    document.getElementById('ct2').className = 'hidden';
  }
  //return false;
}

/* --- side filter --- */

var sideFilter = new Object;
sideFilter.showed = false;
sideFilter.timerID = null;
sideFilter.hiddingtime = 3000;

function sideFilterMouseOver() {
  this.className = 'item-over';
}

function sideFilterMouseOut() {
  this.className = 'item';
  clearInterval(sideFilter.timerID);
  sideFilter.timerID = setInterval("sideFilterHideAll()",sideFilter.hiddingtime);
}

function sideFilterMouseClick() {
  sideFilterHideAll();
  sideFilter.showed = false;
  this.parentNode.nextSibling.value = this.myValue;
  var elemItem = this.parentNode.previousSibling.cloneNode(true);
  elemItem.className = 'item';
  elemItem.onmouseover = sideFilterMouseOver;
  elemItem.onmouseout  = sideFilterMouseOut;
  elemItem.onclick     = sideFilterMouseClick;
  this.parentNode.appendChild(elemItem);
  this.parentNode.previousSibling.innerHTML = this.innerHTML;
  this.parentNode.previousSibling.myValue = this.myValue;
  this.parentNode.removeChild(this);
}

function sideFilterClickFirst() {
  sideFilterHideAll();
  if (this.nextSibling.className != 'sub' && sideFilter.showed == false) {
    this.nextSibling.className = 'sub';
    sideFilter.showed = true;
  } else {
    sideFilter.showed = false;
  }
}

function sideFilterHideAll() {
  clearInterval(sideFilter.timerID);
  var sideFilterElem = document.getElementById('side-filter');
  if (!sideFilterElem) return false;
  var elemsSelectArray = sideFilterElem.getElementsByTagName('div');
  for (var i=0;i<elemsSelectArray.length;i++) {
    if (elemsSelectArray[i].className == 'sub') {
      elemsSelectArray[i].className = 'sub-disabled';
    }
  }
}

function sideFilterRemover(parentElem) {
  var elems = parentElem.childNodes;
  if (parentElem.childNodes.length<2) return true;
  for (var i=0;i<elems.length;i++) {
    if (elems[i].nodeType == 3) {
      var removenode = parentElem.removeChild(elems[i]);
      sideFilterRemover(parentElem);
      break;
    } else {
      sideFilterRemover(elems[i]);
    }
  }
}

function sideFilterGener() {
  var sideFilterElem = document.getElementById('side-filter');
  if (!sideFilterElem) return false;
  
  sideFilterRemover(sideFilterElem);
  
  var elemsSelectArray = sideFilterElem.getElementsByTagName('select');
  
  for (var i=0;i<elemsSelectArray.length;i++) {
    var elemSelect = elemsSelectArray[i];
    elemSelect.style.display = 'none';
    var tempname = elemSelect.name;
    elemSelect.name = '';
    elemHidden = document.createElement('input');
    elemHidden.type = 'hidden';
    elemHidden.value = '0';
    elemHidden.name = tempname;
    sideFilterElem.insertBefore(elemHidden,elemSelect);
    elemSubitems = document.createElement('div');
    var elemsOptionArray = elemSelect.getElementsByTagName('option');
    
    for (var y=0;y<elemsOptionArray.length;y++) {
      // move selected first
      var elemOption = elemsOptionArray[y];
      if (elemOption.selected != true) continue;
      elemHidden.value = elemOption.value;
      var removenode = elemSelect.removeChild(elemOption);
      var firstnode = elemSelect.firstChild;
      elemSelect.insertBefore(removenode,firstnode);
      break;
    }
    
    for (var y=0;y<elemsOptionArray.length;y++) {
      var elemOption = elemsOptionArray[y];
      elemItem = document.createElement('div');
      elemItem.innerHTML = elemOption.innerHTML;
      elemItem.myValue = elemOption.value;
      if (y==0) {
        elemItem.className = 'item-first';
        elemItem.onclick = sideFilterClickFirst;
        sideFilterElem.insertBefore(elemItem,elemHidden);
      } else {
        elemItem.className = 'item';
        elemItem.onmouseover = sideFilterMouseOver;
        elemItem.onmouseout  = sideFilterMouseOut;
        elemItem.onclick     = sideFilterMouseClick;
        elemSubitems.appendChild(elemItem);
      }
    }
    
    elemSubitems.className = 'sub-disabled';
    sideFilterElem.insertBefore(elemSubitems,elemHidden);
  }
  //alert(sideFilterElem.innerHTML);
}

/* --- functions for home small banner --- */

var homeSmallImg =  new Object;
homeSmallImg.timer = null;
homeSmallImg.actual = 0;
homeSmallImg.speed = 5000;

function homeSmallFlippingStart() {
  homeSmallImg.timer = setInterval("homeSmallFlipping()",homeSmallImg.speed);
}

function homeSmallFlipping() {
  var elemHomeSmall = document.getElementById('home-small');
  if (elemHomeSmall) {
    var elemHomeImg = elemHomeSmall.firstChild.firstChild;
    if (arrRandomPictures[homeSmallImg.actual+1]) {
      homeSmallImg.actual++;
    } else {
      homeSmallImg.actual = 0;
    }
    if (elemHomeImg.filters && elemHomeImg.filters[0])
      elemHomeImg.filters[0].Apply();
    elemHomeImg.src = arrRandomPictures[homeSmallImg.actual][0];
    elemHomeImg.alt = arrRandomPictures[homeSmallImg.actual][2];
    elemHomeSmall.firstChild.title = arrRandomPictures[homeSmallImg.actual][2];
    if(arrRandomPictures[homeSmallImg.actual][1]!='#')
    {
    	elemHomeSmall.firstChild.href = arrRandomPictures[homeSmallImg.actual][1];
    }
    elemHomeSmall.firstChild.target = (arrRandomPictures[homeSmallImg.actual][4]==0?'':'_blank');
    elemHomeSmall.style.marginTop = '-'+arrRandomPictures[homeSmallImg.actual][3]+'px';
    if (elemHomeImg.filters && elemHomeImg.filters[0])
      elemHomeImg.filters[0].Play();
  }
}

/* --- --- */
