Cufon.replace('#primaryMenu>ul>li>a', { fontFamily: 'LucidaSans', hover: true });
Cufon.replace('#primaryMenu span.title', { fontFamily: 'LucidaSans' });
Cufon.replace('#homeFrameContainer h1, #homeFrameContainer h2, #homeFrameContainer ul, #homeFrameContainer p', { fontFamily: 'LucidaSans', hover: true });

$(document).ready(function() {

	if(document.getElementById('languageSelector')) {
		var languageSelector = new createLanguageSelector();
	}
	if(document.getElementById('primaryMenu')) {
		//createPrimaryMenu();
	    setPrimaryMenuHover();
	}
	if(document.getElementById('mainMenu')) {
		createMainMenu();
	}
	if(document.getElementById('accountLoginMenu')) {
		createAccountLogin();
	}
	if(document.getElementById('ctl00_cphRightMain_GuideTips1_txtTip')) {
		createTipBox(document.getElementById('ctl00_cphRightMain_GuideTips1_txtTip'));
	}
	if(document.getElementById('txtComment')) {
		createCommentBox(document.getElementById('txtComment'));
	}
	if(document.getElementById('accordian')) {
		createAccordian();
	}
	if(document.getElementById('plMenu')) {
		createPLMenu();
	}
	if(document.getElementById('topicEditors')) {
	    createTopicEditors();
	}
	if(document.getElementById('partsSearchButton')) {
		var partsSearch = createPartsSearch();
	}
	if(document.getElementById('globalSlide')) {
		var globalSlide = new createGlobalSlide();
	}
	if(document.getElementById('cleaningFeatured')) {
		var cleaningFeatured = new createCleaningFeatured();
	}
	if(document.getElementById('petGallery')) {
		createPetGallery();
	}
	if(document.getElementById('mainBanner')) {
		var mainBanner = new createMainBanner();
	}
	
    popup();
    
    createBubbles();
    
    if ($('[class*=fblike]').length > 0) {
        fbGetSDK()
    }
  
	miniShoppingCartPosition();
});

function initPassword(oldObject) {
	var newObject = document.createElement('input');
	newObject.type = "password";
	if(oldObject.name) newObject.name = oldObject.name;
	if(oldObject.id) newObject.id = oldObject.id;
	if(oldObject.className) newObject.className = oldObject.className;
	newObject.style.color = "#333";
	c2.bindEvent(newObject, 'keypress', function(event) {
		if(!enterKey(event,'accountLoginButton')) {
			c2.preventDefault(event);
		}
	});
	$(newObject).bind('blur', function() {
	    if(this.value.length < 1) {
	        var textObject = document.createElement('input');
			if(newObject.name) textObject.name = newObject.name;
			if(newObject.id) textObject.id = newObject.id;
			if(newObject.className) textObject.className = newObject.className;
			textObject.style.color = "#969696";
			textObject.value = "Password";
			textObject.onfocus = function() {
				initPassword(this);
			};
			setTimeout(function() { newObject.parentNode.replaceChild(textObject,newObject); }, 10);
	    }
	});
	oldObject.parentNode.replaceChild(newObject,oldObject);
	setTimeout(function() { newObject.focus(); }, 10);
	return newObject;
}

function popup() {
    $('a.popup').click(function(e) {
        e.preventDefault();
        return openWindow(this.href,'popup');
    });
}

function NewsletterSignup(newsletterId, sref) {
    if (!newsletterId || newsletterId.length == 0) {
        newsletterId = 'newsletter_signup_email';
    }
    if (!sref || sref.length == 0) {
        sref = "footer+form";
    }
    var email = document.getElementById(newsletterId).value;
	var emailDefault = document.getElementById(newsletterId).defaultValue;
	
	if (email == emailDefault) {
	    return;
	}
	
	window.location.href = document.getElementById('NewsletterFormLink').value + '?sref=pet+' + sref + '&email=' + email;
	
//    $.ajax(
//    {
//        type: "POST",
//        contentType: "application/json; charset=utf-8",
//        url: "/webservices/newsletterSignup.asmx/Subscribe",
//        data: "{'email':'" + email + "'}",
//        dataType: "json",
//        dataFilter: function (data) { return TranslateAjaxResponse(data); },
//        success: function(result, textStatus)
//        {
//            //$("#newsletterSignupResults").html(result.message);
//            alert(result.message);
//        },
//        error: function(request, status, err) 
//		{
//		    alert(document.getElementById('jsAlert_WebserviceCriticalError').value);
//		}
//    });
}

function toggle_open(object) {
	$(object.parentNode).toggleClass('open');
	return false;
}

function printSpecs() {
	window.print();
	return false;
}

function createLanguageSelector() {
	$('#language').click(function(e) {
		e.preventDefault();
		var sel = $('#languageSelector');
		if(sel.css('display') == 'none') {
			var pos = c2.findElementPos(this,'page');
			sel.css('top', pos[1] + 20).css('left', pos[0]).fadeIn('fast');
		}
		else {
			sel.fadeOut('fast');
		}
	});
}

