
//-----------------------------------
// Crear xmlhttp
//-----------------------------------
function CreateRequestObject()
{
  var xmlhttp=false;
  try
  {
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  }
  catch (e)
  {
    try
	{
      xmlhtttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
	catch (E)
	{
       xmlhttp = false;
    }
  }

  if (!xmlhttp && typeof XMLHttpRequest != 'undefined')
    xmlhttp = new XMLHttpRequest();
  return xmlhttp;
}




//-----------------------------------------------------------
// Message handler
//  - Envía el mensaje al script, espera y actualiza la página
//  - pletion, updates page with script output
//-----------------------------------------------------------
// xmlhttp = objeto request
// url = url del script
// resultID = ID del DIV o SPAN a rellenar con los datos
//-----------------------------------------------------------

var
  DivObj, xmlhttp;


function sendResults()
{
  if (xmlhttp.readyState==4 ) {
    DivObj.innerHTML = decodeURIComponent(xmlhttp.responseText);
  }
}

function handleMessages (url, resultID)
{
  var obj;

  obj = document.getElementById(resultID);
  DivObj = obj;
//  obj.innerHTML = 'Cargando...';
  var xmlhttp = CreateRequestObject();
  xmlhttp.open("GET", url, true);
  xmlhttp.onreadystatechange = function() {
    if (xmlhttp.readyState==4 ) {
       obj.innerHTML = decodeURIComponent(xmlhttp.responseText);
  }
  };
  xmlhttp.send(null);

  return 0;
}

function autoIframe(frame)
{
	var height;
	var width;
    if(document.getElementById && !(document.all)) 
    { 
        height = frame.contentDocument.body.scrollHeight + (frame.contentDocument.body.offsetHeight - frame.contentDocument.body.clientHeight) + 100; 
        frame.style.height = height + 'px'; 
        width = frame.contentDocument.body.scrollWidth + (frame.contentDocument.body.offsetWidth - frame.contentDocument.body.clientWidth) + 100; 
		frame.style.width = width + 'px';
    } 
   else if(document.all) 
    { 
        height = frame.contentDocument.body.scrollHeight + (frame.contentDocument.body.offsetHeight - frame.contentDocument.body.clientHeight) + 100; 
        frame.style.height = height + 'px'; 
        width = frame.contentDocument.body.scrollWidth + (frame.contentDocument.body.offsetWidth - frame.contentDocument.body.clientWidth) + 100; 
		frame.style.width = width + 'px';
    } 
	
}

function handleMessagesIFrame (url, obj)
{
  var txt;

  DivObj = obj;
//  obj.innerHTML = 'Cargando...';
  txt = '<HTML>';
  txt += '<HEAD>';
  txt += '</HEAD>';
  txt += '<BODY>';
  txt += '	<iframe id="ifrm" src="' + url + '"></iframe>';
//  txt += '	<iframe id="ifrm" src="' + url + '"></iframe>';
  txt += '</BODY>';
  txt += '</HTML>';
  DivObj.innerHTML = txt;
  autoIframe(obj.lastChild);
  return 0;
}

function handleMessagesCategoria (url, resultID)
{
  var obj;
  var txt;

  obj = document.getElementById(resultID);
  DivObj = obj;
//  obj.innerHTML = 'Cargando...';
  var xmlhttp = CreateRequestObject();
  xmlhttp.open("GET", url, true);
  xmlhttp.onreadystatechange = function() {
    if (xmlhttp.readyState==4 ) {
       txt = decodeURIComponent(xmlhttp.responseText);
	if (txt.substr(0, 1) == '#'){   
	  loadDiv('loadform.php?form=' + txt.substr(1), 'datos-producto');
	  document.getElementById('SUBCATEGORIADiv').innerHTML = '';
	}
	else {
	  document.getElementById('datos-producto').innerHTML = '';	
	  obj.innerHTML = txt;
	}
  }
  };
  xmlhttp.send(null);

  return 0;
}


function loadIFrame(url, resultID)
{
//    var obj = document.getElementById(resultID);
//	handleMessagesIFrame(url, obj);
  handleMessages(url, resultID);
}

function loadDiv(url, resultID)
{
//    var obj = parent.document.getElementById(resultID);
//	handleMessagesIFrame(url, obj);
  handleMessages(url, resultID);
}

function loadDivCategoria(url, resultID)
{
//    var obj = parent.document.getElementById(resultID);
//	handleMessagesIFrame(url, obj);
  handleMessagesCategoria(url, resultID);
}
