function jump(strURL) {
    window.location.href = strURL;
}


function buildHeader()
{
    if (document.getElementById || document.all)
        setDate();
}

function submitFormBusca (formName, hitId)
{
  if(confirm('Confirma a busca do trabalho na Web?')) {
	  document.getElementById(formName).submit();
	  showLoadingMarker(hitId);
  }
}

function showLoadingMarker(hitId) {
	document.getElementById("loadingMarker"+hitId).style.visibility = 'visible';
	document.getElementById("idFormBusca"+hitId).style.display = 'none';
}

//==============================================================================

function setDate()
{
    var date2 = getObj('date2');

    if(document.body)
    {
        //Set date
        var now = new Date();
        var mes = new Array('Janeiro','Fevereiro','Mar&ccedil;o','Abril','Maio','Junho','Julho','Agosto','Setembro','Outubro','Novembro','Dezembro');
        var dayName = new Array("Domingo", "Segunda-feira", "Ter&ccedil;a-feira", "Quarta-feira", "Quinta-feira", "Sexta-feira", "S&aacute;bado", "Domingo");
        var dia = (now.getDate()-9<=0) ? ('0'+now.getDate()) : (now.getDate());
        var ano = now.getYear()<1900 ? (parseInt(now.getYear())+1900) : (now.getYear());

        if(document.createTextNode){
            var text = dayName[now.getDay()]+', '+ dia +' de '+mes[now.getMonth()]+' de '+ano;
            date2.innerHTML="<table border=0 cellpadding=10 cellspacing=0 leftmargin=0 width=280 height=14><tr><td align=right><div id=\'dateText\' class=\'data\' align=right width=280 height=14>"+text+"</div></td></tr></table>";
        }
        else{
            var text = dayName[now.getDay()]+', '+ dia +' de '+mes[now.getMonth()]+' de '+ano;
        }
    }
    else
    {
        //Set date
        var now = new Date();
        var mes = new Array('Janeiro','Fevereiro','Mar&ccedil;o','Abril','Maio','Junho','Julho','Agosto','Setembro','Outubro','Novembro','Dezembro');
        var dayName = new Array("Domingo", "Segunda-feira", "Ter&ccedil;a-feira", "Quarta-feira", "Quinta-feira", "Sexta-feira", "S&aacute;bado", "Domingo");
        var dia = (now.getDate()-9<=0) ? ('0'+now.getDate()) : (now.getDate());
        var ano = now.getYear()<1900 ? (parseInt(now.getYear())+1900) : (now.getYear());

        var text = dayName[now.getDay()]+', '+ dia +' de '+mes[now.getMonth()]+' de '+ano;
        date2.document.open();
        date2.document.write("<table border=0 cellpadding=10 cellspacing=0 leftmargin=0 width=280 height=14><tr><td align=right><div id=\'dateText\' class=\'data\' align=right width=280 height=14>");
        date2.document.write(text);
        date2.document.write("</div></td></tr></table>");
        date2.document.close();
    }

    //set sizes
    resize();
}

//==============================================================================

function resize()
{
    //Get all elements to be fixed
    var top1 = getObj('top1');
    var top2 = getObj('top2');
    var top3 = getObj('top3');
    var date1 = getObj('date1');
    var date2 = getObj('date2');
    var tblNS = getObj('tblNS');

    if (document.body)
    {
        if (document.body.clientWidth > 742)
        {
            var window = document.body.clientWidth;

            //set new positions
            if (document.createTextNode)
            {
                date1.style.left = window - 750;
                date2.style.left = window - 280;
            }

            //set new sizes
          top1.width = window - 8;
            top2.width = window - 8;
            top3.style.left = 742;

            top3.innerHTML="<IMG SRC=\'/bdbcomp/images/bdbfill.gif\' HEIGHT=\'63\' WIDTH=\'"+(parseInt(window)-750)+"\'></IMG>\n";

            tblNS.width = window - 8;
        }
    }
    else
        if (self.innerWidth)
            if (self.innerWidth > 750)
            {
                var window = self.innerWidth;

                //set new positions
                date1.left = window - 750;
                date2.left = window - 280;

                top3.left = 742;
                top3.width = window - 750;
                top3.document.open();
                top3.document.write("<IMG SRC='/bdbcomp/images/bdbfill.gif' HEIGHT=63 WIDTH=");
                top3.document.write(parseInt(window) - 750);
                top3.document.write("></IMG>\n");
                top3.document.close();
                tblNS.width = window;
            }
}

