/*****************************************************
*isEmpty(value)
*
*	Verifica que el valor ingresado no este vacio
*****************************************************/
function isEmpty(valor){
	valor = valor.replace(/^\s+|\s+$/g,"");
	if (valor == ''){
		return true;
	}
	return false;
}
/*****************************************************
*isVideo(formulario, archivo)
*
*	Verifica que el archivo tenga extension de
	video
*****************************************************/
function isVideo(archivo) {
	var permitida = "flv";
	var estaPermitida = false;
	var extension = "";
   	//chequeo que archivo tenga un "."
   	if(archivo.lastIndexOf(".") != -1) {
		//recupero la extension de este nombre de archivo
		extension = (archivo.substring(archivo.lastIndexOf(".") + 1)).toLowerCase();
		//compruebo si la extension esta entre las permitidas.
   		   		if (permitida == extension) {
         		estaPermitida = true;
      			}
   	}

	return estaPermitida;
}
/*****************************************************
*isAudio(formulario, archivo)
*
*	Verifica que el archivo tenga extension de
	audio
*****************************************************/
function isAudio(archivo) {
	var permitida = "mp3";
	var estaPermitida = false;
	var extension = "";
   	//chequeo que archivo tenga un "."
   	if(archivo.lastIndexOf(".") != -1) {
		//recupero la extension de este nombre de archivo
		extension = (archivo.substring(archivo.lastIndexOf(".") + 1)).toLowerCase();
		//compruebo si la extension esta entre las permitidas.
   		   		if (permitida == extension) {
         		estaPermitida = true;
      			}
   	}

	return estaPermitida;
}
/*****************************************************
*isImagen(formulario, archivo)
*
*	Verifica que el archivo tenga extension de
	imagen valida
*****************************************************/
function isImagen(archivo) {
	var permitidas = new Array("gif", "jpg", "bmp", "png", "jpeg", "swf");
	var estaPermitida = false;
	var extension = "";
   	//chequeo que archivo tenga un "."
   	if(archivo.lastIndexOf(".") != -1) {
		//recupero la extension de este nombre de archivo
		extension = (archivo.substring(archivo.lastIndexOf(".") + 1)).toLowerCase();
		//compruebo si la extension esta entre las permitidas.
   		for(var i = 0; i < permitidas.length; i++) {
      		if (permitidas[i] == extension) {
         		estaPermitida = true;
         		break;
      		}
   		}
   	}

	return estaPermitida;
}

/*****************************************************
*isValidisDoc(archivo)
*
*	Verifica que el archivo tenga extension de
	xls, doc o pdf
*****************************************************/
function isValidDoc(archivo) {
	var permitidas = new Array("doc", "xls", "pdf");
	var estaPermitida = false;
	var extension = "";
   	//chequeo que archivo tenga un "."
   	if(archivo.lastIndexOf(".") != -1) {
		//recupero la extension de este nombre de archivo
		extension = (archivo.substring(archivo.lastIndexOf(".") + 1)).toLowerCase();
		//compruebo si la extension esta entre las permitidas.
   		for(var i = 0; i < permitidas.length; i++) {
      		if (permitidas[i] == extension) {
         		estaPermitida = true;
         		break;
      		}
   		}
   	}

	return estaPermitida;
}

/*****************************************************
*isXls(formulario, archivo)
*
*	Verifica que el archivo tenga extension de
	xls valida
*****************************************************/
function isXls(archivo) {
	var permitidas = new Array("xls");
	var estaPermitida = false;
	var extension = "";
   	//chequeo que archivo tenga un "."
   	if(archivo.lastIndexOf(".") != -1) {
		//recupero la extension de este nombre de archivo
		extension = (archivo.substring(archivo.lastIndexOf(".") + 1)).toLowerCase();
		//compruebo si la extension esta entre las permitidas.
   		for(var i = 0; i < permitidas.length; i++) {
      		if (permitidas[i] == extension) {
         		estaPermitida = true;
         		break;
      		}
   		}
   	}

	return estaPermitida;
}
/*****************************************************
*isPdf(formulario, archivo)
*
*	Verifica que el archivo tenga extension pdf valida
*****************************************************/
function isPdf(archivo) {
	var permitida = "pdf";
	var estaPermitida = false;
	var extension = "";
   	//chequeo que archivo tenga un "."
   	if(archivo.lastIndexOf(".") != -1) {
		//recupero la extension de este nombre de archivo
		extension = (archivo.substring(archivo.lastIndexOf(".") + 1)).toLowerCase();
		//compruebo si la extension esta entre las permitidas.
   		   		if (permitida == extension) {
         		estaPermitida = true;
      			}
   	}

	return estaPermitida;
}

