/* for a synchronous AJAX request */

function sjax_getFile(url) {
  if (window.XMLHttpRequest) {
    AJAX=new XMLHttpRequest();
  } else {
    AJAX=new ActiveXObject("Microsoft.XMLHTTP");
  }
  if (AJAX) {
     AJAX.open("GET", url, false);
     AJAX.send(null);
     return AJAX.responseText;
  } else {
     return false;
  }
}

function sjax_putForm(url,theform) {
  if (window.XMLHttpRequest) {
    AJAX=new XMLHttpRequest();
  } else {
    AJAX=new ActiveXObject("Microsoft.XMLHTTP");
  }
  if (AJAX) {
     AJAX.open("PUT", url, false);
     AJAX.send(create_request_string(theform));
     return AJAX.responseText;
  } else {
     return false;
  }
}

function create_request_string(theform)
{
var reqStr = "";

for(i=0; i < theform.elements.length; i++)
{
isformObject = false;

switch (theform.elements[i].tagName)
{
case "INPUT":

switch (theform.elements[i].type)
{
case "text":
case "hidden":
reqStr += theform.elements[i].name + "=" + encodeURIComponent(theform.elements[i].value);
isformObject = true;
break;

case "checkbox":
if (theform.elements[i].checked)
{
reqStr += theform.elements[i].name + "=" + theform.elements[i].value;
}else{
reqStr += theform.elements[i].name + "=";
}
isformObject = true;
break;

case "radio":
if (theform.elements[i].checked)
{
reqStr += theform.elements[i].name + "=" + theform.elements[i].value;
isformObject = true;
}
}
break;

case "TEXTAREA":

reqStr += theform.elements[i].name + "=" + encodeURIComponent(theform.elements[i].value);
isformObject = true;
break;

case "SELECT":
var sel = theform.elements[i];
reqStr += sel.name + "=" + sel.options[sel.selectedIndex].value;
isformObject = true;
break;
}

if ((isformObject) && ((i+1)!= theform.elements.length))
{
reqStr += "&";
}

}

return reqStr;
}

