function GetData()
{ 
  this.xmlControl = false;
  this.retrieveData = retrieveData;
  this.name = "getDataObject";
  this.showLoad = false;
  this.loadElement = "";
  this.status = "";this.init();
  this.getDataAsString = getDataAsString;
  this.ExecuteNonResult = ExecuteNonResult;
  
  function getDataAsString(url, urlVal)
  {
    try
    {
      if (!this.xmlControl) 
      {
        alert("Bohužel, váš prohlížeč nepodporuje XMLHTTP, pomocí kterého jsou získávána data.\nZkontrolujte prosím, zda nemáte zakázané ActiveX, či prohlížeč starší než Internet Explorer 5, Netscape Navigator 6.1, či Mozilla 0.9");
        return;
      }
      this.xmlControl.open("POST",url,false);
      this.xmlControl.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
      this.xmlControl.setRequestHeader('charset','utf-8');
      this.xmlControl.send(urlVal);
      this.status = this.xmlControl.status;
      if (this.status == "200")
      {
        var values = this.xmlControl.responseText;
        return values;
      } else {
        throw "Chyba serveru " + this.status;
      }
    }
    catch(e)
    {
      alert("Chyba při práci s daty na adrese:\n" + url + "\n" + e.toString() + "\n" + e.lineNumber + "\n" + e.message);
    }  
  }
  function ExecuteNonResult(url, urlVal)
  {
    try
    {
      if (!this.xmlControl) 
      {
        alert("Bohužel, váš prohlížeč nepodporuje XMLHTTP, pomocí kterého jsou získávána data.\nZkontrolujte prosím, zda nemáte zakázané ActiveX, či prohlížeč starší než Internet Explorer 5, Netscape Navigator 6.1, či Mozilla 0.9");
        return;
      }
      this.xmlControl.open("POST",url,false);
      this.xmlControl.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
      this.xmlControl.send(urlVal);
      this.status = this.xmlControl.status;
      if (!this.status == "200")
      {
        throw "Chyba serveru " + this.status;
      }
    }
    catch(e)
    {
      alert("Chyba při práci s daty" + e.toString() + "\n" + e.lineNumber + "\n" + e.message);
    } 
  }
  function retrieveData(url,target,urlVal)
  {
    try
    {
      if (!this.xmlControl) 
      {
        alert("Bohužel, váš prohlížeč nepodporuje XMLHTTP, pomocí kterého jsou získávána data.\nZkontrolujte prosím, zda nemáte zakázané ActiveX, či prohlížeč starší než Internet Explorer 5, Netscape Navigator 6.1, či Mozilla 0.9");
        return;
      }
      this.xmlControl.open("POST",url,false);
      this.xmlControl.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
      this.xmlControl.send(urlVal);
      this.status = this.xmlControl.status;
      if (this.status == "200")
      {
        var values = this.xmlControl.responseText;
        var targetElement = document.getElementById(target);
        if(!targetElement)
           throw "Neexistuje element id " + target;        
        targetElement.innerHTML = values;        
      } else {
        throw "Chyba serveru " + this.status;
      }
    }
    catch(e)
    {
      alert("Chyba při práci s daty" + e.toString() + "\n" + e.lineNumber + "\n" + e.message);
    }
  }
}
GetData.prototype.init = function()
{
  try
  {
    this.xmlControl = new ActiveXObject("MSXML2.XMLHTTP");
  }
  catch(exce)
  {
    objectAlert(exce,this);
  }
  if(!this.xmlControl)
  {
    try
    {
      this.xmlControl = new XMLHttpRequest();
    }
    catch(exce)
    {
      objectAlert(exce,this);
    }
  }
}
function objectAlert(exce,object)
{
  return("nastala chyba v objektu \"" + object.name + "\"\n" + exce.toString() + "\nřádek:" + exce.lineNumber);
}

