jQuery.noConflict();
(function($) {
	myOp = 1;
	var startCat = 8;
	var aktivAnim = null;
	var $container = $('#sort'); 
	var actCatFilter = startCat;
	
	
	$('ul#menu-main li:last').addClass('last');
	$('ul#qtranslate-chooser li:last').addClass('last');
	
	$('ul#menu-main li').click(function(){
			if($(this).find('a').hasClass('hasshowcase')){
				$('#specbox').empty();
				if(!$('#specbox').hasClass('cat'+$(this).find('a').attr('href')))
					$('#specbox').addClass('cat'+$(this).find('a').attr('href'));
				loadShowcaseBox($(this).find('a').attr('rel'));
			}
			 
			reaarangeBoxes($(this).find('a').attr('href'));
			$('ul#menu-main .current-menu-item').removeClass('current-menu-item');
			$(this).addClass('current-menu-item');
			
			$.cookie("upgradecat", $(this).find('a').attr('href'), { expires: 1, path: '/' });
			
			return false;
		});
		
		$('.catfilter').click(function(){
			var $menuItem = $('ul#menu-main li a[href|='+$(this).attr('href')+']').parent();
			if($menuItem.find('a').hasClass('hasshowcase')){
				$('#specbox').empty();
				if(!$('#specbox').hasClass('cat'+$(this).attr('href')))
					$('#specbox').addClass('cat'+$(this).attr('href'));
				loadShowcaseBox($menuItem.find('a').attr('rel'));
			}
			 
			reaarangeBoxes($(this).attr('href'));
			$('ul#menu-main .current-menu-item').removeClass('current-menu-item');
			$menuItem.addClass('current-menu-item');
			
			$.cookie("upgradecat", $(this).attr('href'), { expires: 1, path: '/' });
			
			return false;
		});
		
		$('#logo').click(function(){$.cookie("upgradecat", startCat, { expires: 1, path: '/'});});
		
		
		
	$(window).load(function(){
		
		if($.cookie("upgradecat")){
			actCatFilter = $.cookie("upgradecat");
			$('ul#menu-main li a[href|='+actCatFilter+']').parent().addClass('current-menu-item');
		}
		
		showFilteredBoxes(actCatFilter);
		
		$('.autoresize p > img').height(function(){
			return resizeHeight($(this));
		});
		
		$('.autoresize p > img').width(function(){
			return resizeWidth($(this));
		});
		
		if($('.slideshow .items').children('p').length > 1){ 
			initSlideshow();
		} else {
			$('.slideshow .items').addClass('centered');
		}
		
		$('.box.link').click(function(){
			window.location = $(this).find('a.weiter').attr('href');
            return true;	
		});
		
		$('form input').focus(function () {
         	$(this).parent().prev("span.label:visible").fadeOut('fast');
		 });
		 
		 $('form input').focusout(function() {
				if($(this).val().length < 1)
					$(this).parent().prev("span.label:hidden").fadeIn('fast');
		});

		
	});
	
	$(window).resize(function(){
		$('.autoresize p > img').height(function(){
			return resizeHeight($(this));
		});
		
		$('.autoresize p > img').width(function(){
			return resizeWidth($(this));
		});
	});
	
	function showFilteredBoxes(id){
		$('.box:not(.cat'+id+'):visible').hide();
		$container.imagesLoaded(function(){
			$container.delay(200).masonry({ 
				columnWidth: 280,
				isAnimated: true,
				isFitWidth: true,
				itemSelector: '.box:visible'
			});
		});
	}
	
	function reaarangeBoxes(id){
		$('.box:not(.cat'+id+'):visible').fadeOut('fast', function(){
			if($('.box:not(.cat'+id+'):visible').length == 0){
				if($('.box.cat'+id+':hidden').length > 0){
					$('.box.cat'+id+':hidden').fadeIn('fast',function(){
						if($('.box.cat'+id+':hidden').length == 0)
							$container.masonry('reload');
					});
				} else {
					$container.masonry('reload');
				}
			}
		});
	}
	
	function loadShowcaseBox(url, cat){
		$('#specbox').load(url +' #page #innerspecial', function(){
			// show loading ?
			if($('.slideshow .items').children('p').length > 1){ 
				initSlideshow();
			} else {
				$('.slideshow .items').addClass('centered');
			}
		});
	}
	
	/*** FUNCTIONS FOR BIG RESIZING IMAGES ***/
	
	function resizeHeight(obj){
		var origWidth = $(obj).width();
		var origHeight = $(obj).height();
		var newHeight = $(window).height() - 190;
		var scale = newHeight / origHeight;
		
		$(obj).width(origWidth * scale);
		
		return newHeight;
	}
	
	function resizeWidth(obj){
		var maxWidth = $(window).width() - 550;
		var currWidth = $(obj).width();
		var currHeight = $(obj).height();
		var newWidth = currWidth;
		
		//alert(currWidth+" > "+maxWidth);
		if(currWidth > maxWidth){
			var scale = maxWidth / currWidth;
			newWidth = maxWidth;
			$(obj).height(currHeight * scale);
		}
		
		return newWidth;
	}
	
	/*** FUNCTIONS FOR SLIDESHOW IN SPECBOX ***/
	
	function initSlideshow(){
		$('.slideshow p').has('img').addClass('item');
			$('.slideshow .item:first').addClass('active');
			
			$('.slideshow .item').each(function(index) {
				$('.slidenav').append('<a class="itembtn"><span class="hide">'+index+'</span></a>');
				$(this).addClass('item'+index);
			});
			
			$('.slidenav a:first').addClass('active');
			var btnWidth = ($('.slideshow .item').width()/$('.slideshow .item').length)-1;
			$('.slidenav a').width(btnWidth);
			
			$('.slidenav a').click(function(){
				clearInterval(aktivAnim);
				$(".slidenav a.active").removeClass("active");
				$(this).addClass("active");
				slideSwitchIndex($(this).index());
				return false;
			});
			
			aktivAnim = setInterval( slideSwitch, 8000 );
	}
	
	function slideSwitch(){
		var $active = $('.slideshow .active');
		if ( $active.length == 0 ) $active = $('.slideshow .item:last');
			
		var $next =  $active.next();
		if($next.length == 0 ) $next = $('.slideshow .item:first');
			
		$active.addClass('last-active');
					
		$next.css({opacity: 0.0}).addClass('active')
			.animate({opacity: 1.0}, 1000, function() {
				$active.removeClass('active last-active');
				if($(".slidenav") ){
					$(".slidenav a.active").removeClass("active");
					$(".slidenav a:eq("+$(this).index()+")").addClass("active");
				}
			});
	}
	
	function slideSwitchIndex(imgIndex){
		var $active = $('.slideshow .active');
		if ( $active.length == 0 ) $active = $('.slideshow .item:last');
			
		var $next = $('.slideshow .item:eq('+imgIndex+')');
			
		$active.addClass('last-active');
					
		$next.css({opacity: 0.0}).addClass('active').animate({opacity: 1.0}, 1000, function() {
				$active.removeClass('active last-active');
			});
			
		aktivAnim = setInterval( slideSwitch, 8000 );
		
	}

})(jQuery);



