$(function(){
	if($("#categories").length > 0) {
		$.getScript("/website/media/js/mousewheel.js");
		$.getScript("/website/media/js/jScrollPane.js", function(){
			$('.category-info, .category-menu').jScrollPane({scrollbarWidth:15});	
		});
		// Category Container
		var $catToggle = $('.category-desc td', $('#categories'));
		var $addClick = $('.wrap');
		var $actionItems = 	$('.category-info, .category-menu');
		var $addZebra = $('.products .wrap:odd, .category:odd');
		var fadeSpeed = 120;

		$actionItems.hide();
		$addZebra.addClass('last');
		
		$addClick.click(function(){
		     window.location = $(this).find("a").attr("href");
		     return false;
		});

		$catToggle.delegate('a', 'click', function(event) {				
			event.preventDefault();
			var obj = jQuery(this);
			var $parents = obj.parents('.category', $('#categories'));

			obj.toggleClass('active');
			obj.next().removeClass('active');
			obj.prev().removeClass('active');
			
			if (obj.hasClass('menu')) {
				if (obj.hasClass('active')) {
					$parents.find('.category-menu').show();
					$parents.find('.category-menu').parent().show();
					$parents.find('.category-image, .category-info').fadeOut(fadeSpeed);
					$parents.find('.category-info').parent().hide();
				} else {
					$parents.find('.category-menu, .category-info').hide();
					$parents.find('.category-image').fadeIn(fadeSpeed);
				}
			} 
			if (obj.hasClass('info')) {
				if (obj.hasClass('active')) {
					$parents.find('.category-info').show();
					$parents.find('.category-info').parent().show();
					$parents.find('.category-image, .category-menu').fadeOut(fadeSpeed);
					$parents.find('.category-menu').parent().hide();
				} else {
					$parents.find('.category-menu, .category-info').hide();
					$parents.find('.category-image').fadeIn(fadeSpeed);
				}
			}
		});
	}
	
	// Toggle/Hide Breadcrumbs
	var $bcPath = $('#breadcrumbs .toggle-item');
	var $bcEvent = $('#breadcrumbs .toggle');
	var $bcText = $('#breadcrumbs .toggle a');
	var slideSpeed  = 150;
	var obj = jQuery(this);
	$bcPath.hide();
	
	$bcEvent.delegate('a', 'click', function (event) {
		var obj = jQuery(this);
		event.preventDefault();
		obj.toggleClass('open');
		
		if (obj.hasClass('open')) {
			$bcPath.slideDown(slideSpeed, function() {
				$bcText.text('');
			});	
		}
		else {
			$bcText.text('Navigationspfad');
			$bcPath.slideUp(slideSpeed);
		}
	});

	$('#job-listing .toggle-item').hide();
	$('#job-listing .toggle').delegate('a', 'click', function (event) {
		event.preventDefault();
		var obj = jQuery(this);
		obj.toggleClass('open');
		if (obj.hasClass('open')) {
			obj.parent().parent().next().slideDown(slideSpeed);	
		} else {
			obj.parent().parent().next().slideUp(slideSpeed);
		}
	});

	// Toggle/Hide Processing Information
	var $piToggleItem = $('#processing-info .toggle-item, .cad-download .toggle-item');
	var $piEvent = $('#processing-info .toggle, .cad-download .toggle');
	var slideSpeed  = 250;
	$piToggleItem.hide();
	
	$piEvent.delegate('a', 'click', function (event) {
		var obj = jQuery(this);
		event.preventDefault();
		obj.toggleClass('open');
		
		if (obj.hasClass('open')) {
			$piToggleItem.slideDown(slideSpeed);	
		}
		else {
			$piToggleItem.slideUp(slideSpeed);
		}
	});

	// Toggle/Hide Productinformation Table		
	// Made each row unique		
	$('#detail-overview .row').each(function (index) {	
		var obj 		 = jQuery(this);
		obj.addClass('index' + index);
		var $toggleRow   = $('#detail-overview .index'+ index +' .tech-details tr:gt(3), #detail-overview .index'+ index +' .trade-details tr:gt(0)');
		var $toggleEvent = $('#detail-overview .index'+ index +' .toggle')
		var $toggleText  = $('#detail-overview .index'+index+' .toggle a span');
		var $addZebra    = $('#detail-overview table tr:odd');
		var slideSpeed   = 250;
		
		$(this).find('.feature .list span:gt(1)').hide();
		$('.table-data-2').find('.feature .list span').show();

		// Hide elements 
		$toggleRow.hide();
		$addZebra.addClass('odd');
		
		$toggleEvent.delegate('a', 'click', function(event) {
			event.preventDefault();
			obj.toggleClass('open');
			
			if (obj.hasClass('open')) {
				$toggleRow.slideDown(slideSpeed, function() {
					$toggleText.text('Weniger Information');
				});
				$('.feature span.list span:gt(1)').show();
			}
			else {
				$toggleRow.slideUp(slideSpeed, function() {
					$toggleText.text('Mehr Information');

				});
			}
			
		
		});
	});
	
	// Enable hover LI for IE
	$('.products .installationssysteme #category-nav').delegate('li', "hover", function(){
		$(this).toggleClass("hover");
	});
	
	$('.products .list-item:odd').addClass('last');
	
	$('.cat-group-1 .list-item:odd').addClass('last');
	$('.cat-group-2 .list-item:odd').addClass('last');

	// Get Xml Data
	$.ajax({
		type: "GET",
		url: slidePath + "?" + new Date().getTime(),
		dataType: "xml",
		success: parseXml
		/*,
		// IE 6+7 ISSUES
		xhr:function() {
		return new XMLHttpRequest();
   		}*/
	});

	function parseXml(xml) {
		var allSlides = $(xml).find("slide").length;
		var $rand = Math.floor(Math.random() * allSlides);
		var $slideCount = 0;
		var druation = 10000 // 10sec (10000ms)
		var tObj; // time object
			
			function doSlides(interval) {
				tObj = setTimeout(function() {
					doSlides(interval);
					}, interval);
				if ($slideCount == 0) {
					// Init random start number
					if ($rand > 0) {
						$rand = $rand + 1;
					} else {
						$rand = 1;
					}
					// Build first slide as random slide
					buildSlide($rand);

					// Increment slidecount
					$slideCount++

					// Prevent empty slide  
					if (($rand + 1) == (allSlides + 1)) {
						$slideCount = 1
					} else {
						$slideCount = $rand + 1
					}
				// After first iteration you are here
				} else {
					if ($slideCount < allSlides) {
						buildSlide($slideCount);
						$slideCount++;

					} else {
						buildSlide($slideCount);
						$slideCount = 1
					}
				}
			}
			// Generate Slide
			function buildSlide(slide) {
				var $output = $("#output");
				var $getProducts = "";
				var $slideOpen = '<div class="slide">';
				var $slideClose = '</div>';
				var $listOpen = '<ul id="products" class="jcarousel jcarousel-skin-tango">';
				var $listClose = '</ul>';
		
			// Remove previous slide
			$output.find('.slide').remove();
			// Get new slide
			$(xml).find("slide[number=" + slide + "]").each(function() {	
				$getImage = '<img width="780" height="365" src="' + $(this).find('visual').attr('path') + '"/><a href="' + $(this).find('visual').attr('href') + '"><span class="clickable"></span></a>';	
				$(this).find("product").each(function(index) {	
					$getProducts += '<li><a href="'+ $(this).find('link').text() +'"><img width="113" height="113" src="' + $(this).find('path').text() + '" /></a><p>'+ $(this).find('artikelnummer').text() +'</p><div class="description"><h4>'+ $(this).find('title').text() +'</h4>'+ $(this).find('description').text() +'</div></li>';
				});
			});	

			// Build Slide and append it to the dom
			$output.append($slideOpen + $getImage + $listOpen + $getProducts + $listClose + $slideClose).hide().fadeIn(500);
		
// Init Product Slider
$('#products').jcarousel({
	vertical: true,
	scroll: 1,
	auto: 4,
	initCallback: mycarousel_initCallback
});

		
			$('.jcarousel-skin-tango .description').hide();
			
			$('.jcarousel-skin-tango li').hover(function() {
				$(this).find('.description').animate({'left': '-122px'}, 150).fadeTo('fast', 1);
			}, function() {
				$(this).find('.description').animate({'left': '170px','opacity':'0'}, 500).fadeTo('fast', 0);
			});
			
		$('.jcarousel-next').attr('title', 'Nach unten scrollen');
		$('.jcarousel-prev').attr('title', 'Nach oben scrollen');
		}
	


		$(xml).each(function() {
			$(this).find("slide").each(function(index) {
				var number = $(this).attr('number');
				var slide_title = $(this).attr('title');
				$('.stage #nav').append('<span title="'+slide_title+'" class="slide-'+number+'">'+number+'</span>');
		
				$('.slide-'+ number).click(function() {
					clearTimeout(tObj);
					buildSlide(number);
				});
			});
		});
	
		$('.stage #nav').append('<span title="Start/Stop" id="start-stop"><i></i></span>');
		$('#start-stop').live('click', function(event) {
			$(this).toggleClass('paused');
			if ($(this).hasClass('paused')) {
				clearTimeout(tObj);
			} else {
				doSlides(druation);
			}
		});
		$('.clickable, .jcarousel').live('mouseover', function(event) {
			if (event.type == 'mouseover') {
				clearTimeout(tObj);
				$('#start-stop').addClass('paused');
			}
		});	
		// Iinit first Slide
		if($slideCount == 0){
			$('#start').addClass('active');
			doSlides(druation);
		}
	}
	
	$('.reminder tbody tr:odd').addClass('odd');

	// Cookie Handler
	var COOKIE_NAME = 'dev-info';
	$('#dev-info .close').click(function(event) {
		event.preventDefault();
		$('#dev-info').animate({'top': '-150'}, 1000);
		$.cookie(COOKIE_NAME, 'dev-info', { expires: 1, path: '/'});
	});

	if ($.cookie(COOKIE_NAME)) {
		$('#dev-info').hide();
	} else {
		$('#dev-info').show();
	}
	
	// Sprachwahl
	$('#languages').click(function() {
		$(this).find('ul').slideToggle(150);
	});
	
	$("#fb1,#fb2,#fb3").fancybox({
		'titleShow' : false,
		'type' : 'iframe',
		'width': 550,
		'height': 800,
		'overlayColor': '#fff',
		'overlayOpacity': 0.8
	});
	$("#fb4").fancybox({
		'titleShow' : false,
		'type' : 'iframe',
		'width': 720,
		'height': 800,
		'overlayColor': '#fff',
		'overlayOpacity': 0.8
	});
	$(".zoomable a").fancybox({
		'titleShow' : false,
		'overlayColor': '#fff',
		'overlayOpacity': 0.8,
		'width': 720,
		'height': 800
	});
	
	$(".cadView").fancybox({
		'titleShow' : false,
		'type': 'iframe',
		'overlayColor': '#fff',
		'overlayOpacity': 0.8,
		'width': 685,
		'height': 485,
		'hideOnOverlayClick':false
	});
	$(".cadView").fancybox({
		'titleShow' : false,
		'type': 'iframe',
		'overlayColor': '#fff',
		'overlayOpacity': 0.8,
		'width': 685,
		'height': 485,
		'hideOnOverlayClick':false
	});
	$(".solution-1").fancybox({
		'titleShow' : false,
		'type': 'iframe',
		'overlayColor': '#fff',
		'overlayOpacity': 0.8,
		'width': 780,
		'height': 600,
		'hideOnOverlayClick':false
	});
	$(".solution-2").fancybox({
		'titleShow' : false,
		'type': 'iframe',
		'overlayColor': '#fff',
		'overlayOpacity': 0.8,
		'width': 780,
		'height': 600,
		'hideOnOverlayClick':false
	});
	
	$.getScript("/website/media/js/mousewheel.js");
	$.getScript("/website/media/js/jScrollPane.js");
	
	$(".fb-usp").fancybox({
		'titleShow' : false,
		'type': 'iframe',
		'overlayColor': '#fff',
		'overlayOpacity': 0.8,
		'width': 940,
		'height': 690,
		'hideOnOverlayClick':true,
		'showCloseButton': false,
		'padding': 8
	});

$('#detail-slider-1,#detail-slider-2,#detail-slider-3').jcarousel({
	scroll: 1
});


$('#m_handel_de,#m_handel_eu').maphilight({
	fillColor: '0066D0',
	fillOpacity: '0.5',
	strokeColor: 'ffffff',
	strokeWidth: '2'
});


$('.load-local').cluetip({
	local:true,
	cursor: 'pointer',
	activation: 'click',
	width:   371,
	showTitle: false,
	attribute: 'href',
	sticky: true,
	closeText: 'X'
	});
	
		$('.module.text.list .list-item:odd').addClass('last')
		
	//equal height
	var index;	
	$('.list-item-wrap').each(function(index) {
		$(this).attr('id', 'i-'+index);
		var highest = Math.max($('#i-'+index+' .content').height(), $('#i-'+index+' .last .content').height());
		$('#i-'+index+' .content').height(highest);
	});
 $('#cluetip').live('mouseover mouseout', function(event) {
	if (event.type == 'mouseover') {
		$('body').removeClass('clue');
	}
	
	if (event.type == 'mouseout') {
		$('body').addClass('clue');
	}
});
$('body.clue').live('click', function(event) {
	$('#cluetip').hide();
});

});

function mycarousel_initCallback(carousel){
    // Disable autoscrolling if the user clicks the prev or next button.
    carousel.buttonNext.bind('click', function() {
        carousel.startAuto(0);
    });

    carousel.buttonPrev.bind('click', function() {
        carousel.startAuto(0);
    });

    // Pause autoscrolling if the user moves with the cursor over the clip.
    carousel.clip.hover(function() {
        carousel.stopAuto();
    }, function() {
        carousel.startAuto();
    });
};
