dsg.fn.initAnchorToggle = function(){
	var sHash = window.location.hash;
	var jAnchorLink  = $j(".main div.editorial-catcher div.box-content ul li a");
	var jBoxes = $j(".main div.box-editorial");
	var jContents = jBoxes.find("div.box-content");
	
	jBoxes.each(function(i){
		var jBox = $j(this);
		var sAnchor = this.id;
		var jControler = jBox.find("div.box-header").css({cursor:"pointer"}).attr("tabindex","0");
		jControler
			.click(function(){
				jAnchorLink.filter("[href=#" + sAnchor + "]").click();
			})
			.focus(function(){
				$j(document).bind("keyup.toggle", function(e){
					e.preventDefault();
					if (e.keyCode == 13 || e.keyCode == 32){
						jControler.click();
					}
				});
			})
			.blur(function(){
				$j(document).unbind("keyup.toggle");
			});
	});
	
	jAnchorLink
		.bind("expand", function(){
			jContents.hide().parent().removeClass("expanded").addClass("collapsed");
			var jLink = $j(this);
			var sAnchor = jLink.attr("href").slice(1);
			var jRelBox = $j("#" + sAnchor).addClass("expanded").removeClass("collapsed");
			jLink.parent("li").addClass("active");
			jAnchorLink.not(this).parent("li").removeClass("active");
			jRelBox.find("div.box-content").show();
		})
		.click(function(){
			$j(this).trigger("expand");
		})
		.each(function(){
			if ( $j(this).parent().hasClass("active") ){
				$j(this).trigger("expand");
			}
		});
	
	if ( sHash.length > 0 ) {
		var jLink = jAnchorLink.filter("[href=" + sHash + "]");
		jLink.trigger("expand");
	} else {
		jAnchorLink.eq(0).trigger("expand");
	}
};

dsg.fn.initSimpleToggle = function(box){
	var jBoxes = $j(box);
	
	jBoxes
		.addClass("collapsed")
		.bind("expand", function(){
			var jContent = $j(this).find("div.box-content");
			jContent.show().parent().removeClass("collapsed").addClass("expanded");
		})
		.bind("collapse", function(){
			var jContent = $j(this).find("div.box-content");
			jContent.hide().parent().removeClass("expanded").addClass("collapsed");
		})
		.find("div.box-content").not(":first").hide();
	
	jBoxes
		.each(function(i){
		var jBox = $j(this);
		var jContent = jBox.find("div.box-content")
		var jToggleCtl = jBox.find("div.box-header").attr("tabindex","0");
		
		jToggleCtl
			.css({cursor:"pointer"}).click(function(){
				jBoxes.not($j(this).parent()).trigger("collapse");
				if ( !jContent.is(":visible") ){
					jBox.trigger("expand");
				} else {
					jBox.trigger("collapse");
				}
			})
			.focus(function(){
				$j(document).bind("keyup.toggle", function(e){
					e.preventDefault();
					if (e.keyCode == 13 || e.keyCode == 32){
						jToggleCtl.click();
					}
				});
			})
			.blur(function(){
				$j(document).unbind("keyup.toggle");
			});
			
	}).eq(0).addClass("expanded");
};

dsg.fn.initInnerToggle = function(box){
	var jBoxes = $j(box);
	var jBoxesItems = jBoxes.find("li");
	
	jBoxesItems.each(function(i){
		var jItem = $j(this);
		var jItemBoxCtl = jItem.parents(".box-editorial").find("div.box-header");
		var jItemCtl = jItem.find("span");
		var jContent = jItem.find("p");
		
		jItem
			.bind("collapse", function(){
				jItem.removeClass("expanded").addClass("collapsed");
				jContent.hide();
			})
			.bind("expand", function(){
				jItem.removeClass("collapsed").addClass("expanded");
				jContent.show();
			})
			.trigger("collapse");
		
		jItemCtl.click(function(){
			if ( !jContent.is(":visible") ) {
				jItem.trigger("expand");
				jItem.siblings().trigger("collapse");
			} else {
				jItem.trigger("collapse");
			}
		});
		
		if ( jItem.parents(".box-content").is(":visible") ) {
			jItemCtl.eq(i).click();
		}
		
		if (jBoxes.length > 1) {
			jItemBoxCtl.click(function(){
				jItem.trigger("collapse");
			});
		}
	});
};

dsg.fn.initSecondLevelAnchorToggle = function(){
	var sHash = window.location.hash;
	var jAnchorLink  = $j("div.main .editorial-catcher .box-content ul li a");
	var jItems = $j("div.main .box-editorial ul li");
	
	jItems
		.find("span")
		.click(function(){
			jAnchorLink.parent().removeClass("active");
		})
		.parents(".box-content").prev()
		.click(function(){
			jAnchorLink.parent().removeClass("active");
		});
	
	jAnchorLink.each(function(){
		var jAnchor = $j(this);
		var sAnchor = jAnchor.attr("href");
		var jAnchorRelBox = $j(sAnchor).parents(".box-editorial").find(".box-content");
		var jAnchorRelBoxCtl = jAnchorRelBox.prev(".box-header");
		var jAnchorRelBoxContent = $j(sAnchor).find("p");
		
		$j(sAnchor).find("span").click(function(){
			jAnchor.parent().addClass("active");
			jAnchorLink.not(jAnchor).parent().removeClass("active");
		});
		
		jAnchor.click(function(){
			jAnchorLink.parent().removeClass("active");
			jAnchor.parent().addClass("active");
			if ( !jAnchorRelBoxContent.is(":visible") && !jAnchorRelBox.is(":visible") ) {
				jAnchorRelBoxCtl.click();
				$j(sAnchor).find("span").click();
			} else if ( jAnchorRelBox.is(":visible") && !jAnchorRelBoxContent.is(":visible")) {
				$j(sAnchor).find("span").click();
			}
		});
	});
	
	if ( sHash.length > 0 ) {
		jAnchorLink.filter("[href=" + sHash + "]").click().parent().addClass("active");
	} 
};

dsg.fn.initContactForm = function(trad){
	var jContact = $j("#contact-form");
	var jForm = jContact.find("form");
	var jCounter = $j('<p class="counter"><strong>'+ trad +'</strong></p>').insertBefore("#area-2 form p.submit");
	$j(function(){
		var jCount = $j("span.counter");
		jCount.appendTo(jCounter);
	});
};

dsg.fn.initGiftPage = function(){
	$j.superbox.settings = {
		closeTxt: "Fermer",
		loadTxt: "Chargement...",
		beforeShow: function(){
			var jFrame = $j("#superbox-innerbox iframe");
			function fitFrame(){
				$j(jFrame[0].contentDocument.body).addClass("frame-content");
			}
			fitFrame();
			jFrame.load(function(){
				fitFrame();
			});
		}
	};
	$j.superbox();
};

dsg.fn.initGiftCheck = function(){
	var jForm = $j("#gift-check-form");
	var jCheckNumber = $j("#quantity");
	var jAction = $j("#send-action");
	
	jCheckNumber.change(function(){
		jAction.remove();
		jForm.submit();
	});
};