jQuery(function($) {

		if( $('.scrollableArea a').length > 5 ) {
			var pos_x,
				makeMeScrollable_width = $('#makeMeScrollable').width(),
				root_offset = $('#makeMeScrollable').offset().left,
				hot_spot_left_width = $('.scrollingHotSpotLeft').width()
				booster = 0.3,
				scroll_wrapper = $('.scrollWrapper'),
				interval_id = 0,
				interwal = 40,
				//selected_offset = $('#project-selected').position().left;
				selected_element = $('#project-selected');
			var selected_offset;
				
			
			//szerokosc przesuwanego elementu
			var scrollableArea_width = 0,
				znaleziono = false,
				elementy = new Array()
				szerokosci = new Array();
			$('.scrollableArea').children().each(function() {
				element = $(this);
				var temp = element.outerWidth(true);
				scrollableArea_width += temp;
				
				if( ! znaleziono && element.attr('id') == 'project-selected' ) {
					znaleziono = true;
				}
				else if( ! znaleziono ) {
					elementy.push(element);
				}
				szerokosci.push(temp);
			});
			$('.scrollableArea').width(scrollableArea_width);
		
			
			//przesuniecie
			if( elementy.length > 2 ) {
				elementy.pop();
				elementy.pop();
				$.each(elementy,function(key, obiekt) {
					$('.scrollableArea').append(obiekt);
				});
			}
			else{
				for( var i=0 ; i < 2-elementy.length ; i++ ) {
					$('.scrollableArea').prepend($('.scrollableArea > :last'));
				}
			}
			
			//przesuniecie do zaznaczonego
			scroll_wrapper.scrollLeft(selected_offset);
			
			//pozycja na hot spot'cie lewym
			$('.scrollingHotSpotLeft').bind('mousemove',function(e) {
				var temp = e.pageX - this.offsetLeft - root_offset;
				pos_x = 100 - Math.round( temp / hot_spot_left_width * 100 );
			});
			
			//pozycja na hot spot'cie prawym
			$('.scrollingHotSpotRight').bind('mousemove',function(e) {
				var temp = e.pageX - this.offsetLeft - root_offset;
				pos_x = Math.round( temp / hot_spot_left_width * 100 );
			});
			
			
			//scroll w lewo
			setTimeout(function() {
				$('.scrollingHotSpotRight').bind('mouseover',function() {
					clearInterval(interval_id);
					interval_id = setInterval(function() {
						scroll_wrapper.scrollLeft( scroll_wrapper.scrollLeft() + pos_x * booster );
						
						//jeśli trzeba to przerzucenie pierwszego elementu na koniec
						var first = $('.scrollableArea > :first');
						if( scroll_wrapper.scrollLeft() >= first.outerWidth(true) ) {
							$('.scrollableArea').append(first);
							scroll_wrapper.scrollLeft(scroll_wrapper.scrollLeft() - first.outerWidth(true));
						}
					},interwal);
				});
				$('.scrollingHotSpotRight').bind('mouseout',function() {
					clearInterval(interval_id);
					interval_id = setInterval(function() {
						scroll_wrapper.scrollLeft( scroll_wrapper.scrollLeft() + pos_x * booster );
						
						//jeśli trzeba to przerzucenie pierwszego elementu na koniec
						var first = $('.scrollableArea > :first');

						if( scroll_wrapper.scrollLeft() > first.outerWidth(true) ) {
							clearInterval(interval_id);
							scroll_wrapper.scrollLeft(first.outerWidth(true));
						}
						else if( scroll_wrapper.scrollLeft() >= first.outerWidth(true) ) {
							$('.scrollableArea').append(first);
							scroll_wrapper.scrollLeft(scroll_wrapper.scrollLeft() - first.outerWidth(true));
						}
					},interwal);
				});
			},500);
			
			//scroll w prawo
			setTimeout(function() {
				$('.scrollingHotSpotLeft').bind('mouseover',function() {
					clearInterval(interval_id);
					interval_id = setInterval(function() {
						scroll_wrapper.scrollLeft( scroll_wrapper.scrollLeft() - pos_x * booster );
						
						//jeśli trzeba to przerzucenie ostatniego elementu na poczatek
						var last = $('.scrollableArea > :last');
						if( scroll_wrapper.scrollLeft() == 0 ) {
							$('.scrollableArea').prepend(last);
							scroll_wrapper.scrollLeft(last.outerWidth(true));
						}
					},interwal);
				});
				$('.scrollingHotSpotLeft').bind('mouseout',function() {
					clearInterval(interval_id);
					interval_id = setInterval(function() {
						scroll_wrapper.scrollLeft( scroll_wrapper.scrollLeft() - pos_x * booster );
						
						//jeśli trzeba to przerzucenie ostatniego elementu na poczatek
						var last = $('.scrollableArea > :last');
						if( scroll_wrapper.scrollLeft() == 0 )	{
							clearInterval(interval_id);
						}
						if( scroll_wrapper.scrollLeft() == 0 ) {
							$('.scrollableArea').prepend(last);
							scroll_wrapper.scrollLeft(last.outerWidth(true));
						}
					},interwal);
				});
			},500);
		}
});


