jQuery.noConflict();
(function(jQuery) {
	var max_width = 859 -16-16-4;
	var current_slide = 0;
	var speed = 700;
	
	var current_img = 1;
	var total_count = 0;
	var current_count = 0;
	var slides = new Array();
	var el = null;
	var current_lang = null;
	var init_call = false;
	
	var lang_en_US = {
		'showing_items_from' : 'Showing items from',
		'to' : 'to',
		'of_total' : 'of total'
		};
	var lang_si_SI = {
		'showing_items_from' : 'Prikazujem artikle od',
		'to' : 'do',
		'of_total' : 'od skupaj'
		};
	var lang_de_DE = {
		'showing_items_from' : 'Die Artikel von',
		'to' : 'bis',
		'of_total' : ', von insgesamt',
		'end' : ', werden angezeigt'
		};
	var lang_sr_SR = {
		'showing_items_from' : 'Prikazujem artikle od',
		'to' : 'do',
		'of_total' : 'od ukupno'
		};
	
	jQuery.fn.carousel = function() {
		if (!el)
			el = this;
		jQuery.fn.carousel(null);
	}
	jQuery.fn.carousel = function(setts) {
		current_lang = lang_en_US;
		total_count = jQuery(el).find('.slide img').length;
		if (!el)
			el = this;
		if (setts) {
			if (setts.current_slide)
				current_slide = setts.current_slide;
			if (setts.speed)
				speed = setts.speed;
			if (setts.currentImg)
				current_img = setts.currentImg;
			if (setts.lang) {
				if (setts.lang == 'en_US')
					current_lang = lang_en_US;
				else if (setts.lang == 'si_SI')
					current_lang = lang_si_SI;
				else if (setts.lang == 'de_DE')
					current_lang = lang_de_DE;
				else if (setts.lang == 'sr_SR')
					current_lang = lang_sr_SR;
			}
		}
		if (current_count < total_count || slides.length == 0) {
			setTimeout(jQuery.fn.carousel, 50);
			return true;
		}
		
		for (var i = 0; i < slides.length; i++) {
			if (current_img-1 >= slides[i].start_indx && current_img-1 <= slides[i].end_indx) {
				current_slide = i;
				break;
			}
		}
		jQuery(el).find('.wrapper').css({ width: slides[current_slide].width+'px' });
		jQuery(el).find('.slide').css({ marginLeft: ((-1)*slides[current_slide].left)+'px' });
			
		//jQuery('#pagination').html(current_lang.showing_items_from+' '+(slides[current_slide].start_indx + 1)+' '+current_lang.to+' '+(slides[current_slide].end_indx + 1)+' '+current_lang.of_total+' '+total_count+( current_lang.end ? ' '+current_lang.end : '' ));
		jQuery('#pagination').html(current_img + ' / ' + total_count);
		
		jQuery(el).find('.leftpad').click(jQuery.fn.leftClick);
		jQuery(el).find('.rightpad').click(jQuery.fn.rightClick);
	};	
		
	jQuery.fn.imgLoad = function() {
		current_count++;
		if (current_count == jQuery(el).find('.slide img').length) {
			var total_width = 0;
			var slide_count = 0;
			var slide_left = 0;
			var start_indx = 0;
			
			if (document.documentElement.clientWidth)
				docme= document.documentElement.clientWidth;
			else
				docme= document.body.clientWidth;

			if (docme >= 1280) {
				max_width = 859
			} else if (docme < 1280 && docme >= 1000) {
				max_width = ((docme - 1000) / 1.040892193) + 590;
			} else if (docme < 1000) {
				max_width = 590;
			}
			max_width -= 36;
			
			jQuery(el).find('.slide img').each(function(i){
				
				if ((total_width + jQuery(this).width() + 6) > max_width) {
					slides[slide_count] = { 'left': slide_left, 'width': total_width, 'start_indx' : start_indx, 'end_indx' : i - 1};
					slide_left += total_width;
					total_width = 0;
					slide_count++;
					start_indx = i;
				}
				
				if (jQuery(el).find('.slide img').length == (i+1)) {
					slides[slide_count] = { 'left': slide_left, 'width': total_width + jQuery(this).width() + 6, 'start_indx' : start_indx, 'end_indx' : i};
				}
				total_width += (jQuery(this).width() + 6);
			});
		}
	}

	jQuery.fn.moveToSlide = function(slide) {
		jQuery(el).find('.wrapper').animate({ width: slides[slide].width+'px' }, speed);
		jQuery(el).find('.slide').animate({ marginLeft: ((-1)*slides[slide].left)+'px' }, speed);

		//jQuery('#pagination').html(current_lang.showing_items_from+' '+(slides[current_slide].start_indx + 1)+' '+current_lang.to+' '+(slides[current_slide].end_indx + 1)+' '+current_lang.of_total+' '+total_count);
		jQuery('#pagination').html(current_img + ' / ' + total_count);
	}

	jQuery.fn.leftClick = function() {
		if (current_slide > 0) {
			current_slide--;
			jQuery.fn.moveToSlide(current_slide);
		}
	}

	jQuery.fn.rightClick = function() {
		if (current_slide + 1 < slides.length) {
			current_slide++;
			jQuery.fn.moveToSlide(current_slide);
		}
	}
	
})(jQuery);