//==============================================================================

function getObj(name)
{
    if (document.getElementById){
        return document.getElementById(name);
    }
    else if (document.all){
        return document.all[name];
    }
    else if (document.layers){
        return getObjNN4(document,name);
    }
}

//==============================================================================

function getObjNN4(obj, name)
{
    var x = obj.layers;
    var foundLayer;
    for (var i=0;i<x.length;i++){
        if (x[i].id == name)
            foundLayer = x[i];
        else if (x[i].layers.length){
            var tmp = getObjNN4(x[i],name);
            if (tmp) foundLayer = tmp;
        }
    }
    return foundLayer;
}

/*
==================================================================
LTrim(string): Returns a copy of a string without leading spaces

PURPOSE: Remove leading blanks from our string.
IN: str - the string we want to LTrim
==================================================================
*/
function LTrim(str)
{
    var whitespace = new String(" \t\n\r");
    var s = new String(str);

    if (whitespace.indexOf(s.charAt(0)) != -1)
    {
        //We have a string with leading blank(s)...

        var j = 0, i = s.length;

        //Iterate from the far left of string until we
        //don't have any more whitespace...
        while (j < i && whitespace.indexOf(s.charAt(j)) != -1)
            j++;

        //Get the substring from the first non-whitespace
        //character to the end of the string...
        s = s.substring(j, i);
    }

    return s;
}

/*
==================================================================
RTrim(string): Returns a copy of a string without trailing spaces

PURPOSE: Remove trailing blanks from our string.
IN: str - the string we want to RTrim
==================================================================
*/
function RTrim(str)
{
    var whitespace = new String(" \t\n\r");
    var s = new String(str);

    if (whitespace.indexOf(s.charAt(s.length-1)) != -1)
    {
        //We have a string with trailing blank(s)...

        var i = s.length - 1;       // Get length of string

        //Iterate from the far right of string until we
        // don't have any more whitespace...
        while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1)
            i--;

        // Get the substring from the front of the string to
        // where the last non-whitespace character is...
        s = s.substring(0, i+1);
    }

    return s;
}

/*
=============================================================
Trim(string): Returns a copy of a string without leading or
              trailing spaces

PURPOSE: Remove trailing and leading blanks from our string.
IN: str - the string we want to Trim
=============================================================
*/
function Trim(str)
{
    return RTrim(LTrim(str));
}

/*
=============================================================
checkEmail(string) : check if an email address is valid
=============================================================
*/
function checkEmail(email)
{
    return (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email));
}

/*
=================================================================
checkCode(string) : check if an isbn code is a valid ISBN or ISSN
=================================================================
*/
function checkCode(code)
{
    var i;
    var s = 0;

    j = 1;

    for (i = code.length - 1; i >= 0; i--)
        if (code.substring(i, i + 1) != "-")
            if (code.substring(i, i + 1) == "X")
                s += (j++) * 10;
            else
                s += (j++) * parseInt(code.substring(i, i + 1));

    return (s%11 == 0);
}

//=======================================================

function stringsIguais(str1, str2)
{
    return (str1.toString() == str2.toString());
}

//========================================================
function envia()
{
  var f = document.access;
  f.submit();
  
}
function limpa(form)
{
  var f = form;
  f.reset();
}

function validaFormulario()
{
    var f = document.mainform;
    var strMsg = "";
    var strsenha = "";

    if (Trim(f.name.value) == "")
        strMsg += "- Insira o campo Nome.\n";

    if (Trim(f.email.value) == "")
        strMsg += "- Insira o campo E-mail.\n";
    else
        if (!checkEmail(f.email.value))
            strMsg += "- O campo E-mail n&atilde;o cont&ecirc;m um e-mail v&aacute;lido.\n";

    if (Trim(f.login.value) == "")
        strMsg += "- Insira seu Login.\n";

    if (f.password.value == "")
        strMsg += "- Insira sua Senha.\n";

    if (f.password.value != "" || f.password1.value != "")
        if (!stringsIguais (f.password.value, f.password1.value))
            strMsg += " - Senhas n&atilde;o conferem.\n";

    if (strMsg == "")
        f.submit();
    else
        alert("Preenchimento n&atilde;o foi realizado corretamente:\n" + strMsg);
}

