﻿ 
 var divGame;
 var divServer ;
 var divProduct;
 var ulGame;
 var currencyCode="";
 window.onload=function(){
    //item price
    itemPriceGet();
    //end
    divGame = document.getElementById('div_game');
    divServer = document.getElementById('div_server');
    divProduct = document.getElementById('div_product');
    ulGame = document.getElementById("ul_game");

    var fgold = document.getElementById("fgold");
    currencyCode = fgold.currency.value;
    if(document.getElementById(currencyCode))
        document.getElementById(currencyCode).className="hover";

    //No choice server, on the left side of the gold list pictures
    var proList =  document.getElementById("productList");
    if(proList)
        proList.innerHTML="<img src='/images/gold_pro_list_bg.jpg' />";

    //First loading shows corresponding transmission come game name
    if(document.getElementById("divGame") && document.getElementById("input_NameEN") && document.getElementById("input_NameEN").value)
        document.getElementById("divGame").innerHTML = document.getElementById("input_NameEN").value;
        
    //Loading game list
    divGamesGet();
    LoadServer();
}
//Home page on this Item price display
function itemPriceGet()
{
    var priceList = document.getElementsByName("pid");
    var avgprice =document.getElementsByName("avgprice")
    for (var i = 0; i < priceList.length; i++) {
        if(avgprice[i]!=null && avgprice[i].value!="")
            GetItemPrice(priceList[i],avgprice[i].value);
    }
}
//Monetary type change
function currencyChange(code,a)
{
    var fgold = document.getElementById("fgold");
    a.className = "hover";
    if(document.getElementById(currencyCode))
    {   
        document.getElementById(currencyCode).className="";
        currencyCode=a.id;
    } 
    fgold.currency.value=code;
    //Drop-down box in price change
    priceListGets(true,true);
    
    
}
 //Display game list
function showGame()
{
    if(divGame && divProduct && divServer)
    {
        if(divServer)divServer.style.display="none";
        if(divProduct)divProduct.style.display="none";
        if(divGame.style.display=="none")
            $(divGame).slideDown(300);
        else
            divGame.style.display="none";
    }
}
//Display the server list
function showServer()
{
    if(divGame && divProduct && divServer)
    {
        divGame.style.display="none";
        divProduct.style.display="none";
        if(divServer.style.display=="none")
            $(divServer).slideDown(300);
        else
            divServer.style.display="none";
    }
}
//Display products list
function showProduct()
{
    if(divGame && divProduct && divServer)
    {
        divServer.style.display="none";
        divGame.style.display="none";
        if(divProduct.style.display=="none")
             $(divProduct).slideDown(300);
        else
            divProduct.style.display="none";
     }
}
//Filling game
function divGamesGet()
{
    xmlhttpPost('/common/ajax.html?gamelist', function(q) {
        if (q == '') { return; }
        var s = q.split('@@');
        var text = '', text1 = "<li>", text2 = "</li>";
        for (var i = 0; i < s.length; i++) {
  
            var ss = s[i].split('@');
            if (ss.length != 2) continue;
            //Tectonic div display game list
            text += "<span id=\"" + ss[0] + "\" onclick=\"gameValueChange(this)\">" + ss[1] + "</span>";
          
            if ((i + 1) % 3 == 0) {
                ulGame.innerHTML += text1 + text + text2;
                text = "";
            }
            if ((i + 1) == s.length - 1 && (i + 1) % 3 != 0) {

                ulGame.innerHTML += text1 + text + text2;
                text = "";
            }
        }
         //Filling server
        divServersGet();
    }, null);
   
}

