if(typeof jQuery != 'undefined') {
	jQuery(function($) {
		$.fn.extend({
			verticalScroller: function(options) {
				var settings = $.extend({}, $.fn.verticalScroller.defaults, options);
				
				return this.each(function() {
					var $t = $(this);
					
					var currentScrollPage = 0;
					var scrollPagesNumber = 0;
					
					var to = null;
					
					$t.append( '<div>' + $t.find('DIV').get(0).innerHTML + '</div>' );
					scrollPagesNumber = $t.find('DIV').length;
					
					nextslide();
					
					function nextslide() {
						var t = settings.speed;
						var d = settings.delay;
						
						switch (settings.direction) {
							case 'down':
								if (currentScrollPage >= scrollPagesNumber) { currentScrollPage = 0; t = 0; d = 0; }
								
								$t.scrollTo(
									$t.find('DIV')[currentScrollPage++], t, 
									{onAfter: 
										function() {
											window.clearTimeout(to);
											to = window.setTimeout(function() {
												nextslide();
											}, d);
										} 
									}
								);
							break;
							case 'up':
								if (currentScrollPage < 0) { currentScrollPage = (scrollPagesNumber-1); t = 0; d = 0; }
											
								$t.scrollTo(
									$t.find('DIV')[currentScrollPage--], t, 
									{onAfter: 
										function() {
											window.clearTimeout(to);
											to = window.setTimeout(function() {
												nextslide();
											}, d);
										}
									}
								);
							break;
						}
					}
				});
			}
		});
		
		$.fn.verticalScroller.defaults = {
			'speed': 500,		// animation speed
			'delay': 1000,		// duration between slides
			'direction': 'up'
		};
	});
}