/*****************************************************
*isDoc(formulario, archivo)
*
*	Verifica que el archivo tenga extension doc valida
*****************************************************/
function isDoc(archivo) {
	var permitida = "doc";
	var estaPermitida = false;
	var extension = "";
   	//chequeo que archivo tenga un "."
   	if(archivo.lastIndexOf(".") != -1) {
		//recupero la extension de este nombre de archivo
		extension = (archivo.substring(archivo.lastIndexOf(".") + 1)).toLowerCase();
		//compruebo si la extension esta entre las permitidas.
   		   		if (permitida == extension) {
         		estaPermitida = true;
      			}
   	}

	return estaPermitida;
}


/*****************************************************
*isFloat(value)
*
*	Verifica que el valor ingresado sea un
	float valido
*****************************************************/
function isFloat(valor){
	var RegExPattern = /^\d*\.?\d*$/;
	if (!(valor.match(RegExPattern))) {
		return false;
	}
	return true;
}

/**********************************************
*checkDate
*
*	Verifica que la fecha sea valida
**********************************************/
function checkDate(d, m, a)
{
	var fecha = new Date(a, m-1, d);

	//alert(fecha.getDate()  + "-" + fecha.getMonth() + "-" + fecha.getFullYear());
	if (fecha.getDate() == d && fecha.getMonth() == m-1 && fecha.getFullYear() == a)
		return true;
	else
		return false;
}

/*****************************************************
*checkTextDate(date,sep,pattern)
* patterns : dd<sep>mm<sep>yyyy y mm<sep>dd<sep>yyyy
*	Verifica que la fecha sea valida
*****************************************************/
function checkTextDate(date,sep,pattern){
	var first,tmp,second,third;
	first = date.substring(0,date.indexOf(sep));
	tmp = date.substring(date.indexOf(sep) + 1,date.length);
	second = tmp.substring(0,tmp.indexOf(sep));
	third = tmp.substring(tmp.indexOf(sep) + 1,tmp.length);
	var d, m, y;
	if(pattern==("dd" + sep + "mm" + sep + "yyyy")){
		d = first;
		m = second;
		y = third;
	}else{
		if(pattern==("mm" + sep + "dd" + sep + "yyyy")){
			m = first;
			d = second;
			y = third;
		}
	}
	return checkDate(d,m,y);
}

/**********************************************
*validEmail
*
*	Verifica que la direccion de mail
*   este correctamente formada.
**********************************************/
function isValidEmail(_mail){
	var ret = true;
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9])+$/;
	if (!filter.test(_mail)){
		ret = false;
	}
	return ret;
}

/*****************************************************
*isValidURL(url)
*
*	Verifica que la URL este bien formada
*****************************************************/
function isValidURL(url) {
	var re=/^http:\/\/\w+(\.\w+)*\./;
	return re.test(url);
}

/*****************************************************
*isValidString(value)
*
*	Verifica que el valor ingresado sea un string
*   conteniendo solo letras y espacios en blanco.
*****************************************************/

