var new_fieldname = ""

function setWarning(id, id_msg, msg, idioma) {
	amaga_fons('div#apagar'); 
	pop_show('div#caixa_miss');
	$('div#caixa_miss').html('<div id="tanca" style="margin-top:5px; text-align:right;"><div id="nifty2"><b class="rtop"><b class="r1"></b><b class="r2"></b><b class="r3"></b><b class="r4"></b></b><a href="javascript://" class="text1_onzeBold" onClick="javascript:ensenya_fons(\'div#apagar\');pop_hide(\'div#caixa_miss\')">Tancar</a><b class="rbottom"><b class="r4"></b><b class="r3"></b><b class="r2"></b><b class="r1"></b></b></div></div><p id="mess" style="text-align: left;">' + msg + '</p>');
}

function setUsual(id) {
/*
  var elem = getElemRefs(id);
  elem.className = "camptext";*/
}

function check(form, x, idi)
{
    var ids = new Array ();
    var cont_id = 0;
	var message = ""
	var more_message = ""
	var showmsg = "no"
	x = x - 1
	for (var i = 0; i <= x; i++)
	{
		if (form.elements[i].name != undefined)
		{
		var messenger = form.elements[i].name
		messenger = messenger.substring(0, 2)
		var fieldname = form.elements[i].name
		fieldname = fieldname.substring(2)

		if (messenger == "r_")
		{
          var idname = form.elements[i].id
		  idname = idname.substring(2)
		  setUsual(idname);
		  more_message = r_check(form,x,fieldname,i)
		}
		else if (messenger == "i_")
		{
          var idname = form.elements[i].id
		  idname = idname.substring(2)
		  setUsual(idname);
		  more_message = i_check(form,x,fieldname,i)
		}
		else if (messenger == "d_"){more_message = d_check(form,x,fieldname,i)}
		else if (messenger == "e_"){more_message = e_check(form,x,fieldname,i)}			
		
		if (more_message != "")
	    {
			if (message == "")
			{
				message = more_message
				more_message=""
			}
			else
			{
			    message = message + ",&#160;" + more_message
				more_message=""
			}
			var idname = form.elements[i].id
		    idname = idname.substring(2)
			ids[cont_id] = idname;
			cont_id = cont_id + 1;
	    }		
		if (message > ""){showmsg = "yes"}													
		}
	}	

	if (showmsg == "yes")
	{
		for(intIndex = 0; intIndex < ids.length; intIndex++)
		{
			//setWarning(ids[intIndex], 'message_td', 'Los siguientes campos son incorrectos o están incompletos: '+message);
			setWarning(ids[intIndex], 'message_td', message, idi);
		}
	}
	else
	{
		form.submit()
	}			
}	

function r_check(form,x,fieldname,i)
{
  var msg_addition = ""
  new_fieldname = fieldname
  for (var y = 0; y <= x; y++)
  {

	if ((form.elements[y].type == "radio" || form.elements[y].type == "checkbox") && form.elements[y].name == new_fieldname && form.elements[y].checked == true)
	{
	  msg_addition = ""
	  break
	}
	else if ((form.elements[y].type == "radio" || form.elements[y].type == "checkbox") && form.elements[y].name == new_fieldname && form.elements[y].checked == false)
	{
	  msg_addition = form.elements[i].value
	}
	else if (form.elements[y].type == "select-one")
	{
	  var l = form.elements[y].selectedIndex
	  if (form.elements[y].name == fieldname && form.elements[y].options[l].value != "")
	  {
		msg_addition = ""
		break
	  }
      else if (form.elements[y].name == fieldname && form.elements[y].options[l].value == "")
	  {
	    msg_addition = form.elements[i].value
	  }
	}
	else if (form.elements[y].name == fieldname && form.elements[y].value == "" && form.elements[y].type != "radio" && form.elements[y].type != "checkbox" && form.elements[y].type != "select-one")
	{
	  msg_addition = form.elements[i].value
	  break
	}
	else if (form.elements[y].name == fieldname && form.elements[y].value != "" && form.elements[y].type != "radio" && form.elements[y].type != "checkbox" && form.elements[y].type != "select-one")
	{
	  msg_addition = ""
	}	
  }
  return(msg_addition)
}
			
			
function i_check(form,x,fieldname,i)
{
  for (var y = 0; y <= x; y++)
  {
	if (form.elements[y].name == fieldname)
	  break
  }						
	
  var msg_addition = ""
  var decimal = ""
  inputStr = form.elements[y].value.toString()
	
  if (inputStr == "")
  {
    //msg_addition = form.elements[i].value
  }
  else
  {
	for (var c = 0; c < inputStr.length; c++)
	{
	  var oneChar = inputStr.charAt(c)
	  if (c == 0 && oneChar == "-" || oneChar == "."  && decimal == "")
	  {
		if (oneChar == ".")
		{
		  decimal = "yes"
		}
		continue
      }
	  if (oneChar < "0" || oneChar > "9")
	  {
		msg_addition = form.elements[i].value
	  }
	}
  }
  return(msg_addition)
}	
		