//==============================================================================

function validaSubmissaoLivro (fieldTarget, fieldTarget1, livro)
{
    var f1 = document.mainform;
    var strMsg1 = "";
    var strMsg = "";

        var now = new Date();
        var curYear = now.getYear() < 1900 ? (parseInt(now.getYear()) + 1900) : (now.getYear());
        var strYear = Trim(f1.date.value);

    if (livro==0 && Trim(f1.titcap.value) == "")
        strMsg1 += "- T&iacute;tulo do cap&iacute;tulo de livro.\n";

    if (Trim(f1.title.value) == "")
        strMsg1 += "- T&iacute;tulo do livro.\n";

    if (Trim(f1.identifier.value) == "")
        strMsg1 += "- ISBN.\n";
    else
        if (Trim(f1.identifier.value) != "" && !checkCode(Trim(f1.identifier.value)))
            strMsg += "- ISBN inv&aacute;lido\n";

        if (Trim(f1.date.value) == "") {
                strMsg1 += "- Preencha o ano.\n";
        }
        else if(!isNumeric(strYear) || parseInt(strYear) > curYear) {
                strMsg += "- Ano inv&aacute;lido.\n";
        }

        if (f1.language.value == "" || f1.language.value == "semidioma") {
                strMsg1 += "- Selecione o idioma.\n";
        }

        if (hasDuplicates(f1.subject.value, ",")) {
            strMsg1 += "- Palavras-chave duplicadas.\n";
        }

    if (Trim(f1.area.value) == "")
        strMsg1 += "- &Aacute;rea de conhecimento.\n";

    if (livro == 0 && (Trim(f1.pagbegin.value) == "" ||
        Trim(f1.pagend.value)  == ""))
            strMsg1 += "- N&uacute;mero das p&aacute;ginas.\n";
    else
        if (livro == 0)
        {
            if (!(/^[0-9]+$/.test(Trim(f1.pagbegin.value))))
                strMsg += "- P&aacute;gina inicial do cap&iacute;tulo inv&aacute;lida\n";

            if (!(/^[0-9]+$/.test(Trim(f1.pagend.value))))
                strMsg += "- P&aacute;gina final do cap&iacute;tulo inv&aacute;lida\n";

            if ((/^[0-9]+$/.test(Trim(f1.pagbegin.value))) &&
                (/^[0-9]+$/.test(Trim(f1.pagend.value))))
                if (parseInt(f1.pagbegin.value) > parseInt(f1.pagend.value))
                    strMsg += "- P&aacute;gina inicial do cap&iacute;tulo maior que p&aacute;gina final\n";
        }

    var Target = f1.elements[fieldTarget];
    var nElementsTarget = Target.options.length;

    if (livro == 0)
    {
        var Target1 = f1.elements[fieldTarget1];
        var nElementsTarget1 = Target1.options.length;
    }

    if (livro == 0)
    {
        if (nElementsTarget == 0)
            strMsg1 += "- Nome dos autores do cap&iacute;tulo de livro.\n";

        if (nElementsTarget1 == 0)
            strMsg1 += "- Nome dos autores do livro.";

    }
    else
        if (nElementsTarget == 0)
            strMsg1 += "- Nome dos autores.\n";


    if (strMsg1 == "" && strMsg == "")
    {

        for (cont = 0; cont < nElementsTarget; cont++)
            Target.options[cont].selected = true;

        if (livro == 0)
            if (nElementsTarget1 != 0)

                for (cont = 0; cont < nElementsTarget1; cont++)
                    Target1.options[cont].selected = true;

        f1.submit();
    }
    else
        if (strMsg1 != "")
            alert("Preencha os seguintes campos obrigat&oacute;rios:\n" + strMsg1);
        else
            if (strMsg != "")
                alert("Preenchimento n&atilde;o foi realizado corretamente:\n" + strMsg);
}

//==============================================================================

