// AJAX  1//
try {
	_objetus = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
	try {
		_objetus = new ActiveXObject("Microsoft.XMLHTTP");
	} 
	catch (E) {
		_objetus = false;
	}
}
if (!_objetus && typeof XMLHttpRequest != 'undefined') {
	_objetus = new XMLHttpRequest();
}

// AJAX  2//
try {
	_Ajax_2 = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
	try {
		_Ajax_2 = new ActiveXObject("Microsoft.XMLHTTP");
	} 
	catch (E) {
		_Ajax_2 = false;
	}
}

if (!_Ajax_2 && typeof XMLHttpRequest != 'undefined') {
	_Ajax_2 = new XMLHttpRequest();
}

function getURL(cUrl, cId, ventana)
{
	var ventana;
	_target = document.getElementById(cId)
	if(ventana) _target = window.document.getElementById(cId)
	if (_objetus) {
		_objetus.open("GET", cUrl, true);
		//prototipo que sirve para tratar la respuesta:
	String.prototype.tratarResponseText = function() {

		var pat=/<script[^>]*>([\S\s]*?)<\/script[^>]*>/ig;
		var pat2=/\b\s+src=[^>\s]+\b/g;
		var elementos = this.match(pat) || [];

		for (i = 0; i < elementos.length; i++) {

			var nuevoScript = document.createElement('script');
			nuevoScript.type = 'text/javascript';
			var tienesrc=elementos[i].match(pat2) || [];

			if (tienesrc.length) {
				nuevoScript.src=tienesrc[0].split("'").join('').split('"').join('').split('src=').join('').split(' ').join('');
			}
			else {

				var elemento = elementos[i].replace(pat,'$1');
				nuevoScript.text = elemento;

			}

			document.getElementsByTagName('body')[0].appendChild(nuevoScript);

		}

		return this.replace(pat,'');
	} //

		_objetus.onreadystatechange=function() {
			if (_objetus.readyState==1) {
				document.getElementById('statusinner').innerHTML = "Actualizando...";
				document.getElementById('btnaplicar').disabled = true;
			}
			else if (_objetus.readyState == 4) {
				if(_objetus.status == 200) {
					if (_objetus.responseText.indexOf('goTo|') != -1) {
						var xa=_objetus.responseText.split("|");
						getURL(xa[1], cId);
					}
					else {
						_target.innerHTML = _objetus.responseText.tratarResponseText();
						document.getElementById('statusinner').innerHTML = "Listo";
					}
				}
			}
		}

		_objetus.send(null);
	}
	else {
		_target.innerHTML = "No se puedo crear objeto";
	}
}
function FormSerialize(cParams)
{
	aItems = cParams.split(',');
	cStr = '';
	for(i = 0; i < aItems.length; i++) { 
		//alert(aItems[i]);
		_target = document.getElementById(aItems[i])
		_value = "";
		switch (_target.type) {
			case 'text':
				_value = _target.value;
				break;
			case 'textarea':
				_value = _target.value;
				break;
			case 'checkbox':
				_value = _target.checked ? '1' : '0';
				break;
			case 'radio':
				_value = _target.value;
				break;
			case 'select-one':
				_value = _target.value;
				break;
			case 'hidden':
				_value = _target.value;
				break;
			case 'password':
				_value = _target.value;
				break;
		}

		if (cStr != '') cStr += '&';
		cStr += aItems[i] + '=' + _value;
	}
	return (cStr);
}
function postURL(cUrl, cParams, cId)
{
	_target2 = document.getElementById(cId);
	//statustxt = document.getElementById('statustxt');
	if (_Ajax_2) {
		_Ajax_2.open("POST", cUrl, true);
		
		_Ajax_2.onreadystatechange=function() {
			if (_Ajax_2.readyState == 1) {
				//_target2.innerHTML = "<img src='./img/gray_busy.gif' border=0>";
				if(document.getElementById('statustxt')) document.getElementById('statustxt').innerHTML = "Cargando...";
			}
			else if (_Ajax_2.readyState == 4) {
				if(_Ajax_2.status == 200) {
					if (_Ajax_2.responseText.indexOf('goTo|') != -1) {
						var xa=__Ajax_2.responseText.split("|");
						getURL(xa[1], cId);
					}
					else {
						_target2.innerHTML = _Ajax_2.responseText;
						if(document.getElementById('statustxt')) document.getElementById('statustxt').innerHTML = "";
					}
				}
				else {
					_target2.innerHTML = 'Estatus: ' + _Ajax_2.status;
				}
			}
		}
		_Ajax_2.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		_Ajax_2.setRequestHeader("Content-length", cParams.length);
		_Ajax_2.setRequestHeader("Connection", "close");
		_Ajax_2.send(cParams);
	}
	else {
		_target2.innerHTML = "No se puedo crear objeto";
	}
}
