/*
 * AJAX Scripting file
 * Think Online Web Desktop Toolkit
 * Andy Tsai, Think Online, Jan 2009
 * Dedicated to the one that has my heart.
 * last change ver. 2009-1001
 */
var ajax_conn = null;
var ajax_data = null;
var call = null;
var lparam = null;

function GetXmlHttpObject() {
  try {
  // All standards
    ajax_conn = new XMLHttpRequest();
  } catch (e) {
  // IE, all
    try {
      ajax_conn =new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
      ajax_conn =new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
  return ajax_conn;
}

function retrieve_data(url, cb, alpha) {
  ajax_conn =GetXmlHttpObject();
  if (ajax_conn==null) {
    alert ("Your browser does not support AJAX!");
    return;
  } 
  call = cb;
  lparam = alpha;
  ajax_conn.onreadystatechange = new Function("if (ajax_conn.readyState == 4) call(ajax_conn.responseText, lparam);");
  ajax_conn.open("GET",url,true);
  ajax_conn.send(null);
}

function send_data(url, formed_data, cb, alpha) {
  ajax_conn =GetXmlHttpObject();
  if (ajax_conn==null) {
    alert ("Your browser does not support AJAX!");
    return;
  } 
  call = cb;
  lparam = alpha;
  ajax_conn.onreadystatechange = new Function("if (ajax_conn.readyState == 4) call(ajax_conn.responseText,lparam);");
  ajax_conn.open("POST",url);
  ajax_conn.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  ajax_conn.setRequestHeader("Content-length", formed_data.length);
  ajax_conn.setRequestHeader("Connection", "close");
  ajax_conn.send(formed_data);
}
