﻿var http_request = false;
   function makeRequest(url, parameters, fname) {
      http_request = false;
      if (window.XMLHttpRequest) {
         http_request = new XMLHttpRequest();
      } else if (window.ActiveXObject) {
         try {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
         } catch (e) {
            try {
               http_request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
         }
      }
      if (!http_request) {
         alert('Cannot create XMLHTTP instance');
         return false;
      }
      http_request.onreadystatechange = fname;
      http_request.open('GET', url + parameters, true);
      http_request.send(null);
   }

   function selectGame(game) {
      if (game != null)
         makeRequest('/GetresponseXML.aspx', '?GameNo=' + game, getServer);
   }
   function getServer() {
      var ddlServer = document.getElementById("UcQuickOrder1_ddlServer");
      if (http_request.readyState == 4) {
         if (http_request.status == 200) {
            var text = http_request.responseText;
            text = text.substr(0, text.length-1);
            var server = text.split("!");
            
            ddlServer.options.length = 0;
            for(var i=0; i<server.length; i++) {
               if(server[i].split("?")[0] != null && server[i].split("?")[1] != null)
                  ddlServer.options.add(new Option(server[i].split("?")[0], server[i].split("?")[1]));
            }
            
            selectServer(ddlServer.value);
         } else {
            alert('Please wait a moment.');
         }
      } else {
         ddlServer.options.length = 0;
         ddlServer.options.add(new Option("Loading Server...", ""));
         
         var ddlGold = document.getElementById("UcQuickOrder1_ddlGold");
         ddlGold.options.length = 0;
         ddlGold.options.add(new Option("Loading Gold...", ""));
      }
   }

   function selectServer(server) {
      if (server != null)
         makeRequest('/GetresponseXML.aspx', '?GameServerNo=' + server, getProduct);
   }
   function getProduct() {
      var ddlGold = document.getElementById("UcQuickOrder1_ddlGold");
      if (http_request.readyState == 4) {
         if (http_request.status == 200) {
            var text = http_request.responseText;
            text = text.substr(0, text.length-1);
            var gold = text.split("!");
            
            ddlGold.options.length = 0;
            for(var i=0; i<gold.length; i++) {
               if(gold[i].split("?")[0] != null && gold[i].split("?")[1] != null)
                  ddlGold.options.add(new Option(gold[i].split("?")[0], gold[i].split("?")[1]));
            }
         } else {
            alert('Please wait a moment.');
         }
      } else {
         ddlGold.options.length = 0;
         ddlGold.options.add(new Option("Loading Gold...", ""));
      }
      
      document.getElementById("UcQuickOrder1_hServer").value = document.getElementById("UcQuickOrder1_ddlServer").options[document.getElementById("UcQuickOrder1_ddlServer").selectedIndex].value;
      document.getElementById("UcQuickOrder1_hName").value = document.getElementById("UcQuickOrder1_ddlGold").options.item(document.getElementById("UcQuickOrder1_ddlGold").selectedIndex).text;
      document.getElementById("UcQuickOrder1_hGuid").value = document.getElementById("UcQuickOrder1_ddlGold").options[document.getElementById("UcQuickOrder1_ddlGold").selectedIndex].value;
   }
   
   function selectLevel(game, current, desired) {
      if (game != null && current != null && desired != null) {
         if (parseInt(current) >= parseInt(desired)) {
            document.getElementById("tboxTime").value = "0 Hour";
            document.getElementById("tboxPrice").value = "0";
            document.getElementById("hTime").value = "0";
            document.getElementById("hPrice").value = "0";
         } else {
            makeRequest('/GetresponseXML.aspx', '?GameNo=' + game + '&CurrentLevel=' + current + '&DesiredLevel=' + desired, getLevelPrice);
         }
      }
   }
   function getLevelPrice() {
      var tboxTime = document.getElementById("tboxTime");
      var tboxPrice = document.getElementById("tboxPrice");
      var hTime = document.getElementById("hTime");
      var hPrice = document.getElementById("hPrice");
      if (http_request.readyState == 4) {
         if (http_request.status == 200) {
            var text = http_request.responseText;
            text = text.substr(0, text.length-1);
            if(text.split("!")[0] != null && text.split("!")[1] != null) {
               tboxTime.value = text.split("!")[0];
               tboxPrice.value = text.split("!")[1];
               hTime.value = text.split("!")[2];
               hPrice.value = text.split("!")[1];
            }
         } else {
            alert('Please wait a moment.');
         }
      } else {
         tboxTime.value = "Loading...";
         tboxPrice.value = "Loading...";
         hTime.value = "0";
         hPrice.value = "0";
      }
   }
   
   window.onload = function() { selectGame("World of Warcraft US"); }
