function ajax_call(uri,el_id,id)
  {  var xmlHttp;
  try
    {    // Firefox, Opera 8.0+, Safari
            xmlHttp=new XMLHttpRequest();    }
  catch (e)
    {    // Internet Explorer
            try
      {      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");      }
    catch (e)
      {      try
        {        xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");        }
      catch (e)
        {        alert("Your browser does not support AJAX!");        return false;        }      }    }

    xmlHttp.onreadystatechange=function()
      {
      if(xmlHttp.readyState==4)
        {
         document.getElementById(el_id).innerHTML=xmlHttp.responseText;
        }
      if(xmlHttp.readyState<4)
        {
         document.getElementById(el_id).innerHTML="<div id=\"l_sign\"><img src=\"img/loading1.gif\" width=12 height=5></div>";
        }

      }
    xmlHttp.open("GET",uri+id,true);
    xmlHttp.send(null);  }

function ajax_post(uri,el_id,var_str)
  {  var xmlHttp;
  try
    {    // Firefox, Opera 8.0+, Safari
            xmlHttp=new XMLHttpRequest();    }
  catch (e)
    {    // Internet Explorer
            try
      {      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");      }
    catch (e)
      {      try
        {        xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");        }
      catch (e)
        {        alert("Your browser does not support AJAX!");        return false;        }      }    }

    xmlHttp.onreadystatechange=function()
      {
      if(xmlHttp.readyState==4)
        {
         document.getElementById(el_id).innerHTML=xmlHttp.responseText;
        }
      if(xmlHttp.readyState<4)
        {
         document.getElementById(el_id).innerHTML="<div id=\"l_sign\"><img src=\"img/loading1.gif\" width=12 height=5></div>"
        }

      }
      var var_array, value;
      var_array = var_str.split("&");
      var_str = "";
      for (i in var_array){

                           if(document.getElementById(var_array[i]).innerHTML)
                              value = document.getElementById(var_array[i]).innerHTML;
                           else
                              value = document.getElementById(var_array[i]).value;

                        var_str = var_str + var_array[i] + "=" + URLEncode(value) + "&";
                }
    if(uri.indexOf("?")==-1)
       div_char = "?";
    else
       div_char = "&";
    xmlHttp.open("GET",uri+div_char+var_str,true);
    xmlHttp.send(null);  }

    //encodeURIComponent

function URLEncode(plaintext)
{
        var SAFECHARS = "0123456789" +
                                        "ABCDEFGHIJKLMNOPQRSTUVWXYZ" +
                                        "abcdefghijklmnopqrstuvwxyz" +
                                        "-_.!~*'()";
        var HEX = "0123456789ABCDEF";

        var encoded = "";
        for (var i = 0; i < plaintext.length; i++ ) {
                var ch = plaintext.charAt(i);
            if (ch == " ") {
                    encoded += "+";                                // x-www-urlencoded, rather than %20
                } else if (SAFECHARS.indexOf(ch) != -1) {
                    encoded += ch;
                } else {
                    var charCode = ch.charCodeAt(0);
                        if (charCode > 255) {
                                encoded += encodeURI(ch);
                        } else {
                                encoded += "%";
                                encoded += HEX.charAt((charCode >> 4) & 0xF);
                                encoded += HEX.charAt(charCode & 0xF);
                        }
                }
        }

        return encoded;
};

