﻿/*金币部分*/

function clearNextContorl(elm) {
    var quickGold = jQuery(".wowgoldtablebg [name=quickGold]");
    if (jQuery(elm).attr("index")) {
        var index = parseInt(jQuery(elm).attr("index"));
        quickGold.each(function() {
            if (jQuery(this).attr("index") && parseInt(jQuery(this).attr("index")) > index) {
                if (jQuery(this).is("select") && jQuery(this).is("[id=ddlMoneyType]") == false) {
                    jQuery(this).children("option:first").attr("selected", "selected");
                    if (jQuery(this).is("[id=ddlServerKey]") == false ) {
                        jQuery(this).children("option:gt(0)").remove();
                        if (index == parseInt(jQuery(this).attr("index")) - 1) {
                            jQuery(this).children("option:first").text("--Loading--").attr('value', '-1');
                        }
                        else {
                            jQuery(this).children("option:first").text("--Choose--").attr('value', '-1');
                        }
                    }
                }
                if (jQuery(this).is("input:text")) {
                    jQuery(this).val("$ 0.00");
                }
            }

        });
    }
}

function GetSelectedValue(elmId) {
    var val = jQuery("#" + elmId).children(":selected").val();
    if (val == undefined) {
        return null;
    }
    else {
        return val;
    }
}

function ddlGame_Changed() {
    clearNextContorl(this);
    var gameCode = GetSelectedValue("ddlGame");
    if (gameCode == "019") {
        jQuery("#ddlServerEu").show();
        jQuery("#ddlServerUS").hide();
    }
    else {
        jQuery("#ddlServerUS").show();
        jQuery("#ddlServerEu").hide();
    }
    initServerKey(GetSelectedValue("ddlGame"));
}

function ddlServerKey_Changed() {
    clearNextContorl(this);
    initddlServer(GetSelectedValue("ddlGame"), GetSelectedValue("ddlServerKey"));
}

function ddlServer_Changed() {
    clearNextContorl(this);
    var value = GetSelectedValue("ddlServerUS");
    if (GetSelectedValue("ddlGame") == "019") {
        value = GetSelectedValue("ddlServerEu");
    }
    initddlProduct(value);
}

function ddlProduct_Changed() {
    clearNextContorl(this);
    inittxtPrice();
}

function initServerKey(gameCode) {
    jQuery("#ddlServerKey option:first").attr("selected", "selected");
    initddlServer(gameCode, GetSelectedValue("ddlServerKey"));

}