////Filling server
function divServersGet()
{
    var serverList = new Array();
    var input_game = document.getElementById("input_game");
    var b = document.getElementById("b");
    var be = (b && b.value) ? be=b.value.trim() :"A";
    xmlhttpPost('/common/ajax.html?serverlist', function(q) {
        if (q == '') { return; }
        var s = q.split('@@'); 
        for (var i = 0,d=0; i < s.length; i++) {
            var ss = s[i].split('@');
            if (ss.length != 2) continue;
            if(s.length>52)
            {
                var serverName = ss[1].trim();
                var firstName = serverName.substring(0,1);
                if(firstName.trim() == be)
                { 
                    serverList[d++] = s[i];
                } 
            }
            else
            {
                serverList[d++] = s[i];
            }
         }
         if(serverList.length > 0){ selectServers(serverList);}
    }, 'game=' + escape(input_game.value));
}
//According to the server begin A, B, C.. classification
function selectServers(list)
{
    var ulServer = document.getElementById("ul_server");
    ulServer.innerHTML="";
    var text='',text1="<li>",text2="</li>"; 
    for (var i = 0; i < list.length; i++) {
        var ss = list[i].split('@');
        if (ss.length != 2) continue;
        //Tectonic div display game list
        text+="<span id="+ss[0]+" onclick='serverValueChange(this)'>"+ss[1]+"</span>";
        if( (i+1)%6==0 )
        {
            ulServer.innerHTML+=text1+text+text2;
            text="";
        }
        
        if((i+1)==list.length && (i+1)%6!=0)
        {
            ulServer.innerHTML+=text1+text+text2;
            text="";
        }
     }
    
}
//Filling products
function divProductGet()
{
    var input_game = document.getElementById("input_game");
    xmlhttpPost('/common/ajax.html?productlist', function(q) {
        if (q == '') { return; }
        var s = q.split('@@'); 
        var ulProduct = document.getElementById("ul_product");
        ulProduct.innerHTML="";
        for (var i = 0; i < s.length; i++) {
            var ss = s[i].split('@');
            if (ss.length != 2) continue;
            //Tectonic div display game list
            ulProduct.innerHTML+="<li id="+ss[0]+" onclick='productValueChange(this)'>"+ss[1]+"</li>";
         }
        priceListGet(false); 
    }, 'game=' + escape(input_game.value));
   
}
//The left gold list displays
function productListGet()
{
        var f = document.getElementById("fgold");
        var proList = document.getElementById("productList");
        if( !proList){var procode = document.getElementById("input_product").value;changePrice(procode); return;}
        var ulProduct = document.getElementById("ul_product");
        proList.innerHTML="";
        var list = ulProduct.childNodes;
        for(var i=0;i<list.length;i++)
        {
            var str = list[i].innerHTML;
            var index = str.indexOf("/");
            var name = str.substring(0,index);
            var price = str.substring(index+1);
            
            var html = "<li id='"+list[i].id+"' onclick='changeColor(this.id)' onmouseover=\"javascript:this.backgroundColor='#FCFEB7'\" onmouseout=\"javascript:this.backgroundColor=''\">";
            if(name.length>6)
                html+='<div class=\"gold_box_G\"> '+name.substring(0,name.indexOf(' '))+'<br/>'+name.substring(name.indexOf(' ')+1)+' </div>';
            else
                html+='<div class=\"gold_box_G\"> '+name+' </div>';
            html+="<p class=\"red\">"+price+"</p>";
            html+="</li>";
            proList.innerHTML+=html;
            if(i==0 && document.getElementById("input_product").value==''){document.getElementById("input_product").value=list[i].id;changeColor(list[i].id);changePrice(document.getElementById("input_product").value);}
        }
        // return back and select the product
        var pro = document.getElementById("input_product").value;
        changeColor(pro);
}
//Modify the left gold prices
function productListPriceChange()
{
    var ulProduct = document.getElementById("ul_product");
    var proList = document.getElementById("productList");
    if( !ulProduct)return;
    var ulproductcode=document.getElementById("input_product");
    for(var i=0;i<ulProduct.childNodes.length;i++)
    {
        var str = ulProduct.childNodes[i].innerHTML;
        var index = str.indexOf("/");
        var price = str.substring(index+1);
        if(proList) proList.childNodes[i].childNodes[1].innerHTML=price;
         if(ulproductcode.value==ulProduct.childNodes[i].id)
         {
               document.getElementById("divProduct").innerHTML=str;
               if(document.getElementById("price"))
               document.getElementById("price").value=price;
         }
    }
}
//Style switching
function changeColor(id)
{
    //Change the drop-down box price, text unit price
    changePrice(id);
    var proList = document.getElementById("productList");
    if( !proList)return;
    var nodes = proList.childNodes;
    for(var i = 0;i<nodes.length;i++)
    {
        var node = nodes[i];
        if( id == node.id)
        {
            if(!node.getElementsByTagName("p")[0])return;
            node.style.cssText = "background-color:#fcfeb7";
            var price = node.getElementsByTagName("p")[0].innerHTML;
            document.getElementById("fgold").price.value=price;
            document.getElementById("input_product").value = id;
        }
        else
        {
            node.style.cssText = "";
        }
    }
    
}
 //Change the drop-down box price, text unit price