function setPrimaryMenuHover(){
	var li = $('#primaryMenu li');
	
	var firstLi = $('ul.ul0 > li');
	var secondLi = $('ul.ul1 > li');
	
	var firstPops = $('ul.ul0 .popBox');
	var secondPops = $('ul.ul1 .popBox');
	
	var secondPopbox = $('ul.ul1').find('div.popBox');
	var boxMenuWrap = $('ul.ul0 div.boxMenuWrap');
	
	secondLi.hover(function(){
		var num = $.inArray(this, secondLi);
		secondPops.eq(num).css('top', -( (num * 30) + 2 ) );
	});
	
	li.hover(function(){
		$(this).addClass('hover');
	},
	function(){
		$(this).removeClass('hover');
	});
	
	firstLi.hover(function(){
		var num = $.inArray(this, firstLi);		    
		firstPops.eq(num).css('top', -( (num * 30) + 2 ) );
		boxMenuWrap.eq(num).css('marginTop', -(boxMenuWrap.eq(num).height()/2) );
	});
	
	secondPopbox.click(function(){
		window.location = $(this).parent().find('a').attr('href');
	});
}

function createMainMenu() {
	$('#mainMenu a.toggle, #mainMenu span.toggle').click(function() {
		var parent = $(this).parent('li');
		if(parent.hasClass('closed')) {
			parent.removeClass('closed');
		}
		else {
			parent.addClass('closed');
		}
	});
}

function createAccountLogin() {
	var self = this;
	var login = document.getElementById('accountLogin');
	var loginMenu = document.getElementById('accountLoginMenu');
	this.removeLogin = function() {
		$(loginMenu).removeClass('active');
		login.style.display = "none";
		//c2.unbindEvent(document.getElementById('txtSearchBissell'),'focus',self.removeLogin);
	}
	$(loginMenu).click(function(e) {
		e.preventDefault();
		if($(this).hasClass('active')) {
			self.removeLogin();
		}
		else {
			$(this).addClass('active');
			var pos = c2.findElementPos(this, 'globalSlide');
			login.style.display = "block";
			login.style.top = pos[1] + 17 + "px";
			login.style.right = 803 - (pos[0] + this.offsetWidth) + "px";
			//c2.bindEvent(document.getElementById('txtSearchBissell'),'focus',self.removeLogin);
		}
	});
}

function createTipBox(object) {
	var cb = new textLimit();
	cb.input = object;
	cb.remaining = document.getElementById('tipBox_remaining');
	cb.limit = 500;
	cb.settings.defaultValue = cb.input.defaultValue;
	cb.init();
}

function createCommentBox(object) {
	var cb = new textLimit();
	cb.input = object;
	cb.remaining = document.getElementById('commentBox_remaining');
	cb.limit = 500;
	cb.settings.defaultValue = cb.input.defaultValue;
	cb.init();
}

function createAccordian() {
	/*var fulls = $('#accordian div.full');
	for(var x=0;x<fulls.length;x++) {
		var teaser = document.createElement('div');
		teaser.className = "teaser";
		teaser.innerHTML = fulls[x].innerHTML.truncate(120, '&hellip;');
		$(fulls[x]).after(teaser);
	}*/
	$('#accordian div.toggle a').click(function(e) {
		e.preventDefault();
		accordian(this);
	});
}
function accordian(anchor) {
	var parent = $(anchor).parents('li');
	if(parent.hasClass('open')) {
		parent.removeClass('open');
	}
	else {
		parent.addClass('open');
	}
}

function createTopicEditors() {
    $('a.toggleEditor').click(function(e) {
        e.preventDefault();
        var href = $(this).attr('href');
        var editor = $(href);
        if(editor.css('display') == "none") {
            editor.css('display','block');
        }
        else {
            editor.css('display','none');
        }
        var prefix = href[1];
        var id = href.substr(2);
        if(prefix == "r") {
            $("#q" + id).css('display','none');
        }
        if(prefix == "q") {
            $("#r" + id).css('display','none');
        }
    });
}

function createGlobalSlide() {
	var self = this;
	this.slide = document.getElementById('globalSlide');
	this.toggle = document.getElementById('globalMenu');
	this.open = false;
	
	this.slideUp = function() {
		$(this.slide).animate({ marginTop: "-83px" }, 500, 'swing', function() { $(self.toggle).removeClass('open'); self.open = false; ;});
	}
	this.slideDown = function() {
		$(this.slide).animate({ marginTop: "0px" }, 500, 'swing', function() { $(self.toggle).addClass('open'); self.open = true;});
	}
	
	$(this.toggle).click(function(e) {
		e.preventDefault();
	    $('#languageSelector').hide();
		if(self.open) {
		    $('#accountLoginMenu').removeClass('active');
		    $('#accountLogin').css('display','none');
		    //c2.unbindEvent(document.getElementById('txtSearchBissell'),'focus',self.removeLogin);
			self.slideUp();
		}
		else {
			self.slideDown();
		}
	});
}