function addAuthor(fieldTarget)
{
    var thisform = window.document.mainform;
    var firstName = thisform.elements['form_firstname'].value;
    var completeName = firstName;

    if (Trim(completeName.toString()) == "")
        return false;

    var Target = thisform.elements[fieldTarget];
    var nElementsTarget = Target.options.length;

    Target.options[nElementsTarget] = new Option();
    Target.options[nElementsTarget].text = completeName;
    Target.options[nElementsTarget].value = completeName;
    thisform.elements['form_firstname'].value = "";
}

//==============================================================================

function addPublisher(fieldTarget)
{
    var thisform = window.document.mainform;
    var firstName = thisform.elements['form_firstname1'].value;
    var completeName = firstName;

    if (Trim(completeName.toString()) == "")
        return(false);

    var Target = thisform.elements[fieldTarget];
    var nElementsTarget = Target.options.length;

    //Tudo ok, vou adicionar o novo autor na lista
    Target.options[nElementsTarget] = new Option();
    Target.options[nElementsTarget].text = completeName;
    Target.options[nElementsTarget].value = completeName;
    thisform.elements['form_firstname1'].value = "";
}

//==============================================================================

function removeOption(field)
{
    var thisform = window.document.mainform;
    var Target = thisform.elements[field];
    var nElementsTarget = Target.options.length;

    if (nElementsTarget == 0 || (nElementsTarget == 1 &&
        Target.options[0].value == -1))
        return(false);

    for (loop = nElementsTarget - 1; loop >= 0; loop--)
        if (Target.options[loop].selected == true)
            Target.options[loop] = null;
    return true;
}

//==============================================================================

function moveUp(field)
{
    var thisform = window.document.mainform;
    var Target = thisform.elements[field];
    var nElementsTarget = Target.options.length;
    var cont, prev, prev1;

    if (nElementsTarget == 1 && Target.options[0].value == -1)
        nElementsTarget = 0;


    for (cont = 0; cont < nElementsTarget; cont++)
        if (Target.options[cont].selected == true)
        {
            if (cont != 0)
            {
                prev = Target.options[cont-1].value;
                prev1 = Target.options[cont-1].text;
                Target.options[cont-1].value= Target.options[cont].value;
                Target.options[cont-1].text= Target.options[cont].text;
                Target.options[cont].value= prev;
                Target.options[cont].text = prev1;
            }
            break;
        }
    return false;
}

//==============================================================================

function moveDown(field)
{
    var thisform = window.document.mainform;
    var Target = thisform.elements[field];
    var nElementsTarget = Target.options.length;
    var cont, next, next1;

    if (nElementsTarget == 1 && Target.options[0].value == -1)
        nElementsTarget = 0;


    for(cont = 0; cont < nElementsTarget; cont++)
        if (Target.options[cont].selected == true)
        {
            if (cont != nElementsTarget-1)
            {
                next = Target.options[cont+1].value;
                next1 = Target.options[cont+1].text;
                Target.options[cont+1].value= Target.options[cont].value;
                Target.options[cont+1].text= Target.options[cont].text;
                Target.options[cont].value= next;
                Target.options[cont].text = next1;
            }
            break;
        }
    return false;
}

//==============================================================================

function isNumeric(strString) {

    var strValidChars = "0123456789.-";
    var strChar;
    var blnResult = true;

    if (strString.length == 0) return false;

    //  test strString consists of valid characters listed above
    for (i = 0; i < strString.length && blnResult == true; i++)
    {
        strChar = strString.charAt(i);
        if (strValidChars.indexOf(strChar) == -1)
        {
            blnResult = false;
        }
    }
    return blnResult;
}

function submitRequestToPMS(title, completeName, lastName, id)
{
	var f1 = form;
	
	if(confirm("Deseja buscar os resultados na Web para '"+title.value+"'"))
	{
		alert('resolveu o java script');
	}
}

