var phoenix = {

	config : {
		imgs : "pix/",
		oAltStyles : null,
		oTabsGallery : null
	},

	/*
		Onload functionality
	*/
	init : function() {
		var c = phoenix;

		$(document).ready(function() {
			c.accordionLoad();
			c.fnLoadPngs();
			c.galleryCommunity();
			c.slideshow();
			c.tabLoad();
		});
	},
	
	/*
		Accordions
	*/
	accordionLoad : function() {
		var oAccordion = $("ol.areas");

		if (oAccordion) {
			$(oAccordion).accordion({
				alwaysOpen: true,
				autoHeight: true,
				header: "a.title",
				selectedClass: "active"
			});
		}
	},
	
	/*
		Fix PNG transparency in IE
	*/
	fnLoadPngs : function() {
		if (document.all && typeof document.body.style.maxHeight == "undefined") {
			var c = phoenix;

			var rslt = navigator.appVersion.match(/MSIE (\d+\.\d+)/, '');
			var itsAllGood = (rslt != null && Number(rslt[1]) >= 5.5);
			for (var i = document.all.length - 1, obj = null; (obj = document.all[i]); i--) {
				if (itsAllGood && obj.currentStyle.backgroundImage.match(/\.png/i) != null) {
					c.fnFixPng(obj);
					obj.attachEvent("onpropertychange", c.fnPropertyChanged);
				}
			}
		}
	},

	fnPropertyChanged : function() {
		if (window.event.propertyName == "style.backgroundImage") {
			var c = phoenix;

			var el = window.event.srcElement;
			if (!el.currentStyle.backgroundImage.match(/x\.gif/i)) {
				var bg = el.currentStyle.backgroundImage;
				var src = bg.substring(5, bg.length-2);
				el.filters.item(0).src = src;
				el.style.backgroundImage = "url(" + c.config.imgs + "x.gif)";
			}
		}
	},

	fnFixPng : function(obj) {
		var c = phoenix;

		var bg = obj.currentStyle.backgroundImage;
		var src = bg.substring(5, bg.length-2);
		obj.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "', sizingMethod='crop')";
		obj.style.backgroundImage = "url(" + c.config.imgs + "x.gif)";
	},

	/*
		Gallery Community/tabs
	*/
	galleryCommunity : function() {
		var c = phoenix;
		var oGalleryTabs = $("#content ol.alpha");

		if (oGalleryTabs) {
			c.config.oTabsGallery = oGalleryTabs.tabs();
		}
	},

	/*
		Slideshow
	*/
	slideshow : function() {
		var oSlides = $("#team");

		if (oSlides) {
			var c = phoenix;
			oSlides.cycle({ 
				fx:  'scrollHorz', 
				prev:   '#slide-prev', 
				next:   '#slide-next', 
				timeout: 0 
			});
		}
	},

	/*
		Tabs
	*/
	tabLoad : function() {
		var oAllTabs = $(".gallery > ol.alpha");
		if (oAllTabs) {
			oAllTabs.tabs();
		}
	}
};

phoenix.init();