function createPLMenu() {
    // check ExpertMenu to see if its selected
	if(window.location.href.indexOf('/Expert') > 0) {
	    document.getElementById('expertMenu').className = "expertSel";
	}
	
	Cufon.replace('#plMenu a', { fontFamily: 'LucidaSans', hover: true });
	
	var self = this;
	var ul = document.getElementById('plTabs');
	var as = ul.getElementsByTagName('a');
	var areaWidth = ul.offsetWidth;
	this.getWidth = function() {
		var width = 0;
		for(var x=0;x<as.length;x++) {
			as[x].style.paddingLeft = 0;
			as[x].style.paddingRight = 0;
			width += as[x].offsetWidth;
		}
		return width;
	}
	var gap = areaWidth - this.getWidth();
	if(gap > 0) {
		var growth = Math.ceil(gap / as.length);
		for(var x=0;x<as.length;x++) {
			gap = gap - growth;
			as[x].style.width = as[x].offsetWidth + growth + "px";
			if(gap < growth) {
				growth = gap;
			}
			if(gap == 0) {
				break;
			}
		}
	}
	$('li.selected', ul).next('li').addClass('selectedAfter');
}

function createCleaningFeatured() {
    var self = this;
    this.current = '1';
	var images = $('#cleaningFeatured_thumbs img');
	images.click(function() {
		document.getElementById('cf_thumb'+self.current).className = "";
		document.getElementById('cf_details'+self.current).className = "hide";
		self.current = this.parentNode.id.ltrim('cf_thumb');
		document.getElementById('cf_thumb'+self.current).className = "active";
		document.getElementById('cf_details'+self.current).className = "";
	});
	if(jQuery.browser.msie && jQuery.browser.version < 7) {
		images.each(function() {
			if(this.src.toLowerCase().indexOf('.png') > 0) {
				this.runtimeStyle.width = "28px";
				this.runtimeStyle.height = this.offsetHeight + "px";
				this.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + this.src + "', sizingMethod='scale')";
				this.alt = this.src;
				this.src = "webimages/spacer.gif";
			}
		});
	}
}
function createPetGallery() {
	$('#petGallery_thumbs img').click(function() {
		var src = this.src;
		var alt = this.alt;
		$('#petGallery_thumbs li').removeClass('active');
		$(this.parentNode).addClass('active');
		$('#petGallery_image').html('<img src="'+src+'" alt="'+alt+'" />');
	});
}

function createMainBanner() {
	var self = this;
	this.current = 0;
	
	this.action = function(index) {
		if(index != self.current) {
			$('ul.tabs li',mainBanner).removeClass();
			$('ul.tabs li:eq('+index+')').addClass('selected').next('li').addClass('selectedAfter');
			
			$('ul.content li',mainBanner).removeClass('selected').eq(index).addClass('selected');
			var images = $('ul.image li',mainBanner);
			var old = images.eq(self.current).css('z-index','10');
			images.eq(index).css('z-index','11').fadeIn('slow',function() {
				old.css('display','none');
			});
			self.current = index;
		}
	};

	var mainBanner = document.getElementById('mainBanner');
	this.max = $('ul.content li',mainBanner).prepend('<span class="wall wall1"></span><span class="wall wall2"></span><span class="wall wall3"></span><span class="wall wall4"></span><span class="wall wall5"></span>').length;
	
	$('ul.tabs a',mainBanner).click(function(e) {
		e.preventDefault();
		clearInterval(self.timer);
		self.action($(this.parentNode).prevAll().length);
		
	}).eq(0).addClass('first').end().eq(1).addClass('second').parent().addClass('selectedAfter');
	
	this.timer = setInterval(function() {
		var index = self.current + 1;
		if(index >= self.max) {
			index = 0;
		}
		self.action(index);
	}, 5000);
}

function clickOnce(object) {
	if (object.rel != "clicked")
	{
	    object.rel = "clicked";
	    return true;
	}
    else
    {
        return false;
    }	
}

function searchBissell(id) {
    var searchText = $("#txtSearchBissell").val();
    
    if(id && id.length > 0)
    {
        window.location.href = "/SearchResults.aspx?searchType=pet+main&mode=" + id + "&searchtext=" + searchText;
    }
    else
    {
        window.location.href = "/SearchResults.aspx?searchType=pet+main&searchtext=" + searchText;
    }
    
    return false;
}

function searchProducts(folder)
{
    var searchText = $("#txtSearch").val();
    window.location.href = "/SearchResults.aspx?searchType=pet+products&sTID=" + folder + "&searchtext=" + searchText;
    return false;
}

function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function Logout() {    
    $.ajax(
    {
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: "/webservices/users.asmx/LogoutUser",
        data: "{'Temp':'Testing'}",
        dataType: "json",
        dataFilter: function (data) { return TranslateAjaxResponse(data); },
        success: function(result, textStatus)
        {
            if(!result.ok)
            {
                alert(result.message);
            }
            else
            {
                window.location.reload(true);
            }
        },
        error: function(request, status, err) 
        {
            try
            {
                var errobj = eval(request.responseText);
                alert(errobj.Message);
            }
            catch(e)
            {
                if (request.responseText.indexOf("<title>Request timed out.</title>") >= 0)
                {
                    alert(document.getElementById('jsAlert_WebserviceBusy').value);
                }
                else
                {
                    alert(document.getElementById('jsAlert_WebserviceCriticalError').value);
                }
            }
        }
    });
}

