$.preloadImages(
	"/_img/framework/templates/default/myawai_menu.png"
);


////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
// Begin Page load functions                                                  //
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////

function site_class_init(context) {

	$(".sidebar .jsfill", context).each(function(index) {
		var y = $(document).height();
		$(this).show();
		if ($(document).height() > y) {
			$(this).hide();
			return false;
		}
	});
	
	$("div.myawaibutton a", context).click(function(){
		var t = this, m = $("div.myawaimenu");
		if ($(t).hasClass("menuopen")) {
			m.slideUp(300, function() { $(t).removeClass("menuopen"); });
		}
		else {
			$(t).addClass("menuopen");
			m.slideDown(300, function() {
				if (!$("div.masthead").hasClass("loggedin")) {
					var el = $("input#myawaimenu-username");
					if (el.val()) { el = $("input#myawaimenu-password"); }
					el.focus();
				}
			});
		}
		t.blur();
		return false;
	});
	
	if (!$.browser.opera) {
/*
Opera has some weird problems with the hide() method used here in combination with floats and absolute positioning, so I'm just giving them the no frills (no js) menu instead.
*/
		$("ul.mainnav > li div", context).mouseover(function() {
			$(this).oneTime(160, function() {
				$("ul.mainnav li.tabfaded").removeClass("tabfaded");
				$("ul.mainnav li.current-nav").not($(this).parent()).addClass("tabfaded");
				$("ul.mainnav li.active-nav").not($(this).parent()).removeClass("active-nav");
				$(this).parent().addClass("active-nav");
				$("ul.mainnav li").not($(this).parent()).find("ul.subnav").stop().hide().css("opacity", 1);
				$(this).parent().find("ul.subnav").fadeIn(250);
			});
		}).mouseout(function() {
			$(this).stopTime();
		});
	
		$("div.navigation", context).mouseover(function() {
			$(document).stopTime("reset_menu_timer");
		}).mouseout(function() {
			$(document).oneTime(800, "reset_menu_timer", function() {
				$("ul.mainnav li.active-nav").removeClass("active-nav");
				$("ul.mainnav li.current-nav").removeClass("tabfaded");
				$("ul.mainnav li.current-nav").addClass("active-nav");
				$("ul.mainnav li").not(".current-nav").find("ul.subnav").stop().hide().css("opacity", 1);
				$("ul.mainnav li.current-nav ul.subnav").fadeIn(250);
			});
		});
	}
	
	$("ul.unit-rating li a", context).mouseover(function() {
		$(this).parents("ul.unit-rating").children("li.current-rating").hide();
	}).mouseout(function() {
		$(this).parents("ul.unit-rating").children("li.current-rating").show();
	});
	
	$("a.rater", context).click(function() {
		var t = this;
		var theDIV = $(t).parents("div.ratingblock"); // the DIV
		var theUL = $(t).parents("ul.unit-rating");  // the UL
		// show a loading image
		theUL.html('<li class="loading">loading</li>');
		var div = $("<div></div>");
		div.load($(t).attr("href")+"&lp_ajax=1", null, function() {
			theDIV.empty();
			theDIV.replaceWith(div);
		});
		return false;		
	});
	
	$("a.ajax-replace", context).click(function() {
		var h = $(this).attr("href");
		h += ((h.indexOf("?") >= 0) ? "&" : "?") + "lp_ajax=1";
		// show a loading image
		var loader = $('<span class="loading">&nbsp;&nbsp;&nbsp;&nbsp;</span>');
		$(this).empty();
		$(this).replaceWith(loader);
		var result = $("<span></span>");
		result.load(h, null, function() {
			loader.empty();
			loader.replaceWith(result);
			class_init(result);
			site_class_init(result);
		});
		return false;		
	});
	
}

////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
// End Page load functions                                                    //
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////


////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
// Begin Misc. functions                                                      //
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////

function chat_init() {
	// CONFIG: "Live Chat is Online" image path.
	var chat_online = "/_img/toolbox/buttons/chat_online.png";
	// CONFIG: "Online/Offline" image path. Used to check the operator status with Trio.
	var online_offline_url = "//support.awaionline.com/triolive/image_utility.php?mode=online_offline&code=eb6072&dept=1";
	// CONFIG: Chat window path. Same whether chat is online or offline.
	var chat_window_url = "http://support.awaionline.com/triolive/index.php?action=chat_select&code=eb6072&dept=0";
	
	var d = new Date();
	var online_offline_img = new Image();
	online_offline_img.src = online_offline_url + "&anti_cache=" + d.getTime();
	online_offline_img.onload = function() { 
		if (online_offline_img.width == "1") { // 1 = online, 2 = offline
			$(".live-chat-link img").attr({src: chat_online, alt: "Live chat is online"});
		}
	}
	
	$(".live-chat-link").click(function() {
		window.open(chat_window_url, "acp_livechat", "height=400, width=500, toolbar=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no");
		return false;   
	});
}

function ticker_init( ticker_id, delay ) {
	var id = "#" + ticker_id + "-ticker";
	delay = (delay) ? delay : 1;
	$(document).oneTime(delay, function() {
		$(id+" li").fadeOut(1000, function() {
			$(id).empty();
			$(id).load("/toolbox/ticker/" + ticker_id + ".php", null, function() {
				$(id+" li")
					.css({display: "none", cursor: "pointer"})
					.hover(function() {
						$(this).stop(true).stopTime().fadeTo(0, 1);
					}, function() {
						$(this).oneTime(3000, function() {
							ticker_tick(ticker_id);
						});
					})
					.click(function() {
						window.location = $(this).find("a").attr("href");
						return false;
					})
					.eq(0).fadeIn(500, function() {
						$(id).oneTime(5000, function() {
							ticker_tick(ticker_id);
						});
					});
			});
		});
	});
}

function ticker_tick( ticker_id ) {
	var id = "#" + ticker_id + "-ticker";
	$(id+" li").eq(0).fadeOut(1000, function() {
		$(this).appendTo(id);
		$(id+" li").eq(0).fadeIn(500, function() {
			$(this).oneTime(6000, function() {
				ticker_tick(ticker_id);
			});
			id = null;
		});
	});
}

////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
// End Misc. functions                                                        //
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////


////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
// Call page load functions                                                   //
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////

$(function() {
	site_class_init(document);
	chat_init();
	ticker_init("news", 5000);
});

