/*
 * config
 */

SMOOTH_SCROLL_DURATION = 0.3
SHOWPAGETOP_H_LIMIT = 700;

/*
 * inc
 */
function showPagetop(elem, limit) {
  var d = Element.getDimensions(elem);
  var e = document.getElementsByClassName('pagetop');
  var n = document.getElementsByClassName('pagetop').length;
  /* if link:pagetop < 2, show link:pagetop(last) 
     display property */
  if (d.height > limit && n < 2) {
    Element.setStyle(e[n-1], {'display': 'block'});
  }
}



/*
 * lib
 */
function createCurrent() {
  var a = document.getElementsByTagName('a');
  $A(a).each(function(elem) {
    url1 = elem.href.replace(/index\.(html|php|cgi)/,'');
    if (url1.charAt(url1.length - 1) != '/') {
      url1 += '/';
    }
    url2 = document.URL.replace(/index\.(html|php|cgi)/,'');
    if (url2.charAt(url2.length - 1) != '/') {
      url2 += '/';
    }
    if (url1 == url2) {
      Element.addClassName(elem, 'current');
    }
  })
}

function createCurrentToNav(nav) {
  var bodyId = document.getElementsByTagName("body")[0].id;
  if ($(nav).getElementsByClassName(bodyId)[0]) {
    elem = $(nav).getElementsByClassName(bodyId)[0].getElementsByTagName('a')[0];
    Element.addClassName(elem, 'current');
  }
}


function smoothScroll(sec) {
  var a = document.getElementsByTagName('a');
  $A(a).each(function(elem) {
    if(elem.href.replace(/\#[a-zA-Z0-9]+/,"") == location.href.replace(/\#[a-zA-Z0-9]+/,"")){
      Event.observe(elem, 'click', function(event) {
        if (this.hash.substr(1)) {
          new Effect.ScrollTo(this.hash.substr(1), {duration : sec});
          Event.stop(event);
        }
      }.bindAsEventListener(elem))
    }
  })
}


window.onload = function() {
  /*createCurrent();*/
  createCurrentToNav('gNav');
  smoothScroll(SMOOTH_SCROLL_DURATION);
  showPagetop('container', SHOWPAGETOP_H_LIMIT);
}