var ForumCreateTopicButtonClicked = false;
function CreateForumTopic(ForumID) 
{
    if (ForumCreateTopicButtonClicked)
    {
        return;
    }
    ForumCreateTopicButtonClicked = true;
    
    var Title = $("#forumTitle").val().trim('');
    if (Title == "")
    {
        var TitleRequiredText = $("#requiredForumTitle").val();
        ForumCreateTopicButtonClicked = false;
        alert(TitleRequiredText);
        return;
    }
    
    var editor = RadEditorGlobalArray[0];
    var oElem = editor.getContentElement();
    var Content = oElem.innerHTML.replace(/(<([^>]+)>)/ig,"").trim('');
    if (Content== "")
    {
        var ContentRequiredText = $("#requiredForumContent").val();
        ForumCreateTopicButtonClicked = false;
        alert(ContentRequiredText);
        return;
    }
    
    Content = oElem.innerHTML.trim('');
    $("#startTopicCancel").css('display','none')
    $("#startTopicSubmit").css('display','none')
    $("#startTopicLoading").css('display','inline-block')
    var redirectURL = window.opener.document.getElementById('topicStartURL').value;
    
    var DTO = {};
    DTO.ForumID = ForumID;
    DTO.Title = Title;
    DTO.Content = Content;
        
    $.ajax(
    {   
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: "/webservices/forum.asmx/CreateTopic",
        data: JSON.stringify(DTO),
        dataType: "json",
        dataFilter: function (data) { return TranslateAjaxResponse(data); },
        success: function(result, textStatus)
        {
            ForumCreateTopicButtonClicked = false;
            if(result.ok)
            {
                window.opener.location = redirectURL + result.message;
                window.close();
            }
            else
            {
                alert(result.message);
            }
        },
        error: function(request, status, err) 
		{
            try
            {
                $("#testimonialLoading").html('');
                ForumCreateTopicButtonClicked = false;
                var errobj = eval(request.responseText);
                alert(errobj.Message);
            }
            catch(e)
            {
                if (request.responseText.indexOf("<title>Request timed out.</title>") >= 0)
                {
                    alert(document.getElementById('jsAlert_WebserviceBusy').value);
                }
                else
                {
                    alert(document.getElementById('jsAlert_WebserviceCriticalError').value);
                }
            }
        }
    });
}

function forumSearch(Link)
{
    var text = document.getElementById('forumSearchText').value;
    var defaultvalue = document.getElementById('forumSearchText').defaultValue;
    
    if (text != '' && text != defaultvalue)
    {
        window.location = Link + text;		
    }
}

function forumTopicSubscribe(TopicID, UserID, Subscribing) 
{    
    var WebservicePath;

    if(Subscribing)
    {
        WebservicePath = '/webservices/forum.asmx/TopicSubcribe';
    }
    else
    {
        WebservicePath = '/webservices/forum.asmx/TopicUnsubcribe';
    }

    $.ajax(
    {    
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: WebservicePath,
        data: "{'TopicID':'" + TopicID + "','UserID':'" + UserID + "'}",
        dataType: "json",
        dataFilter: function (data) { return TranslateAjaxResponse(data); },
        success: function(result, textStatus)
        {
            if(result.ok)
            {
                if(Subscribing)
                {
                    $("#forumTopicSubscribe").addClass('hide');
                    $("#forumTopicUnsubscribe").removeClass('hide');
                }
                else
                {
                    $("#forumTopicSubscribe").removeClass('hide');
                    $("#forumTopicUnsubscribe").addClass('hide');
                }
            }
            alert(result.message);
        },
        error: function(request, status, err) 
        {
            try
            {
                $("#testimonialLoading").html('');
                var errobj = eval(request.responseText);
                alert(errobj.Message);
            }
            catch(e)
            {
                if (request.responseText.indexOf("<title>Request timed out.</title>") >= 0)
                {
                    alert(document.getElementById('jsAlert_WebserviceBusy').value);
                }
                else
                {
                    alert(document.getElementById('jsAlert_WebserviceCriticalError').value);
                }
            }
        }
    });
}

