/*
 * jQuery BBRoller v1.0
 * http://jquery.com/
 *
 * Copyright (c) 2011 IPOS Computer Systems Ltd.
 * Dual licensed under the MIT and GPL licenses.
 * http://docs.jquery.com/License
 *
 */
 
 (function($){
	var BBRoller = function(element, options) {
		var elem = $(element);
		//var viewportWidth = elem.css('width').substr(0,elem.css('width').length-2);
		//var viewportHeight = elem.css('height').substr(0,elem.css('height').length-2);
		var obj = this;
		var wrapper = elem.children('.wrapper');
		var wrapperChildWidth = wrapper.find('img').width();
                if (wrapperChildWidth == 0) {
                  try {
		    wrapperChildWidth = $('#rollimg')[0].width;
                  } catch (e) {}
                }
		var wrapperLeft;
		var tail;
		var counting = 0;
		
		var settings = $.extend({
			imgpath : null,
			duration : 8000
		}, options || {});
		
		var init = function() {
			duplicate();
			rotate();
		};
		
		var duplicate = function() {
			elem.append(elem.html())
			elem.children('a:eq(1)').attr('class','tail');
			tail = elem.children('.tail');
			tail.css('left',wrapperChildWidth);
		};
		
		var rotate = function() {			
			wrapper.css('left',0);
			tail.css('left',wrapperChildWidth);
			wrapper.animate({'left':(wrapperChildWidth*-1)},settings['duration'],'linear',function() { counter(true); });
			tail.animate({'left':0},settings['duration'],'linear',function() { counter(true); });
		};
		
		var counter = function(checker) {
			if (checker == true) {
				counting++;
			};
			
			if (counting == 2) {
				counting = 0;
				rotate();
			}
		};
		
		init();		
		
	};

	$.fn.bbroller = function(options) {
		return this.each(function() {
			var element = $(this);
			if (element.data('bbroller')) return;
			var bbroller = new BBRoller(this, options);
			element.data('bbroller', bbroller);
		});
	};
})(jQuery);

