/**
 * trim   - Remove espa�os em branco entre caracteres de toda a string
 *       ex: b = trim("  c a d m u s "); => cadmus
 * @author   Enilson de Souza Andrade
 * @date     (07/04/2003 21:14:00)  
 */


function findElement(_document, name) {
  for (var i = 0; i < _document.forms.length; i++) {
    var target = _document.forms[i].elements[name] ;
    return target ;
  }
}

function trim(str) {
  str = str.toString().replace(/\$|\ /g,'');
  return str;
}

/**
 * trim   - Rotina para a validacao de email
 *       
 * @author   Enilson de Souza Andrade
 * @date     (24/04/2003 15:14:00)  
 */

function emailCheck(objEmail){
 
      var emailStr = objEmail.value
 
        //remove espa�os antes da verifica��o
        var emailStr = trim(emailStr)
        /* Critica de e-mail */
        var emailPat=/^(.+)@(.+)$/
        var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
        var validChars="\[^\\s" + specialChars + "\]"
        var quotedUser="(\"[^\"]*\")"
        var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
        var atom=validChars + '+'
        var word="(" + atom + "|" + quotedUser + ")"
        var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
        var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")
 

        var matchArray=emailStr.match(emailPat)
        if (matchArray==null) {
            objEmail.select();
            objEmail.focus();
                return false;
        }
        var user=matchArray[1]
        var domain=matchArray[2]
 
        if (user.match(userPat)==null) {
         objEmail.select();
         objEmail.focus();
            return false;
        }
 
        var IPArray=domain.match(ipDomainPat)
        if (IPArray!=null) {
                  for (var i=1;i<=4;i++) {
                    if (IPArray[i]>255) {
                  objEmail.select();
                  objEmail.focus();
                        return false;
                    }
            }
            return true
        }
 
        var domainArray=domain.match(domainPat)
        if (domainArray==null) {
         objEmail.select();
         objEmail.focus();
            return false;
        }
 
        var atomPat=new RegExp(atom,"g")
        var domArr=domain.match(atomPat)
        var len=domArr.length
        if (domArr[domArr.length-1].length<2 ||
            domArr[domArr.length-1].length>3) {
         objEmail.select();
         objEmail.focus();
            return false;
        }
 
        if (len<2) {
          objEmail.select();
         objEmail.focus();
           return false;
        }
 
        return true;
}

function toUp(targetName) {
	var target = findElement(document, targetName) ;

	if (target.selectedIndex >= 0) {
		var selectedOption = new Option() ;		
		var upperOption = new Option() ;

		selectedOption.text = target.options[target.selectedIndex].text ;
		selectedOption.value = target.options[target.selectedIndex].value ;

		upperOption.text = target.options[target.selectedIndex - 1].text ;
		upperOption.value = target.options[target.selectedIndex - 1].value ;

		var index = target.selectedIndex ;

		target.options[index - 1] = selectedOption ;
		target.options[index] = upperOption ;
		target.selectedIndex = index-1 ;
	}
}

function toDown(targetName) {
	var target = findElement(document, targetName) ;

	if ((target.selectedIndex >= 0) & (target.selectedIndex != (target.length - 1))){
		var selectedOption = new Option() ;		
		var donwerOption = new Option() ;

		selectedOption.text = target.options[target.selectedIndex].text ;
		selectedOption.value = target.options[target.selectedIndex].value ;

		donwerOption.text = target.options[target.selectedIndex+1].text ;
		donwerOption.value = target.options[target.selectedIndex+1].value ;

		var index = target.selectedIndex ;

		target.options[index+1] = selectedOption ;
		target.options[index] = donwerOption;

		target.selectedIndex = index+1 ;
	}
}

function parseDate(dayField, monthField, yearField, hiddenField) {
        
        var day = findElement(document, dayField);
        var month = findElement(document, monthField);
        var year = findElement(document, yearField);
        var hide = findElement(document, hiddenField);

        hide.value = day.value + "/" + month.value + "/" + year.value;

}