function initddlServer(gameCode, key) {
    if (gameCode != null && gameCode != undefined && key != null && key != undefined && gameCode != '-1') {
        jQuery.ajax({
            url: '/Ajax.aspx',
            type: 'get',
            data: 'methodName=LoadServerItems&para=' + gameCode + '&key=' + key + '&date=' + new Date(),
            dataType: 'json',
            error: function() { alert("Error!"); },
            success: function(json) {
                if (json != null && json.length > 0) {
                    var name, code, option;
                    var select = jQuery("#ddlServerUS");
                    if (gameCode == "019") {
                        select = jQuery("#ddlServerEu");
                    }
                    for (var i = 0; i < json.length; i++) {
                        name = json[i].ServerNameOther;
                        code = json[i].Code;
                        option = "<option value='" + code + "'>" + name + "</option>";
                        select.append(option);
                    }
                    select.find("option:first").text("--Choose--");
                }
            }
        });
    }
}
function ChangeProductByMoneyType()
{
  var selectProduct=GetSelectedValue('ddlProduct');
   var serverCode = GetSelectedValue("ddlServerUS");
    if (GetSelectedValue("ddlGame") == "019") 
    {
        serverCode = GetSelectedValue("ddlServerEu");
    } 
    if (serverCode != null && serverCode != undefined && serverCode != '-1') {
        jQuery.ajax({
            url: '/Ajax.aspx',
            type: 'get',
            data: 'methodName=LoadProductItems&para=' + serverCode + '&mulit=true&date=' + new Date(),
            dataType: 'html',
            error: function() { alert("error"); },
            success: function(html) {
                if (html != null && html.length > 0) {
                    var name, code, option;
                    var data = html.split('|');
                    debugger;
                    for (var i = 0; i < data.length; i++) {
                        if (i == 0) {
                            jQuery("#ddlProduct").children().remove();
                        }                                                            
                        var product = data[i].split('@');
                        name = product[1];
                        code = product[2];
                        var temp=product[2]; 
                        var  pricelist=temp.split('^');                  
                        var price=0;
                        price=pricelist[0];
                         if(jQuery('#ddlMoneyType').val()=="EUR")
                         {
                           price=pricelist[1];                       
                         }
                         if(jQuery('#ddlMoneyType').val()=="GBP")
                         {
                           price=pricelist[2];                      
                         } 
                   
                        
                        option = "<option value=\"" + code + "\">" + name +" | "+price+"</option>";
                        jQuery("#ddlProduct").append(option);
                        
                       
                    }
                   
                    
                    jQuery("#ddlProduct option:first").attr("selected", "selected");
                     if(selectProduct!= null && selectProduct!= undefined)
                       {
                          document.getElementById('ddlProduct').value=selectProduct;
                       }
                
                    inittxtPrice();
                }
            }
        });
    }  

}
function initddlProduct(serverCode) {

    if (serverCode != null && serverCode != undefined && serverCode != '-1') {
        jQuery.ajax({
            url: '/Ajax.aspx',
            type: 'get',
            data: 'methodName=LoadProductItems&para=' + serverCode + '&mulit=true&date=' + new Date(),
            dataType: 'html',
            error: function() { alert("error"); },
            success: function(html) {
                if (html != null && html.length > 0) {
                    var name, code, option;
                    var data = html.split('|');
                    for (var i = 0; i < data.length; i++) {
                        if (i == 0) {
                            jQuery("#ddlProduct").children().remove();
                        }
                                                            
                        var product = data[i].split('@');
                        name = product[1];
                        code = product[2];
                        var temp=product[2]; 
                        var  pricelist=temp.split('^');                  
                        var price=0;
                        price=pricelist[0];
                         if(GetSelectedValue("ddlGame")=="019")
                         {
                           price=pricelist[1];                       
                         }                     
                        
                        option = "<option value=\"" + code + "\">" + name +" | "+price+"</option>";
                        jQuery("#ddlProduct").append(option);
                    }
                   
                    
                    jQuery("#ddlProduct option:first").attr("selected", "selected");
                    if (serverCode.substr(0, 3) == "019")
                        jQuery('#ddlMoneyType>option:nth-child(2)').attr('selected', true);
                    if (serverCode.substr(0, 3) == "013")
                        jQuery('#ddlMoneyType>option:nth-child(1)').attr('selected', true); 
                
                    inittxtPrice();
                }
            }
        });
    }
}

function ddlMoneyType_Changed() {
    inittxtPrice();
    ChangeProductByMoneyType();
}

function inittxtPrice() {
    var data = getMoney("ddlProduct", "ddlMoneyType");
  
    jQuery("#txtPrice").val(data.price);
}

function QuickGold_Submit() {
    if (document.getElementById('txtPrice').value.indexOf('0.00') != -1) {
        alert('Please choose your product');
        
    }
    else {
        var data = getMoney("ddlProduct", "ddlMoneyType");
      
        if (data.realPrice <= 0.00) {
            alert('Please choose your product');
        }
        else {
            jQuery("#hfPrice").val(data.realPrice);
            jQuery("#hfMoneyType").val(data.moneyType);
            jQuery("#hfUSDPrice").val(data.usdPrice);
            /*<input type="hidden" value="" id="hfGame" name="game" />
            <input type="hidden" value="" id="hfServer" name="server" />
            <input type="hidden" value="" id="hfProduct" name="product" />
            <input type="hidden" value="" id="hfPriceText" name="priceText" />*/
            jQuery("#hfGame").val(jQuery("#ddlGame option:selected:first").text());
            var gameCode = GetSelectedValue("ddlGame");
            if (gameCode == '019') {
                jQuery("#hfServer").val(jQuery("#ddlServerEu option:selected:first").text());
                jQuery("#hfServerCode").val(jQuery("#ddlServerEu option:selected:first").val());
            }
            else {
                jQuery("#hfServer").val(jQuery("#ddlServerUS option:selected:first").text());
                jQuery("#hfServerCode").val(jQuery("#ddlServerUS option:selected:first").val());
            }
            jQuery("#hfProduct").val(jQuery("#ddlProduct option:selected:first").text());
            jQuery("#hfPriceText").val(jQuery("#txtPrice").val());
            jQuery("#fm_QuickGold").submit();
        }
    }
}

