/* neu am 08.10.2009 ******************************** */


$.fn.displayMapDetails = function() {
	var map = this;
	//var map = $('map',image_map);
	map.offset = $(map).offset();
	
	$(map).bind("mouseleave", function() { $('.image_map_detail').customFadeOut(); $('area').removeData("visible"); });
	
	var showOverlayBox = false;
	
	return this.find("area").each(function() {
					
			var area = this;
			area.w = $(map).width();
			area.h = $(map).height();
			area.overlayId = $(this).attr("rel");
							
						
					$(area).bind('mouseenter', function(e) { 
						
							if ( $(area).data("visible")!="true" ) {
								
								$('.image_map_detail').not(area).css('display','none'); $('area').removeData("visible"); 
								
								$(area.overlayId).customFadeIn(300);
								$(area).data("visible", "true");
								

							


							var newtop = (e.pageY - map.offset.top + 0 + $(area.overlayId).height() ) > area.h  ? (e.pageY - map.offset.top  - 0 - $(area.overlayId).height() ) : (e.pageY - map.offset.top +0  )
							var newleft = (e.pageX - map.offset.left + 0 + $(area.overlayId).width() ) > area.w ? (e.pageX - map.offset.left - 0 - $(area.overlayId).width() ) : (e.pageX - map.offset.left+0 )
												
							$(area.overlayId).css({ top: newtop , left: newleft });  
							
							}
							
							
							
							});

				});


	};
/* ENDE neu am 08.10.2009 ******************************** */




// Custom FAde In mit hoher Schriftqualitaet IE --------------------------------------------------------------
$.fn.customFadeIn = function(speed, callback) {
		$(this).fadeIn(speed, function() {
			if(jQuery.browser.msie)
				$(this).get(0).style.removeAttribute('filter');
			if(callback != undefined)
				callback();
		});
	return this;	
	};
	$.fn.customFadeOut = function(speed, callback) {
		$(this).fadeOut(speed, function() {
			if(jQuery.browser.msie)
				$(this).get(0).style.removeAttribute('filter');
			if(callback != undefined)
				callback();
		});
	return this;	
	};



// Overlay initialisieren -------------------------------------------------------------------------	
$.Overlay =  {
	
		overlay : null,
	
		get : function(z) { return overlay = $("#overlay").length == 1 ? $("#overlay") : $("<div>").attr("id","overlay")
            					.appendTo( $("#contentbox").css({ position: "relative" }) )
              					.css({ position: "absolute", left: "0", top: "0", zIndex: z || "15", opacity: "0", background: "white", display: "block" });
						},
		fadeIn: function() { 
					var h = $("#contentbox").height();
					var w = $("#contentbox").width();
					overlay
						.css({ height: h, width: w, display: "block" })
						.animate({ opacity: 0.6 },50 )
						.one("click", this.fadeOut);
					},
	
		fadeOut: function() {
					overlay.animate({ opacity: 0 }, 50, function() { $(this).css({display: "none"}); });
					$("#warenkorb_info").css("display","none").remove();
					}
	
	};



// In den Warenkorb gelegt ------------------------------------------------------------------------
$.fn.indenwarenkorb = function() {
		
		var form = this;
		$(form).bind("submit", function() {
						
										$.Overlay.fadeIn(1000);
										
										
										
										if ($("#remote").length == 0)
										
										var url=$(this).attr('action');
                                                                                var data=$(this).serialize();
// Zufallsartikel fuer "Dazu passt"-Anzeige ermitteln
var items=$('#karussel_dazu_passt').find('li');
var itemCnt=items.size();
if (itemCnt==1) {
  var art=items.eq(0).attr('id');
  data+="&ramdomArt="+art.split('_')[1];
} else if (itemCnt>1) {
  var randomNo=Math.floor(Math.random()*itemCnt)
  var art=items.eq(randomNo).attr('id');
  data+="&ramdomArt="+art.split('_')[1];
}
data+="&ajaxCall=1"; 
										$.ajax({ 
											url: url,
											data: data,
											success: function(data){  
														$(data).appendTo("#contentbox").customFadeIn(200);
														$('#close_icon_overlay').bind('click', function() { $.closeModal(); return false; });
$('#button_weitershoppen').click(function() { $.Overlay.fadeOut(); });
$('#basket_box').find('li').eq(1).load('../top/ajax_updateCartInfo.html');

/* 														var h = $("#warenkorb_info").; */
/* 														$("#warenkorb_info").css("top", $(document)) */

														
														},
		   									error: function() { alert("error")  }
													});							
										
										
										return false;
										 });
		}



