Event.observe(window, 'load', function() {
$$('a[href^=#]:not([href=#])').each(function(element) {
element.observe('click', function(event) {
new Effect.ScrollTo(this.hash.substr(1));
Event.stop(event);
}.bindAsEventListener(element))
})
})




function getScrollLeft() { 
 if ((navigator.appName.indexOf("Microsoft Internet Explorer",0) != -1)) {
  return document.body.scrollLeft;
 } else if (window.pageXOffset) {
  return window.pageXOffset;
 } else {
  return 0;
 }
}


function getScrollTop() { 
 if (document.documentElement.scrollTop) {
	return document.documentElement.scrollTop;
 } else if (document.body.scrollTop) {
  return document.body.scrollTop;
 } else if (window.pageYOffset) {
  return window.pageYOffset;
 } else {
  return 0;
 }
}


var pageScrollTimer;
function pageScroll(toX,toY,frms,cuX,cuY) { 
 if (pageScrollTimer) clearTimeout(pageScrollTimer);
 if (!toX || toX < 0) toX = 0;
 if (!toY || toY < 0) toY = 0;
 if (!cuX) cuX = 0 + getScrollLeft();
 if (!cuY) cuY = 0 + getScrollTop();
 if (!frms) frms = 6;


 if (toY > cuY && toY > (getAnchorPosObj('end','enddiv').y) - getInnerSize().height) toY = (getAnchorPosObj('end','enddiv').y - getInnerSize().height) + 1;
 cuX += (toX - getScrollLeft()) / frms; if (cuX < 0) cuX = 0;
 cuY += (toY - getScrollTop()) / frms;  if (cuY < 0) cuY = 0;
 var posX = Math.floor(cuX);
 var posY = Math.floor(cuY);
 window.scrollTo(posX, posY);


 if (posX != toX || posY != toY) {
  pageScrollTimer = setTimeout("pageScroll("+toX+","+toY+","+frms+","+cuX+","+cuY+")",16);
 }
}


function jumpToPageTop() { 
  pageScroll(0,0,3);
}



(function () {
  var onload = function (e) {
    for (var i = 0; i < document.images.length; ++i) {
      if (document.images[i].src.match(/^(.*)-base\.([^.]*)$/)) {
        (function (img, pre, ext) {
          var active = new Image(); active.src = pre + '-act.' + ext;
          var normal = new Image(); normal.src = pre + '-base.' + ext;
          var onmouseover = function (e) { img.src = active.src; }
          var onmouseout = function (e) { img.src = normal.src; }
          try {
            img.addEventListener('mouseover', onmouseover, false);
            img.addEventListener('mouseout', onmouseout, false);
          }
          catch (e) {
            img.attachEvent('onmouseover', onmouseover);
            img.attachEvent('onmouseout', onmouseout);
          }
        })(document.images[i], RegExp.$1, RegExp.$2);
      }
    }
  }
  try {
    window.addEventListener('load', onload, false);
  }
  catch (e) {
    window.attachEvent('onload', onload);
  }
})()

