function Trim(str){
	return str.replace(/^\s*|\s*$/g,"");
}

function IsEmpty(Object)
{
    return (Object == undefined || typeof(Object) == "undefined");
}

function ViaAjax()
{
    var xmlhttp = false;
     try
     {
         xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
     }
     catch(e)
     {
         try
         {
             xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
         }
         catch (E)
         {
             xmlhttp = false;
         }
	}
    if(!xmlhttp && typeof XMLHttpRequest!='undefined')
    {
         xmlhttp = new XMLHttpRequest();
    }
    return xmlhttp;
}

function Paginator(Page)
{
    document.FrmListView.page.value = Page;
    document.FrmListView.submit();
}

function EditData(iID,sAction)
{
	document.FrmListView.iID.value = iID;
	document.FrmListView.action = sAction;
    document.FrmListView.submit();
}

function Delete(iID,sAction)
{
	if(confirm("Esta seguro que desea eliminar este registro?"))
	{
		document.FrmListView.iID.value = iID;
		document.FrmListView.action = sAction;
	    document.FrmListView.submit();
	}
}

function GoTo(Url)
{
	document.location = Url;
}

function ValidateInteger(Number)
{
	return (parseInt(Number) == Number);
}

function ValidateFloat(Number)
{
	return (parseFloat(Number)==Number);
}

function ClearFields(Form)
{
	var Obj;
	for(var i = 0; i < Form.elements.length; i++)
	{
		Obj = Form.elements[i];
		if(Obj.type == "text" || Obj.type == "select-one")
			Obj.value = "";
	}
}

function ClearAllFields(Form)
{
	var Obj;
	for(var i = 0; i < Form.elements.length; i++)
	{
		Obj = Form.elements[i];
		
		if(Obj.type == "text" || Obj.type == "select-one")
			Obj.value = "";
		if(Obj.type == "hidden")
		{
			Obj.value = "";
		}
	}
}
function ClearPaginatorFields()
{
	document.FrmListView.page.value = "";
}
function ValidateEmail(valor) 
{
	var ret = false;
	if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(valor))
	{
		ret = true;
	}
	return ret;
}

function SetFocusToFirstControl()
{
  var bFound = false; 

  //for each form
  for (f=0; f < document.forms.length; f++) 
  {
    //for each element in each form
    for(i=0; i < document.forms[f].length; i++)
    {
      //if it's not a hidden element
      if (document.forms[f][i].type != "hidden") 
      { 
        //and it's not disabled
        if (document.forms[f][i].disabled != true) 
        {
          try {
             //set the focus to it
             document.forms[f][i].focus();
             var bFound = true;
          }
          catch(er) {
          }
        }
      }
      //if found in this element, stop looking
      if (bFound == true)
        break;
    }
    //if found in this form, stop looking
    if (bFound == true)
      break;
  }
}

function isNumberFloat(inputString)
{
  return (!isNaN(parseFloat(inputString))) ? true : false;
}

/*
	complementos para ajax send
*/
/*
* Obtiene parametros en forma par=valor
* a partir de un formulario frm
*/
function ObtenerParametros(Form)
{
	var Obj;
	var aParms=[];
	var sParms='';
	for(var i = 0; i < Form.elements.length; i++)
	{
		Obj = Form.elements[i];
		if(Obj!='undefined')
		{
			if(sParms.length > 0)
				sParms +='&'+ Obj.name + '=' + Obj.value;
			else
				sParms += Obj.name + '=' + Obj.value;
		}
	}
	return sParms;
}