var XMLFIELDS = "XmlFields";
var URLBEHAVIOR = "UrlBehavior";

function SetUrlBehavior(url, callback)
{
		window.UrlBehavior = url;
    window.ProccessResponse = callback;
		var oWin = window.open("/public/e-participa/behavior/urlvalidationbehavior.html", "", "resizable=no,status=no,toolbar=no,location=no,menubar=no,height=20,width=300");
}

function BehaviorValidation()
{
	var sFieldValues = GetFieldsValues();	
	var sSendData = XMLFIELDS + "=" + sFieldValues + "&" + URLBEHAVIOR + "=" + opener.UrlBehavior;

	// Inicializar el objecto xmlhttp.
	// Chequear compatibilidad IE/Mozilla.
	var xmlhttp = null;
	if (window.ActiveXObject) xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	else if(window.XMLHttpRequest) xmlhttp = new XMLHttpRequest();
	else return;
	
	// Definir el callback de la petición.
	xmlhttp.onreadystatechange = function ()
	{		
		if(xmlhttp.readyState == 4)
		{			
			opener.ProccessResponse(xmlhttp.responseText);
			window.close();
		}		
  }  

	// Abrir la petición.
	xmlhttp.open("POST", "/public/e-participa/behavior/urlvalidationbehavior.aspx", true);
	
	// Especificar que se envía un formulario con datos.
	//xmlhttp.setRequestHeader("lastCached", dateTime.now());
	xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
   
  // Enviar la petición.
  xmlhttp.send(sSendData); 
}

function GetFieldXml(tagName)
{
	var oFlds = opener.document.getElementsByTagName(tagName);
	//var oFlds = document.getElementsByTagName(tagName);
	var sXml = "";
	for(var i = 0; i < oFlds.length; i++)
	{
		if((oFlds[i].id == "") || (oFlds[i].id == null)) continue;	
		var sTagName = oFlds[i].id.toUpperCase();
		sXml += "<" + sTagName + ">" + oFlds[i].value + "</" + sTagName + ">";		
	}
	
	return sXml;
}
function GetFieldsValues(name)
{
	var sXml = "<RequestFields>";
	sXml += GetFieldXml("input");
	sXml += GetFieldXml("select");
	sXml += "</RequestFields>";
	return sXml;
}

function GetFieldValue(name)
{
	var oFlds = opener.document.getElementsByName();
	if(oFlds.length == 0) return null;
	return oFlds[0].value;
}

function SetFieldValue(name, val)
{
	document.getElementsByName(name)[0].value = val;
}

function RedirectToBehavior()
{
	SetFieldValue(XMLFIELDS, sFieldValues);
	SetFieldValue(URLBEHAVIOR, opener.UrlBehavior);
	document.forms[0].submit();
}
