GlobalAnimations = {
	initRollOver: function (imageContainer) {
		var ro = $(imageContainer).find('.rollover');
		
		$(ro).hide();
		$(ro).removeClass('invisible');
		
		if ($.browser.msie && ($.browser.version <= 6)) {
			$(ro).addClass('pngfix');
		}
		
		$(imageContainer).mouseenter(GlobalAnimations.showRollOver);
		$(imageContainer).mouseleave(GlobalAnimations.hideRollOver);
	},

	showRollOver: function () {
		if ($.browser.msie) {
			$(this).find(".rollover").show();
		} else {
			$(this).find(".rollover").stop(true, true);
			$(this).find(".rollover").fadeIn(300);
		}
	},
	
	hideRollOver: function () {
		if ($.browser.msie) {
			$(this).find(".rollover").hide();
		} else {
			$(this).find(".rollover").stop(true, true);
			$(this).find(".rollover").fadeOut(300);
		}
	},
	
	
	
	
	initCategoryButtons: function (selector) {
		jQuery(selector).each(function (index, element) {
			var element = jQuery(element);
			
			var primaryColor = element.attr('_categoryColor');
			if (primaryColor == '#') {
				primaryColor = element.css('backgroundColor');
				element.attr('_categoryColor', primaryColor);
			}
			
			var secondaryColor = element.attr('_secondarycolor');
			if (!secondaryColor) {
				secondaryColor = element.css('color');
				element.attr('_secondaryColor', secondaryColor);
			}
			
			
			GlobalAnimations.updateCategoryButton(this);
				
			jQuery(this).mouseenter(function (ev) {
				var element = jQuery(ev.currentTarget);
				if (!element.hasClass('active')) {
					var newCss = {
						backgroundColor: element.attr('_secondaryColor'),
						color: element.attr('_categoryColor')
					};
					
					element.clearQueue();
					element.stop();
					element.animate(newCss, 200);
				}
			});
			
			jQuery(this).mouseleave(function (ev) {
				var element = jQuery(ev.currentTarget);
				
				if (!element.hasClass('active')) {
					var newCss = {
						backgroundColor: element.attr('_categoryColor'),
						color: element.attr('_secondaryColor')
					};
					
					element.clearQueue();
					element.stop();
					element.animate(newCss, 400);
					
				}
			});
		});
		
	},
	
	updateCategoryButton: function (selector) {
		var element = jQuery(selector);
		
		var primaryColor = element.attr('_categoryColor');
		var secondaryColor = element.attr('_secondarycolor');
		
		if (element.hasClass('active')) {
			element.css({
				'backgroundColor': secondaryColor,
				'color': primaryColor
			});
		} else {
			element.css({
				'backgroundColor': primaryColor,
				'color': secondaryColor
			});
		}
	}
		
};
