controller.registerCommonObject(newsLetterSubscription);
controller.registerCommonObject(activateTopNavigation);
controller.registerCommonObject(activateSideBreadcrumbs);
controller.registerCommonObject(activateProductSocialmediaUrchinTracker);

$(document).ready(function(){
	coolBar();
	externalLinks();
	shopInfoBox();
	searchboxInputField();
	activateCustomUrchinTracker();
});

/**
 * Coolbar
 */

function coolBar()
{
	$("#coolbar_shops li:not(.current, .moreshops)").hover(function() { 
		$(this).toggleClass("hover") 
	});

	$("#coolbar_shops li.moreshops").hover(function() { 
		$(this).toggleClass("moreshopshover")
	});
}


/**
 * External Links
 */
function externalLinks()
{
	// Regular expressions, match should be negative
	var hrefRegEx = new RegExp("^#|mailto:|(http|https)://" + window.location.hostname, "gi");
	var altText = "Externe pagina";

	/*
	*  Filter all a's in the document
	*
	*	For each filtert a.href
	*  	- onclick, open in new window
	*  	- add "opent in een nieuw venster" notice to a.href title
	*  	- add external img, if an image isn't already present
	*/

	$("a").filter(function() {
	    if (this.href && ((!this.href.match(hrefRegEx) && !$(this).hasClass("nopopup")) || $(this).hasClass("popup"))) {
			return this;
		}else{
			return false;
		}
	}).each(function(i){
		var anchor 	= $(this);
		
		var srcUrl	= "/images/default/anchor_external.png";

		if(anchor.hasClass("footer_link"))
		{			
			srcUrl = "/images/default/anchor_external_white.png";
		}

		anchor.click(function(event){
			event.preventDefault();
			window.open(this.href, "_blank");			
		});

		if(anchor.attr("title")){
			anchor.attr("title", anchor.attr("title") + " (Opent in een nieuw venster)");
		}else{
			anchor.attr("title",  "Opent in een nieuw venster");
		}

		anchor.not(":has(img)").addClass("external").append(
			$(document.createElement("img"))
				.attr("src",srcUrl)
				.attr("title", altText)
		);
	});
}



/**
 * NewsLetter Subscription constructor (footer)
 * @constructor
 */
