function getXMLHttp(){
    if(typeof XMLHttpRequest != 'undefined'){
        var ajax = new XMLHttpRequest();
        return ajax;
    }
    else
    {
        var objects = ["MSXML2.XMLHTTP.5.0","MSXML2.XMLHTTP.4.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"];
        for(counter = 0 ; counter < objects.length ; counter++ ){
            try{
               var ajax = new ActiveXObject(objects[counter]);
               return ajax;
            } catch(e){
                 // do nothing
            }
        }
    }
    throw new Error("Unable to establish AJAX connection with server");
}

function checkusername(el)
{
    var uname = el.value;
    if(uname=='')return;
    var msg = document.getElementById('usernamemsg');
    try
    {
       var ajax = getXMLHttp();
       ajax.open("get","/sm/ajax/checkusername.php?username="+uname,"true");
       ajax.onreadystatechange = function()
            {

              if(ajax.readyState!=4) return;
              if(ajax.status == 200){
                  if(ajax.responseText.length <=1){
                      msg.innerHTML = '&nbsp;';
                      el.focus();
                  }
                  else
                  {
                      var errorp = document.createElement('p');
                      errorp.className="errormsg";
                      var tnod = document.createTextNode(ajax.responseText);
                      errorp.appendChild(tnod);
                      remove_all_children(msg);
                      msg.appendChild(errorp);
                      el.focus();
                  }
              }
              else
              {
                  el.focus();
              }
          }

        ajax.send(null);
    } catch(anError){alert(anError);
    }
}


function checkorgname(el)
{
    var orgname = el.value;
    if(orgname=='')return;
    try
    {
       var ajax = getXMLHttp();
       ajax.open("get","/ajax/matchorgname.php?limit=20&amp;o="+orgname,"true");
       ajax.onreadystatechange = function()
            {

              if(ajax.readyState!=4) return;
              if(ajax.status == 200){
                  if(ajax.responseText.length <=1){
                      //nothing
                  }
                  else
                  {
                      el.value = ajax.responseText;
                      errorp.appendChild(tnod);
                      remove_all_children(msg);
                      msg.appendChild(errorp);
                      el.focus();
                  }
              }
              else
              {
                  el.focus();
              }
          }

        ajax.send(null);
    } catch(anError){alert(anError);
    }
}

function matchsupplierorg(el, warning)
{
    var orgname = el.value;
    if(orgname=='')return;
    try
    {
       var ajax = getXMLHttp();
       ajax.open("get","/ajax/matchsupplierorgname.php?q="+orgname,"true");
       ajax.onreadystatechange = function()
            {

              if(ajax.readyState!=4) return;
              if(ajax.status == 200){
                  if(ajax.responseText.length <=1){
                      var wspan = document.getElementById(warning);
                      remove_all_children(wspan);
                      el.focus();
                  }
                  else
                  {
                      var wspan = document.getElementById(warning);
                      remove_all_children(wspan);
                      wspan.innerHTML = ajax.responseText;
                      el.focus();
                  }
              }
              else
              {
                  el.focus();
              }
          }

        ajax.send(null);
    } catch(anError){alert(anError);
    }
}

function matchorg(el, warning)
{
    var orgname = el.value;
    if(orgname=='')return;
    try
    {
       var ajax = getXMLHttp();
       ajax.open("get","/ajax/matchorgname.php?q="+orgname,"true");
       ajax.onreadystatechange = function()
            {

              if(ajax.readyState!=4) return;
              if(ajax.status == 200){
                  if(ajax.responseText.length <=1){
                      var wspan = document.getElementById(warning);
                      remove_all_children(wspan);
                      el.focus();
                  }
                  else
                  {
                      var wspan = document.getElementById(warning);
                      remove_all_children(wspan);
                      wspan.innerHTML = ajax.responseText;
                      el.focus();
                  }
              }
              else
              {
                  el.focus();
              }
          }

        ajax.send(null);
    } catch(anError){alert(anError);
    }
}


function remove_all_children(el)
{
    if ( el.hasChildNodes() )
    {
        while ( el.childNodes.length >= 1 )
        {
             el.removeChild( el.firstChild );
        }
   }
}