function getMoney(ddlProductId, ddlMTypeId) {

    var type = 'USD';
    var price = '$ 0.00';
    var usdPrice_str = '$ 0.00';
    var realPrice = 0.00;
    var usdPrice = 0.00;
    
    var product = jQuery("#" + ddlProductId + " option:selected:first").val();
    type = jQuery("#" + ddlMTypeId + " option:selected:first").val();
    if (isNoBlank(product) && isNoBlank(type)) {
        var prices = product.split('^');
        price = prices[0];
        usdPrice_str = prices[0];
        if (type == 'EUR') {
            price = prices[1];
        }
        if (type == 'GBP') {
            price = prices[2];
        }
        realPrice = parseFloat(price.substring(1, price.length ));
        usdPrice = parseFloat(usdPrice_str.substring(1, usdPrice_str.length));

        if (isNoBlank(price) && isNaN(realPrice) == false && isNaN(usdPrice) == false) {
            return { moneyType: type, price: price, realPrice: formatDecimal(realPrice, 2), usdPrice: formatDecimal(usdPrice, 2) };
        }
    }

    return { moneyType: 'USD', price: '$ 0.00', realPrice: 0.00 ,usdPrice:usdPrice};
}

function formatDecimal(src, pos) { return Math.round(src * Math.pow(10, pos)) / Math.pow(10, pos); }
/*END*/

/*PL部分*/

function processPLAjax(url, type, data, dataType, fn) {
    jQuery.ajax({
        url: url,
        type: type,
        data: data,
        dataType: dataType,
        success: fn
    });
}

function ddlPLGame_Changed() {
    jQuery("#s_level option:first,#e_level option:first").attr("selected", "selected");
    jQuery("#txtPLPrice").val("0.00");
    jQuery("#txtPLTime").val("0");
}

function level_Changed() {
    var s_level = jQuery("#s_level").val();
    var e_level = jQuery("#e_level").val();
    var gamecode = GetSelectedValue("plGame");
    if (validateLevel(gamecode, s_level, e_level)) {
        var url = '/powerleveling/plAjax.aspx';
        var type = 'get';
        var data = 'methodName=GetPriceByLevel&gameCode=' + gamecode + '&sLevel=' + s_level + '&eLevel=' + e_level + '&goldFree=false&rd=' + Math.random();
        var dataType = 'html';
        processPLAjax(url, type, data, dataType, procAjaxData);
    }
    else {
        jQuery("#txtPLPrice").val("0.00");
        jQuery("#txtPLTime").val("0");
    }
}

function procAjaxData(html) {
    if (isNoBlank(html) == false) {
        jQuery("#txtPLPrice").val("0.00");
        jQuery("#txtPLTime").val("0");
        return;
    }

    var data = html.split('|');
    if (data.length < 2) {
        jQuery("#txtPLPrice").val("0.00");
        jQuery("#txtPLTime").val("0");
        return;
    }
    jQuery('#txtPLPrice').val(formatNum(data[0], 2));
    jQuery('#txtPLTime').val(data[1]);
}


function validateLevel(gamecode, s_level, e_level) {

    if (s_level == undefined || s_level == null || s_level == "-1") {
        return false;
    }

    if (e_level == undefined || e_level == null || e_level == "-1") {
        return false;
    }

    if (gamecode == undefined || gamecode == null || gamecode == "") {
        return false;
    }

    if (parseInt(s_level) >= parseInt(e_level)) {
        return false;
    }

    return true;
}