function newsLetterSubscription()
{
	var self			= this,
		socket			= new Socket(),
		requestResult	= null,
		dom				= new DOM();

	if(!dom.getById("footer_newsletter") && !dom.getById("footer_newsletter_input"))
	{
		return false;
	}
	
	/**
     * Newsletter form
	 * @field
	 */
	var newsLetterForm = dom.getById("footer_newsletter").getFirstByTagName("form");

	/**
     * Newsletter subscription field
	 * @field
	 */
	var footerNewsLetterSubscriptionForm		= new Form(newsLetterForm),
		footerNewsLetterSubscriptionFormRows	= new FooterNewsLetterSubscriptionFormRows(),
		footerNewsLetterSubscriptionFormNotices	= new FooterNewsLetterSubscriptionFormNotices();

	footerNewsLetterSubscriptionForm.addEventListener(Form.FIELD_ADDED, footerNewsLetterSubscriptionFormRows.add);
	footerNewsLetterSubscriptionForm.addEventListener(Form.VALIDATION_COMPLETE, footerNewsLetterSubscriptionFormNotices.update);

	/**
     * E-mail address
	 * @field
	 */
	var footerEmailAddressField = new InputField(dom.getById("footer_newsletter_input"));
		footerEmailAddressField.addRequirement(new FormatRequirement(FormatRequirement.NOT_EMPTY, new Notice("",["Vul s.v.p. "+getVousOuTu("uw ", "je "), dom.create("a", {href : "#" + footerEmailAddressField.getElement().id, onclick: footerEmailAddressField.focus}, ["e-mailadres"]), " in"])));
		footerEmailAddressField.addRequirement(new FormatRequirement(FormatRequirement.EMAIL_ADDRESS, new Notice(" ", [getVousOuTu("U heeft", "Je hebt") + " geen geldig ", dom.create("a", {href : "#" + footerEmailAddressField.getElement().id, onclick: footerEmailAddressField.focus}, ["e-mailadres"]), " ingevuld"])));
		footerEmailAddressField.addEventListener(Field.VALIDATION_COMPLETE, footerNewsLetterSubscriptionFormRows.update);
		footerNewsLetterSubscriptionForm.addField(footerEmailAddressField);


	if(dom.getById("footer_newsletter_input"))
	{
		dom.getById("footer_newsletter_input").onfocus = function()
		{
			if(dom.getById("footer_newsletter_input").value == "je e-mailadres")
			{
				dom.getById("footer_newsletter_input").value = "";
				if (dom.getById("footer_newsletter_input").hasClass("focus") === false)
				{
					dom.getById("footer_newsletter_input").addClass("focus");
				}
			}
		}
		dom.getById("footer_newsletter_input").onblur = function()
		{
			if(dom.getById("footer_newsletter_input").value == "je e-mailadres" || dom.getById("footer_newsletter_input").value == "")
			{
				dom.getById("footer_newsletter_input").value = "je e-mailadres";
				if (dom.getById("footer_newsletter_input").hasClass("focus") === true)
				{
					dom.getById("footer_newsletter_input").removeClass("focus");
					dom.getById("footer_newsletter").getFirstByTagName("fieldset").removeClass("failed");
					if(dom.getById("footer_newsletter").getFirstByTagName("ul"))
					{
						errorUl = dom.getById("footer_newsletter").getFirstByTagName("ul");
						dom.getById("footer_newsletter").removeChild(errorUl);
					}
				}
			}
		}
	}
	
	// Loading icon
	var loading = dom.create(
		"div",
		{
			id : "footer_newsletter_loading"
		},
		["Een moment geduld s.v.p."]
	);

	/**
	 * onsumbit function
	 */
	newsLetterForm.onsubmit = function()
	{
		if (footerNewsLetterSubscriptionForm.validate() == true)
		{
			socket.addEventListener(Socket.LOADED, function(event)
			{
				if (socket.getStatus() == 200)
				{
					// Evaluate the response
					try
					{
						eval(event.target.getResponseText());
					}
					catch(error)
					{
						
					}
					var success = dom.create(
						"p",
						{},
						[
							"Hartelijk dank voor je inschrijving. Je kunt onze eerste nieuwsbrief binnen enkele weken ontvangen op ",
							dom.create(
								"strong",
								{								
								},
								[dom.getById("footer_newsletter_input").value]
							),
							"."
						]
					);
					
					dom.getById("footer_newsletter").replaceChild(success,loading);
					return null;
				}
				else
				{
					var fail = dom.create(
						"p",
						{},
						["Er is iets mis gegaan bij het inschrijven."]
					);
					
					dom.getById("footer_newsletter").replaceChild(fail,loading);
					return false;
				}
			});
			
			dom.getById("footer_newsletter").replaceChild(loading,dom.getById("footer_newsletter").getFirstByTagName("form"));

			function makeRequest()
			{
				socket.request(
					"/aanmelden_nieuwsbrief",
					{
						newsletter	 : (new Date()).getTime(),
						subscribe	 : true,
						sEmail	 	 : dom.getById("footer_newsletter_input").value,
						sInitials	 : "",
						sGender	 	 : "",
						sLastName	 : ""
					},
					true,true
				);
			}
			setTimeout (makeRequest, 1000);
			return false;
		}
		return false;
	}



	/**
	 * Adds and updates form rows
	 */
	function FooterNewsLetterSubscriptionFormRows()
	{
		var fields = {};

		this.add		= add;
		this.update		= update;

		/**
		 * Add email field
		 * @param {Event} event
		 * @event
		 */
		
		function add(event)
		{
			if (event.target in fields == false && event.target instanceof InputField)
			{
				var field = (fields[event.target] = event.target);

				// Get the row
				field.row = dom.extend(field.getElement().parentNode);

				if (field.row.hasClass("validation") == false)
				{
					field.row.addClass("validation");

					// Create and append notifier
					// Set notices
					field.failedNotice = null;
					field.passedNotice = null;

					// Validate (if the field has a value)
					if (event.target instanceof InputField && field.getElement().value != "" && field.getElement().value != "je e-mailadres")
					{
						field.validate(Field.VALIDATION_TRIGGER_FIELD_ADDED);
					}
				}
			}
		}

		/**
		 * Update email field
		 * @param {Event} event
		 * @event
		 */
		function update(event)
		{
			var field = fields[event.target];

			if (field == undefined)
			{
				throw new Error("Unknown field.");
			}

			field.row.removeClass("failed");
			field.row.removeClass("passed");

			// Validation failed, update the notifier
			if (field.getValid() == false)
			{
				field.row.addClass("failed");
			}
			// Passed validation
			else if (field.getValid() == true)
			{
				field.row.addClass("passed");
				if(dom.getById("footer_newsletter").getFirstByTagName("ul"))
				{
					errorUl = dom.getById("footer_newsletter").getFirstByTagName("ul");
					dom.getById("footer_newsletter").removeChild(errorUl);
				}
			}
		}
	}

	/**
	 * validation notices
	 */
	function FooterNewsLetterSubscriptionFormNotices()
	{
		// Private
		var list = dom.create("ul", {className : "errors"});

		// Public
		this.update = update;

		/**
		 * clear errorlist
		 */
		function clear()
		{
			list.remove();

			while (list.firstChild) 
			{
				list.removeChild(list.firstChild);
			}
		}

		/**
		 * on update make error list if notices exist
		 */
		function update(event)
		{
			clear();
			
			var notices = event.target.getFailedNotices();

			if (notices.length > 0)
			{
				for (var i = 0; i < notices.length; i++)
				{
					list.appendChild(dom.create(
						"li",
						null,
						notices[i].getHTML()
					));
				}

				var parentContainer = dom.getById("footer_newsletter");
				parentContainer.appendChild(list);
			}
		}
	}
}