// Hover Efekt fuer Navigation ---------------------------------------------------------------------
$.fn.hoverIn = function() { 
		

		var overlay = $.Overlay.get();
				
		var hoverbox = this; 
		var time = 300;
				
		return $(".submenu", this).each(function() {  
			
			var ul = this;
							
	   		$(ul).css({ opacity: "0", display: "none" })
				 .parents("li")
				 .bind( "mouseenter", function() { 
				 		
				 		
				 	var li = this;
				 	$()	
				 				
	 				$(hoverbox).one("mouseleave", function() { 
						$.Overlay.fadeOut()	;	            	
						time = 300;
		            });
	 				
	 				$(this).data("hoverEnable","true");
	 			
	 				$(this).oneTime( time , function() {
			            	
			            	if ( $(this).data("hoverEnable")=="true" ) {
			            	
/* 			            		console.log("time: " + time); */
			            		if ($.browser.msie) $(li).addClass("ieHover");
			            		$(ul).css({display: "block"}).animate({ opacity: "1"  }, 100);
			            		//$(li).animate({ backgroundColor: "#ffffff"  }, 200);
			            		
								if ( time != 100 ) {
									$.Overlay.fadeIn();
										  									
	  								$(hoverbox).data("overlay","true");
	  								time = 100;
									}
								}
							});
							
						$(this).one("mouseleave", function() { 
	 							$(this).removeData("hoverEnable");
		 						$(ul).animate({ opacity: "0"  }, 200, function() { $(this).css({display: "none"}); if ($.browser.msie) $(li).removeClass("ieHover"); });
		 						
		 						//$(li).animate({ backgroundColor: li.bgcolor }, 200);
		 					});
				 	});          
		});
};



// Animation fuer linke Sidebar Navigation ----------------------------------------------------------------------------
$.fn.hoverSidebarMenu = function() { 
	
	var submenu = this;
	var all = this.children("li");
	var current = this.children("li.current");
	
	this.children("li")
		.each(function() {
		
			var li = this;
			li.a = $(li).not(".permanent").children("a");
			
			$(li.a).bind("click", function() { 

					if( !$(li).hasClass("current")  ) {
					$(all).not(".permanent",all).removeClass("current").children("ul").hide(100);
					$("a.current", all).not(".permanent",all).removeClass("current")
					
					$(li.a).addClass("current");
					$(li).children("ul").show(200);
					$(li).addClass("current");
					
					}
					else {
					$(li).children("ul").hide(200, function() { $(li).removeClass("current").children("a:first").removeClass("current");  });
					}
					
					return false;
			});
      
      // Submenue in Slots in Männerwelt anklickbar machen 
      if($(this)[0].attributes[0]){
        if($(this)[0].attributes[0].nodeValue === "noIcon"){
          $(li.a).unbind('click'); 
        }  
      }

		});
		   	
	return this;
};




// Farbtabelle in Listenansciht wird eingeblendet - Neu vom 18.11.2009 ----------------------------------------------------------------------
$.fn.hoverFarbtabelle = function() {

return this.each( function() {
        var farbtabelle = this;
        var time = 300;
        
        farbtabelle.hoehe = $(farbtabelle).css({ display: "block", visibility: "hidden" }).height();
        
        $(farbtabelle)
                .css({ height: "0", visibility: "visible"})
                .parent("li")
                .bind("mouseenter", function() { 
                                                
                                $(farbtabelle)
                                        .data("hoverEnable","true").css({ top: "171px" })
                                        .oneTime( time , function() {
                         
                                if ( $(farbtabelle).data("hoverEnable")=="true" ) {
                                                        $(farbtabelle).animate({ height: farbtabelle.hoehe, top: 172-farbtabelle.hoehe  });
                                                        }
                                                        
                                                });
                                                
                                                $(farbtabelle).parent("li")
                                                        .one("mouseleave", function() { 
                                                                $(farbtabelle)
                                                                .removeData("hoverEnable")
                                                                .animate({ height: "0", top: 172  });
                                                                });
        });

});
}       