function isValidString(valor){
	var RegExPattern = /[^a-zA-ZáéíóúñÁÉÍÓÚÑÜüº.=,\-()/'"&:?¿!¡%\[\]\s]/;
	if (!(valor.match(RegExPattern))) {
		return true;
	}
	return false;
}

/*****************************************************
*isValidAlphanumeric(value)
*
*	Verifica que el valor ingresado sea un string
*   conteniendo solo letras, nros. y espacios en blanco.
*****************************************************/

function isValidAlphanumeric(valor){
	var RegExPattern = /[^a-zA-ZáéíóúñÁÉÍÓÚÑüÜº.=,\-()/'"&:?¿!¡%\[\]\s0-9]/;
	if (!(valor.match(RegExPattern))) {
		return true;
	}
	return false;
}

/*****************************************************
*isValidAlphanumericPlus(value)
*
*	Verifica que el valor ingresado sea un string
*   conteniendo solo letras, nros. y espacios en blanco.
*****************************************************/

function isValidAlphanumericPlus(valor){
	var RegExPattern = /[^a-zA-ZáéíóúñÁÉÍÓÚÑüÜº.=,@+_\-()/'"&:?¿!¡%\[\]\s0-9]/;
	if (!(valor.match(RegExPattern))) {
		return true;
	}
	return false;
}

/*****************************************************
*isValidAlphanumericSimple(value)
*
*	Verifica que el valor ingresado sea un string
*   conteniendo solo letras y numeros.
*****************************************************/

function isValidAlphanumericSimple(valor){
	var RegExPattern = /[^a-zA-Z0-9]/;
	if (!(valor.match(RegExPattern))) {
		return true;
	}
	return false;
}

/*****************************************************
*isValidFileName(value)
*
*	Verifica que el valor ingresado sea un nombre de archivo
*   conteniendo solo letras, nros., guiones y punto.
*****************************************************/

function isValidFileName(archivo){
	var nombre = "";
	var RegExPattern = /[^a-zA-ZáéíóúàèìòùâêîôûÁÉÍÓÚÀÈÌÒÙÂÊÎÔÛäëïöüÄËÏÖÜñÑ\s0-9º!\*@#$%&()=¿¡^`\[\]+¨´{}çÇ;,._\-]/;
	//chequeo que archivo tenga un "."
	if(archivo.lastIndexOf("\\") != -1) {
		//recupero la extension de este nombre de archivo
		nombre = (archivo.substring(archivo.lastIndexOf("\\") + 1));
		//compruebo si la extension esta entre las permitidas.
		if(!(nombre.match(RegExPattern))) {
			return true;
		}
		return false;
	} else if(archivo.lastIndexOf("/") != -1) {
		//recupero la extension de este nombre de archivo
		nombre = (archivo.substring(archivo.lastIndexOf("/") + 1));
		//compruebo si la extension esta entre las permitidas.
		if(!(nombre.match(RegExPattern))) {
			return true;
		}
		return false;
	} else {
		//recupero la extension de este nombre de archivo
		nombre = archivo;
		//compruebo si la extension esta entre las permitidas.
		if(!(nombre.match(RegExPattern))) {
			return true;
		}
		return false;
	}
}

/*****************************************************
*isInteger(value)
*
*	Verifica que el valor ingresado sea un entero
*****************************************************/
function isInteger(valor){
	var r = new RegExp("^[0-9]*$");
	return (r.test(valor));
}

/**********************************************
*validPhone
*
*	Verifica que telefono sea valido
*   (solo nros. enteros y guiones)
**********************************************/
function isValidPhone(valor){
	var RegExPattern = /^\d*\-?\d*$/;
	if (!(valor.match(RegExPattern))) {
		return false;
	}
	return true;
}
/**********************************************
*validUrl
*
*	Verifica que tenga forma de url
**********************************************/
function isValidUrl(valor) { 
	var RegExPattern =/^(ht|f)tps?:\/\/\w+([\.\-\w]+)?\.([a-z]{2,4}|travel)(:\d{2,5})?(\/.*)?$/i; 
	if (!(valor.match(RegExPattern))) {
		return false;
	}
	return true; 
}

/**********************************************
*centrarWindow
*
*	Centra una ventana
**********************************************/
function centrarWindow(theURL, winName, features, myWidth, myHeight, isCenter) { //v3.0
	var ventana;
	if(window.screen)if(isCenter)if(isCenter=="true"){
		var myLeft = (screen.width-myWidth)/2;
		var myTop = (screen.height-myHeight)/2;
		features+=(features!='')?',':'';
		features+='left='+myLeft+',top='+myTop;
	}
	winName = winName.replace(/ /g, "");
	ventana = window.open(theURL,winName,features+((features!='')?',':'')+'width='+myWidth+',height='+myHeight);
	return ventana;
}

/**********************************************
*compareDate
*
*	Devuelve true si una fecha (DD/MM/AAAA) es mayor que la acutal
**********************************************/
function compareDate(fecha) {
	
	var aux = (fecha).split("/");
	
	d = new Date();

	var fechaActual = new Date(d.getFullYear(), d.getMonth(), d.getDate());
	var fechaNueva = new Date(aux[2], aux[1]-1, aux[0]);
	
	if (fechaNueva >= fechaActual) {
		return true;
	}
	else {
		return false;
	}
}