/**
 * Shop Information Side Box
 */
function shopInfoBox() {
    shopInfoCookie = $.cookie('shopToggle');

	if($("#"+shopInfoCookie).length > 0)
	{
		$("#store_information div:not(#"+shopInfoCookie+")").removeClass("active");
	}else{
		$("#store_information div:not(:last)").removeClass("active");
	}

	$("#store_information div h3 a").click(function(event) {
	    event.preventDefault();
		$("#store_information div.active").removeClass("active");
		
		storediv = $(this).parent().parent();
		storediv.addClass("active");

		$.cookie('shopToggle', storediv.attr("id"), {path: '/'}); 	
	});
}



/**
 * Show country splash screen
 * @constructor
 */
function showSplashScreen()
{
	var self		= this,
		dom			= new DOM(),
		body 		= dom.getFirstByTagName("body", document);	

	// Create splash
	body.appendChild(
		dom.create(
			"div",
			{ id: "splash_countrycheck" },
			[
				dom.create(
					"div",
					{ id: "splash_countrycheck_heading" },
					[
						dom.create(
							"h2",
							{ id: "splash_countrycheck_heading_h2" },
							["Je bezoekt onze website vanuit het buitenland"]
						),
						dom.create(
							"a",
							{
								id: "splash_countrycheck_close",
								href: "#",
								title: "Sluiten",
								onclick: closebutton
							},
							["Sluiten"]
						)
					]
				),
				dom.create(
					"div",
					{
						id: "splash_countrycheck_container",
						className: "preload"
					},
					null
				)
			]
		)
	);

	/**
	 * This is a reference used for close()
	 * @field
	 */
	var splashscreen = dom.getById("splash_countrycheck");

	/** 
	 * Show splashscreen
	 * @param {String} shop The name of the shop
	 * @param {String} country The name of the country
	 */
	function show(shop, country)
	{
		shopNameArray = shop.split(".");
		shopname = shopNameArray[0].toLowerCase();
		var currentShopLowercase = shop.toLowerCase();

		/* used for tracking */
		var querystring = "?utm_source="+ currentShopLowercase +"&utm_medium=splashscreen&utm_campaign=";

		if (country == "Nederland")
		{
			var foreignCountry = "Belgie";
			var foreignCountryIdentity = "Belgische";
			var currentCountryAbbr = "nl";
			var foreignCountryAbbr = "be";
			var shopEquivalent = shop.replace(".nl", ".be");
			var foreignShopLowercase = shopEquivalent.toLowerCase();
			var shoplist = dom.create(
				"span",
				{
					id: "shoplist"
				},
				[
					"winkel in ",
					dom.create(
					 	"a",
					 	{
					 		href: "http://www." + foreignShopLowercase + "/winkel/101/winkel-in-antwerpen.html" + querystring + "store_antwerpen"
					 	},
					 	["Antwerpen"]
				 	),
				 	"."
				]

			);
		}
		else
		{
			var foreignCountry = "Nederland";
			var currentCountryAbbr = "be";
			var foreignCountryAbbr = "nl";
			var foreignCountryIdentity = "Nederlandse";
			var shopEquivalent = shop.replace(".be", ".nl");
			var foreignShopLowercase = shopEquivalent.toLowerCase();
			var shoplist = dom.create(
				"span",
				{
					id: "shoplist"
				},
				[
					"winkels in ",
					dom.create(
					 	"a",
					 	{
					 		href: "http://www." + foreignShopLowercase + "/winkel/121/winkel-in-eindhoven.html" + querystring + "store_eindhoven"
					 	},
					 	["Eindhoven"]
				 	),
				 	", ",
				 	dom.create(
					 	"a",
					 	{
					 		href: "http://www." + foreignShopLowercase + "/winkel/124/winkel-in-groningen.html" + querystring + "store_groningen"
					 	},
				 		["Groningen"]
				 	),
				 	" of ",
				 	dom.create(
					 	"a",
					 	{
					 		href: "http://www." + foreignShopLowercase + "/winkel/1/winkel-in-rotterdam.html" + querystring + "store_rotterdam"
					 	},
					 	["Rotterdam"]
				 	),
				 	"."
				]

			);
		}

		//logo
		var foreignShopLogo = new Image();
		foreignShopLogo.src = "/images/coolblue." + foreignCountryAbbr + "/" + shopname + "_reviewincentive_logo.png";

		fade();
		splashscreen.addClass("active");

		container = dom.getById("splash_countrycheck_container");
		// Splash screen container
		container.appendChild(
			dom.create(
				"div",
				{
					id: "splash_countrycheck_textcontainer"
				},
				[
					dom.create(
						"p", null, [
						"Woon je in " + foreignCountry + "? Dan raden wij je aan naar ",
						dom.create(
							"a",
							{
								href: "http://www." + foreignShopLowercase + window.location.pathname +querystring + "link_top"
							},
							[shopEquivalent]
						),
						" te gaan."
						]
					),
					dom.create(
						"p", null, [
							"Hier bekijk je de actuele voorraadstatus, productprijzen en openingstijden van onze " + foreignCountryIdentity + " (web)winkel.",
							" Plaats een bestelling en laat deze",
								dom.create(
									"strong",
									{
										className: "featured"
									},
									[" gratis "]
								),
							"bij je thuis bezorgen.",
							" Ook hier geldt: op werkdagen voor 22.00 uur besteld, morgen in huis! ",
							"Je kunt er ook voor kiezen de order af te halen in onze ",
								 shoplist
							]
					),
					dom.create(
						"p", null, [
							"Ga nu naar ",
							dom.create(
								"a",
								{
									href: "http://www." + foreignShopLowercase + window.location.pathname + querystring+"link_bottom"
								},
								[shopEquivalent]
							),

							" of winkel verder op ",
							dom.create(
							"a",
							{
								href: "http://www." + currentShopLowercase + window.location.pathname,
								title: shop,
								onclick: closelink
							},
							[shop]
							),
							"."
						]
					),
					dom.create(
						"div",
						{
							id: "splash_countrycheck_button"
						},
						[
							dom.create(
								"a",
								{
									id: "splash_countrycheck_button_link",
									href: "http://www." + foreignShopLowercase + window.location.pathname + querystring + "referbutton"
								},
								[
									dom.create(
										"span",
										{},
										["Winkel verder op ",
											foreignShopLogo
										]
									)

								]
							)
						]
					)
				]
			)
		);

		container.addClass(foreignCountryAbbr);

		active = true;
		if (body.addEventListener)
		{
			body.addEventListener("click", outsideClickListener, false);
			window.addEventListener("resize", outsideClickListener, false);
		}
		else if (body.attachEvent)
		{
			body.attachEvent("onclick", outsideClickListener);
			window.attachEvent("onresize", outsideClickListener, false);
		}
	}

	/**
	 * For closing the splash screen
	 */
	function closebutton()
	{
		if (active === true)
		{
			if (typeof urchinTracker != "undefined") {
				urchinTracker("/splashscreen.html?action=closebutton&page=" + _udl.pathname + _udl.search);
			}
			active = false;
			splashscreen.parentNode.removeChild(splashscreen);
			fade();

			return false;
		}
	}

	/** 
	 * For closing the splash screen through a link
	 */
	function closelink()
	{
		if (active === true)
		{
			if (typeof urchinTracker != "undefined") {
				urchinTracker("/splashscreen.html?action=closelink&page=" + _udl.pathname + _udl.search);
			}
			active = false;
			splashscreen.parentNode.removeChild(splashscreen);
			fade();

			return false;
		}
	}


	/** 
	 * For closing the splash screen outsideclick
	 */
	function closeoutside()
	{
		if (active === true)
		{
			if (typeof urchinTracker != "undefined") {
				urchinTracker("/splashscreen.html?action=closeoutsideresize&page=" + _udl.pathname + _udl.search);
			}
			active = false;
			splashscreen.parentNode.removeChild(splashscreen);
			fade();

			return false;
		}
	}

	/**
	* Close the splash screen when a click outside of the splash screen is detected
	* @param {Event} event The event dispatched by the listener.
	* @event
	*/
	function outsideClickListener(event)
	{
		if (event == undefined)
		{
			event = window.event;
		}

		if (event.target == undefined)
		{
			event.target = event.srcElement;
		}

		var target = event.target;

		while (target != null && target != container && target.parentNode != null)
		{
			target = target.parentNode;
		}

		if (target != container)
		{
			closeoutside();
		}
	}

	if (typeof urchinTracker != "undefined")
	{
		urchinTracker("/splashscreen.html?action=splashscreenloaded&page=" + _udl.pathname + _udl.search);
	}
	show(splashShopname, splashCountry);
}

