function generalAjaxPageLoad(link) { if(loading == false) { loading = true; $('#page'+currentPage+', #productImageContainer').animate({ opacity: 0 }, '1500', 'linear', function() { if($(this).attr('id') == "productImageContainer") { $('#productImageContainer').empty(); animator = false; $('#productImageContainer').css('opacity', 1); } else { ajaxPageLoad(link); } }); } return false; } function directionAjaxPageLoad(arrow) { if(loading == false) { loading = true; var left = 0; var speed = 1200; if($(arrow).attr('id') == 'leftArrow') { left = $(window).width() + 1200; speed = left/2; } else { left = -1200; } $('body').css('overflow', 'hidden'); $('#page'+currentPage+', #productImageContainer').animate({ left: left }, speed, 'linear', function() { if($(this).attr('id') == "productImageContainer") { $('#productImageContainer').empty(); animator = false; $('#productImageContainer').css('opacity', 1); $('#productImageContainer').css('left', '0px'); } else { ajaxPageLoad($('a', arrow)); } $('body').css('overflow', ''); }); } return false; } function ajaxPageLoad(link) { previousPage = currentPage; $('#pageContent').empty(); var append = ""; if($(link).attr('append')) append = $(link).attr('append'); $.ajax({ url: $(link).attr('href'), dataType: 'xml', data: 'noLayout=true'+append, success: function (data, textStatus) { if(textStatus == 'success') { loadedData = data; dataLoaded = true; } else { loadedData = 'We were unable to load the requested page.'; dataLoaded = true; } restoreContent(); }, error: function () { loadedData = 'We were unable to load the requested page.'; dataLoaded = true; restoreContent(); } }); } function restoreContent() { if(loading == true) { var animatorContent = ""; $(loadedData).find("animatorContent").each(function() { animatorContent = $(this).text(); }); var pageContent = ""; $(loadedData).find("pageContent").each(function() { pageContent = $(this).text(); }); var scripts = ""; $(loadedData).find("scripts").each(function() { scripts = $(this).text(); }); $('#pageContent').html(pageContent); window.location.href = "#"+windowFragment; window.document.title = pageTitle; //hack for ie7 setTimeout(function() { window.document.title = pageTitle; }, 100); if(animator) { $('#productImageContainer').css('opacity', 1); $('#productImageContainer').html(animatorContent); resizeFlash(); } $('#scriptContainer').html(scripts); loading = false; } } function isDataLoaded() { return dataLoaded; } function getFlashMovieObject(movieName) { if (window.document[movieName]) { return window.document[movieName]; } if (navigator.appName.indexOf("Microsoft Internet")==-1) { if (document.embeds && document.embeds[movieName]) return document.embeds[movieName]; } else { return document.getElementById(movieName); } } function loadSiteByNichez() { $('#rightContentContainer').append($('#footerContainer').html()); $('#siteByNichez').bind('mouseenter', function() { if(!$(this).hasClass("animating")) { $(this).addClass("animating"); var parentDiv = this; $(".siteByNichezImage", parentDiv).animate({left: '5px'}, 200, 'linear', function() { $(".siteByNichezText", parentDiv).animate({top: '2px'}, 200, 'linear', function() { $(parentDiv).removeClass("animating"); }); if($(parentDiv).hasClass("animateOut")) { $(".siteByNichezText", parentDiv).animate({top: '22px'}, 200, 'linear', function() { $(".siteByNichezImage", parentDiv).animate({left: '100px'}, 200, 'linear', function() { $(parentDiv).removeClass("animateOut"); }); }); } }); } }); $('#siteByNichez').bind('mouseleave', function() { if(!$(this).hasClass("animating")) { var parentDiv = this; $(this).addClass("animating"); $(".siteByNichezText", parentDiv).animate({top: '22px'}, 200, 'linear', function() { $(".siteByNichezImage", parentDiv).animate({left: '100px'}, 200, 'linear', function() { $(parentDiv).removeClass("animating"); }); }); } else { $(this).addClass("animateOut"); } }); $('#siteByNichez').click(function() { $(".siteByNichezText a").click(); }); } function bubbleMoveDown(div) { var maxTop = $('.bubbleLinks', div).height() - 162; var currentTop = Math.abs($('.bubbleLinks', div).position().top); var speed = (maxTop - currentTop) * 15; $('.upArrow', div).fadeTo(100, 1); $('.upArrow', div).css('cursor', 'pointer'); $('.bubbleLinks', div).animate({top: '-'+maxTop+'px'}, speed, 'linear', function() { $('.downArrow', div).fadeTo(100, .3); $('.downArrow', div).css('cursor', 'default'); }); } function bubbleMoveUp(div) { var currentTop = Math.abs($('.bubbleLinks', div).position().top); var speed = currentTop * 15; $('.downArrow', div).fadeTo(100, 1); $('.downArrow', div).css('cursor', 'pointer'); $('.bubbleLinks', div).animate({top: '0px'}, speed, 'linear', function() { $('.upArrow', div).fadeTo(100, .3); $('.upArrow', div).css('cursor', 'default'); }); } function animateInBubble(name) { var nav = $('#'+name+'NavItem'); var bubble = $('#'+name+'NavBubble'); if(!$(bubble).hasClass('out')) { $('#navBubbleContainer').css('height', '265px'); $('.navBubble').css('z-index', 400); $(bubble).css('z-index', 401); $(bubble).stop(); $(bubble).animate({top: '10px'}, 300, 'linear', function() { $(bubble).addClass('out'); }); } } function animateOutBubble(name) { var bubble = $('#'+name+'NavBubble'); var nav = $('#'+name+'NavItem'); if(!$(nav).hasClass('enter') && !$(bubble).hasClass('enter')) { $(bubble).stop(); $(bubble).removeClass('out'); $(bubble).animate({top: '-255px'}, 300, 'linear', function() { var anyOut = false; $('.navBubble').each(function() { if($(this).hasClass('out')) anyOut = true; }); if(!anyOut) $('#navBubbleContainer').css('height', '1px'); }); } } function addToCart(item) { if(pageTracker) { pageTracker._trackEvent("Add Item To Cart", $(item).attr('shirt')); } $.ajax({ url: "http://www.essentialsgear.com/itemProcess.php", data: 'itemId='+$(item).attr('itemId')+'&size='+$(item).attr('size')+'&shirt='+$(item).attr('shirt')+'&description='+$(item).attr('description'), dataType: 'xml', success: function (data, textStatus) { var result = ""; $(data).find("result").each(function() { result = $(this).text(); }); var formHtml = ""; $(data).find("formHtml").each(function() { formHtml = $(this).text(); }); var displayHtml = ""; $(data).find("displayHtml").each(function() { displayHtml = $(this).text(); }); $(data).find("totalItems").each(function() { totalItems = $(this).text(); }); if(textStatus == 'success' && result == 'success') { $('#shoppingCartBox').html(displayHtml); $('#cartFormContents').html(formHtml); $('#shoppingCartTotal').html("("+totalItems+")"); var newHeight = $('#shoppingCartContent').height(); $('#shoppingCartMiddle').css('height', (newHeight - 40)+'px'); $('#shoppingCart').css('height', (newHeight+68) + 'px'); if(totalItems > 0) $('#shoppingCartCheckout').show(); else $('#shoppingCartCheckout').hide(); $('.itemAdded', item).each(function() { if($(this).hasClass('success')) { $(this).fadeIn(200, function() { var fadeoutItem = this; setTimeout(function() {$(fadeoutItem).fadeOut(750)}, 500); }); } }); } else { if($(this).hasClass('failed')) { $(this).fadeIn(200, function() { var fadeoutItem = this; setTimeout(function() {$(fadeoutItem).fadeOut(750)}, 500); }); } } }, error: function () { if($(this).hasClass('failed')) { $(this).fadeIn(200, function() { var fadeoutItem = this; setTimeout(function() {$(fadeoutItem).fadeOut(750)}, 500); }); } } }); } function modifyItem(id, size, action) { if(pageTracker) { pageTracker._trackEvent("Modify Item In Cart: "+action, id); } $.ajax({ url: "http://www.essentialsgear.com/itemProcess.php", data: 'itemId='+id+'&action='+action+'&size='+size, dataType: 'xml', success: function (data, textStatus) { var result = ""; $(data).find("result").each(function() { result = $(this).text(); }); var formHtml = ""; $(data).find("formHtml").each(function() { formHtml = $(this).text(); }); var displayHtml = ""; $(data).find("displayHtml").each(function() { displayHtml = $(this).text(); }); $(data).find("totalItems").each(function() { totalItems = $(this).text(); }); if(textStatus == 'success' && result == 'success') { $('#shoppingCartBox').html(displayHtml); $('#cartFormContents').html(formHtml); $('#shoppingCartTotal').html("("+totalItems+")"); var newHeight = $('#shoppingCartContent').height(); $('#shoppingCartMiddle').css('height', (newHeight - 40)+'px'); $('#shoppingCart').css('height', (newHeight+68) + 'px'); if(totalItems > 0) $('#shoppingCartCheckout').show(); else $('#shoppingCartCheckout').hide(); } else { //error processing } }, error: function () { //error processing } }); } function submitForm(id) { var data = ""; var mod = false; $('input, textarea', $('#'+id)).each(function() { if(mod) data += "&"; data += $(this).attr('name')+"="+$(this).val(); mod = true; }); data += "&Submit=true"; $.ajax({ url: "http://www.essentialsgear.com/emailProcess.php", data: data, dataType: 'xml', type: 'POST', success: function (data, textStatus) { var result = ""; $(data).find("result").each(function() { result = $(this).text(); }); var message = ""; $(data).find("message").each(function() { message = $(this).text(); }); if(textStatus == 'success' && result == 'success') { $('#'+id).html(message); } else { $('#returnMessage').html(message); } }, error: function () { $('#returnMessage').html("There was an error submitting your comment."); //error processing } }); } function resizeFlash() { var minWidth = 900; var minHeight = 700; var windowHeight = $(window).height(); var windowWidth = $(window).width(); if(windowWidth > minWidth) { $('#productImageContainer').css('width', '100%'); } else { $('#productImageContainer').width(minWidth); } if (windowHeight > minHeight) { $('#productImageContainer').height(windowHeight); } else { $('#productImageContainer').height(minHeight); } } function animateInDetails() { $('#productDetailsBackground').animate({top: '0px'}, 300, 'linear', function() {}); setTimeout(function() { $('#productCartItems').animate({top: '460px'}, 300, 'linear', function() {}); }, 150); return true; }