/** JAVASCRIPT METHODS UNIQUE TO HOME PAGE PLAYERS TAB ONLY */
if (typeof EQ2 === "undefined") {
	EQ2 = {};
}
/** CHECK IF TABS EXISTS */
if( typeof main_tabs_api !== "undefined" ){
	/** CHECK IF WE ARE ON THE PLAYERS TAB */
	if( main_tabs_api.getIndex() == 0 ){
		if( playersInit == false ){
			initPlayersTab();
		}
	}
}else{
	/** this script loaded prior to DOM ready so do nothing */
}
EQ2.method = {
	initPlayersTab:function(){
		/** CODE FOR PLAYERS TAB HERE */
		if( playersInit == false ){
			/** ONLY INITIALIZE ONCE */
			playersInit = true;
			if( typeof window.console != 'undefined' && typeof window.console.log != 'undefined' ){
				console.log("players tab initialized");
			}			
			playersCarouselNavUL = $('#p_carousel_nav ul');
			buildPlayersCarouselNav();

			$("#p_carousel").mediascroll({
				showNextPrevButtons: true,
				visible:1,
				speed:500,
				auto:7000,
				readURL:true,
				easing:"easeInOut",
				pauseable:true,
				showProgress:true,
				id_prefix:'p_carousel',
				externalNav:playersCarouselNav,
				externalNavState:{ show : true, child : false },
				showFocus:true
				/** CALLBACK TO SCROLL THE NAV IF IT EXISTS 
				afterEnd: function(){

				} */
			});
			/** SHOWS FOCUS OR MOUSE OVER ON MEDIA - REMOVES .05 ALPHA BLACK OVERLAY */
			$('#p_carousel_focus').mouseenter(function(e){
				$(this).css('display', 'none');
			});
			/** REMOVE ACTIVE STATE FROM MAIN NAV CATAGORIES AND ADD IT TO THIS PAGES CATAGORY */
			//$("ul.site_nav li a.nav.top", document.body).each(function () {
				//$(this).removeClass( "active");
			//});
			$("ul.site_nav li."+catagory+"_nav a.nav.top", document.body).addClass( "active");
		
			window.setTimeout( function () {
				$(".video_content").each(function(){
					var uniqueID = "movie_modal_" + randomID();
					$(this).attr("id", uniqueID);
					/** MOVIE MODAL */
					jQuery("#"+ uniqueID).colorbox({
						href:"/_pageContent/modals/movie.vm",
						scrolling:false,
						opacity:0.70,
						onComplete:function(){
							if( typeof window.console != 'undefined' && typeof window.console.log != 'undefined' ){
								console.log("players movie initialized");
							}
							var flashvars = {};
							flashvars.fileName = "EQ2_F2P_Announce";
							flashvars.stillPath = "/video/stills_lg/";
							flashvars.videoPath = "http://www-cdn.everquest2.com/video/flvs/en/";
							flashvars.skinPath = "/flash/skins/eq2-skin-ftp.swf";
							flashvars.autoplay = "true";
							flashvars.replayStill = "true";
							var params = {};
							params.quality = "high";
							params.wmode = "opaque";
							params.bgcolor = "#000000";
							params.allowscriptaccess = "sameDomain";
							params.allowfullscreen = "true";
							var attributes = {};
							attributes.id = "soe_player";
							attributes.name = "soe_player";
							attributes.align = "middle";
							swfobject.embedSWF("/flash/player788x443/soe_player.swf", "movieContainer", "796", "452", swfVersionStr, xiSwfUrlStr, flashvars, params, attributes);
						}
					});
				});						  
			}, 1000);
			
			initServerStatus();

		}
		return false;
	},
	
	initServerStatus:function() {
		/** AJAX METHOD **/
		jQuery.ajax({
			dataType : "jsonp",
			url : "https://data.soe.com/json/status/eq2?callback=?",
			jsonp : true,
			cache : false,
			success : function(obj) {
				status(obj["eq2"]);
				refresh();
			}
		});
	},

	refresh:function() {
		$("#refresh").click(function(event) {
			event.preventDefault();
			/** AJAX METHOD **/
			$("table.server_status tr.odd, table.server_status tr.even").remove();
			jQuery.ajax({
				dataType : "jsonp",
				url : "https://data.soe.com/json/status/eq2?callback=?",
				jsonp : true,
				cache : false,
				success : function(obj) {
					status(obj["eq2"]);
				}
			});
		});
	},
	
	status:function(obj) {
		var deferID = 0;
		var i = 0;
		/** 8 DESIGNATION **/
		for(var designation in obj) {
			/** 20 SERVERS, 1 in EU Deutsch, 1 in EU English, 1 in Beta, 1 in 日本語, 11 in US English, 2 in Test, 1 in EU Français, 2 in Русский **/
			switch(designation) {
				case "Dev":

					break;
				case "Test":

					break;
				case "Public Test":

					break;
				case "Beta":

					break;
				case "Stage":

					break;
				case "QA":

					break;
				default:
				for(var server in obj[designation]) {
					if(i%2) {
						if(obj[designation][server].status == "down") {
							$("table.server_status").append("<tr class='even'><td class='left down'><span>" + obj[designation][server].status + "</span></td><td class='middle'><span>" + server + "</span></td><td class='right zero'><span>&#160;</span></td></tr>");
						} else if(obj[designation][server].status == "locked") {
							$("table.server_status").append("<tr class='even'><td class='left locked'><span>" + obj[designation][server].status + "</span></td><td class='middle'><span>" + server + "</span></td><td class='right zero'><span>&#160;</span></td></tr>");
						} else if(obj[designation][server].status == "missing") {
							$("table.server_status").append("<tr class='even'><td class='left missing'><span>" + obj[designation][server].status + "</span></td><td class='middle'><span>" + server + "</span></td><td class='right zero'><span>&#160;</span></td></tr>");
						} else {
							$("table.server_status").append("<tr class='even'><td class='left up'><span>up</span></td><td class='middle'><span>" + server + "</span></td><td class='right " + obj[designation][server].status + "'></td></tr>");
						}
						i++;
					} else {
						if(obj[designation][server].status == "down") {
							$("table.server_status").append("<tr class='odd'><td class='left down'><span>" + obj[designation][server].status + "</span></td><td class='middle'><span>" + server + "</span></td><td class='right zero'><span>&#160;</span></td></tr>");
						} else if(obj[designation][server].status == "locked") {
							$("table.server_status").append("<tr class='odd'><td class='left locked'><span>" + obj[designation][server].status + "</span></td><td class='middle'><span>" + server + "</span></td><td class='right zero'><span>&#160;</span></td></tr>");
						} else if(obj[designation][server].status == "missing") {
							$("table.server_status").append("<tr class='odd'><td class='left missing'><span>" + obj[designation][server].status + "</span></td><td class='middle'><span>" + server + "</span></td><td class='right zero'><span>&#160;</span></td></tr>");
						} else {
							$("table.server_status").append("<tr class='odd'><td class='left up'><span>up</span></td><td class='middle'><span>" + server + "</span></td><td class='right " + obj[designation][server].status + "'></td></tr>");
						}
						i++;
					}
				}
			}
		}
	}
};
function initPlayersTab()	{EQ2.method.initPlayersTab();}
function initServerStatus()	{EQ2.method.initServerStatus();}
function refresh()			{EQ2.method.refresh();}
function status(val)		{EQ2.method.status(val);}
var catagory = 'home';
var playersInit = false;
var defer = {
		"eq2" : {}
	};