function activateTopNavigation()
{
	var dom = new DOM();
	if(!dom.getById("moreproducts") && !dom.getById("navigationdropdown"))
	{
		return false;
	}
	var trigger = dom.getById("moreproducts");
	var li = dom.getById("moreproducts").parentNode.parentNode;
	var toggle = dom.getById("navigationdropdown");

	trigger.removeClass("moreproducts");
	dom.extend(trigger);
	dom.extend(li).removeClass("toggle");
	trigger.onclick = function()
	{
		if(toggle.hasClass("active"))
		{	
			close();
			return false;
		}
		else
		{
			toggle.addClass("active");
			dom.extend(trigger.parentNode).addClass("active");
			dom.extend(trigger.parentNode.parentNode).addClass("active");
			dom.getFirstByTagName("body").addEventListener("click", outsideClickListener, false);
			return false;
		}
	}

	function close()
	{
		toggle.removeClass("active");
		dom.extend(trigger.parentNode).removeClass("active");
		dom.extend(trigger.parentNode.parentNode).removeClass("active");
		dom.getFirstByTagName("body").removeEventListener("click", outsideClickListener, false);
	}

	function outsideClickListener(event)
	{
		if (event == undefined)
		{
			event = window.event;
		}

		if (event.target == undefined)
		{
			event.target = event.srcElement;
		}

		var eventTarget = event.target;
		if(eventTarget != trigger && eventTarget != toggle)
		{
			close();
		}
	}
}


