﻿(function($j){

	

	Homepage = {
	
		content: null,
		tabsNav: "tabs-navigation",
		tabs: "tabs",
		tabsContent: "tabs-content",
		tabsDelay: 13000,
		killLoop: false,
		
		initTabs: function(){
			var self = this;
			var tabsNav = self.tabsNav;
			var tabs = self.tabs;
			var tabsDelay = self.tabsDelay;
			
			$j('.' + tabsNav, '.' + tabs).click(function(evt){
				
				var myTarget = $j(evt.target);
				if(myTarget.is('a')){
						
						// swap tabs
						
						var activeClass = myTarget.attr('rel');
						var targetUrl = myTarget.attr('href');
						
						self.loadContent(myTarget, targetUrl, 'tabs-' + activeClass);
						
						self.killLoop = true;
						
						
						return false; 
						
				};
				
			});
			
			
		},
		
		loadContent: function(target, targetLink, targetContent) {
			var self = this;
			var tabs = self.tabs;
			var tabsNav = self.tabsNav;
			var tabContent = $j('.' + self.tabsContent);
			
			
			
			var loaderImg = "/_Client/Images/Global/AjaxLoader.gif";
			tabContent.fadeOut('fast', function() {
				tabContent.html('<div class="ajax-loader"><img src="' + loaderImg + '" alt=" " /></div>');
				tabContent.fadeIn('fast');
			});

			setTimeout(function() {

				$j.ajax({
					type: "GET",
					url: targetLink,
					dataType: "html",
					success: function(data) {

						var dataContent = $j('.tabs-content', data);
						
							var currentClasses = $j('.' + tabs).attr('class');
							var preClass = currentClasses.split(" ");
							$j('.' + tabs).removeClass(preClass[1]);
							$j('.' + tabs).addClass(targetContent);
							$j('li', '.' + tabsNav).removeClass('active');
							target.parent().addClass('active');
							
							tabContent.fadeOut('fast', function() {
							tabContent.html(dataContent.html());
							tabContent.fadeIn('fast');
						});

					}
				});

			}, 500);

		},
		
		initTabAutoScroll: function(){
			
			var self = this;
			var tabs = self.tabs;
			var tabsNav = self.tabsNav;
			var tabContent = $j('.' + self.tabsContent);
			var tabsDelay = self.tabsDelay;
			
			var currentActiveTab = null;
			
			var tabsArr = new Array();
			var tabsAnchorArr = new Array();
			var tabsUrlArr = new Array();
			
			// work out starting point of auto animation
			
			$j('li', '.' + tabsNav).each(function(index){
				//alert(index);
				var currentClasses = $j('.' + tabs).attr('class');
				var preClass = currentClasses.split(" ");
				var tabsClass = "tabs-" + $j(this).children('a').attr('rel');
				var tabsUrl = $j(this).children('a').attr('href');
				var tabsAnchor = $j(this).children('a');
				
				//create the array in which to loop the animation
				
				tabsArr.push(tabsClass);
				tabsUrlArr.push(tabsUrl);
				tabsAnchorArr.push(tabsAnchor);
				
				if(preClass[1] == tabsClass){
					
					currentActiveTab = index;
					
				}
			
			});
			
			// CurrentActiveTab is the starting point
			
			var nextActiveTab = null;
			
			setTimeout("setNextTab()",tabsDelay);
			
			setNextTab = function(){
				
				if(self.killLoop){
					setTimeout("setNextTab()",tabsDelay*2);
					self.killLoop = false;
				}else{
					
					if(currentActiveTab == 7){
						nextActiveTab = 0;
					} else{
					
						nextActiveTab = currentActiveTab + 1;
					}
					
				
					self.loadContent(tabsAnchorArr[nextActiveTab], tabsUrlArr[nextActiveTab], tabsArr[nextActiveTab]);
					
					currentActiveTab = nextActiveTab;
					
					setTimeout("setNextTab()",tabsDelay);
				}
				
			}
			
			
		},


		
		
		onReady: function(){
			var self = this;
			self.initTabs();
			self.initTabAutoScroll();
			
//			var so = new SWFObject("/_Client/Flash/HomePromo.swf", "FlashHolder", "930", "239", "10", "#FFFFFF");
//			so.addParam("quality", "best");
//			so.addParam("menu", "false");
//			so.addParam("wmode", "transparent");
//			so.addVariable("setAPR", "6.9%25 % APR");
//			so.addVariable("applyURL", "/apply");
//			so.write("FlashContainer");
		
		}
		
		
		
	};

	$j().ready(function(){
		Homepage.onReady();
	});


})(jQuery);	

