/* function.js */
/**
Actualizado al: 20-02-2009
**/
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 GetFormParams(Form)
{
	var Obj;
	var sParms = new Array();
	for(var i = 0; i < Form.elements.length; i++)
	{
		Obj = Form.elements[i];
		if(Obj.type == "text" || Obj.type == "select-one")
			sParms[i]=Obj.name+"="+Obj.value;
		else if(Obj.type=="checkbox")
		{
			if(Obj.checked)
			{
				if(Obj.value!="")
					sParms[i]=Obj.name+"="+Obj.value;
				else
					sParms[i]=Obj.name+"=1";
			}
		} else if(Obj.type=="radio")
		{
			if(Obj.checked)
			{
				if(Obj.value!="")
					sParms[i]=Obj.name+"="+Obj.value;
				else
					sParms[i]=Obj.name+"=1";
			}
		} else if(Obj.type=="textarea")
		{
			sParms[i]=Obj.name+"="+Obj.value;
		} else if(Obj.type="hidden")
		{
			sParms[i]=Obj.name+"="+Obj.value;
		}
	}
	return sParms.join("&");
}

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 ClearListViewFields(Form)
{
	ClearFields(Form);
	ClearPaginatorFields();
}
function ClearPaginatorFields()
{
	document.FrmListView.page.value = "";
}

function CheckBoxToBool(Obj)
{
	if(Obj.type=="checkbox")
	{
		if(Obj.checked)
			return 1;
		else
			return 0;
	}
	else
		return 0;
}

function CheckBoxToBoolStr(Obj)
{
	if(Obj.type=="checkbox")
	{
		if(Obj.checked)
			return 'Si';
		else
			return 'No';
	}
	else
		return 'No';
}

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;
}

function getUrlParameter(name)
{
	var regexS = "[\\?&]"+name+"=([^&#]*)";
	var regex = new RegExp ( regexS );
	var tmpURL = window.location.href;
	var results = regex.exec( tmpURL );
	if( results == null )
		return"";
	else
		return results[1];
}

function cFUploaderExtDeleteUploaded(sFileName,sCustomMessage,sDivRespuesta,sScript,iID)
{
	if(sCustomMessage=='')
		sCustomMessage = 'Desea Borrar la imagen del servidor?';
	if(!confirm(sCustomMessage))
		return;
	if(sDivRespuesta=='')
		return;
	if(sScript=='')
		return;
	if(!iID)
		iID = 0;
	var Div = document.getElementById(sDivRespuesta);
	var sDivAux = Div.innerHTML; 
	var Ajax = new ViaAjax();
	Ajax.open("POST", sScript, true);
	Ajax.onreadystatechange = function()
	{
		if(Ajax.readyState == 1)
		{
			Div.innerHTML = "<img src='../../images/loader_small.gif' border = 0 style='vertical-align:middle;' />";
	 	}else if (Ajax.readyState == 4)
        {
        	var sResp = Trim(Ajax.responseText)
        	if(sResp=='')
        	{
        		alert('La operacion fue realizada con exito.');
        		Div.innerHTML = '';
        	}
        	else
        	{
        		alert(sResp);
				Div.innerHTML = '';
        	}
            return false;
        }
	}
	Ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	Ajax.send("igOpcion=1&sPathImage="+sFileName+"&iID="+iID);
}