function validaConf(tipo, form)
{
  var f1 = form;
  var strMsg1 = "";
  var strMsg = "";

  var now = new Date();
  var curYear = now.getYear() < 1900 ? (parseInt(now.getYear()) + 1900) : (now.getYear());
  var strYear = Trim(f1.date.value);

  if (tipo == 0 && Trim(f1.conf.value) == "") {
    strMsg1 += "- Selecione o nome do evento.\n";
  }

  if (tipo == 1) {
    if (Trim(f1.titconf.value) == "")
    strMsg1 += "- Preencha o nome do evento.\n";

    if (Trim(f1.sigla.value) == "")
    strMsg1 += "- Preencha a sigla do evento.\n";

    if (Trim(f1.edicao.value) == "")
    strMsg1 += "- Preencha a edi&ccedil;&atilde;o.\n";
    if (Trim(f1.date.value) == "")
    strMsg1 += "- Preencha a data do evento.\n";

    if (Trim(f1.idioma.value) == "")
    strMsg1 += "- Preencha o idioma do evento.\n";

    if (Trim(f1.coverage.value) == "")
    strMsg1 += "- Preencha o local.\n";

    if (Trim(f1.rights.value) == "")
    strMsg1 += "- Preencha o campo 'Direitos'.\n";

    if (Trim(f1.provenance.value) == "")
    strMsg1 += "- Preencha o campo 'URL'.\n";

  }

  if (Trim(f1.date.value) == "") {
    strMsg1 += "- Preencha o ano.\n";
  }
  else if(!isNumeric(strYear) || parseInt(strYear) > curYear) {
    strMsg += "- Ano inv&aacute;lido.\n";
  }

  if (strMsg1 == "" && strMsg == "") {
    f1.submit();
  }
  else if (strMsg1 != "") {
    alert("Preenchimento n&atilde;o foi realizado corretamente:\n"+strMsg1);
  }
  else if (strMsg != "") {
    alert (strMsg);
  }
    
  for (cont = 0; cont < nElementsTarget; cont++)
  Target.options[cont].selected = true;
  f1.submit();

}
//==============================================================================
function validaNovoEvento(tipo, form, fieldTarget)
{
  var f1 = form;
  var strMsg1 = "";
  var strMsg = "";

  var now = new Date();
  var curYear = now.getYear() < 1900 ? (parseInt(now.getYear()) + 1900) : (now.getYear());
  var strYear = Trim(f1.date.value);

  var Target = f1.elements[fieldTarget];
  var nElementsTarget = Target.options.length;

    if (Trim(f1.titconf.value) == "")
    strMsg1 += "- Preencha o nome do evento.\n";

    if (Trim(f1.sigla.value) == "")
    strMsg1 += "- Preencha a sigla do evento.\n";

    if (Trim(f1.date.value) == "")
    strMsg1 += "- Preencha a data do evento.\n";

    if (f1.language.value == "" || f1.language.value == "semidioma") {
      strMsg1 += "- Selecione o idioma.\n";
    }

    if (tipo == 1)
    {
      if (Trim(f1.coverage.value) == "")
        strMsg1 += "- Preencha o local.\n";
    }
    else
    {
      if (Trim(f1.volume.value) == "")
      strMsg1 += "- Preencha o volume.\n";

      if (Trim(f1.issn.value) == "")
      strMsg1 += "- ISSN.\n";
      else
        if (!checkCode(Trim(f1.issn.value)))
        strMsg += "- ISSN inv�lido\n";
    }

    if (Trim(f1.totalArtigos.value) == "")
    strMsg1 += "- Preencha o campo 'Total Artigos'.\n";

    if (Trim(f1.datestamp.value) == "")
    strMsg1 += "- Preencha o campo 'data'.\n";


  if (Trim(f1.date.value) == "") {
    strMsg1 += "- Preencha o ano.\n";
  }
  else if(!isNumeric(strYear) || parseInt(strYear) > curYear) {
    strMsg += "- Ano inv&aacute;lido.\n";
  }

  if (strMsg1 == "" && strMsg == "") {
    for (cont = 0; cont < nElementsTarget; cont++)
      Target.options[cont].selected = true;
    f1.submit();
  }
  else if (strMsg1 != "") {
    alert("Preenchimento n&atilde;o foi realizado corretamente:\n"+strMsg1);
  }
  else if (strMsg != "") {
    alert (strMsg);
  }
}

function validaTr(form, fieldTarget)
{
  var f1 = form;

    f1.submit();

}

