var XMLHttpRequestObject = createXMLHttpRequestObject();

function createXMLHttpRequestObject()
{
  var XMLHttpRequestObject = false;
  
  try
  {
    XMLHttpRequestObject = new XMLHttpRequest();
  }
  catch(e)
  {
    var aryXmlHttp = new Array(
                               "MSXML2.XMLHTTP",
                               "Microsoft.XMLHTTP",
                               "MSXML2.XMLHTTP.6.0",
                               "MSXML2.XMLHTTP.5.0",
                               "MSXML2.XMLHTTP.4.0",
                               "MSXML2.XMLHTTP.3.0"
                               );
    for (var i=0; i<aryXmlHttp.length && !XMLHttpRequestObject; i++)
    {
      try
      {
        XMLHttpRequestObject = new ActiveXObject(aryXmlHttp[i]);
      } 
      catch(e){document.write("createXMLHttpRequestObject: XMLHttpRequestObject Error");}
    }
  }
  
  if (!XMLHttpRequestObject)
  {
    //alert("Error: failed to create the XMLHttpRequest object.");
  }
  else 
  {
    return XMLHttpRequestObject;
  }
}

function checkFormInput(keyEvent, dataSource, idForm)
{
  keyEvent = (keyEvent) ? keyEvent: window.event;
  input = (keyEvent.target) ? keyEvent.target : keyEvent.srcElement;
  
  if(keyEvent.type == "checkbox")
  {
    keyEvent.value = keyEvent.checked;
  }
  else if(keyEvent.type == "radio")
  {
    keyEvent.value = keyEvent.checked;
    if (keyEvent.value)
    {
      for(i=0; i<document.getElementById(idForm).elements.length - 1; i++)
      {
        /*Debug
        //alert(document.getElementById(idForm).elements[i].name);
        //alert(document.getElementById(idForm).elements[i].value);
        //alert(document.getElementById(idForm).elements[i].checked);
        */
        if(document.getElementById(idForm).elements[i].name==keyEvent.name)
        {
          /*//alert(document.getElementById(idForm).elements[i].name+':'+document.getElementById(idForm).elements[i].value);*/
          document.getElementById(idForm).elements[i].value = document.getElementById(idForm).elements[i].checked;
        }
      }
    } /* End: if (keyEvent.value)*/
  } /* End: if (keyEvent.type == "change")*/
}

function sendFormData(idForm, dataSource, object, divID, ifLoading)
{
	//alert('idForm: ' + idForm);
	////alert('dataSource: ' + dataSource);
	//alert('divID: ' + divID);
	////alert('object: ' + object);
	////alert('ifLoading: ' + ifLoading);

	// nazov objektu
	var objname = object.name;
	////alert('objname: ' + objname);
	var objvalue = object.value;
	//alert('objvalue: ' + objvalue);

  var postData='';
  var strReplaceTemp;
  
  if(XMLHttpRequestObject)
  {
	  //alert('object');
    XMLHttpRequestObject.open("POST", dataSource);
    XMLHttpRequestObject.setRequestHeader("Method", "POST " + dataSource + " HTTP/1.1");
	  XMLHttpRequestObject.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

    //alert(XMLHttpRequestObject.onreadystatechange);

    XMLHttpRequestObject.onreadystatechange = function()
    {
		//alert('function');
      null;
      if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) {

        null;
        //alert('status ok');

        try {
          var obsah = XMLHttpRequestObject.responseText;
          //alert('obsah: ' + obsah);
          var objDiv = document.getElementById(divID);
          objDiv.innerHTML = obsah;
        }
        catch(e){document.write("sendFormData: getElementById(divID) Error");}

      }
      else {
        null;
        //alert('status nok');

        if(ifLoading) {
          try {
            var objDiv = document.getElementById(divID);
            objDiv.innerHTML = "<img src=loading.gif>";
          }
          catch(e){document.write("sendFormData->ifLoading: getElementById(divID) Error");}
        }

      }
    }
    
    for(i=0; i<document.getElementById(idForm).elements.length - 1; i++)
    {
		////alert('i: ' + i);
      strReplaceTemp = document.getElementById(idForm).elements[i].name.replace(/\[\]/i, "");
      postData += "&aryFormData["+strReplaceTemp+"][]="+document.getElementById(idForm).elements[i].value;
    }
    
    postData += "&"+objname+"="+objvalue;
    try
    {
		//alert('sending request');
      XMLHttpRequestObject.send(postData);
    }
    catch(e){document.write("sendFormData: XMLHttpRequestObject.send Error");}
    //alert('sent');
  }
}
// ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- 

var http = createRequestObject();
function createRequestObject() {
    var obj;
    var browser = navigator.appName;
    
    if(browser == "Microsoft Internet Explorer"){
        obj = new ActiveXObject("Microsoft.XMLHTTP");
    }
    else{
        obj = new XMLHttpRequest();
    }
    return obj;    
}

function Change(object) {
  	// nazov objektu
	var objname = object.name;
	////alert('objname: ' + objname);
	var objvalue = object.value;
	////alert('objvalue: ' + objvalue);

//	document.form1.submit();

   http.onreadystatechange = HandleResponse;

   http.open("POST", 'zmena_okresu.php');
   //alert('opened');
//    http.open("POST", dataSource);
    http.setRequestHeader("Method", "POST " + dataSource + " HTTP/1.1");
	  //http.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	  http.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=windows-1250");

   http.send("&"+objname+"="+objvalue);
}

function HandleResponse(obj) {
  	if(http.readyState == 4){
      var obsah = http.responseText;
      //alert('obsah: ' + obsah);
        document.getElementById(uploaderId).innerHTML = obsah;
        //window.location.reload(true);
    }
    else {
    	document.getElementById(uploaderId).innerHTML = "Uploading File. Please wait...";
    }

}