function forumForumSubscribe(ForumID, UserID, Subscribing) 
{    
    var WebservicePath;
    
    if(Subscribing)
    {
        WebservicePath = '/webservices/forum.asmx/ForumSubcribe';
    }
    else
    {
        WebservicePath = '/webservices/forum.asmx/ForumUnsubcribe';
    }

    $.ajax(
    {    
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: WebservicePath,
        data: "{'ForumID':'" + ForumID + "','UserID':'" + UserID + "'}",
        dataType: "json",
        dataFilter: function (data) { return TranslateAjaxResponse(data); },
        success: function(result, textStatus)
        {
            if(result.ok)
            {
                if(Subscribing)
                {
                    $("#forumForumSubscribe").addClass('hide');
                    $("#forumForumUnsubscribe").removeClass('hide');
                }
                else
                {
                    $("#forumForumSubscribe").removeClass('hide');
                    $("#forumForumUnsubscribe").addClass('hide');
                }
            }
            alert(result.message);
        },
        error: function(request, status, err) 
        {
            try
            {
                $("#testimonialLoading").html('');
                var errobj = eval(request.responseText);
                alert(errobj.Message);
            }
            catch(e)
            {
                if (request.responseText.indexOf("<title>Request timed out.</title>") >= 0)
                {
                    alert(document.getElementById('jsAlert_WebserviceBusy').value);
                }
                else
                {
                    alert(document.getElementById('jsAlert_WebserviceCriticalError').value);
                }
            }
        }
    });
}

function createPartsSearch() {
    function triggerSearch() {
        var folderID = document.getElementById('searchFolderID').value;
	    var text = document.getElementById('partsSearchInput').value;
	    var defaultvalue = document.getElementById('partsSearchInput').defaultValue;
	    
	    if (text != '' && text != defaultvalue)
	    {
	        window.location = '/SearchResults.aspx?searchType=pet+parts+and+accessories&mode=' + folderID + '&searchtext=' + text;		
	    }
    }

	$('#partsSearchButton').click(function(e) {
	    e.preventDefault();
	    triggerSearch();	    
	});
	$('#partsSearchInput').keypress(function(e) {
	    if(e.which == 13) {
	        e.preventDefault();
	        triggerSearch();
	    }
	});
}

function createBubbles() {
	$('a.bubbletip').hover(function() {
		if(this.rel.length > 0) {
			var content = $('#'+this.rel).css('display','block');
	        var bubble = null;
	        if(content.hasClass('bubble')) {
	            bubble = content;
	        }
	        else {
		        bubble = $('#bubble');
	            bubble.css('display','block');
		    }
	        var pos = c2.findElementPos(this,'page');
	        var left = pos[0] + (this.offsetWidth / 2) - 83;
	        bubble.css('left', left+'px');
	        var top = pos[1] - bubble.height();
	        bubble.css('top', top+'px');
		}
	},
	function() {
		if(this.rel.length > 0) {
			$('#'+this.rel).css('display','none');
		    $('#bubble').css('display','none');
		}
	}).each(function() {
		if($(this).hasClass('bubblevoid')) {
			$(this).click(function(e) {
				e.preventDefault();
			});
		}
	});
}


function OmniShoppingCartView() 
{
    omnitureClientEvent('scView', this, 'scView', {});
}

function initAddThisTracking() {
    if (!omnat_hover) {
        omnat_hover = document.getElementById('at_hover');
        $('#at_hover .at_item').click(function() {
            omnitureClientEvent('shareItem',this,'',{eVar15:$("span",this).html()})
        });
    }
    if (!omnat_share) {
        omnat_share = document.getElementById('at_share');
        $('#at_share .at_item').click(function() {
            omnitureClientEvent('shareItem',this,'',{eVar15:$("span",this).html()})
        });
    }
}
var _CrossSellLinksInitialized=false;
function initCrossSellLinks(sProductID,sCrossSellType,sEvents) {
    if (_CrossSellLinksInitialized) return null;
    if (!sEvents) sEvents = 'prodView,event3';
    $(".xButton a").click(function() {
        var sxProductID = this.parentNode?this.parentNode.getAttribute('xItemID'):'';
        var sTriggerProductID = sProductID;
        if (!sTriggerProductID) sTriggerProductID = this.parentNode?this.parentNode.getAttribute('tItemID'):'';
        var sProducts = ";" + sTriggerProductID + ";;;;evar16=" + sTriggerProductID + "|evar17=" + sxProductID + "|evar18=" + sCrossSellType;
        omnitureClientEvent('CrossSellLink', this, sEvents, {products:sProducts,eVar3:"cross-sell"});        
    });
    $(".xAddToCart a").click(function() {
        omnitureClientEvent('CrossSellAddToCart', this, '', {eVar28:"cross-sell"});        
    });
    _CrossSellLinksInitialized=true;
}
var sEtailerPageToken;
function initEtailerLinks(sProductID) {
    // Attach Omniture tagging to the etailer links.
    $("a.etailerLink").click(function() {
        if (!sEtailerPageToken) sEtailerPageToken = randomString();
        var sEtailer = 'etailer:'+this.getAttribute('title');
        if (sProductID)
            omnitureClientEvent('etailerLink', this, 'event11,event13:' + sEtailerPageToken + ',event14', {eVar13:sEtailer,products:";"+sProductID,prop12:"pdp:online retailers",eVar14:"pdp:online retailers"});
        else
            omnitureClientEvent('etailerLink', this, 'event11,event13:' + sEtailerPageToken + ',event14', {eVar13:sEtailer});
    });
}
/*
function initDownloadLinks() {
    // Attach Omniture tagging to pdf and download asset links.
    $('a').filter(function() { return /(downloadasset\.aspx)|(\.pdf)/i.test(this.href);})
    .click(function() {
        omnitureClientEvent('downloadLink', this, 'event17',{eVar22:"pdf:" + this.href});
    })
    .mousedown(function(e) {
        if (e.which===3) {
            omnitureClientEvent('downloadLink', this, 'event17',{eVar22:"pdf:" + this.href});
        }
    });
}
*/
function omnitureVisitToken() {
    // return the value of the omniVisitToken cookie.  If omniVisitToken doesn't exist yet, set it, and return it.
    var sToken = $.cookie('omniVisitToken');
    if (!sToken) { 
        sToken = randomString();
        $.cookie('omniVisitToken',sToken,{ expires: 1});
    };
    return sToken;
}

