/* (C) 2008 YOOtheme.com */

var YOOTools = {
		
	start: function() {
		
		/* Match height of div tags */
		YOOTools.setDivHeight();

		/* Accordion menu */
		new YOOAccordionMenu('div#middle ul.menu li.toggler', 'ul.accordion', { accordion: 'slide' });

		/* Fancy menu */
		new YOOFancyMenu($E('ul', 'menu'), { mode: 'move', transition: Fx.Transitions.Expo.easeOut, duration: 700 });

		/* Dropdown menu */
		new YOODropdownMenu('div#menu li.parent', { mode: 'height', transition: Fx.Transitions.Expo.easeOut });

		/* Morph: main menu (tab) */
		switch (YtSettings.color) {
			case "green":		var enterColor = '#ffffff';
								var leaveColor = '#D8F75B';
								break;
		 
			case "red": 		var enterColor = '#ffffff';
								var leaveColor = '#FF4628';
								break;
		 
			case "pink": 		var enterColor = '#ffffff';
								var leaveColor = '#FF75D6';
								break;
		 
			case "lilac": 		var enterColor = '#ffffff';
								var leaveColor = '#DA79FF';
								break;
		 
			case "eigen":	 	var enterColor = '#ffffff';
								var leaveColor = '#FF9628';
								break;
		 
			case "orange":	 	var enterColor = '#ffffff';
								var leaveColor = '#FF9628';
								break;
							
			case "turquoise":	var enterColor = '#ffffff';
								var leaveColor = '#79FFDC';
								break;
							
			case "black":		var enterColor = '#ffffff';
								var leaveColor = '#B4C8DC';
								break;
							
			case "white":		var enterColor = '#ffffff';
								var leaveColor = '#3C4650';
								break;
								
			case "lightgreen":	var enterColor = '#ffffff';
								var leaveColor = '#D7FD00';
								break;
								
			case "lightblue":	var enterColor = '#ffffff';
								var leaveColor = '#55F2FF';
								break;
		 
			default: 			var enterColor = '#ffffff';
					 			var leaveColor = '#64E1FF';
		  }

		var menuEnter = { 'color': enterColor };
		var menuLeave = { 'color': leaveColor };

		new YOOMorph('div#menu li.level1', menuEnter, menuLeave,
			{ transition: Fx.Transitions.linear, duration: 300, ignoreClass: 'active' },
			{ transition: Fx.Transitions.sineIn, duration: 700 }, '.level1');

		switch (YtSettings.color) {
			case "green":		var enterColor = '#ffffff';
								var leaveColor = '#93BD00';
								break;
		 
			case "red": 		var enterColor = '#ffffff';
								var leaveColor = '#DC0000';
								break;
		 
			case "pink": 		var enterColor = '#ffffff';
								var leaveColor = '#FF3EBB';
								break;
		 
			case "lilac": 		var enterColor = '#ffffff';
								var leaveColor = '#C828FF';
								break;
		 
			case "eigen":	 	var enterColor = '#ffffff';
								var leaveColor = '#FF6C00';
								break;
		 
			case "orange":	 	var enterColor = '#ffffff';
								var leaveColor = '#FF6C00';
								break;
							
			case "turquoise":	var enterColor = '#ffffff';
								var leaveColor = '#00FFD2';
								break;
							
			case "black":		var enterColor = '#ffffff';
								var leaveColor = '#7891AA';
								break;
							
			case "white":		var enterColor = '#ffffff';
								var leaveColor = '#1E2832';
								break;
								
			case "lightgreen":	var enterColor = '#ffffff';
								var leaveColor = '#ABFC14';
								break;
								
			case "lightblue":	var enterColor = '#ffffff';
								var leaveColor = '#00E2F4';
								break;
								
			default: 			var enterColor = '#ffffff';
					 			var leaveColor = '#00aede';
		  }

		var menuEnter = { 'color': enterColor };
		var menuLeave = { 'color': leaveColor };

		new YOOMorph('div#menu li.level1', menuEnter, menuLeave,
			{ transition: Fx.Transitions.linear, duration: 300, ignoreClass: 'active' },
			{ transition: Fx.Transitions.sineIn, duration: 700 }, 'span.sub');
		
		/* Morph: main menu (drop down) */
		switch (YtSettings.color) {
			case "green":		var enterColor = '#ffffff';
								var leaveColor = '#D8F75B';
								break;
		 
			case "red": 		var enterColor = '#ffffff';
								var leaveColor = '#FF4628';
								break;
		 
			case "pink": 		var enterColor = '#ffffff';
								var leaveColor = '#FF75D6';
								break;
		 
			case "lilac": 		var enterColor = '#ffffff';
								var leaveColor = '#DA79FF';
								break;
		 
			case "eigen":	 	var enterColor = '#ffffff';
								var leaveColor = '#FF9628';
								break;
		 
			case "orange":	 	var enterColor = '#ffffff';
								var leaveColor = '#FF9628';
								break;
							
			case "turquoise":	var enterColor = '#ffffff';
								var leaveColor = '#79FFDC';
								break;
							
			case "black":		var enterColor = '#ffffff';
								var leaveColor = '#B4C8DC';
								break;
							
			case "white":		var enterColor = '#ffffff';
								var leaveColor = '#3C4650';
								break;
								
			case "lightgreen":	var enterColor = '#ffffff';
								var leaveColor = '#D7FD00';
								break;
								
			case "lightblue":	var enterColor = '#ffffff';
								var leaveColor = '#55F2FF';
								break;
		 
			default: 			var enterColor = '#ffffff';
					 			var leaveColor = '#64E1FF';
		  }

		var menuEnter = { 'color': enterColor };
		var menuLeave = { 'color': leaveColor };
		
		new YOOMorph('div#menu li.level2 a, div#menu li.level2 span.separator', menuEnter, menuLeave,
			{ transition: Fx.Transitions.linear, duration: 0, ignoreClass: 'active' },
			{ transition: Fx.Transitions.sineIn, duration: 700 });

		/* Morph: sub menu */
		switch (YtSettings.color) {
			case "green":		var enterColor = '#ffffff';
								var leaveColor = '#D8F75B';
								break;
		 
			case "red": 		var enterColor = '#ffffff';
								var leaveColor = '#FF4628';
								break;
		 
			case "pink": 		var enterColor = '#ffffff';
								var leaveColor = '#FF75D6';
								break;
		 
			case "lilac": 		var enterColor = '#ffffff';
								var leaveColor = '#DA79FF';
								break;
		 
			case "eigen":	 	var enterColor = '#ffffff';
								var leaveColor = '#FF9628';
								break;
		 
			case "orange":	 	var enterColor = '#ffffff';
								var leaveColor = '#FF9628';
								break;
							
			case "turquoise":	var enterColor = '#ffffff';
								var leaveColor = '#79FFDC';
								break;
							
			case "black":		var enterColor = '#ffffff';
								var leaveColor = '#B4C8DC';
								break;
							
			case "white":		var enterColor = '#ffffff';
								var leaveColor = '#3C4650';
								break;
		 
			case "lightgreen":	var enterColor = '#ffffff';
								var leaveColor = '#D7FD00';
								break;
			
			case "lightblue":	var enterColor = '#ffffff';
								var leaveColor = '#55F2FF';
								break;
		 
			default: 			var enterColor = '#ffffff';
					 			var leaveColor = '#64E1FF';
		  }
		
		var submenuEnter = { 'color': enterColor};
		var submenuLeave = { 'color': leaveColor};

		new YOOMorph('div#middle ul.menu a, div#middle ul.menu span.separator', submenuEnter, submenuLeave,
			{ transition: Fx.Transitions.expoOut, duration: 0, ignoreClass: 'current' },
			{ transition: Fx.Transitions.sineIn, duration: 700 });

		/* Morph: module border */
		var enterColor = '#b4b4b4';
		var leaveColor = '#F0F0F0';
		
		var moduleEnter = { 'background-color': enterColor};
		var moduleLeave = { 'background-color': leaveColor};

		new YOOMorph('#main div.mod-border div.module', moduleEnter, moduleLeave,
			{ transition: Fx.Transitions.sineIn, duration: 200 },
			{ transition: Fx.Transitions.expoOut, duration: 600 });

		/* Style switcher */
		new YOOStyleSwitcher($ES('.wrapper'), { 
			widthDefault: YtSettings.widthDefault,
			widthThinPx: YtSettings.widthThinPx,
			widthWidePx: YtSettings.widthWidePx,
			widthFluidPx: YtSettings.widthFluidPx,
			afterSwitch: YOOTools.setDivHeight,
			transition: Fx.Transitions.expoOut,
			duration: 500
		});		
		
		/* Smoothscroll */
		new SmoothScroll({ duration: 500, transition: Fx.Transitions.Expo.easeOut });
	},

	/* Include script */
	include: function(library) {
		$ES('script').each(function(s, i){
			var src  = s.getProperty('src');
			var path = '';
			if (src && src.match(/yoo_tools\.js(\?.*)?$/)) path = src.replace(/yoo_tools\.js(\?.*)?$/,'');
			if (src && src.match(/template\.js\.php(\?.*)?$/)) path = src.replace(/template\.js\.php(\?.*)?$/,'');
			if (path != '') document.write('<script language="javascript" src="' + path + library + '" type="text/javascript"></script>');
		});
	},

	/* Match height of div tags */
	setDivHeight: function() {
		YOOBase.matchDivHeight('div.topbox div.deepest', 0, 40);
		YOOBase.matchDivHeight('div.bottombox div.deepest', 0, 40);
		YOOBase.matchDivHeight('div.maintopbox div.deepest', 0, 40);
		YOOBase.matchDivHeight('div.mainbottombox div.deepest', 0, 40);
		YOOBase.matchDivHeight('div.contenttopbox div.deepest', 0, 40);
		YOOBase.matchDivHeight('div.contentbottombox div.deepest', 0, 40);
	}

};

/* Add functions on window load */
window.addEvent('domready', YOOTools.start);

/* Load IE6 fix */
if (window.ie6) {
	YOOTools.include('addons/ie6fix.js');
	YOOTools.include('yoo_ie6fix.js');
}

