function load() {
    Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
}

function EndRequestHandler() {
    ReadyMoneyExChange();
    ReadyGoldListClick();
    ReadyGoldDdlChange();
    ReadyMoneyButton();
    ReadyValidator();
}

var EUR = 0.707413696;  //欧元汇率
var GBP = 0.620501365;  //英镑汇率
var MoneyType = "USD";  //货币选择 默认美元

//从Exchange.xml中读取汇率 初始化参数
function ReadyMoneyExChange()
{
    $.get('xml/Exchange.xml', function(xml){
        $(xml).find("money").each(function(){
            var $m = $(this);
            if($m.attr("name") == "EUR") EUR = $m.attr("value");
            if($m.attr("name") == "GBP") GBP = $m.attr("value");
        });
    });        
}

//点击 金币列表 事件
function ReadyGoldListClick()
{    
    $("li[tag=liGoldItem]").click(function(){
        var goldName =  $(this).attr("title");
        changeCss(goldName,"click"); //控制样式显示
        setMoneyView(); //价格显示moneyView部分联动
    });
}

//点击 金币下拉菜单 事件
function ReadyGoldDdlChange()
{    
    $("#ddlProduct").change(function(){
        var goldName = $("#ddlProduct option:selected").text();
        changeCss(goldName,"select"); //控制样式显示       
        setMoneyView(); //价格显示moneyView部分联动
    });
}

//点击 货币链接 事件
function ReadyMoneyButton()
{    
    $("a[tag=moneybutton]").click(function(){
        
        //控制样式部分
        $("a[tag=moneybutton]").attr("class","");
        $(this).attr("class","red");
    
        //运算修改价格部分
        MoneyType = $.trim($(this).text());
        $moneyList = $("p[tag=moneyItem]");
        for(var i=0; i<$moneyList.length; i++)
        {
            var moneyText = $($moneyList[i]).attr("USDPrice");
            switch(MoneyType)
            {
                case "USD": moneyText = "$" + moneyText; break;
                case "EUR": moneyText = "€" + (moneyText*EUR).toFixed(2); break;
                case "GBP": moneyText = "£" + (moneyText*GBP).toFixed(2); break;
            }
            $moneyList[i].innerHTML = moneyText;
        }
        
        //价格显示moneyView部分联动
        setMoneyView();
    });
}

$(document).ready(function(){
    ReadyMoneyExChange()
    ReadyGoldListClick();
    ReadyGoldDdlChange();
    ReadyMoneyButton();
});

//控制样式显示
function changeCss(m_GoldName,m_Type)
{ 
    if (m_Type == "click") //改变li标签样式 联动改变下拉框选项
    {
        //改变li标签样式
        var $SelectItem = $("li[title="+m_GoldName+"]");
        $SelectItem.siblings("li").attr("class","goldnormal2");
        $SelectItem.attr("class","goldhov");
    
        var oDdlProduct = $("#ddlProduct")[0];
        for(var i = 0;i<oDdlProduct.options.length;i++)
        {
            var oOption = oDdlProduct.options[i];
            if (oOption.text == m_GoldName) 
            {
                oOption.selected = "true";
                break;
            }
        }
    }
    else if (m_Type == "select") //改变li标签样式
    {
        //改变li标签样式
        var $SelectItem = $("li[title="+m_GoldName+"]");
        $("#ulProductList li").attr("class","goldnormal2");
        
        if($("#ddlProduct").val() != "-1") //选择产品 高亮显示           
            $SelectItem.attr("class","goldhov");
    }
    
    
}

//设置隐藏域的值
function setHiddenValue(m_Price)
{
   $("#hidGuid").attr("value",$("#ddlProduct").val().split(',')[0]);
   $("#hidPrice").attr("value",m_Price);
   $("#hidMoneyType").attr("value",MoneyType);
}

//设置价格显示
function setMoneyView()
{
    var showPrice = "0.00";
    if ($("#ddlProduct").val() != -1) showPrice = $("#ddlProduct").val().split(',')[1];
    $("#USDmoneyView").text("$"+showPrice);
    $("#EURmoneyView").text("€"+(showPrice*EUR).toFixed(2));
    $("#GBPmoneyView").text("£" + (showPrice*GBP).toFixed(2));
    
    $("span[tag=moneyView]").attr("class","");
     
    switch(MoneyType)
    {
        case "USD" : $("#USDmoneyView").attr("class","red"); setHiddenValue(showPrice); break;
        case "EUR" : $("#EURmoneyView").attr("class","red"); setHiddenValue((showPrice*EUR).toFixed(2)); break;
        case "GBP" : $("#GBPmoneyView").attr("class","red"); setHiddenValue((showPrice*GBP).toFixed(2)); break;
    }   
}

function showHidden()
{
    alert($("#hidGuid").val());
    alert($("#hidPrice").val());
    alert($("#hidMoneyType").val());
}

$(document).ready(function(){
    ReadyValidator();
});

function ReadyValidator()
{
    $.formValidator.initConfig({onerror:function(msg){alert(msg)},onsuccess:function(){return CheckProduct();}});
    $("#txtEmail").formValidator({onshow:"Please input your Email",onfocus:"6 letters min, 100 letters max",oncorrect:"Verified"}).inputValidator({min:6,max:100,onerror:"Email length input incorrect"}).regexValidator({regexp:"^([\\w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([\\w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$",onerror:"Email format input incorrect"});
    $("#txtName").formValidator({onshow:"Please input your Name",onfocus:"50 letters max",oncorrect:"Verified"}).inputValidator({min:1,max:50,onerror:"Name input is required"});
    $("#txtCharacter").formValidator({onshow:"Please input your Character",onfocus:"Please input your Character",oncorrect:"Verified"}).inputValidator({min:1,onerror:"Character input is required"});
    $("#txtPhone").formValidator({onshow:"Please input your Phone",onfocus:"Please input your Phone",oncorrect:"Verified"}).inputValidator({min:1,onerror:"Phone input is required"});
    $("#txtMSN").formValidator({onshow:"Please input your MSN",onfocus:"Please input your MSN",oncorrect:"Verified"}).inputValidator({min:1,onerror:"MSN input is required"});
}

function CheckProduct()
{
    if ($("#ddlServer").val() == "-1")
    {
        alert("Please select your server");
        return false;
    }
    
    if ($("#ddlProduct").val() == "-1")
    {
        alert("Please select your product");
        return false;
    }
    
    //alert("MoneyType:"+MoneyType);
    //alert("Guid:"+$("#ddlProduct").val().split(',')[0]);
    //alert("USDPrice:"+$("#ddlProduct").val().split(',')[1]);
    //alert("OtherPrice:"+$("#hidPrice").attr("value"));
    return true;
}