$.closeModal = function() {
			$('.modal_window').customFadeOut(200, function() { $('.modal_window').remove();  }); 
			$.Overlay.fadeOut();
			}

// ------------------------------------------------------------------------
$.fn.artikelWeiterempfehlen = function() {
		
		var el = this;
		$(el).bind("click", function() {
			$.Overlay.fadeIn();
      var _href=$(this).attr('href').split('#');
			var url=_href[0];
			var art=_href[1];
			$.ajax({ 
				url: url,
        data: "artID="+art,
				success: function(data){  
					$(data).appendTo("#contentbox").customFadeIn(200); 
				},
		 		error: function() { $.Overlay.fadeOut(); alert("error")  }
			});	
			return false;
		});							
		return el;								
}



$.fn.merkzettelVersenden = function() {
		
		var el = this;
		$(el).bind("click", function() { 
			$.Overlay.fadeIn();
      var url=$(this).attr('href');
			$.ajax({ 
				url: url,
				success: function(data){  
					$(data).appendTo("#contentbox").customFadeIn(200); 
        },
			  error: function() { $.Overlay.fadeOut(); alert("error")  }
			});	
      return false;
		});	
}





$(document).ready(function(){
  
   
   // Bei Klick wird Produkt in den Warenkorb gelegt ---------
   $("#in_den_warenkorb").indenwarenkorb();
   
   
   
   
   $("#section_navigation_box").hoverIn();
   
   
   $("#top_navigation_box .submenu").each( function() {
   		
   		var submenu = $(this).css({ opacity: "0", display: "none" });
   		submenu.li = $(submenu).parent("li");
   		
   		submenu.li
   			.bind("mouseenter", function() { 
   									if ($.browser.msie) $(submenu.li).addClass("ieHover");
   									$(submenu).css({ display: "block" }).animate({ opacity: "1" },100); 
   									})
	   		.bind("mouseleave", function() { 
	   								$(submenu).animate({ opacity: "0" },100, function() { $(submenu).css("display","none"); } ); 
	   								if ($.browser.msie) $(submenu.li).removeClass("ieHover");
	   								});
   		
   		});
   	
   	

	
	$("#sidebar_left .submenu").hoverSidebarMenu();
	
	
	
	// Produkt Full & Shortdescription --------------------------------
   	$("#fulldescription").hide();
   	$("#fullinfotext").hide();
   	$("#link_shortdescription").show();
   	$("#link_shortinfotext").show();
   	$("#shortdescription").css("display","block");
   	$("#shortinfotext").css("display","block");
                    
     var $el = $("#detailansicht_description_box");
     $("#link_fulldescription", $el).bind("click", function() {
                  $("#shortdescription", $el).hide(200);
                  $("#fulldescription", $el).show(200);
                  return false;
                  });
     $("#link_shortdescription", $el).bind("click", function() {
                  $("#fulldescription", $el).hide(200);
                  $("#shortdescription", $el).show(200);
                  return false;
                  });
     $("#link_fullinfotext", $el).bind("click", function() {
                  $("#shortinfotext", $el).hide(200);
                  $("#fullinfotext", $el).show(200);
                  return false;
                  });
     $("#link_shortinfotext", $el).bind("click", function() {
                  $("#fullinfotext", $el).hide(200);
                  $("#shortinfotext", $el).show(200);
                  return false;
                  });
 
 
 

	// Formulare verschoenern -------------------------------------------
        $('#auswahl_eingrenzen').jqTransform(); 
	$('#in_den_warenkorb').jqTransform();
	$('#kontakt form').jqTransform();
	$('#anschrift form').jqTransform();
	$('#katalog_anfordern form').jqTransform();
	$('#mein_waschbaer form').jqTransform();
	$('#gutschein form').jqTransform();
	$('#freunde_werben form').jqTransform();
	$('#suchkategorie').jqTransform();
	$('#merkzettel_form').jqTransform();
	$('#warenkorb form').jqTransform();	
	$('.button_jsFix').each( function() { $(this).css("width", $("div",this).width() + 10 ); });
	$('#artikel_weiterempfehlen').artikelWeiterempfehlen();
	$('.merkzettel_versenden').merkzettelVersenden();
	
	
	
	// Katalog anfordern -----------------------------------
        if(! $('#freundwillkatalog').is(":checked") ) {
                $(".friend").hide();
        }else{
                $(".nofriend").hide();
                //$(".coupon").hide();
        }
	
	$("#checkbox_empfehlen input").bind("click", function() { 
			 
			 
/* 			 alert("juhu"); */
			 if( $('#freundwillkatalog').is(":checked") ) {
/* 		 		$(this).removeAttr(); */
		 		$(".friend").customFadeIn( 200 );
                                $(".nofriend").customFadeOut( 200 );
                                //$(".coupon").customFadeOut( 200 );
			 } else {
/* 		 		$(this).attr("checked","checked"); */
		 		$(".friend").customFadeOut( 200 );
                                $(".nofriend").customFadeIn( 200 );
                                //$(".coupon").customFadeIn( 200 );
			 }
/* 			return false; */
			 
			 });
	

	
	
	// Produkt-Karussels initialisieren -----------------------------
  
  
  
  
  // Produkt-Karussels initialisieren -----------------------------

  $('#karussel_men_slider').jcarousel({
    scroll: 1,
    auto: 10,
    wrap: 'last',
    buttonNextHTML: '<div class="karussel_men_rechts"><img src="'+staticPath+'/share/html/introseiten/maenner/images/karussel_rechts.png" alt="" /></div>',
        buttonPrevHTML: '<div class="karussel_men_links"><img src="'+staticPath+'/share/html/introseiten/maenner/images/karussel_links.png" alt="" /></div>'  });
  
  

if( $('#karussel_liste_andere_Kunden').find('li').size() > 4) {
	$('#karussel_liste_andere_Kunden').jcarousel({
		scroll: 4,
		buttonNextHTML: '<div class="karussel_rechts"><img src="'+staticPath+'/images/karussel_rechts.gif" alt="" /></div>',
        buttonPrevHTML: '<div class="karussel_links"><img src="'+staticPath+'/images/karussel_links.gif" alt="" /></div>'  });
}
	 
	
if( $('#karussel_dazu_passt').find('li').size() > 4) {
 	$('#karussel_dazu_passt').jcarousel({
		scroll: 4,
		vertical: true,
		buttonNextHTML: '<div class="karussel_unten"><img src="'+staticPath+'/images/karussel_unten.gif" alt="" /></div>',
        buttonPrevHTML: '<div class="karussel_oben"><img src="'+staticPath+'/images/karussel_oben.gif" alt="" /></div>' });
}


	$('#themeweltteaser_ul').jcarousel({
		scroll: 5,
		buttonNextHTML: '<div class="karussel_rechts"><img src="'+staticPath+'/images/karussel_rechts_130.gif" alt="" /></div>',
        buttonPrevHTML: '<div class="karussel_links"><img src="'+staticPath+'/images/karussel_links_130.gif" alt="" /></div>'  
        });
	
        $('#karussel_jubilaeum').jcarousel({
		scroll: 1,
		buttonNextHTML: '<div class="karussel_rechts"><img src="'+staticPath+'/images/karussel_rechts_25.png" alt="" /></div>',
        buttonPrevHTML: '<div class="karussel_links"><img src="'+staticPath+'/images/karussel_links_25.png" alt="" /></div>'
        });	

        $('.produktfarbentabelle').hoverFarbtabelle();	
	
	
	
	
	// -------------------------------------------
	var rechnungsadresse = $('#fieldset_rechnungsadresse');
	var lieferadresse_headline = $('#lieferadresse_headline').css("display","none");
	var lieferadresse = $('#fieldset_lieferadresse').css("display","none");
	var packstation_headline = $('#packstation_headline').css("display","none");
	var packstation = $('#fieldset_packstation').css("display","none");
	
	$('#packstation_headline2').css("display","none");
	$('.packstation_spacer').css("display","block");
	
	
	if( $('#lieferadresse2').attr("checked") ) { 
			$(lieferadresse_headline).css("display","block");
			$(lieferadresse).css("display","block");
		}
		
	
	if( $('#lieferadresse3').attr("checked") ) { 
			$(packstation_headline).css("display","block");
			$(packstation).css("display","block");
		}
	
	$('#select_lieferadresse').css("display","block").find('input').bind("click", function(e) {  

		if( $(e.target).attr("id")=="lieferadresse2") {
			$(packstation_headline).css({ display: "none" });
			$(packstation).css({ display: "none" });
			
			
			$(lieferadresse_headline).customFadeIn( 400);
			$(lieferadresse).customFadeIn( 400);
			
			}
		else if( $(e.target).attr("id")=="lieferadresse3") {
			
			var vorname = $('#vorname');
				vorname.value = vorname.attr("value");
				vorname.label = $('label[for=vorname]');
			var nachname = $('#nachname');
				nachname.value = nachname.attr("value");	
				nachname.label = $('label[for=nachname]');
			var titel = $('#titel');
				titel.value = titel.find("option:selected").val();	
				titel.label = $('label[for=titel]');
			var anrede = $(".anrede:checked");
				anrede.value = anrede.val() || "";	
                                switch(anrede.value) {
                                  case "1":anrede.value = "Firma"; break;  
                                  case "2":anrede.value = "Herr"; break;  
                                  case "3":anrede.value = "Frau"; break;  
                                  case "4":anrede.value = "Familie"; break;  
                                }
				anrede.label = $('label[for=anrede_frau]');
				
			$("#packstation_error").remove();
			$('.input_error',rechnungsadresse).removeClass("input_error");

			
                        if ( (anrede.value != "" && vorname.value !="" &&  nachname.value !="" && !nachname.data("val") && !vorname.data ("val") )  || $('#fieldset_rechnungsadresse').length == 0    ) {
				$(lieferadresse_headline).css({ display: "none" });
				$(lieferadresse).css({ display: "none" });
				$(packstation_headline).customFadeIn( 400 );
				$(packstation).customFadeIn( 400 );
				$('#vorname3').attr("value",vorname.value );
				$('#nachname3').attr("value",nachname.value );
                                if (anrede.value != "") {
				  $('#anrede3').attr("value",anrede.value ); 
				  $('#titel3').attr("value",titel.value );
                                } 
                                $("#packstation_error").css("display","none");
/* 				titel.value != "" ? $('#titel3').attr("value",titel.value) :; */
			} else {
/* 				alert("Bitte tragen Sie erst eine Rechnungsadresse ein"); */
				$(e.target).removeAttr("checked");
				
				var error_message = '<div id="packstation_error" class="error_box"><div class="ausrufezeichen"><p><strong>Bevor Sie Packstation als Lieferadresse w&auml;hlen k&ouml;nnen, machen Sie bitte entsprechende <br />Angaben in den rot markierten Feldern!</strong></p></div></div>';
				$(error_message).insertAfter("h1");
				
				if (anrede.value == "") {
					$(anrede.label).addClass("input_error");
/* 					$('.anrede').one('click', function() { $("#packstation_error").css("display","none"); });   */
					}
				
				if (vorname.value == "") {
					$(vorname.label).addClass("input_error");
					$(vorname).addClass("input_error").data("val","no").one("focus",function() { $(vorname).addClass("input_error").removeData("val"); });
					}
					
				if	(nachname.value == "") {
					$(nachname.label).addClass("input_error");
					$(nachname).addClass("input_error").data("val","no").one("focus",function() { $(nachname).addClass("input_error").removeData("val"); });
					}
				
				
					
				}
			}	
		else if( $(e.target).attr("id")=="lieferadresse1") {
			$(lieferadresse_headline).customFadeOut(  400, function() { $(lieferadresse_headline).css("display","none"); });
			$(lieferadresse).customFadeOut(  400, function() { $(lieferadresse).css("display","none"); });
			$(packstation_headline).customFadeOut(  400, function() { $(packstation_headline).css("display","none"); });
			$(packstation).customFadeOut(  400, function() { $(packstation).css("display","none"); });

			}
	});
	
		
		
		
	if( $('#anrede_firma').attr("checked") ) { 
			$('.firma').css("display","block").show();
			$('.privat').hide();
			$('#lieferadresse3').removeAttr("checked").hide();
			$('label[for=lieferadresse3]').hide();
			$(packstation_headline).customFadeOut(  400, function() { $(packstation_headline).css("display","none"); });
			$(packstation).customFadeOut(  400, function() { $(packstation).css("display","none"); });

		}
		else {
			$('.firma').hide();
			$('.privat').show();
			$('#lieferadresse3').show();
			$('label[for=lieferadresse3]').show();
		}
	
	
	$('.anrede').bind("click", function(e) {  
		
		if( $(e.target).attr("id")=="anrede_firma") {
			$('.privat').css("display","none");
			$('.firma').customFadeIn(400);//css({opacity: "0", display: "block"}).animate({ opacity: "1" }, 400);
			$('#lieferadresse3').removeAttr("checked").hide();
			$('label[for=lieferadresse3]').hide();
			$(packstation_headline).customFadeOut( 400, function() { $(packstation_headline).css("display","none"); });
			$(packstation).customFadeOut(  400, function() { $(packstation).css("display","none"); });

			}
		else if ( $('.firma').css("display") != "none") {
			$('.firma').css("display","none");
			$('.privat').customFadeIn(400);
			$('#lieferadresse3').show();
			$('label[for=lieferadresse3]').show();
			}
	});
	
	
	
	
	
	if( $('#anrede_firma2').attr("checked") ) { 
			$('.firma2').css("display","block").show();
			$('.privat2').hide();
		}
		else {
			$('.firma2').hide();
			$('.privat2').show();
		}
	
		
	$('.anrede2').bind("click", function(e) {  
		
		var self =this;
		
		if( $(e.target).attr("id")=="anrede_firma2" ) {
			$('.privat2').css("display","none");
			$('.firma2').customFadeIn( 400);
			}
		else if ( $('.firma2').css("display") != "none") {
			$('.firma2').css("display","none");
			$('.privat2').customFadeIn( 400);
			}
	});

	
	
	
	
	
	
	/* neu am 08.10.2009 ******************************** */
	$('#image_map').displayMapDetails();
	/* EDNE neu am 08.10.2009 ******************************** */
	

  $('#checkAll').click(function() {
    $(this).parents('form').find('input:checkbox').attr('checked',true);
    return false;
  });	
  $('#uncheckAll').click(function() {
    $(this).parents('form').find('input:checkbox').attr('checked',false);
    return false;
  });	
	
  $('.modal_window button[type=submit]').live('click',function() {
    var _this=$(this);
    var form=_this.parents('form');
    var url=form.attr('action');
    var data=encodeURI(form.serialize());
    data+="&ajaxCall=1";
    $.ajax({
      url: url,
      data: data,
      success: function(data){
        $('.modal_window').replaceWith(data);
        var v="";
        $('.modal_window').find('input,textarea').each(function() {
          v=$(this).val();
          v=decodeURIComponent(v);
          $(this).val(v);
        });
      },
      error: function() { alert("error")  }
    });
    return false;
  });
  $('#close_icon_overlay, #button_closeWindow').live('click',function() { $.closeModal(); return false; });
	
});


/* ********** Cliplister: versteckt IFrame, wenn Pixel 1x1, zeigt IFrame wenn Pixel 2x2, dann gibt es ein Video **************** */
      function clHandleFrame(iframe)
      {
          if( iframe.id.substr(0,10)=="cliplister") {
              var test = new Image();
              test.onload = function() {
                  if (test.width<2) {
                      iframe.style.height="0";
                      iframe.style.width="0";
                      iframe.style.visibility="hidden";
                  }
              }
              var s = iframe.src.replace(/\/ind/g,"");
              test.src = s.replace(/playBtn/g,"play")+"/cx";
          }
      }

      function cliplister()
      {
          var iframes = document.getElementsByTagName("iframe");
          var i;
          for(i=0;i<iframes.length;i++) {
              clHandleFrame(iframes[i]);
          }
      }





