var op = window.opera ? true : false;
var ie = (window.navigator.userAgent.indexOf('MSIE') > -1) ? true : false;

var topMenuItems = {};

function topMenu() {
  var items = new Array();
  var header = document.getElementById('header');
  
  items.push(document.getElementById('tm3'));
  items.push(document.getElementById('tm4'));
  items.push(document.getElementById('tm5'));
  items.push(document.getElementById('tm6'));

  for(var i=0;i<items.length;i++) {
    items[i].onmouseover = function() {
      var ch = this.getAttribute('ch');
      if(ch)
        topMenuItems[ch].className = 'sub hover';
        
      //header.className = 'active';      
    }
    
    items[i].onmouseout = function() {
      var ch = this.getAttribute('ch');
      if(ch)
        topMenuItems[ch].className = 'sub';
      
      //header.className = '';  
    }
    
    var ch = items[i].getAttribute('ch');
    if(ch)
      topMenuItems[ch] = document.getElementById(ch);
  }
 
 
  if(op) {
    for(var i=0;i<items.length;i++) {
      items[i].className += ' active';
    }
    
    function hideActive() { 
      for(var i=0;i<items.length;i++) {
        items[i].className = '';
      }
    }
    
    setTimeout(hideActive, 60);
  }
}

function katalog() {
  var imgs = getElementsByClass('prImg', ge('content'), 'img');
  
  for(var i=0;i<imgs.length;i++) {
    imgs[i].style.position = 'relative';
    var top = ((imgs[i].parentNode.parentNode.offsetHeight - imgs[i].offsetHeight) / 2);
    if(imgs[i].offsetHeight < 140)
      top -= 8;
      
    imgs[i].style.top = top + 'px';
  }
}




function orderSlider() {
  var min = 6;
  var max = 34;  

  var slider = ge('slider');
  var mover = ge('orderMover');
  
  if(!slider || !moverSize)
    return false;
  
  var moverSize = {'height' : mover.offsetHeight, 'pHeight' : mover.parentNode.offsetHeight};
  
  
  moverSize['hDif'] = moverSize.pHeight - moverSize.height;
  
  var startY = null;
  
  slider.onmousedown = function(e) {
    var e = getEvent(e);
    var startY = getMouseY(e);
    var startTop = slider.offsetTop;
    
    document.onmousemove = function(e) {
      var e = getEvent(e);
      var n = startTop + (getMouseY(e) - startY);
      
      if(n < min)
        n = min;
      if(n > max)
        n = max;
        
      slider.style.top = n + 'px';
      
      var p = getP(n);
      var n = (p / 100 * moverSize.height );
      
      if(n > moverSize.pHeight)
        n = moverSize.pHeight;
      
      mover.style.top = (n * -1) + 'px';
      
      return false;
    }
    
    document.onmouseup = function() {
      document.onmousemove = function() {return false;}
      document.onmouseup = function() {return false;}
    }
    
    return false;
  }
  
  function getP(now) {
    var mx = max - min;
    var nw = now - min;
    
    return (nw / mx * 100); 
  }
}



function ge(o1, o2) {
  var obj = document;
  var poss;
  
  if(typeof(o1) == 'object') {
    obj = o1;
    poss = o2;
  }else {
    poss = o1;
  }
    
  return obj.getElementById(poss);
}

function getEvent(e) {
  if (!e) return window.event;
    return e;
}

function getMouseX (e) {
  if (e.pageX)
    return e.pageX;
  else if (e.clientX)
    return (e.clientX + document.body.scrollLeft);
}

function getMouseY(e) {
  if (e.pageY)
    return e.pageY;
  else if (e.clientY)
    return (e.clientY + document.body.scrollTop);
}

function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if ( node == null )
		node = document;
	if ( tag == null )
		tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp('(^|\\s)'+searchClass+'(\\s|$)');
	for (igc = 0, jgc = 0; igc < elsLen; igc++) {
		if ( pattern.test(els[igc].className) ) {
			classElements[jgc] = els[igc];
			jgc++;
		}
	}
	return classElements;
}


function addToBasket(obj, id) {
  var url = obj.href + ':htmljson';
  
  if(!ge('ajax')) {
    var ajax = document.createElement('div');
    ajax.id = 'ajax';
    document.body.appendChild(ajax);
  }
  

  new Ajax.Request(url, {
    method: 'get',
    onSuccess: function(transport) {
      $('ajax').innerHTML = transport.responseText;
      lFrame.show('ajax');
      }
    });
  
  return false; 
}

var onloadObserver = function() {
  var events = new Array();
  
  this.addEvent = function() {    
    var args = new Array();
    for(var i=1;i<arguments.length;i++) {
      args.push(arguments[i]);
    }
    
    
    events.push({'func': arguments[0], 'args': args});
  }
  
  this.run = function(obj) {
    for(var i=0;i<events.length;i++) {
      events[i].func.apply(events[i].func, events[i].args);
    }
  }
}

var observer = new onloadObserver;

window.onload = function (){
  observer.run();
}