function omnitureClientEvent(evtLabel,owner,sEvents,props){
    //Sample Usage: omnitureClientEvent(evtLabel,sEvents,{prop1Name:prop1Value,prop2Name:Prop2Value});
    try {
        var bDebug = (window.location.href.toLowerCase().indexOf("debugmode")>0);
        var s=s_gi(document.getElementById('ctl00_hdnOmnitureEvent').value);
        var sVars = (sEvents)?',events':'';
        // products may be reset by props, if necessary.  However in the mean time we blank them out first.
        s.products='';
        
        //add required custom props
        props = setClientDefaultProps(props);
        
        if (props) {
            for (var i in props){
                if (bDebug) alert(i + '=' + props[i]);
                sVars +=',' + i;
                s[i]=props[i];
            }
        }
        s.events=sEvents;
        if (sVars) sVars=sVars.ltrim(',');
            s.linkTrackVars=sVars;
        
        if (sEvents) {
            var aEvents=sEvents.split(',');
            for (var i=0;i<aEvents.length;i++){
                if (aEvents[i].indexOf(':')>=0)
                    aEvents[i]=aEvents[i].split(':')[0];
            }
            sEvents=aEvents.join(',');
        }
        s.linkTrackEvents = sEvents;
        
        s.tl(owner,'o',evtLabel);                  
        if (bDebug) alert(evtLabel + '$' + s.linkTrackVars + '$' + s.events + '$' + s.linkTrackEvents);  
    } catch (e) {}
}

function setClientDefaultProps(props) 
{
    props['prop24'] = s.getTimeParting('h','-5');
    props['prop25'] = s.getTimeParting('d','-5');
    props['prop26'] = s.getTimeParting('w','-5');
    props['currencyCode']="USD";
    return props;
}


function closeNatForm() {
   $('div.natLogin').css('display', 'none');
   $('#overlayNat').css('display', 'none');
}

function LogUserError(message) 
{
    var DTO = {};
    DTO.errorMessage = message;
    
    $.ajax({
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: "/webservices/users.asmx/LogError",
        data: JSON.stringify(DTO),
        dataType: "json",
        dataFilter: function (data) { return TranslateAjaxResponse(data); },
        success: function(txt, textStatus) 
        {
                                                                                                                                                               
        },
        error: function(request, status, err) 
        {
            //alert(request.responseText);
        }
    });
}


function submitNatForm(){
   
    var chk = $('#atCB').attr('checked');
    var uName = $('#atUserName').val();
   
    $('#natDiv').css('display', 'none');
    $('div.loadingNat').css('display', 'block');
   
    if (!chk) {
        alert(document.getElementById('jsAlert_NatFormMustAcceptTerms').value);
        return;
    } 
   
    var DTO = {};
    DTO.username = uName;
    DTO.accptTerms = chk;
    DTO.referrer = location.href;
    
    $.ajax({
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: "/webservices/users.asmx/UpdateUserNat",
        data: JSON.stringify(DTO),
        dataType: "json",
        dataFilter: function (data) { return TranslateAjaxResponse(data); },
        success: function(response, textStatus) {
            var msg = response.message;
            if (response.errorMsg && response.errorMsg.length > 0)
            {
                msg += "\n\n" + response.errorMsg;
                if (response.errorStackTrace && response.errorStackTrace.length > 0)
                {
                    msg += "\n" + response.errorStackTrace;
                }
            }
            if (response.ok)
            {
               if (response.message!="")
               {
                  $('div.loadingNat').css('display', 'none');
                  $('#natDiv').css('display', 'inline');

                  $('div.natLogin').html(response.message);
                  var submenu = $("#MyAccountSubmenu_forLoginPopup").html();
                  $("#ProductRegistrationSubmenu_Destination").html(submenu);
               } else {
                    $('div.loadingNat').css('display', 'none');
                    $('#natDiv').css('display', 'inline');
                    window.location.href  = location.href;
               }
            } else if (response.ok==false) {

                $('div.natLogin').html(response.message);
                
                LogUserError("User Account Activation error for " + uName); 
            }
        },
        error: function(request, status, err) 
        {
            LogUserError("User Account Activation error for " + uName); 
            
            $('div.loadingNat').css('display', 'none');
            $('#natDiv').css('display', 'none');
        }
    });
}