function validaJor (tipo, form)
{
    var f1 = form;
    var strMsg1 = "";
    var strMsg = "";

        var now = new Date();
        var curYear = now.getYear() < 1900 ? (parseInt(now.getYear()) + 1900) : (now.getYear());
        var strYear = Trim(f1.date.value);

    if (tipo == 0 && Trim(f1.jor.value) == "")
        strMsg1 += "- Selecione o nome do peri&oacute;dico.\n";

    if (tipo == 1 && Trim(f1.titjor.value) == "")
        strMsg1 += "- Preencha o nome do peri&oacute;dico.\n";

        if (Trim(f1.date.value) == "") {
                strMsg1 += "- Preencha o ano.\n";
        }
        else if(!isNumeric(strYear) || parseInt(strYear) > curYear) {
                strMsg += "- Ano inv&aacute;lido.\n";
        }

    if (Trim(f1.vol.value) == "")
        strMsg1 += "- Preencha o volume.\n";

    if (Trim(f1.num.value) == "")
        strMsg1 += "- Preencha o n&uacute;mero.\n";

        if (strMsg1 == "" && strMsg == "")
            f1.submit();
        else
            if (strMsg1 != "")
                alert("Preenchimento n&atilde;o foi realizado corretamente:\n"+strMsg1);
            else
                if (strMsg != "")
                    alert (strMsg);
}

//==============================================================================

function validaSubmissaoConf(fieldTarget, tipo)
{
    var f1 = document.mainform;
    var strMsg1 = "";
    var strMsg = "";

        var now = new Date();
        var curYear = now.getYear() < 1900 ? (parseInt(now.getYear()) + 1900) : (now.getYear());
        var strYear = Trim(f1.date.value);

    if (Trim(f1.title.value) == "")
        strMsg1 += "- T&iacute;tulo do trabalho.\n";

    var Target = f1.elements[fieldTarget];
    var nElementsTarget = Target.options.length;

    if (nElementsTarget == 0)
        strMsg1 += "- Nome dos autores.\n";

    if (Trim(f1.pagbegin.value) == "" || Trim(f1.pagend.value) == "")
        strMsg1 += "- P&aacute;ginas do trabalho.\n";
    else
    {
        if (!/^[0-9]+$/.test(Trim(f1.pagbegin.value)))
            strMsg += "- P&aacute;gina inicial do cap&iacute;tulo inv&aacute;lida\n";

        if (!/^[0-9]+$/.test(Trim(f1.pagend.value)))
            strMsg += "- P&aacute;gina final do cap&iacute;tulo inv&aacute;lida\n";

        if (/^[0-9]+$/.test(Trim(f1.pagbegin.value)) &&
            /^[0-9]+$/.test(Trim(f1.pagend.value)))
            if (parseInt(f1.pagbegin.value) > parseInt(f1.pagend.value))
                strMsg += "- P&aacute;gina inicial do cap&iacute;tulo maior que p&aacute;gina final\n";
    }

        if (Trim(f1.date.value) == "") {
                strMsg1 += "- Preencha o ano.\n";
        }
        else if(!isNumeric(strYear) || parseInt(strYear) > curYear) {
                strMsg += "- Ano inv&aacute;lido.\n";
        }

        if (f1.language.value == "" || f1.language.value == "semidioma") {
                strMsg1 += "- Selecione o idioma.\n";
        }

        if (hasDuplicates(f1.subject.value, ",")) {
            strMsg1 += "- Palavras-chave duplicadas.\n";
        }

    if (Trim(f1.area.value) == "")
        strMsg1 += "- &Aacute;rea de conhecimento.\n";

    if (tipo == 0)
    {
        if (Trim(f1.titconf.value) == "")
            strMsg1 += "- Nome do evento.\n";

        if (f1.edicao)
            if (Trim(f1.edicao.value) == "")
                strMsg1 += "- Edi�&ccedil;&atilde;o do evento.\n";
    }

    if (tipo == 1)
    {
        if (Trim(f1.titjor.value) == "")
            strMsg1 += "- T&iacute;tulo do peri&oacute;dico.\n";

        if (Trim(f1.vol.value) == "")
            strMsg1 += "- Volume do peri&oacute;dico.\n";

        if (Trim(f1.num.value) == "")
            strMsg1 += "- N&oacute;mero do peri&oacute;dico.\n";

        if (Trim(f1.identifier.value) == "")
            strMsg1 += "- ISSN.\n";
        else
            if (!checkCode(Trim(f1.identifier.value)))
                strMsg += "- ISSN inv&aacute;lido\n";
    }

    if (strMsg1 == "" && strMsg == "")
    {

        for (cont = 0; cont < nElementsTarget; cont++)
            Target.options[cont].selected = true;
        f1.submit();
    }
    else
        if (strMsg1 != "")
            alert("Preencha os seguintes campos obrigat&oacute;rios:\n" + strMsg1);
        else
            if (strMsg != "")
                alert("Preenchimento n&atilde;o foi realizado corretamente:\n" + strMsg);
}
function validaTrabalhoEvento(fieldTarget, tipo)
{
  var f1 = document.mainform;
  var strMsg1 = "";
  var strMsg = "";

  var now = new Date();
  var curYear = now.getYear() < 1900 ? (parseInt(now.getYear()) + 1900) : (now.getYear());
  var strYear = Trim(f1.date.value);

  if (Trim(f1.title.value) == "")
  strMsg1 += "- T&iacute;tulo do trabalho.\n";

  var Target = f1.elements[fieldTarget];
  var nElementsTarget = Target.options.length;

  if (nElementsTarget == 0)
  strMsg1 += "- Nome dos autores.\n";

  if (Trim(f1.date.value) == "") {
    strMsg1 += "- Preencha o ano.\n";
  }
  else if(!isNumeric(strYear) || parseInt(strYear) > curYear) {
    strMsg += "- Ano inv&aacute;lido.\n";
  }

  if (f1.language.value == "" || f1.language.value == "semidioma") {
    strMsg1 += "- Selecione o idioma.\n";
  }

  if (tipo == 0)
  {
    if (Trim(f1.titconf.value) == "")
    strMsg1 += "- Nome do evento.\n";
  }


  if (strMsg1 == "" && strMsg == "")
  {

    for (cont = 0; cont < nElementsTarget; cont++)
    Target.options[cont].selected = true;
    f1.submit();
  }
  else
    if (strMsg1 != "")
    alert("Preencha os seguintes campos obrigat&oacute;rios:\n" + strMsg1);
  else
    if (strMsg != "")
    alert("Preenchimento n&atilde;o foi realizado corretamente:\n" + strMsg);
}

