function open_popup( url, width, height )
{
	window.open(url, '_blank', 'width='+width+',height='+height+',status=no,toolbar=no,menubar=no,location=no,scrollbars=no,resizable=yes');
}

function not_empty(form_name, field_name, display_name)
{
var form = eval('document.'+form_name);
var str = form.elements[field_name].value; 
result = (str != '');
if (!result)
 { 
   alert('Field "'+display_name+'" must not be empty');
   form.elements[field_name].focus(); 
 }
return result;
}

function is_empty(form_name, field_name)
{
var form = eval('document.'+form_name);
var str = form.elements[field_name].value; 
result = (str == '');
return result;
}

function not_white_spaces(form_name, field_name, display_name)
{
var form = eval('document.'+form_name);
var str = form.elements[field_name].value; 
result = (str.indexOf(' ') == -1);
if (!result)
 { 
   alert('Field "'+display_name+'" can not contains white spaces');
   form.elements[field_name].focus(); 
 }
return result;
}

function is_number(form_name, field_name, display_name)
{
var form = eval('document.'+form_name);
var str = form.elements[field_name].value; 
result = (!isNaN(str));
if (!result)
 { 
   alert('Field "'+display_name+'" only can contains numbers.');
   form.elements[field_name].focus(); 
 }
return result;
}

function is_integer(form_name, field_name, display_name)
{
var form = eval('document.'+form_name);
var str = form.elements[field_name].value; 
result = ((!isNaN(str)) && (str.indexOf('.') == -1));
if (!result)
 { 
   alert('Field "'+display_name+'" must be an integer number');
   form.elements[field_name].focus(); 
 }
return result;
}

function number_between(form_name, field_name, display_name, bottom, top)
{
var form = eval('document.'+form_name);
var str = form.elements[field_name].value; 
result = ((!isNaN(str)) && (str>=bottom) && (str<=top));
if (!result)
 { 
   alert('The value of field "'+display_name+'" must be a number between '+bottom+' and '+top);
   form.elements[field_name].focus(); 
 }
return result;
}

function select_one(form_name, field_name, display_name)
{
var form = eval('document.'+form_name);
var sel = form.elements[field_name].selectedIndex;
var str = form.elements[field_name].options[sel].value; 
result = ((str != null) && (str != '') && (str != 0));
if (!result)
 { 
   alert('Select a value for Field "'+display_name+'"');
   form.elements[field_name].focus(); 
 }
return result;
}

function check_one(form_name, field_name, display_name)
{
var form = eval('document.'+form_name);
var elm = form.elements[field_name]; 
var count = elm.length;
result = false;
for (var i=0; ((i < count)&&(!result)); i++)
 result = elm[i].checked;
if (!result)
 { 
   alert('You must select one "'+display_name+'" at least');
   elm[0].focus(); 
 }
return result;
}

function radio_one(form_name, field_name, display_name)
{
var form = eval('document.'+form_name);
var radio = form.elements[field_name]; 

var result = false;
for (i = 0; ((i < radio.length) && (!result));  i++)
 result = (radio[i].checked);
if ((!result) && (display_name!=''))
 { 
   alert('Select a value for Field "'+display_name+'"');
   radio[0].focus(); 
 }
return result;
}

function str_greater_than(form_name, field_name, display_name, characters)
{
var form = eval('document.'+form_name);
var str = form.elements[field_name].value; 
result = (str.length >= characters);
if (!result)
 { 
   alert('Field "'+display_name+'" must contain '+characters+' characters at least');
   form.elements[field_name].focus(); 
 }
return result;
}

function str_smaller_than(form_name, field_name, display_name, characters)
{
var form = eval('document.'+form_name);
var str = form.elements[field_name].value; 
result = (str.length <= characters);
if (!result)
 { 
   alert('Field "'+display_name+'" can not contain more than '+characters+' characters');
   form.elements[field_name].focus(); 
 }
return result;
}

function str_equal_to(form_name, field_name, display_name, characters)
{
var form = eval('document.'+form_name);
var str = form.elements[field_name].value; 
result = (str.length == characters);
if (!result)
 { 
   alert('The length of Field "'+display_name+'" must be '+characters+' characters');
   form.elements[field_name].focus(); 
 }
return result;
}

function int_smaller_than(form_name, field_name, display_name, characters)
{
var form = eval('document.'+form_name);
var str = form.elements[field_name].value; 
result = (str.length <= characters);
if (!result)
 { 
   alert('Field "'+display_name+'" can not contain more than '+characters+' digits');
   form.elements[field_name].focus(); 
 }
return result;
}

function valid_email(form_name, field_name, display_name)
{
var form = eval('document.'+form_name);
var str = form.elements[field_name].value; 
result =  ((str.indexOf('@') != -1) && (str.indexOf('@') != 0) && (str.indexOf('@') != str.length -1) && (str.indexOf('.') != -1) && (str.indexOf('.') != 0) && (str.indexOf('.') != str.length -1))  
if (!result)
 { 
   alert('The field "'+display_name+'" is not a valid email address.');
   form.elements[field_name].focus(); 
 }
return result
}

function valid_date(form_name, field_year, field_month, field_day, display_name)
{
var form = eval('document.'+form_name);
var strYear = form.elements[field_year].value; 
var strMonth = form.elements[field_month].value; 
if (!isNaN(strMonth)) strMonth--;
var strDay = form.elements[field_day].value; 
var myDate = new Date(strYear, strMonth, strDay);
result = ((myDate != NaN) && (myDate.getFullYear()==Math.abs(strYear)) && (myDate.getMonth()==Math.abs(strMonth)) && (myDate.getDate()==Math.abs(strDay)));
if (!result)
 { 
   alert('"'+display_name+'" is not a valid date.');
   form.elements[field_month].focus(); 
 }
return result
}

function valid_telephone(form_name, field_name, display_name)
{
var form = eval('document.'+form_name);
var str = form.elements[field_name].value; 
//result = (!isNaN(str));
result = (!str.match(/[^\d\s-\(\)\+]/));
if (!result)
 { 
   alert('The field "'+display_name+'" is not a valid telephone number.');
   form.elements[field_name].focus(); 
 }
return result
}