//Email validation added 6/20/98
function e_check(form,x,fieldname,i)
{
  for (var y = 0; y <= x; y++)
  {
	if (form.elements[y].name == fieldname)
	  break
  }						
		
  var msg_addition = ""
  period = ".";
                
  if (form.elements[y].value == "" || form.elements[y].value.indexOf ('@', 0) < 3)
    error = 1;
  else
  {
	test = form.elements[y].value.indexOf('.', form.elements[y].value.indexOf ('@', 0))
	if (test != -1)
	{
	  error = 0;
	}
	else
	{
      error=1;
	}
  }
  if (error == 1)
  {
    msg_addition = form.elements[i].value
  }
  else
  {
	new_length = form.elements[y].value.length - test
    if (new_length == 4 || new_length == 3 || (new_length >= 5 && form.elements[y].value.indexOf ('.', (test+1)) != -1))
	{
	  msg_addition = ""
	}
	else
	  msg_addition = form.elements[i].value;
  }
  return(msg_addition)
}	

function d_check(form,x,fieldname,i)
//date must be in MM/DD/YY format OR M/D/YY or a MIX of the two
{
		for (var y = 0; y <= x; y++)
			{
				if (form.elements[y].name == fieldname)
				break
			}		
			
		var msg_addition = ""	
		var sDate = form.elements[y].value
		var int_or_not = isInteger(form.elements[y].value)
		
		//to allow NO validation unless r_ specified
		if (form.elements[y].value != "") {
		
		if (int_or_not == "true")
			{
				if ((!(form.elements[y].value.length >= 6)) || (!(form.elements[y].value.length <= 8)))
   		{
    		msg_addition = form.elements[i].value
   		}
  		else
   		{
          var SlashlPos = form.elements[y].value.indexOf("/",0)
		  if (SlashlPos > 0 && SlashlPos <= 2)
		  {
		    if (SlashlPos == 1)
			{
			  if (form.elements[y].value.charAt(0) < 1 || form.elements[y].value.charAt(0) > 9)
			  {
				msg_addition = form.elements[i].value
			  }
			  else
			  {
				if ((form.elements[y].value.charAt(0) == 1 || form.elements[y].value.charAt(0) == 3 || form.elements[y].value.charAt(0) == 5 || form.elements[y].value.charAt(0) == 7 || form.elements[y].value.charAt(0) == 8) && ((form.elements[y].value.charAt(2) == 0 && form.elements[y].value.charAt(3) == "/") || (form.elements[y].value.charAt(3) == "/" && form.elements[y].value.length >= 7) || (form.elements[y].value.charAt(1) == "/" && form.elements[y].value.charAt(2) == "/")))
                { 
				  msg_addition = form.elements[i].value
				}
				else if ((form.elements[y].value.charAt(0) == 1 || form.elements[y].value.charAt(0) == 3 || form.elements[y].value.charAt(0) == 5 || form.elements[y].value.charAt(0) == 7 || form.elements[y].value.charAt(0) == 8) && ((form.elements[y].value.charAt(2) >= 3 && form.elements[y].value.charAt(3) > 1) || (form.elements[y].value.charAt(2) == 0 && form.elements[y].value.charAt(3) == 0) || (form.elements[y].value.charAt(1) == "/" && (form.elements[y].value.charAt(3) != "/" && form.elements[y].value.charAt(4) != "/" && form.elements[y].value.charAt(5) != "/" && form.elements[y].value.charAt(6) != "/"))))
				{ 
				  msg_addition = form.elements[i].value + "hi"
				}
				else if ((form.elements[y].value.charAt(0) == 1 || form.elements[y].value.charAt(0) == 3 || form.elements[y].value.charAt(0) == 5 || form.elements[y].value.charAt(0) == 7 || form.elements[y].value.charAt(0) == 8) && (((form.elements[y].value.charAt(2) > 3 && form.elements[y].value.charAt(3) != "/") || (((form.elements[y].value.charAt(1) == "/" && form.elements[y].value.charAt(4) == "/")) && ((form.elements[y].value.length == 6 || form.elements[y].value.length == 8)))) || form.elements[y].value.charAt(5) == "/"))
				{
				  msg_addition = form.elements[i].value
				}
				else
				{
				  if ((form.elements[y].value.charAt(0) == 2 && ((form.elements[y].value.charAt(2) == 0 && form.elements[y].value.charAt(3) == "/") || (form.elements[y].value.charAt(3) == "/" && form.elements[y].value.length >= 7) || (form.elements[y].value.charAt(1) == "/" && form.elements[y].value.charAt(2) == "/") || (form.elements[y].value.charAt(2) == 0 && form.elements[y].value.charAt(3) == 0) || (form.elements[y].value.charAt(1) == "/" && (form.elements[y].value.charAt(3) != "/" && form.elements[y].value.charAt(4) != "/" && form.elements[y].value.charAt(5) != "/" && form.elements[y].value.charAt(6) != "/")))))
				  { 
					msg_addition = form.elements[i].value
				  }
				  else if (form.elements[y].value.charAt(0) == 2 && ((form.elements[y].value.charAt(2) > 2 && form.elements[y].value.charAt(3) != "/") || (((form.elements[y].value.charAt(1) == "/" && form.elements[y].value.charAt(4) == "/") && ((form.elements[y].value.length == 6 || form.elements[y].value.length == 8)))) || form.elements[y].value.charAt(5) == "/"))
				  { 
					msg_addition = form.elements[i].value
				  }
				  else
				  {
					if ((form.elements[y].value.charAt(0) == 4 || form.elements[y].value.charAt(0) == 6 || form.elements[y].value.charAt(0) == 9) && ((form.elements[y].value.charAt(2) == 0 && form.elements[y].value.charAt(3) == "/") || (form.elements[y].value.charAt(3) == "/" && form.elements[y].value.length >= 7) || (form.elements[y].value.charAt(1) == "/" && form.elements[y].value.charAt(2) == "/")))
					{ 
					  msg_addition = form.elements[i].value
					}
					else if ((form.elements[y].value.charAt(0) == 4 || form.elements[y].value.charAt(0) == 6 || form.elements[y].value.charAt(0) == 9) && ((form.elements[y].value.charAt(2) >= 3 && form.elements[y].value.charAt(3) > 0) || (form.elements[y].value.charAt(2) == 0 && form.elements[y].value.charAt(3) == 0) || (form.elements[y].value.charAt(1) == "/" && (form.elements[y].value.charAt(3) != "/" && form.elements[y].value.charAt(4) != "/" && form.elements[y].value.charAt(5) != "/" && form.elements[y].value.charAt(6) != "/"))))
					{ 
				      msg_addition = form.elements[i].value
					}
					else if ((form.elements[y].value.charAt(0) == 4 || form.elements[y].value.charAt(0) == 6 || form.elements[y].value.charAt(0) == 9) && (((form.elements[y].value.charAt(2) > 3 && form.elements[y].value.charAt(3) != "/") || ((form.elements[y].value.charAt(1) == "/" && form.elements[y].value.charAt(4) == "/") && ((form.elements[y].value.length == 6 || form.elements[y].value.length == 8)))) || form.elements[y].value.charAt(5) == "/"))
					{
					  msg_addition = form.elements[i].value
					}
				  }
				}
			  }
			}
			else
			{
			  if (form.elements[y].value.charAt(0) > 1 || (form.elements[y].value.charAt(0) == 1 && form.elements[y].value.charAt(1) > 2) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 0))
			  {
				msg_addition = form.elements[i].value
			  }
			  else
			  {
				if (((form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 1) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 3) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 5) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 7) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 8) || (form.elements[y].value.charAt(0) == 1 && form.elements[y].value.charAt(1) == 0) || (form.elements[y].value.charAt(0) == 1 && form.elements[y].value.charAt(1) == 2)) && ((form.elements[y].value.charAt(3) == 0 && form.elements[y].value.charAt(4) == "/") || (form.elements[y].value.charAt(2) == "/" && form.elements[y].value.charAt(3) == "/") || (form.elements[y].value.charAt(2) == "/" && (form.elements[y].value.charAt(4) != "/" && form.elements[y].value.charAt(5) != "/" && form.elements[y].value.charAt(6) != "/" && form.elements[y].value.charAt(7) != "/"))))
				{
				  msg_addition = form.elements[i].value		
				}
				else if (((form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 1) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 3) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 5) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 7) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 8) || (form.elements[y].value.charAt(0) == 1 && form.elements[y].value.charAt(1) == 0) || (form.elements[y].value.charAt(0) == 1 && form.elements[y].value.charAt(1) == 2)) && ((form.elements[y].value.charAt(3) >= 3 && form.elements[y].value.charAt(4) > 1) || (form.elements[y].value.charAt(3) == 0 && form.elements[y].value.charAt(4) == 0) || form.elements[y].value.length < 7))
				{
				  msg_addition = form.elements[i].value
				}
				else if (((form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 1) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 3) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 5) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 7) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 8) || (form.elements[y].value.charAt(0) == 1 && form.elements[y].value.charAt(1) == 0) || (form.elements[y].value.charAt(0) == 1 && form.elements[y].value.charAt(1) == 2)) && ((form.elements[y].value.charAt(3) > 3 && form.elements[y].value.charAt(4) != "/")	|| ((form.elements[y].value.charAt(2) == "/" && form.elements[y].value.charAt(5) == "/" && form.elements[y].value.length == 7 || form.elements[y].value.charAt(6) == "/") || (form.elements[y].value.charAt(2) == "/" && form.elements[y].value.charAt(4) == "/" && (form.elements[y].value.length == 6 || form.elements[y].value.length == 8)))))
				{
				  msg_addition = form.elements[i].value
				}
				else
				{
				  if (((form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 2) && ((form.elements[y].value.charAt(3) == 0 && form.elements[y].value.charAt(4) == "/") || (form.elements[y].value.charAt(3) == 0 && form.elements[y].value.charAt(4) == 0)) || form.elements[y].value.length < 7) || (form.elements[y].value.charAt(2) == "/" && (form.elements[y].value.charAt(4) != "/" && form.elements[y].value.charAt(5) != "/" && form.elements[y].value.charAt(6) != "/" && form.elements[y].value.charAt(7) != "/")))
				  {
					msg_addition = form.elements[i].value
				  }
				  else if ((form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 2) && ((form.elements[y].value.charAt(3) > 2 && form.elements[y].value.charAt(4) != "/") || ((form.elements[y].value.charAt(2) == "/" && form.elements[y].value.charAt(5) == "/" && form.elements[y].value.length == 7 || form.elements[y].value.charAt(6) == "/") || (form.elements[y].value.charAt(2) == "/" && form.elements[y].value.charAt(4) == "/" && (form.elements[y].value.length == 6 || form.elements[y].value.length == 8)))))
				  {
					msg_addition = form.elements[i].value
				  }
				  else
				  {			
					if (((form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 4) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 6) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 9) || (form.elements[y].value.charAt(0) == 1 && form.elements[y].value.charAt(1) == 1)) && ((form.elements[y].value.charAt(3) == 0 && form.elements[y].value.charAt(4) == "/") || (form.elements[y].value.charAt(2) == "/" && form.elements[y].value.charAt(3) == "/") || (form.elements[y].value.charAt(2) == "/" && (form.elements[y].value.charAt(4) != "/" && form.elements[y].value.charAt(5) != "/" && form.elements[y].value.charAt(6) != "/" && form.elements[y].value.charAt(7) != "/"))))
					{
					  msg_addition = form.elements[i].value
					}
					else if (((form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 4) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 6) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 9) || (form.elements[y].value.charAt(0) == 1 && form.elements[y].value.charAt(1) == 1)) && ((form.elements[y].value.charAt(3) >= 3 && form.elements[y].value.charAt(4) > 0) || (form.elements[y].value.charAt(3) == 0 && form.elements[y].value.charAt(4) == 0) || form.elements[y].value.length < 7))
					{
					  msg_addition = form.elements[i].value
					}
					else if (((form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 4) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 6) || (form.elements[y].value.charAt(0) == 0 && form.elements[y].value.charAt(1) == 9) || (form.elements[y].value.charAt(0) == 1 && form.elements[y].value.charAt(1) == 1)) && ((form.elements[y].value.charAt(3) > 3 && form.elements[y].value.charAt(4) != "/") || ((form.elements[y].value.charAt(2) == "/" && form.elements[y].value.charAt(5) == "/" && form.elements[y].value.length == 7 || form.elements[y].value.charAt(6) == "/") || (form.elements[y].value.charAt(2) == "/" && form.elements[y].value.charAt(4) == "/" && (form.elements[y].value.length == 6 || form.elements[y].value.length == 8)))))
					{
					  msg_addition = form.elements[i].value
					}
				  }
				}		
			  }
			}
		  }
		  else
		  {
			msg_addition = form.elements[i].value
		  }
		}
	  }
	  else
	  {
		msg_addition = form.elements[i].value
	  }
	  return(msg_addition)
	}
//to allow NO validation unless r_ specified CLOSING
  return(msg_addition)
}
	
	function isInteger(sDate)
	{
		var new_msg = "true"
		inputStr = sDate.toString()
		for (var i = 0; i < inputStr.length; i++)
			{
			var oneChar = inputStr.charAt(i)			
			if ((oneChar < "0" || oneChar > "9") && oneChar != "/")
					{
						new_msg = "false"
					}
			}
		return (new_msg)
	}
		
	function asc(each_char)
		{
		var n = 0
			var char_str = charSetStr()
			for (i = 0; i < char_str.length; i++)
				{
					if (each_char == char_str.substring(i, i+1))
						{
							break
						}
				}
			return i + 32
		}
		
		function charSetStr()
			{
				var str
 			str = ' !"#$%&' + "'" + '()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{|}~'
				return str
			}