function strTrim(sInString) {
  sInString = sInString.replace( /^\s+/g, "" );// strip leading
  return sInString.replace( /\s+$/g, "" );// strip trailing
}

// verifica se a lista de strings, strSubject, separadas por strDelim's,
// possui valores duplicados

function hasDuplicates(strSubject, strDelim) {
    arrSubject = strSubject.split(strDelim);

    for(i = 0; i < arrSubject.length - 1; i++) {
        for(j = i + 1; j < arrSubject.length; j++) {
            if(strTrim(arrSubject[i].toLowerCase()) == strTrim(arrSubject[j].toLowerCase())) {
                return true;
            }
        }
    }

    return false;
}

function delEventConf(strURL) {
    if(confirm("A reprova&ccedil;&atilde;o deste evento implicar&aacute; na reprova&ccedil;&atilde;o de todos os trabalhos a ele vinculados. Deseja continuar?")) {
        window.location.href = strURL;
    }
}

function aprEventConf(strURL) {
    if(confirm("A aprova&ccedil;&atilde;o deste trabalho implicar&aacute; na aprova&ccedil;&atilde;o do evento a ele relacionado. Deseja continuar?")) {
        window.location.href = strURL;
    }
}

//=============FUNCOES DE BOTOES=============
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
    if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
    for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
    if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
      if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
        if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

//=============== VALIDACAO FORMULARIO PESQUISA ANO =========================
function validaAno(id, msg) {
  if (id.value == "") { return true; }
  if (!(/\d{4}/.test(id.value))) {
    alert(msg); id.focus(); return false;
   }
  return true;
}

function validaFormPesquisaAno(id, idInicio, idFim) {
  with (id) {
        if ((validaAno(idInicio, "Formato inválido para o ano inicial.")) &&
                (validaAno(idFim,    "Formato inválido para o ano final."  ))) {
      if (idInicio.value != "" && idFim.value != "" && idInicio.value > idFim.value) {
        alert("A data inicial deve ser menor ou igual à data final."); return false;
      }
        } else { return false; }
  }
  return true;
}
