// Index Scrolling

function scrollIndexTo( eID, dID )
{
   var e = document.getElementById( eID );
   var d = document.getElementById( dID );

   var eTop = findPosTop( e );
   var dTop = findPosTop( d );

   if( (eTop >= 0) && (dTop >= 0) )
   {
       d.scrollTop = eTop - dTop - 10;
   }
} // scrollIndexTo()

// Find position of a div
// See http://www.quirksmode.org/js/findpos.html
function findPosTop( el )
{
   var curtop = 0;

   if( el )
   {
       if( el.offsetParent )
       {
	   while( el.offsetParent ) 
	   {
	       curtop += el.offsetTop;
	       el = el.offsetParent;
	   }
       }
       else if( el.y )
       {
	   curtop += el.y;
       }
   }
   else
   {
       return -1;
   }
   
   return curtop;
} // findPosTop()


function setShowIndexScrolling()
{
    if( document.getElementById )
    {	
	var e = document.getElementById( 'i-show-index' );
	if( e )
	{
	    if( (typeof e.style.overflow != 'undefined') && 
		(typeof e.style.overflowX != 'undefined') &&
		(typeof e.style.overflowY != 'undefined')
		)
	    {
		e.style.overflow = 'hidden';
		e.style.overflowX = 'hidden';
		e.style.overflowY = 'scroll';
	    }		
	}
    }
} // setShowIndexScrolling

if( window.addEventListener )
{
    // add an event listener that sets the i-show-index on page load
    window.addEventListener( 'load', setShowIndexScrolling, false );
}