function searchboxInputField()
{	
	//set default searchbox content	
	$("#navigation_header_search_searchbox_input").val("Zoek naar...");

	//Empty's the field onFocus, resets the field onBlur
	$("#navigation_header_search_searchbox_input").focusin(function() {
		if($(this).val() == "Zoek naar..."){
			$(this).val("").addClass("focus");
		}
	}).focusout(function(){
		if($(this).val() == "Zoek naar..." || $(this).val() == "") {
			$(this).val("Zoek naar...").removeClass("focus");
		}
	});

	var currentSelect 		= 	$("#searchbox_selection");
	var selectElement		=	$("#searchbox_selection option:selected");
	var selectElementText 	= 	selectElement.text();
	var selectElementValue 	= 	selectElement.val();

	function selectClickEvent() {
		var selectionselect = $("#navigation_header_search_searchbox_selection .select");
			
		if(selectionselect.hasClass("active")){				
			$(document).unbind("click.header_search");
			selectionselect.removeClass("active");
		}else{			
			selectionselect.addClass("active");
			$(document).bind("click.header_search", function(event) {			
				if($(event.target).attr("class")!= "selection" && $(event.target).parent().attr("class")!= "selection" && $("#navigation_header_search_searchbox_selection .select").hasClass("active"))
				{
					$("#navigation_header_search_searchbox_selection .select").removeClass("active");
					$(document).unbind("click.header_search");
				}
			});
		}
	}

	//Create selected element
	var aSelectedOption 	= 	$(document.createElement("a"))
									.addClass("selection")
									.attr("href", "#")
									.append(
										$(document.createElement("span"))
											.text(selectElementText)
									)
									.click(function(event){
										event.preventDefault();									
										selectClickEvent();										
									});

	function selectOptions(selectElement){
		var optionList = $(document.createElement("ul"))
							.addClass("options");

		$(selectElement).children("option").each(function(i){
			var liElement = $(this);

			//let's check the option attributes
			var title		= liElement.attr("title");
			var value		= liElement.val();
			var text		= liElement.attr("text");
			var disabled	= "";
			var selected	= "";

			if(liElement.attr("disabled")){
				var disabled = "disabled";
			}

			if(liElement.attr("selected")){
				var selected = "selected";
			}
			//creat listitem
			optionList.append(
				$(document.createElement("li"))
					.append(
						$(document.createElement("a"))
							.addClass(disabled)
							.addClass(selected)
							.attr("title", title)
							.attr("href","#")
							.text(text)
							.click(function(event){
								if(disabled == ""){
									//hier gaan we het click even zetten, we zetten dan het eerste element en de input
									$("#navigation_header_search_searchbox_selection input[name=mainsectionid]").val(value);
									$("#navigation_header_search_searchbox_selection .select a span").text(text);
									$("#navigation_header_search_searchbox_selection .select").removeClass("active");
								}
								event.preventDefault();
							})
					)
			)
		});

		return optionList;
	}

	currentSelect.replaceWith(
		$(document.createElement("div"))
			.addClass("select")
			.append(
				$(document.createElement("input"))
					.attr("type","hidden")
					.attr("name","mainsectionid")
					.val(selectElementValue)
			).append(aSelectedOption)
			.append(selectOptions(currentSelect))
	);
	
	$("#navigation_header_search_searchbox_form").submit(function(){
		var navigationHeaderSearchBoxInput = $("#navigation_header_search_searchbox_input");
		if(navigationHeaderSearchBoxInput.val() == "Zoek naar..."){
			navigationHeaderSearchBoxInput.val("");
		}
	});
}