function toFloat(str) {
    var number = parseFloat(str);
    if (isNaN(number)) {
        number = 0.00;
    }
    return number;
}

function isNoBlank(str) {
    var notBlank = true;
    if (str == undefined || str == null) {
        notBlank = false;
    }
    else {
        var reg = new RegExp(/\S+/);
        notBlank = reg.test(str);
    }
    return notBlank;
}


function formatNum(src, pos) {
    return Math.round(src * Math.pow(10, pos)) / Math.pow(10, pos);
}

function levelSubmit() {
    var gamecode = GetSelectedValue("plGame");
    if (isNoBlank(gamecode) && validateLevel(gamecode, jQuery("#s_level").val(), jQuery("#e_level").val())) {

        jQuery("#level-s_level").val(jQuery("#s_level").val());
        jQuery("#level-e_level").val(jQuery("#e_level").val());
        jQuery("#level-txtPrice").val(jQuery("#txtPLPrice").val());
        jQuery("#level-txtDays").val(jQuery("#txtPLTime").val());

        jQuery("#fm_level").attr("action", '/powerleveling/PLOrderInfo.aspx');
        jQuery("#level-pl").val("level");
        jQuery("#level-gameCode").val(gamecode);
        jQuery("#fm_level").submit();

    }
    else {
        alert("Please choose your level!");
    }

    return false;
}

function tblIndex_Submit() {
    var $li = jQuery(this).parent("li:first");
    if ($li) {
        var i = $li.attr("index");
        var index = parseInt(i);
        if (isNaN(index) == false && index > -1) {
            jQuery("#tblIndex").val(index);
            var gameCode = jQuery("#hfGameCode").val();
            window.location.href = '/powerleveling/PLProduct_WOW.aspx?gameCode=' + gameCode + '&tblIndex=' + index;

        }
    }
}

function displayPKTip(elm) {
    jQuery(elm).find("div.v_box").show();
}

function hidePKTip(elm) {
    jQuery(elm).find("div.v_box").hide();
}

function plHotPackage_Submit() {
    var pk_itemGuid = jQuery(this).siblings("input:hidden[name=pk_itemGuid]:first").val();
    var pk_guid = jQuery(this).siblings("input:hidden[name=pk_guid]:first").val();
    if (isNoBlank(pk_itemGuid) && isNoBlank(pk_guid)) {
        jQuery("#pk_itemGuid").val(pk_itemGuid);
        jQuery("#pk_guid").val(pk_guid);
        var gameCode = jQuery("#hfGameCode").val();
        var action = '/powerleveling/PLOrderInfo.aspx?gameCode=' + gameCode + '&pl=pk';
        jQuery("#fm_pk").attr("action", action);
        jQuery("#fm_pk").submit();

    }
}
/*END*/

/*Account部分*/

function account_Query() {
    var gameCode = jQuery("#hfGameCode").val();
    var suffix = 'us';

    var DDLGameServer = GetSelectedValue("DDLGameServer_" + suffix);
    var DDLClass = GetSelectedValue("DDLClass_" + suffix);
    var DDLFaction = GetSelectedValue("DDLFaction_" + suffix);
    var DDLRace = GetSelectedValue("DDLRace_" + suffix);
    var DDLStartLevel = GetSelectedValue("DDLStartLevel_" + suffix);
    var DDLEndLevel = GetSelectedValue("DDLEndLevel_" + suffix);
    var DDLLowPrice = GetSelectedValue("DDLLowPrice_" + suffix);
    var DDLHighPrice = GetSelectedValue("DDLHighPrice_" + suffix);
    var href = '/account/AccountProduct_WoW.aspx?gameCode=' + gameCode + '&gameServer=' + DDLGameServer + '&class=' + DDLClass + '&faction=' + DDLFaction + '&race=' + DDLRace + '&sLevel=' + DDLStartLevel + '&eLevel=' + DDLEndLevel + '&lowPrice=' + DDLLowPrice + '&highPrice=' + DDLHighPrice;
    jQuery(this).attr("href", href);
}


/*END*/