function changePrice(id)
{
    var ulProduct = document.getElementById("ul_product");
    var childNodes = ulProduct.childNodes;
    for( var i=0;i<childNodes.length;i++)
    {
        var node = childNodes[i];
        if(node.id == id)
        {   
            var d =document.getElementById("divProduct");
            d.innerHTML=node.innerHTML;
            var text = d.innerHTML;
            var index = text.indexOf("/");
            var price = text.substring(index+1).trim();
            document.getElementById("fgold").price.value=price;
        }
    }
}



//Drop-down list price

function priceListGet(isChange)
{
   priceListGets(isChange,false);
}

function priceListGets(isChange,iscurrency)
{
    var ulProduct = document.getElementById("ul_product");
    var nodes = ulProduct.childNodes;
    if( !nodes )return;
    var f = document.getElementById("fgold");
    var server = f.input_server.value;
    var currency = f.currency.value;
     if (server == '' && f == '' && currency == '') {   
        return;
    }
    xmlhttpPost('/common/ajax.html?gold.product.pricelist', function(q) {
        if( q == "" )return;
        var s = q.split('@@');
        for(var i=0;i<s.length;i++)
        { 
            var ss = s[i].split('@');
            if(ss.length != 3)continue;
            if(nodes[i] && nodes[i].id == ss[0])
            {
                if(!isChange)
                { 
                    nodes[i].innerHTML=nodes[i].innerHTML+" / "+  ss[1];
                }
                else
                { 
                    var str = nodes[i].innerHTML;
                    var index = str.indexOf("/");
                    var name = str.substring(0,index);
                    nodes[i].innerHTML=name.trim()+" / "+ss[1];
                }
            }
        } 
        if(iscurrency)
          productListPriceChange();
        else
       productListGet(); 
    }, 'server=' + escape(server) +'&currency=' + escape(currency));
}

//The game change
function gameValueChange(d)
{
    var divGame = document.getElementById("divGame");
    document.getElementById("input_game").value=d.id;
    document.getElementById("input_product").value='';
    divGame.innerHTML=d.innerHTML;
    if(document.getElementById("input_NameEN"))
        document.getElementById("input_NameEN").value=d.innerHTML;
    showGame();
    //Change the game, initialization
    init();
    //Display the server list
    divServersGet();
}
//initialization
function init()
{
    document.getElementById("divGame").style.color="";
    document.getElementById("divServer").innerHTML="";
    document.getElementById("divProduct").innerHTML="";
    document.getElementById("ul_product").innerHTML="";
    document.getElementById("ul_server").innerHTML="";
    document.getElementById("price").value="";
     var proList =  document.getElementById("productList");
     if(proList)
            proList.innerHTML="<img src='/images/gold_pro_list_bg.jpg' />";
}
//Server change
function serverValueChange(d)
{
    showServer();
    //the same server ,don't get data
    if(document.getElementById("input_server").value==d.id)return;
    document.getElementById("input_server").value=d.id;
    if(document.getElementById("productList"))
        document.getElementById("productList").innerHTML = "<img src='/images/gold_pro_list_bg.jpg' />";
    document.getElementById("ul_product").innerHTML="";
    var divServer = document.getElementById("divServer");
    divServer.innerHTML=d.innerHTML;
    document.getElementById("input_servername").value=d.innerHTML;
    document.getElementById("input_product").value
    divProductGet();
}

function LoadServer()
{
     var server=document.getElementById("input_server");
     if(server.value!="")
     {
        document.getElementById("divServer").innerHTML=document.getElementById("input_servername").value;
        divProductGet();
        var proCode = document.getElementById("input_product").value;
     }
}

function productValueChange1(d)
{
    var divProduct = document.getElementById("divProduct");
    document.getElementById("input_product").value=d.id;
    divProduct.innerHTML=d.innerHTML;
    //In a text-area display price
    var text = d.innerHTML;
    var index = text.indexOf("/");
    var price = text.substring(index+1).trim();
    document.getElementById("fgold").price.value=price;
}
//Product change
function productValueChange(d)
{
    productValueChange1(d);
    //To the left of the product modifications
    changeColor(d.id);
    showProduct();
}

//Closed layer
function closeDiv(id)
{
    document.getElementById(id).style.display="none";
}