/**
* Create the breadcrumbs button
*/

function activateSideBreadcrumbs()
{
	// Private
	var dom = new DOM();
	
	if(!dom.getById("breadcrumbs_selection") && !dom.getById("navigation_side_breadcrumbs_sub"))
	{
		return false;
	}
	var toggle = dom.getById("navigation_side_breadcrumbs_sub");
	
	// Create the link
	if (dom.getById("navigation_side_breadcrumbs_sub"))
	{
		var trigger = dom.create(
			"a",
			{
				id 		: "breadcrumbs_selection",
				href	: "#"
			},
			[
				dom.create(
					"span",
					{},
					["Toon alles"]
				)
			]
		);
		var parentElement = toggle.parentNode;
		parentElement.insertBefore(trigger, toggle);
		
		sub_ul = document.getElementById("breadcrumbs_selection");		
				
		var next_ul= document.getElementById("navigation_side_breadcrumbs_sub").nextSibling;
		while (next_ul.nodeType !=1)
		{
		          next_ul = next_ul.nextSibling;
		} 
				
		dom.extend(next_ul).addClass("navigation_side_breadcrumbs_sub_sub");
	}
	// Change the content en css class
	trigger.removeClass("breadcrumbs_selection");
	trigger.onclick = function()
	{
		if(toggle.hasClass("active") || dom.getById("breadcrumbs_selection").firstChild.value == "Toon alles")
		{	
			close();
		}
		else
		{
			toggle.addClass("active");
			dom.extend(trigger).addClass("active");
			dom.getById("breadcrumbs_selection").firstChild.firstChild.nodeValue = "Verbergen";
		}
		return false;
	}
	// Reset the content en selected class
	function close()
	{
		toggle.removeClass("active");
		dom.extend(trigger).removeClass("active");
		dom.getById("breadcrumbs_selection").firstChild.firstChild.nodeValue = "Toon alles";
		return false;
	}
}


