function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function checkForm(objForm)
{
	var arClass, bValid;
	var objField = objForm.getElementsByTagName('*');
	var msg = 'Error, por favor complete los siguientes campos: \n';
	var err = false;

	//recorre todos los elementos del formulario
	for (var iFieldCounter=0; iFieldCounter<objField.length; iFieldCounter++)
	{
		arClass = objField[iFieldCounter].className.split(' ');
		for (var iClassCounter=0; iClassCounter<arClass.length; iClassCounter++)
		{
			switch (arClass[iClassCounter]){
				case 'string':
				   bValid = esString(objField[iFieldCounter].value.replace(/^\s*|\s*$/g, '')) && !esStringBlanco(objField[iFieldCounter].value.replace(/^\s*|\s*$/g, ''));
				   break;
				case 'number' :
				   bValid = esInt(objField[iFieldCounter].value);
				   break;
				case 'mail' :
				   bValid = esEmail(objField[iFieldCounter].value);
				     break;
				default:
				   bValid = true;
			}
			if (!bValid){
				//ERROR
				msg = msg + '- ' + objField[iFieldCounter].getAttribute('pantalla') + '\n';
				err = true;
			}
		}
	}
	if (!err){
		return true;
	}else{
		alert(msg);
		return false;
	}
}

function esString(strValue)
{
  return (typeof strValue == 'string' && strValue != '' && isNaN(strValue));
}

function esEmail(valor) {
  if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(valor)){
   return (true)
  } else {
   return (false);
  }
}

function esStringBlanco(str)
{
	var espacios = true;
	var cont = 0;
	while (espacios && (cont < str.length)) {
	  if (str.charAt(cont) != " ") {
	    espacios = false;
	  }
	  cont++;
	}

	return espacios;
}

function esInt (str)
{
	var i = parseInt (str);

	if (isNaN (i))
		return false;

	i = i . toString ();
	if (i != str)
		return false;

	return true;
}

function alerta(txt)
{
	alert(txt);
}
