/* Accordion Start */
var accordion;			

$(document).ready(function(){
	
	/* Retourenformular */
	
	if($("#duplicate").length > 0){
		 $("#duplicate").dynamicForm(".plus", "#minus", 
		 	{  
				formPrefix:"tx_kitretouren_pi1"
	    	}
		 );
	}
	
	
	if($('html').attr('lang') == 'en')
		$('body').addClass('en');
	
	
	/* Prüfen der Größentabelle */		
	var arr = [	'1', '24', '25', '26', '27', '28', '29', '30', '31', '32', '33', '34', '35', '36', '37', '38', '39', '40', '41', '42', '43', '44', '45', '46', '47', '48', '49', '50', '51', '52', '54', '56', 
	'58', '60', '62', '64', '66', '68', '70', '75', '80', '85',	'90', '92', '94', '95', '98', '100', '102', '104', '105', '106', '110', '114', '115', '116', '118', '120', '122', '125', '126', '128', '140', 
	'152', '164', '176', '2X/S', '2XL', '2XL', '2XT', '2XT', '30/32', '30/34', '31/32', '31/34', '32/32', '32/34', '33/32', '33/34', '34/32', '34/34', '36/32', '36/34', '36/38', '37/38', '38/32', '38/34', '39/40',
	'3X/S', '3XL', '3XL', '3XT', '3XT', '40/32', '40/34', '40/42', '41/42', '43/44', '44/46', '44/46', '45/46', '48/50', '48/50', '4X/S', '4XL', '4XL', '4XT', '4XT', '52/54', '52/54', '56/58', '5X/S', '5XL', '5XT',
	'60/62', '6X/S', '6XL', '6XT', '7XL', '7XT', '8XL', '8XT', '9XL', 'L', 'L/S', 'LT', 'M', 'M/S', 'MT', 'OS', 'S', 'S/S', 'ST', 'XL', 'XL/S', 'XLT', 'XS', 'XXL', 'XXS', 'XXT', 'XXXL' ];
	
	jQuery('input.groessenangabe').livequery('change',function() {
		var groessenangabe = $(this).val();		
		if(groessenangabe != '') {			
			groessenangabe = groessenangabe.toUpperCase(); 	
			var result = jQuery.inArray(groessenangabe, arr)
			if(result == -1 || result == undefined ) {
				$(this).removeClass('valid');
				$(this).addClass('error2');
			 	$(this).parent().parent().addClass('errorField');
			 	$(this).parent().parent().find('.errorLabel').remove();
			 	if($('html').attr('lang') == 'en')
	 				$(this).parent().parent().append('<p class="errorLabel">The size you entered is not valid.</p>');
	 			else
	 				$(this).parent().parent().append('<p class="errorLabel">Die eingegebene Größe ist nicht gültig.</p>');
	 			$(this).removeClass('valid');
			}
			else {
				$(this).removeClass('error2');
			 	$(this).parent().parent().removeClass('errorField');
			 	$(this).parent().parent().find('.errorLabel').remove();	 	 
			}
				
		}
	});
	
	/*
	jQuery('select.gb').livequery('change',function() {		
		jQuery('input.lieferschein').each(function() {
			//Check if Lieferscheinnummer is correct
		 	var gbNumber = jQuery('select.gb').val();		 	
		 	var lieferscheinNumber = $(this).val();
		 			
		 	if(lieferscheinNumber != '') {			 	
			 	if(gbNumber.length > 1) {
			 		if(gbNumber.charAt(0) != lieferscheinNumber.charAt(2) || gbNumber.charAt(1) != lieferscheinNumber.charAt(3)) {
			 			$(this).addClass('error2');
			 			$(this).parent().addClass('errorField');
			 			$(this).parent().find('.errorLabel').remove();
			 			if($('html').attr('lang') == 'en')
			 				$(this).parent().append('<p class="errorLabel">The invoice number you entered does not match the selected brand. Please choose the correct brand or check the invoice number.</p>');
			 			else
			 				$(this).parent().append('<p class="errorLabel">Die eingegebene Rechnungsnummer entspricht nicht der ausgewählten Marke. Bitte wählen Sie die korrekte Marke oder überprüfen Sie die Rechnungsnummer.</p>');
			 			$(this).removeClass('valid');	 			
			 		}	 			
			 		else {
			 			$(this).removeClass('error2');
			 			$(this).parent().removeClass('errorField');
			 			$(this).parent().find('.errorLabel').remove();	 	 		
			 		}		 			
			 	}
			 	else {
			 		if(gbNumber.charAt(0) != lieferscheinNumber.charAt(0)) {	 			
			 			$(this).addClass('error2');
			 			$(this).parent().addClass('errorField');
			 			$(this).parent().find('.errorLabel').remove();
			 			if($('html').attr('lang') == 'en')
			 				$(this).parent().append('<p class="errorLabel">The invoice number you entered does not match the selected brand. Please choose the correct brand or check the invoice number.</p>');
			 			else
			 				$(this).parent().append('<p class="errorLabel">Die eingegebene Rechnungsnummer entspricht nicht der ausgewählten Marke. Bitte wählen Sie die korrekte Marke oder überprüfen Sie die Rechnungsnummer.</p>');
			 			$(this).removeClass('valid');				
			 		}
			 		else {
			 			$(this).removeClass('error2');	 		
			 			$(this).parent().removeClass('errorField');	
			 			$(this).parent().find('.errorLabel').remove();
			 		}
			 	}		 		
		 	}	
		 	else {
		 		$(this).removeClass('error2');	 		
			 	$(this).parent().removeClass('errorField');	
			 	$(this).parent().find('.errorLabel').remove();
		 	}	 	
		});
	});*/
	
	/*
	jQuery('input.lieferschein').livequery('change',function() {
		//Check if Lieferscheinnummer is correct
		
	 	var gbNumber = jQuery('select.gb').val();	 		 	
	 	var lieferscheinNumber = $(this).val();
		if(lieferscheinNumber != '') {	
		 	if(gbNumber.length > 1) {
		 		if(gbNumber.charAt(0) != lieferscheinNumber.charAt(2) || gbNumber.charAt(1) != lieferscheinNumber.charAt(3)) {
		 			$(this).addClass('error2');
		 			$(this).parent().addClass('errorField');
		 			$(this).parent().find('.errorLabel').remove();
		 			if($('html').attr('lang') == 'en')
		 				$(this).parent().append('<p class="errorLabel">The invoice number you entered does not match the selected brand. Please choose the correct brand or check the invoice number.</p>');
		 			else
		 				$(this).parent().append('<p class="errorLabel">Die eingegebene Rechnungsnummer entspricht nicht der ausgewählten Marke. Bitte wählen Sie die korrekte Marke oder überprüfen Sie die Rechnungsnummer.</p>');
		 			$(this).removeClass('valid');	 			
		 		}	 			
		 		else {
		 			$(this).removeClass('error2');
		 			$(this).parent().removeClass('errorField');
		 			$(this).parent().find('.errorLabel').remove();	 	 		
		 		}	 			
		 	}
		 	else {
		 		if(gbNumber.charAt(0) != lieferscheinNumber.charAt(0)) {	 			
		 			$(this).addClass('error2');
		 			$(this).parent().addClass('errorField');
		 			$(this).parent().find('.errorLabel').remove();
		 			if($('html').attr('lang') == 'en')
		 				$(this).parent().append('<p class="errorLabel">The invoice number you entered does not match the selected brand. Please choose the correct brand or check the invoice number.</p>');
		 			else
		 				$(this).parent().append('<p class="errorLabel">Die eingegebene Rechnungsnummer entspricht nicht der ausgewählten Marke. Bitte wählen Sie die korrekte Marke oder überprüfen Sie die Rechnungsummer.</p>');
		 			$(this).removeClass('valid');				
		 		}
		 		else {
		 			$(this).removeClass('error2');	 		
		 			$(this).parent().removeClass('errorField');	
		 			$(this).parent().find('.errorLabel').remove();
		 		}
		 	}
		 }
		 else {
		 	$(this).removeClass('error2');	 		
		 	$(this).parent().removeClass('errorField');	
		 	$(this).parent().find('.errorLabel').remove();
		 }
	});
	*/
	
	jQuery('select.retoure').livequery('change',function() {		
		var retourenNumber = jQuery(this).val();
		var bemerkungsFeld = jQuery(this).parent().parent().find('textarea.bemerkung');
		var bemerkung = jQuery(this).parent().parent().find('textarea.bemerkung').val();				
		var bemerkungLabel = jQuery(bemerkungsFeld).parent().find('label').text();
		
		//Check if Lieferscheinnummer is correct	 	
	 	if(retourenNumber == 2 || retourenNumber == 5) {	 		
	 		bemerkungLabel = bemerkungLabel.replace(' *', '');
	 		jQuery(bemerkungsFeld).parent().find('label').text(bemerkungLabel+' *');
	 		if(bemerkung == '') {	
	 			jQuery(bemerkungsFeld).addClass('error2');	 				 		
	 		}
	 		else {
	 			jQuery(bemerkungsFeld).removeClass('error2');
	 		}
	 	}
	 	else {
	 		bemerkungLabel = bemerkungLabel.replace(' *', '');
	 		jQuery(bemerkungsFeld).parent().find('label').text(bemerkungLabel);
	 		jQuery(bemerkungsFeld).removeClass('error2');			 	
	 	}
	});
	
	jQuery('textarea.bemerkung').livequery('change',function() {	
		
		var retourenNumber = jQuery(this).parent().parent().find('select.retoure').val();
		var bemerkung = jQuery(this).val();				
		
		if(bemerkung == '' && (retourenNumber == 2 || retourenNumber == 5) ) {
			jQuery(this).addClass('error2');
		}	 	
	 	else {
	 		jQuery(this).removeClass('error2');			 	
	 	}
	});
	


	if($("#Retourenformular").length > 0){ 
		$("#Retourenformular").validate({		 
		 submitHandler: function(form) {
		 	$error = 0;	 
		 	$errorBemerkung = 0;
		 	
		 	
		 	jQuery('textarea.bemerkung').each(function() {	
		
				var retourenNumber = jQuery(this).parent().parent().find('select.retoure').val();
				var bemerkung = jQuery(this).val();		
				
				if(bemerkung == '' && (retourenNumber == 2 || retourenNumber == 5) ) {
					jQuery(this).addClass('error2');
					$errorBemerkung = 1;
					return false;					
				}	 	
			 	else {
			 		jQuery(this).removeClass('error2');
			 		$errorBemerkung = 0;			 	
			 	}
			}); 	
		 	
		 	
			 jQuery('input.groessenangabe').each(function() {
				var groessenangabe = $(this).val();
				if(groessenangabe != '') {			 	
					groessenangabe = groessenangabe.toUpperCase();
					var result = jQuery.inArray(groessenangabe, arr)
					if(result == -1 || result == undefined ) {						
						$(this).addClass('error2');
					 	$(this).parent().parent().addClass('errorField');
					 	$(this).parent().parent().find('.errorLabel').remove();
					 	if($('html').attr('lang') == 'en')
			 				$(this).parent().parent().append('<p class="errorLabel">The size you entered is not valid.</p>');
			 			else
			 				$(this).parent().parent().append('<p class="errorLabel">Die eingegebene Größe ist nicht gültig.</p>');
			 			$(this).removeClass('valid');
			 			$errorGroesse = 1;
			 			return false;
					}
					else {
						$(this).removeClass('error2');
					 	$(this).parent().parent().removeClass('errorField');
					 	$(this).parent().parent().find('.errorLabel').remove();
					 	$errorGroesse = 0;	 	 
					}
						
				}
			});
		 	
		 	
		 	/*
		 	jQuery('input.lieferschein').each(function() {
				//Check if Lieferscheinnummer is correct
			 	var gbNumber = jQuery('select.gb').val();		 	
			 	var lieferscheinNumber = $(this).val();
			 	if(lieferscheinNumber != '') {	
				 	if(gbNumber.length > 1) {
				 		if(gbNumber.charAt(0) != lieferscheinNumber.charAt(2) || gbNumber.charAt(1) != lieferscheinNumber.charAt(3)) {
				 			$(this).addClass('error2');
				 			$(this).parent().find('.errorLabel').remove();
				 			if($('html').attr('lang') == 'en')
				 				$(this).parent().append('<p class="errorLabel">The invoice number you entered does not match the selected brand. Please choose the correct brand or check the invoice number.</p>');
				 			else
				 				$(this).parent().append('<p class="errorLabel">Die eingegebene Rechnungsnummer entspricht nicht der ausgewählten Marke. Bitte wählen Sie die korrekte Marke oder überprüfen Sie die Rechnungsummer.</p>');
				 			$(this).removeClass('valid');
				 			$error = 1;
				 			return false;	 			
				 		}	 			
				 		else {
				 			$(this).removeClass('error2');
				 			$(this).parent().find('.errorLabel').remove();
				 			$error = 0;	 	 		
				 		}		 			
				 	}
				 	else {
				 		if(gbNumber[0] != lieferscheinNumber[0]) {	 			
				 			$(this).addClass('error2');
				 			$(this).parent().find('.errorLabel').remove();
				 			if($('html').attr('lang') == 'en')
				 				$(this).parent().append('<p class="errorLabel">The invoice number you entered does not match the selected brand. Please choose the correct brand or check the invoice number.</p>');
				 			else
				 				$(this).parent().append('<p class="errorLabel">Die eingegebene Rechnungsnummer entspricht nicht der ausgewählten Marke. Bitte wählen Sie die korrekte Marke oder überprüfen Sie die Rechnungsummer.</p>');
				 			$(this).removeClass('valid');
				 			$error = 1;
				 			return false;				
				 		}
				 		else {
				 			$(this).removeClass('error2');	 			
				 			$(this).parent().find('.errorLabel').remove();
				 			$error = 0;
				 		}
				 	}
				 }
				 else {
				 	$(this).removeClass('error2');	 			
				 	$(this).parent().find('.errorLabel').remove();
				 	$error = 0;
				 }
			});		   */
			if(!$error && !$errorBemerkung && !$errorGroesse) {
				form.submit();	
			}		  	
			
		 }
		});
	}
	
	/* *************** */
	/* Main Navigation */
	/* *************** */
	//Son of Suckerfish
	//Main Navigation - fix for IE
	sfHover = function() {
		var sfEls = document.getElementById("nav").getElementsByTagName("LI");
		for (var i=0; i<sfEls.length; i++) {
			sfEls[i].onmouseover=function() {				
				if($(sfEls[i]).find('.ebene1').length > 0) 
					this.className+=" sfhover";
			}
			sfEls[i].onmouseout=function() {
				this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
			}
		}
	}
	if (window.attachEvent) window.attachEvent("onload", sfHover);
	 
	var laenge= 0;	
	
	/* Alle innenliegenden UL's der MainNav sollten die gleiche Höhe haben, damit der Trennstrich gleich hoch ist */
	$('#nav>li').each(function() {		
		$(this).find('ul.ebene1').each(function() {
			var maxHeight = 0;
			$(this).find('li ul').each(function() {
				if($(this).outerHeight(true) > maxHeight) {
					maxHeight = $(this).outerHeight(true);
				}
			});	
			$(this).find('li ul').each(function() {
				$(this).css('height',maxHeight+'px');
			});		
		});
	});		
	
	$('#nav li ul.ebene1').each(function() {
		$(this).find('ul:last').css('border','none');	
	});	
	
	
	if ( $.browser.msie && $.browser.version <= '7.0') { //IE7 + 6	
	 	$("#nav li").hover(function() {
			var position = $(this).position();	
			var breite = $(this).next().width()+1;			
			//alert(breite);
			if (position.left > 450) {			
				breite = (position.left - $(this).find('ul.ebene1').width()) + $(this).width() - 15;				
				$(this).find('ul.ebene1').css('left', breite+'px');								
			}
			else 
				$(this).find('ul.ebene1').css('left',position.left+'px');
		},
			function(){
				var position = $(this).position();
				if (position.left > 450) {
					$(this).find('ul.ebene1').css('left', '-999em');
				}
				else
					$(this).find('ul.ebene1').css('left','-999em');
			}
		);	
	}
	
	

	$("#nav>li").hover(function() {
		if($(this).find('.ebene1').length > 0)
			$(this).find("a:first").addClass('akt_hov');
	},
		function(){	
			$(this).find("a:first").removeClass('akt_hov');
		}
	);
	
	
	/* Subnavi manipulieren */
	if( $('.menu-level1-current-active ul').length > 0 )
		$('.menu-level1-current-active').addClass('open');
	else
		$('.menu-level1-current-active').removeClass('open');
	
	if( $('.menu-level1-with-subpage ul').length < 1 )
		$('.menu-level1-with-subpage').removeClass('closed');
		
		
		
	/******************************/
	/* Startseiten News Container */
	$('.content .news li').eq(2).addClass('lastElementInRow');

	/*********************************/
	/* Startseiten Accordion starten */
	if ($('.accordion').length > 0) {
		accordion = $('.accordion').gridAccordion({
			width: 962,
			height: 475,
			columns: 6,
			distance: 0,
			shadow: true,
			stopSlideshowOnHover: true,
			captionFadeDuration: 200,
			closedPanelWidth: 80,
			slideDuration: 800,
			closedPanelHeight: 475,
			openedPanelWidth: 832,
			alignType: 'leftTop',
			slideshow: true,			
			openPanelOnMouseOver: false,
			closePanelOnMouseOut: false,
			openPanelOnClick: true
		});
		accordion.openPanel(0);
	}

function onPanelLoaded(obj){	
	//if (obj.index == 0) 
		//accordion.openPanel(0);
}

	/* Unterseiten Slider */
	if($('#Slider li').length > 1) {
		$('#Slider').nivoSlider({
	        effect:'fade', // Specify sets like: 'fold,fade,sliceDown'
	        slices:15, // For slice animations
	        boxCols: 10, // For box animations
	        boxRows: 4, // For box animations
	        animSpeed:600, // Slide transition speed
	        pauseTime:5000, // How long each slide will show
	        startSlide:0, // Set starting Slide (0 index)
	        directionNav:false, // Next & Prev navigation
	        directionNavHide:false, // Only show on hover
	        controlNav:true, // 1,2,3... navigation
	        controlNavThumbs:false, // Use thumbnails for Control Nav
	        controlNavThumbsFromRel:false, // Use image rel for thumbs
	        controlNavThumbsSearch: '.jpg', // Replace this with...
	        controlNavThumbsReplace: '_thumb.jpg', // ...this in thumb Image src
	        keyboardNav:false, // Use left & right arrows
	        pauseOnHover:true, // Stop animation while hovering
	        manualAdvance:false, // Force manual transitions
	        captionOpacity:0.8 // Universal caption opacity
	    });	
	}
	
	
	if($('#Gallery').length > 0) {
		$('#Gallery li a').each(function() {
			$(this).prepend('<span class="mask">&nbsp;</span>');
		});
	}
	

	if ( $.browser.msie && $.browser.version == 9.0 ) {
		/* LightBox Gallery */
		if($('#Gallery').length > 0) {
			 $("a[rel^='prettyPhoto[gallery]']").prettyPhoto({
			 	autoplay_slideshow: false,
				show_title:true,
				default_width: 600,
				default_height: 400,
				theme:'light_square',
				allow_resize: true,
				slideshow: 4000,
				social_tools:'',
				deeplinking:false
			});		
		}  
	}
	else {
		/* LightBox Gallery */
		if($('#Gallery').length > 0) {
			 $("a[rel^='prettyPhoto[gallery]']").prettyPhoto({
			 	autoplay_slideshow: false,
				show_title:true,
				default_width: 600,
				default_height: 400,
				theme:'light_square',
				allow_resize: true,
				slideshow: 4000,
				deeplinking:false		
			});		
		}
	}


	if ($.browser.msie && $.browser.version == 9.0) {
		/* LightBox Video Gallery */
		if($('#VideoGallery').length > 0) {
			 $("a[rel^='prettyPhoto[video]']").prettyPhoto({
			 	autoplay_slideshow: false,
				show_title:true,
				default_width: 600,
				default_height: 400,
				theme:'light_square',
				allow_resize: true,
				slideshow: 4000,
				social_tools:'',
				deeplinking:false
			});		
		}
	}
	else {
		/* LightBox Video Gallery */
		if($('#VideoGallery').length > 0) {
			 $("a[rel^='prettyPhoto[video]']").prettyPhoto({
			 	autoplay_slideshow: false,
				show_title:true,
				default_width: 600,
				default_height: 400,
				theme:'light_square',
				allow_resize: true,
				slideshow: 4000,
				deeplinking:false
			});		
		}	
	}
	
});


