/**
 * ??? ???????? js ????? ?e????.
 * @param jsName ?????, ?????, ????? ?? ??? ????
 */
var jsload = {
    /**
     * ?e?? ??u??T
     */
    loaded: [],

    /**
     * ??u??T?? ??????? ?e????.
     * ???????? , ?? ????? String ???????,
     * ?? ????? pixeldraw.{1}.js ???·? ?????.
     */
    load: function() {
        var sc = $('script[src *= "/js/basic.js"]'); // pixeldraw.js ??u??T Element ?? ????´?
    
        // ???? ????? ??´?.
        var idx = arguments.length;
        while (idx-- > 0) {
            if ($.inArray(arguments[idx], this.loaded) == -1) { // ???ó??
                this.loaded.push(arguments[idx]);
                sc.after('<script type="text/javascript" src="/js/' + arguments[idx] + '.js"></script>');
            }
        }   
    }
}


var mnb = {
    default_id: null,
    selected_id: null,
    img_path: 'http://image.gamescampus.com/legendofedda2/common/',
    hover: function(num) {
        this.clr();
        this.set(num);
    },

    hout: function() {
        this.clr();
    },

    set: function(num) {
        if (num != '00') {
            $('#mnb_' + num + 'sub').show().hover(function() { }, function() { mnb.hout(); });
        }
        if (num != '03') {
            $('#mnb_' + num).css('background-image', 'url(' + this.img_path + 'mnb_on' + num + '.gif)');
        }
    },

    clr: function() {
        this.reset();
    },

    reset: function() {
        $('#mnb_00').css('background-image', 'url(' + this.img_path + 'mnb_off00.gif)');
        $('#mnb_01').css('background-image', 'url(' + this.img_path + 'mnb_off01.gif)');
        $('#mnb_02').css('background-image', 'url(' + this.img_path + 'mnb_off02.gif)');
        $('#mnb_04').css('background-image', 'url(' + this.img_path + 'mnb_off04.gif)');
        $('#mnb_05').css('background-image', 'url(' + this.img_path + 'mnb_off05.gif)');
        $('#mnb_06').css('background-image', 'url(' + this.img_path + 'mnb_off06.gif)');
        $('#mnb_01sub,#mnb_02sub,#mnb_03sub,#mnb_04sub,#mnb_05sub,#mnb_06sub').hide();
    },


    test: function() { }
};


var member = {
	input_bg: null,

	signin : function () {
		var frm = document.getElementById('frmSignin');
		alert('sign in!!!! ');
	},

	clrbg: function(ele) {
		this.input_bg = $(ele).css('background-image');
		$(ele).css('background-image','none');
	},

	resbg: function(ele) {
		if ($(ele).val() == '') {
			$(ele).css('background-image', this.input_bg );
		}
	}
};

var left = {
    load_items: function() {
        var page = arguments[0];
        page = typeof(page)=='undefined' ? 1 : page;
        $('#main_items').load('/common/items.asp?page='+page);
    },
    
    load_rank: function() {
        $('#mainrank_list').load('/common/rank_list.asp');
        $('div.ranklist_tab').tabs();
    }
};

    
var crank = {
    view: function(server, no) {
        $('#mainrank_list').load('/common/rank_list.asp');
    }
};

$(document).ready(function() {
	/* Sign In */
	$('#uid').focus(function() { member.clrbg(this); }).blur(function() { member.resbg(this); });
	$('#pwd').focus(function() { member.clrbg(this); }).blur(function() { member.resbg(this); });
    if ($('#uid').val() != "") { member.clrbg($('#uid')); }
    
	/* Mnb */
	$('div.mnb').hover( function() { }, function() { mnb.clr(); } );
	$('#mnb_00').hover(function() { mnb.hover('00'); });
	$('#mnb_01').hover(function() { mnb.hover('01'); });
	$('#mnb_02').hover(function() { mnb.hover('02'); });
	$('#mnb_03').hover(function() { mnb.hover('03'); });
	$('#mnb_04').hover(function() { mnb.hover('04'); });
	$('#mnb_05').hover(function() { mnb.hover('05'); });
	$('#mnb_06').hover(function() { mnb.hover('06'); });

    left.load_rank()
    //left.load_items(1);
});


/**
 * Function : dump()
 * Arguments: The data - array,hash(associative array),object
 *    The level - OPTIONAL
 * Returns  : The textual representation of the array.
 * This function was inspired by the print_r function of PHP.
 * This will accept some data as the argument and return a
 * text that will be a more readable version of the
 * array/hash/object that is given.
 */
function dump(arr, level) {
	var dumped_text = "";
	if (!level) {
		level = 0;
	}

	//The padding given at the beginning of the line.
	var level_padding = "";
	for ( var j = 0; j < level + 1; j++) {
		level_padding += "    ";
	}

	if (typeof (arr) == 'object') { //Array/Hashes/Objects
		for ( var item in arr) {
			var value = arr[item];

			if (typeof (value) == 'object') { //If it is an array,
				dumped_text += level_padding + "[" + item + "]\n";
				dumped_text += dump(value, level + 1);
			} else {
				dumped_text += level_padding + "[" + item + "] => \"" + value
						+ "\"\n";
			}
		}
	} else { //Stings/Chars/Numbers etc.
		dumped_text = "===>" + arr + "<===(" + typeof (arr) + ")";
	}
	return dumped_text;
}

function loginCheck(login) {
    if (login == "False") {
        alert("You must sign in to access this page.");
        return false;
    }
    else {
        return true;
    }
}


function validate_required(field, alerttxt) {
    if (field.value == null || field.value == "") {
        alert(alerttxt);
        return false;
    }
    else {
        return true;
    }
}

function validate_form(form) {
    if (validate_required(form.userid, "Please enter your User ID.") == false) {
        return false;
    }
    if (validate_required(form.pwd, "Please enter your Password.") == false) {
        return false;
    }
}