function fbGetSDK()     {
       window.fbAsyncInit = function() {
        FB.init({appId: '144789315564923', status: true, cookie: true,
                 xfbml: true});
      };
      (function() {
        var e = document.createElement('script'); e.async = true;
        e.src = document.location.protocol +
          '//connect.facebook.net/en_US/all.js';
        document.getElementById('fb-root').appendChild(e);
        $('[class*=fblike]').each(function() {fbSetupLikeLink(this)});
      }());
    }
    
function fbSetupLikeLink(obj) 
    {
       var attr = $(obj).attr('class').split(';');
       params = [];
       for (x=0;x<attr.length;x++) 
       {
            if (attr[x] && attr[x].indexOf('=') > 0) {
                var key = attr[x].split('=')[0];
                var value = attr[x].split('=')[1];
                params[key] = value;
            }
       }
       var str = '';   
       if (params["href"]) {str+=" href=\""+params["href"]+"\"";}
       if (params["layout"]) {str+=" layout=\""+params["layout"]+"\"";}
       if (params["action"]) {str+=" action=\""+params["action"]+"\"";}
       $(obj).append($('<fb:like '+str+'></fb:like>'));
       
    }
    
    
    
    function toggleMiniShoppingCart() 
    {     
        var obj = $('#miniShoppingCart');
        var ov = $('#miniShoppingCart_Overlay');
        var DTO = {};
        $.ajax(
	    {
	        type: "POST",
	        contentType: "application/json; charset=utf-8",
	        url: "/webservices/shoppingcart.asmx/FillMiniShoppingBasket",
	        data: JSON.stringify(DTO),
	        dataType: "json",
	        success: function(result, textStatus)
	        {
			    if(result.ok) {
                    if ($(obj).css('display') != 'block') {
                    $(obj).html(result.message);
                    if (result.script) 
                    {
                       eval(result.script);
                    }
                    miniShoppingCartAnimate("menu_display");

                    } 
			    }
			    else {
			    }
	        },
	        error: function(request, status, err) 
		    {
                alert(document.getElementById('jsAlert_WebserviceCriticalError').value);
		    }
	    });
        return false;
    }
    
    function updateMiniShoppingCart() 
    {
        var uStr = "";
        var obj = $('#miniShoppingCart');
        var ov = $('#miniShoppingCart_Overlay');
        $(ov).css('height', $(obj).height());
        $(ov).css('display', 'block');
       
        
        $('div.cartItems input').each(function() {
            contentId = $(this).attr('id').split('_')[1];
            uStr += contentId + '|' + $(this).val() + ',';
        });
        
        uStr = uStr.trim(',');
        
        var DTO = {};
        DTO.updateStr = uStr;
        $.ajax(
	    {
	        type: "POST",
	        contentType: "application/json; charset=utf-8",
	        url: "/webservices/shoppingcart.asmx/UpdateUserBasket",
	        data: JSON.stringify(DTO),
	        dataType: "json",
	        dataFilter: function (data) { return TranslateAjaxResponse(data); },
	        success: function(result, textStatus)
	        {
			    if(result.ok) {
                    $(obj).html(result.message);
                    miniShoppingCartDraggable($(obj));
                    if (result.script) 
                    {
                       eval(result.script);
                    }
			    }
			    else {
			    }
	        },
	        error: function(request, status, err) 
		    {
                alert(document.getElementById('jsAlert_WebserviceCriticalError').value);
		    }
	    });
    }
    
    var rtn;
    function addItemToMiniShoppingCart(obj) 
    {
        var SKU = $(obj).attr("href").split('=')[1];
        var obj = $('#miniShoppingCart');
        $(obj).stop(true).fadeOut('slow');
        var DTO = {};
        DTO.productID = SKU;
        DTO.quantity = 1;    
        $.ajax(
	    {
	        type: "POST",
	        contentType: "application/json; charset=utf-8",
	        url: "/webservices/shoppingcart.asmx/AddToUserBasket",
	        data: JSON.stringify(DTO),
	        dataFilter: function (data) { return TranslateAjaxResponse(data); },
	        success: function(result, textStatus)
	        {
			    if(result.ok) {
                    $(obj).html(result.message);
                    if (result.script) 
                    {
                       eval(result.script);
                    }
                    miniShoppingCartAnimate("addtocart_display");
			    }
			    else {
                    
			    }
	        },
	        error: function(request, status, err) 
		    {
                alert(document.getElementById('jsAlert_WebserviceCriticalError').value);
		    }
	    });
	    return false;
    } 

    function miniShoppingCartAnimate(action) 
    {
        miniShoppingCartPosition();
        var obj = $('#miniShoppingCart');
        switch (action) 
        {
            case "mouseOver" : 
                if (ms_displayState=="cartAction") {$(obj).stop(true, true).fadeIn(ms_fadeSeconds);};
                break;
            case "mouseOut" : 
                if (ms_displayState=="cartAction") {$(obj).delay(ms_fadeTimeout).fadeOut(ms_fadeSeconds);};
                break;
            case "pre_addtocart_display" : 
                var ov = $('#miniShoppingCart_Overlay');
                $(obj).html(ms_waitingMsg).fadeIn(ms_fadeSeconds);
                break;    
            case "addtocart_display" : 
                $(obj).fadeIn(ms_fadeSeconds).delay(ms_fadeTimeout).fadeOut(ms_fadeSeconds);
                miniShoppingCartDraggable(obj);
                ms_displayState = "cartAction";
                break;     
            case "menu_display" :
                ms_displayState = "";
                if ($(obj).css('display')=='block') 
                {
                    $(obj).fadeOut(ms_fadeSeconds);
                } else {
                    $(obj).fadeIn(ms_fadeSeconds);
                    OmniShoppingCartView();
                    miniShoppingCartDraggable(obj);
                }
                break;
			case "networkbanner_slide" :
				if ($(obj).css('display') == 'block') {
					if ($('body').css('margin-top') == '36px') {
						$(obj).animate({marginTop:'36px'}, 400);
					} else {
						$(obj).animate({marginTop:'0px'}, 400);
					}
				}
				break;
        }
        return false;
    }

    function miniShoppingCartDraggable(obj) {
         var hdr = $('#miniShoppingCart').children('div.header').first();
         $(hdr).mousedown(function() {$(obj).draggable({disabled:false});});
         $(hdr).mouseup(function() {$(obj).draggable({disabled:true});});
    }

    function miniShoppingCartPosition() 
    {
       try {
        var obj = $('#miniShoppingCart');
        if ($(obj).length > 0) {
            var top = $(obj).offset().top;
            var scMnuTop =  $(objMnuSC).offset().top;
            if (scMnuTop>top) $(obj).css('top', scMnuTop+20);
        }
        } catch (err) {
        
        
        }
    }

    function updateShoppingCartMenuItem(itms) 
    {
        var html = msc_lbl;
        if (itms>0) 
        {
            html += " ("+itms+")"; 
        }
        objMnuSC.html(html);
    }