function activateCustomUrchinTracker(){
	if($("#box_promo_warehousebeta_href").length > 0)
	{
		$("#box_promo_warehousebeta_href").click(function () {			
			try{				
				urchinTracker('/beta/toNew.html');
			}catch(e){
				//internal
			}		
		});
	}
	
	if($("#questionnaire_restore_href").length > 0)
	{
		$("#questionnaire_restore_href").click(function () {
			try{
				urchinTracker('/beta/toOld.html');
			}catch(e){
				//internal
			}		
		});
	}
	
	if($("#footer_questionnaire_restore_href").length > 0)
	{
		$("#footer_questionnaire_restore_href").click(function () {
			try{
				urchinTracker('/beta/toOld.html');
			}catch(e){
				//internal
			}		
		});
	}
	
	if($("#questionnaire_question_href").length > 0)
	{
		$("#questionnaire_question_href").click(function () {
			try{
				urchinTracker('/beta/feedbackform.html');
			}catch(e){
				//internal
			}		
		});
	}
	
	if($("#footer_questionnaire_question_href").length > 0)
	{
		$("#footer_questionnaire_question_href").click(function () {
			try{
				urchinTracker('/beta/feedbackform.html');
			}catch(e){
				//internal
			}		
		});
	}
}

/**
* Social media tracking on the product page
**/
function activateProductSocialmediaUrchinTracker(){
	dom	= new DOM()

	if(dom.getById("product_socialmedia_twitter"))
	{
		dom.getById("product_socialmedia_twitter").addEventListener('click',function () {
			try{
				urchinTracker('/socialmediaredirect/twitter/' + document.title);
			}catch(e){
				//internal
			}
		},false)
	}
	
	if(dom.getById("product_socialmedia_facebook"))
	{
		dom.getById("product_socialmedia_facebook").addEventListener('click',function () {
			try{
				urchinTracker('/socialmediaredirect/facebook/' + document.title);
			}catch(e){
				//internal
			}
		},false)
	}
	
	if(dom.getById("product_socialmedia_hyves"))
	{
		dom.getById("product_socialmedia_hyves").addEventListener('click',function () {
			try{
				urchinTracker('/socialmediaredirect/hyves/' + document.title);
			}catch(e){
				//internal
			}
		},false)
	}
	
	if(dom.getById("product_socialmedia_linkedin"))
	{
		dom.getById("product_socialmedia_linkedin").addEventListener('click',function () {			
			try{
				urchinTracker('/socialmediaredirect/linkedin/' + document.title);
			}catch(e){
				//internal
			}
		},false)
	}
}