// JavaScript Document NV Image Scroller
function scroller() {
	// GLOBAL VARS
	
	//// CONFIG ////
	var pxi = 1; // Pixel Interval
	var mt = 10; // Motion Time
	var pt = 5000; // Pause Time 
	//// END CONFIG ////
	
	var m = document.getElementById( 'mask' );
	var c = document.getElementById( 'cabinet' );
	var d = document.getElementById( 'drawer' );
	
	var mi = 0; // Motion Index
	var pi = 0; // Pause Index
	
	
	// FUNCTIONS
	
	// @ms = milliseconds (int)
	// @tt = timer type (string: 'scroll' or 'rewind')
	function setTimer( ms, tt ) {
		switch( tt ) {
			case 'scroll': setTimeout( doScroll, ms );
				break;
			case 'rewind': setTimeout( doRewind, ms );
		}
	}
	
	function doRewind() {
		if( mi < 0 ) {
			mi = ( mi + pxi );
			c.style.left = mi+'px';

			setTimer( mt, 'rewind' );
		} else {
			setTimer( pt, 'scroll' );
		}
	}
	
	function doScroll() {
		if( Math.abs( pi ) < d.offsetWidth ) {
			if( Math.abs( mi ) < ( c.offsetWidth - m.offsetWidth) ) { // NOTICE THE +10  :: ( c.offsetWidth - m.offsetWidth)+10
				//alert(d.offsetWidth);
				mi = ( mi - pxi );
				pi = ( pi - pxi );
				
				setTimer( mt, 'scroll' );
			} else {
				//mi = 0;
				pi = 0;
				doRewind();
			}
			c.style.left = mi+'px';
			
		} else {
			pi = 0;
			
			setTimer( pt, 'scroll' );
		}	
	}
	
	// INIT
	setTimer( pt, 'scroll' );
}