﻿/**
 * JavaScript banner
 */
 
$(function(){
		   
	if($.browser.msie && $.browser.version == "6.0"){
		//solute the min-width of our header banner in IE6 
		var jQObj = $("body");
		$(window).resize(function(){
			minWidthHack(jQObj, 962);
		});
	}
	
	saveInputTips($("#uName, #pWord"));
	updateInputTips($("#uName, #pWord"));
	
	//fix the ":active" bug in IE6 and IE7
	$("#btnLogin, #btnRegis").click(function(){
		$(this).blur();
	});
	
	//top bar dropdown list for "ALL GAMES"
	$("#lnkAG").hover(
		function(){
			$("#topbarDropdown").show();
			$(this).addClass("on");
		}, 
		function(event){
			if(event.pageY < $("#topbarDropdown").offset().top){
				$("#topbarDropdown").hide();
				$(this).removeClass("on");
			}
		}
	);
	$("#topbarDropdown").hover(
		function(){
			$("#lnkAG").addClass("on");
		}, 
		function(){
			$(this).hide();
			$("#lnkAG").removeClass("on");
		}
	);
	
	//main navigation dropdown list for "GAMES"
	$("#lnkMainGames").hover(
		function(){
			$("#mainNavDropdown").show();
			$(this).addClass("on");
		},
		function(event){
			if(event.pageY < $("#mainNavDropdown").offset().top){
				$("#mainNavDropdown").hide();
				$(this).removeClass("on");
			}
		}
	);
	$("#mainNavDropdown").hover(
		function(){
			$("#lnkMainGames").addClass("on");
		},
		function(){
			$("#lnkMainGames").removeClass("on");
			$(this).hide();
		}
	);
	
	//login inputbox
	$("#uName, #pWord").bind("focus", function(){
		$(this).addClass("hasText");
	}).bind("blur", function(){
		if($(this).val() == ""){
			$(this).removeClass("hasText");
		}
	});
	
	//game list hover
	$("#portal_gameList li").hover(
		function(){
			$(this).addClass("hover");
		}, 
		function(){
			$(this).removeClass("hover");
		}
	);
	
	//return false when click the '#' link
	$("a[href=#]").click(function(){return false});
		
});


//suit the width of a object to the window
function minWidthHack(jQObj, width){
	var winWidth = $(window).width();
	if(winWidth < width){
		jQObj.each(function(i){
			$(this).width(width);
		});
	} else{
		jQObj.each(function(i){
			$(this).width(winWidth);
		});
	}
}

//save the tips of any input box
function saveInputTips(jQObj){
	jQObj.each(function(i){
		var dataName = "tips";
		var dataValue = $(this).val();
		$(this).data(dataName, dataValue);
	});
}
//update the status of any input box tips
function updateInputTips(jQObj){
	jQObj.each(function(i){
		if($(this).val() == ""){
			$(this).removeClass("hasText");
		} else{
			$(this).addClass("hasText");
		}
	});
}

//image preload
function preLoadImg(url) {
	var img = new Image();
	img.src = url;
}	