$(document).ready(function() {
	if(document.getElementById('networkBar')) {
		var nb = new networkBar();
	}
});


function networkBar() {
	var open = false;
	var $a = $('#networkTab a');
	
	function closeBar() {
		$a.removeClass('open');
		if($.browser.msie && $.browser.version < 7) {
			$('body').css({marginTop:0}).removeClass('fix');
			$('#networkBar').hide();
			miniShoppingCartPosition();
		}
		else {
			$('body').animate({marginTop:0}, 400);
			$('#networkBar').animate({top:-36}, 400, function() {miniShoppingCartAnimate("networkbanner_slide");});
		}
		open = false;
		createCookie('networkBar','closed',30);
	}
	function openBar() {
		$a.addClass('open');
		if($.browser.msie && $.browser.version < 7) {
			$('body').css({marginTop:36}).addClass('fix');
			$('#networkBar').show();
		}
		else {
			$('body').animate({marginTop:36}, 400);
			$('#networkBar').animate({top:0}, 400, function() {miniShoppingCartAnimate("networkbanner_slide");});
		}
		open = true;
		createCookie('networkBar','open',30);
	}
	
	$a.click(function(e) {
		e.preventDefault();
		if(open) {
			closeBar();
		}
		else {
			openBar();
			}
	});
	if(readCookie('networkBar') == 'closed') {
		$a.addClass('open');
		if($.browser.msie && $.browser.version < 7) {
			$('body').css({marginTop:36}).addClass('fix');
			$('#networkBar').show();
		}
		else {
			$('body').css({marginTop:36});
			$('#networkBar').css({top:0});
		}
		open = true;
	}
}

function TranslateAjaxResponse(data) {
    // This Function Is Also In /admin/js/adminScript.js
    if (data) {
    
        var result;

        if (typeof (JSON) === 'object' && typeof (JSON.parse) === 'function')
            result = JSON.parse(data);
        else
            result = eval('(' + data + ')');

        if (result.hasOwnProperty('d'))
            return result.d;
        else
            return result;
    }
    else {
        return null;
    }
}

function searchGetSuggestions(request, response, searchOptions) {
    var data = {};
    try {
        if (searchOptions) {
            searchOptions.term = request.term;
        }
        else {
            searchOptions = {};
            searchOptions.term = request.term;
            searchOptions.folderIDs = [];
            searchOptions.recursive = true;
            searchOptions.html = true;
            searchOptions.suggestionsIDs = [];
        }
        $.ajax({
            type: "POST",
            contentType: "application/json; charset=utf-8",
            url: "/webservices/search.asmx/GetSearchSuggestions",
            data: JSON.stringify(searchOptions),
            dataFilter: function (data) { return TranslateAjaxResponse(data); },
            success: function (response) {
                data = response;
            },
            complete: function () {
                response(data);
            }
        });
    }
    catch (err) {
        alert(err.description);
        response(data);
    }
}
