var Util = {
    redirect: function(url, timeout) {
        if (null === timeout) {
            timeout = 0;
        }
        if (timeout) {
            setTimeout(function() {
                location.href = url;
            }, timeout);
        } else {
            location.href = url;
        }
    }
};

var Home = {
    currentNavigation: null,
    bindHomeEvent: function(el) {
        var dNavHome = el.find('div#nav_home');
        dNavHome.children('div.game_nav').hover(function(e) {
            var dNavigation = $(this).find('div.game_des');
            if (!dNavigation.hasClass('hidden')) {
                return;
            }
            if (null === Home.currentNavigation) {
                dNavHome.find('div.game_des:eq(0)').addClass('hidden');
            } else {
                Home.currentNavigation.addClass('hidden');
            }
            dNavigation.removeClass('hidden');
            Home.currentNavigation = dNavigation;
        });
        var dNavPhotos = el.find('div#nav_photos');
        var dNavPhotosImage = dNavPhotos.find('img:eq(0)');
        var dNavPhotosTitle = dNavPhotos.children('div.game_titledes:eq(0)');
        dNavPhotos.find('li').hover(function(e) {
            var dImg = $(this).find('img:eq(0)');
            dNavPhotosImage.attr('src', dImg.attr('src'));
            dNavPhotosTitle.text(dImg.attr('rel'));
        });
    }
};

var User = {
    cLoginUsername: '通行证帐号',
    cLoginPassword: '通行证密码',
    cLoginCaptcha: '验证码',
    bindLoginFormEvent: function(el) {
        var dForm = el.children('form');
        dForm.submit(function(e) {
            e.preventDefault();
            var username = this.elements.username;
            var password = this.elements.password;
            var captcha = this.elements.captcha;
            var sUsername = $.trim(username.value);
            if (sUsername === '' || sUsername.length < 3) {
                alert('请输入通行证帐号');
                username.focus();
                return;
            }
            if (password.value === '') {
                alert('请输入通行证密码');
                password.focus();
                return;
            }
            if (captcha.value === '' || !/^\d{4}$/.test(captcha.value)) {
                alert('请输入验证码');
                captcha.focus();
                return;
            }
            User.ajaxLogin(sUsername, password.value, captcha.value, this.elements.remember.checked);
        });
        dForm.find('input[name="username"]').focus(function(e) {
            if (this.value === User.cLoginUsername) {
                this.value = '';
            }
        }).blur(function(e) {
            if (this.value === '') {
                this.value = User.cLoginUsername;
            }
        });
        var dPasswordTips = dForm.find('input[name="password_tips"]');
        var dPassword = dForm.find('input[name="password"]');
        dPasswordTips.focus(function(e) {
            $(this).hide();
            dPassword.show().focus();
        });
        dPassword.blur(function(e) {
            if (this.value === '') {
                $(this).hide();
                dPasswordTips.show();
            }
        });
        dForm.find('input[name="captcha"]').focus(function(e) {
            if (this.value === User.cLoginCaptcha) {
                this.value = '';
            }
        }).blur(function(e){
            if (this.value === '') {
                this.value = User.cLoginCaptcha;
            }
        });
    },
    ajaxLogin: function(username, password, captcha, remember) {
        var params = 'username=' + username + '&password=' + password + '&captcha=' + captcha + (remember ? '&remember=1' : '');
        $.post('/user/ajaxLogin', params, this.callbackAjaxLogin, 'json');
    },
    callbackAjaxLogin: function(data) {
        if (data.error === 0) {
            $('span#login_ok_username').text(data.username);
            $('span#header_username').text(data.username);
            $('span#header_nav_panel').remove();
            $('span#header_user').show();
            $('div#login_box').remove();
            $('div#login_ok').show();
        } else {
            alert(data.msg);
            var dCaptcha = $('img#login_captcha');
            if (dCaptcha.length) {
                User.flushCaptcha(dCaptcha.get(0));
            }
            if (data.action == 1) {
                $('div#login_box input[name="captcha"]').val('').focus();
            } else if (data.action == 2) {
                $('div#login_box input[name="password"]').val('').focus().get(0).type = 'password';
            }
        }
    },
    flushCaptcha: function(el) {
        el.src = '/captcha.png/' + Math.random();
    }
};

var Payment = {
    bindPaymentEvent: function(el) {
        if($.browser.msie){
            el.find('label').click(function(e) {
                el.find('input:radio#' + $(this).attr('for')).attr('checked', 'checked');
            });
        }
    },
    bindPaowanPayEvent: function(el) {
        el.submit(function(e) {
            var dPayTotal = this.elements.pay_amount;
            var payTotal = parseInt($.trim(dPayTotal.value), 10);
            
            if (!payTotal > 0) {
                alert('请输入正确的充值金额');
                dPayTotal.focus();
                e.preventDefault();
                return;
            }
            var payment = el.find('input:radio:checked').val();
            if (!(payment >= 1 && payment <= 15)) {
                alert('请选择支付方式');
                e.preventDefault();
                return;
            }
            el.find('button').attr('disabled', 'disabled');
        });
    },
    callbackRedirect: function(el) {
        Util.redirect('/user', 5000);
    }
};

function doWhileExist(sModuleId, oFunction) {
    var el = $(sModuleId); 
    if (el.length) {
        oFunction(el);
    }
}

$(function() {
    doWhileExist('div#login_box', User.bindLoginFormEvent);
    doWhileExist('div#payment_list', Payment.bindPaymentEvent);
    doWhileExist('form#paowan_pay', Payment.bindPaowanPayEvent);
    doWhileExist('div#pay_suc, div#pay_fai', Payment.callbackRedirect);
    doWhileExist('div#home', Home.bindHomeEvent);
});


function showlayer(num)
{
	for (var i=1;i<= 2;i++)
	{
		if (num==i)
		{
			document.getElementById("five_t"+i).style.background="url(http://img.paowan.com/images/five_t1.gif) no-repeat center";
			document.getElementById("five_c"+i).style.display="block";
		}
		else
		{
			document.getElementById("five_t"+i).style.background="url(http://img.paowan.com/images/five_t2.gif) no-repeat center";
			document.getElementById("five_c"+i).style.display="none";
		}
	}
}


function addFavor(title, url){
	if (document.all)
	window.external.AddFavorite(url, title);
	else if (window.sidebar)
	window.sidebar.addPanel(title, url, "")
}

function setHomePageInFF()
{
	if(window.netscape)
	{
			try {
			  netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
			}
			catch (e)
			{
			  alert("此操作被浏览器拒绝！\n请在浏览器地址栏输入“about:config”并回车\n然后将[signed.applets.codebase_principal_support]设置为'true'");
			}
	}

	var prefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces.nsIPrefBranch);
	prefs.setCharPref('browser.startup.homepage','http://paowan.com/');
}