/*
|----------------------------------------------------------------------------------------------------|
|          Projeto: WebSite da FACENS                                                                |
|        Descrição: Arquivo de funções JS usadas em todo o site.                                     |
|           Criado: 02/08/2006 | Por: Mauro Willian                                                  |
|       Modificado: __/__/____ | Por:                                                                |
|----------------------------------------------------------------------------------------------------|
*/

/*
|----------------------------------------------------------------------------------------------------|
|           Função: FormatarLinkExterno()                                                            |
|        Descrição: Formata todos os links que possuem relação com conteúdo externo.                 |
|  ================================================================================================  |
|       Parâmetros: nenhum                                                                           |
|           Evento: onload                                                                           |
|  Tipo de Retorno: void                                                                             |
|  ================================================================================================  |
|           Criado: 02/08/2006 | Por: Mauro Willian                                                  |
|       Modificado: __/__/____ | Por:                                                                |
|----------------------------------------------------------------------------------------------------|
*/
function FormatarLinkExterno()
{
    var oLinks = document.getElementsByTagName('A');
    var texto = 'Este link abrirá em uma nova janela.';
    
    for (var i = 0; i < oLinks.length; i++)
    {
        if (oLinks[i].rel == 'externo')
        {
            oLinks[i].target = '_blank';
            oLinks[i].title = (oLinks[i].title.length == 0) ? texto : oLinks[i].title + ' (' + texto + ')';
        }
    }
}

/*
|----------------------------------------------------------------------------------------------------|
|           Função: AjustarDiv()                                                                     |
|        Descrição: Ajusta a altura da div principal de acordo com a altura da div base.             |
|  ================================================================================================  |
|       Parâmetros: div_principal = Id da div que será ajustada.                                     |
|                   div_base      = Id da div que servirá como base para ajustar a div principal.    |
|           Evento: onload                                                                           |
|  Tipo de Retorno: void                                                                             |
|  ================================================================================================  |
|           Criado: 07/08/2006 | Por: Mauro Willian                                                  |
|       Modificado: __/__/____ | Por:                                                                |
|----------------------------------------------------------------------------------------------------|
*/
function AjustarDiv(div_principal, div_base)
{
    var oDivPrincipal = document.getElementById(div_principal);
    var oDivBase = document.getElementById(div_base);
    
    if (parseInt(oDivPrincipal.offsetHeight, 10) < parseInt(oDivBase.offsetHeight, 10))
    {
        //alert("1");
        oDivPrincipal.style.height = oDivBase.offsetHeight + 'px';
    }
    else //Específico para a FACENS - caso preciso, retire esse bloco quando copiar a função para outro site
    {
        /*alert("2");
        alert(oDivPrincipal.offsetHeight + " > " + oDivBase.offsetHeight);
        alert(oDivPrincipal.style.height + " > " + oDivPrincipal.offsetHeight);*/
        oDivPrincipal.style.height = (parseInt(oDivPrincipal.offsetHeight, 10)-10) + 'px';
        //oDivPrincipal.style.height = (parseInt(oDivPrincipal.offsetHeight, 10) + 25) + 'px';
    }
}

/*
|----------------------------------------------------------------------------------------------------|
|           Função: AtivarDesativarCampos                                                            |
|        Descrição: Ativa/Desativa os campos do formulário de acordo com a ação informada.           |
|  ================================================================================================  |
|       Parâmetros: acao = Se for 1 então irá desativar os campos. Se for 2 irá ativar os campos.    |
|                   form = ID do formulário onde estão os campos que serão ativados/desativados.     |
|           Evento: nenhum                                                                           |
|  Tipo de Retorno: void                                                                             |
|  ================================================================================================  |
|           Criado: 10/08/2006 | Por: Mauro Willian                                                  |
|       Modificado: __/__/____ | Por:                                                                |
|----------------------------------------------------------------------------------------------------|
*/
function AtivarDesativarCampos(acao, form)
{
    var disabled = (parseInt(acao, 10) == 2) ? false : true;
    var _oForm = document.getElementById(form);
    
    for (var i = 0; i < _oForm.getElementsByTagName("input").length; i++)
    {
        if (_oForm.getElementsByTagName("input")[i].type != "submit" && _oForm.getElementsByTagName("input")[i].type != "button" && _oForm.getElementsByTagName("input")[i].type != "hidden")
            _oForm.getElementsByTagName("input")[i].disabled = disabled;
    }
    for (var i = 0; i < _oForm.getElementsByTagName("textarea").length; i++)
    {
        _oForm.getElementsByTagName("textarea")[i].disabled = disabled;
    }
    for (var i = 0; i < _oForm.getElementsByTagName("select").length; i++)
    {
        _oForm.getElementsByTagName("select")[i].disabled = disabled;
    }
}

/*
|----------------------------------------------------------------------------------------------------|
|           Função: LimparCampos                                                                     |
|        Descrição: Limpa/Reseta todos os campos do formulário de acordo com a ação informada.       |
|  ================================================================================================  |
|       Parâmetros: acao = Se for 1 os campos serão limpos. Se for 2 o formulário será resetado.     |
|                   form = ID do formulário onde estão os campos que serão limpados.                 |
|           Evento: nenhum                                                                           |
|  Tipo de Retorno: void                                                                             |
|  ================================================================================================  |
|           Criado: 10/08/2006 | Por: Mauro Willian                                                  |
|       Modificado: __/__/____ | Por:                                                                |
|----------------------------------------------------------------------------------------------------|
*/
function LimparCampos(acao, form)
{
    var _oForm = document.getElementById(form);
    
    if (parseInt(acao, 10) == 1)
    {
        for (var i = 0; i < _oForm.getElementsByTagName("input").length; i++)
        {
            if (_oForm.getElementsByTagName("input")[i].type == "text")
                _oForm.getElementsByTagName("input")[i].value = "";
            else if (_oForm.getElementsByTagName("input")[i].type == "checkbox")
                _oForm.getElementsByTagName("input")[i].checked = false;
            else if (_oForm.getElementsByTagName("input")[i].type == "radio")
                _oForm.getElementsByTagName("input")[i][0].checked = false;
        }
        for (var i = 0; i < _oForm.getElementsByTagName("textarea").length; i++)
        {
            _oForm.getElementsByTagName("textarea")[i].value = "";
        }
        for (var i = 0; i < _oForm.getElementsByTagName("select").length; i++)
        {
            _oForm.getElementsByTagName("select")[i][0].selected = true;
        }
    }
    else
    {
        _oForm.reset();
    }
}

function CarregarFlash(media_box)
{
    var flashMediaBox;
    var flashMenu = { movie: L_ROOT + "layout/imagens/flash/menu_primario.swf", width:"744", wmode:"transparent", height:"30", majorversion:"7", build:"0", flashvars: "string_url_caminho=" + L_ROOT };
    var flashLigacaoDireta;
    var flashSubMenu1 = { movie: L_ROOT + "layout/imagens/flash/submenu.swf", width:"125", wmode:"transparent", height:"135", majorversion:"8", build:"0", flashvars: "string_url_caminho=" + L_ROOT + "&string_arquivo_nome=xml/AFaculdade.xml", id:"submenuFla" };
    var flashSubMenu2 = { movie: L_ROOT + "layout/imagens/flash/submenu.swf", width:"125", wmode:"transparent", height:"135", majorversion:"8", build:"0", flashvars: "string_url_caminho=" + L_ROOT + "&string_arquivo_nome=xml/CursoTipo.xml", id:"submenuFla" };
    var flashSubMenu3 = { movie: L_ROOT + "layout/imagens/flash/submenu_noticia.swf", width:"305", wmode:"transparent", height:"195", majorversion:"8", build:"0", flashvars: "string_url_caminho=" + L_ROOT + "&string_arquivo_nome=xml/NoticiasDestaque.xml", id:"submenuFla" };
		//var flashSubMenu3 = { movie: L_ROOT + "layout/imagens/flash/submenu.swf", width:"125", wmode:"transparent", height:"135", majorversion:"8", build:"0", flashvars: "string_url_caminho=" + L_ROOT + "&string_arquivo_nome=xml/NoticiasDestaque.xml", id:"submenuFla" };
    var flashSubMenu4 = { movie: L_ROOT + "layout/imagens/flash/submenu.swf", width:"125", wmode:"transparent", height:"135", majorversion:"8", build:"0", flashvars: "string_url_caminho=" + L_ROOT + "&string_arquivo_nome=xml/Servicos.xml", id:"submenuFla" };
    
    UFO.create(flashMenu, "menu");
    UFO.create(flashSubMenu1, "submenu_afaculdade");
    UFO.create(flashSubMenu2, "submenu_ensino");
    UFO.create(flashSubMenu3, "submenu_noticias");
    UFO.create(flashSubMenu4, "submenu_servicos");
    
    if (media_box)
    {
        flashMediaBox = { movie: L_ROOT + "layout/imagens/flash/media_box.swf", width:"744", wmode:"transparent", height:"225", majorversion:"7", build:"0", flashvars: "string_url_caminho=" + L_ROOT };
        flashLigacaoDireta = { movie: L_ROOT + "layout/imagens/flash/ligacao_direta.swf", width:"275", wmode:"transparent", height:"340", majorversion:"8", build:"0", flashvars: "string_url_caminho=" + L_ROOT };
        
        UFO.create(flashMediaBox, "media_box");
        UFO.create(flashLigacaoDireta, "ligacao_direta");
    }
    
    window.setTimeout("ConfigurarSubMenu();", 500);
}

function AbrirSubMenu(area_id)
{
    var flashSubMenu;
    var iLeft = "";
    
    
    var oSubMenu1 = document.getElementById("submenu_afaculdade");
    var oSubMenu2 = document.getElementById("submenu_ensino");
    var oSubMenu3 = document.getElementById("submenu_noticias");
    var oSubMenu4 = document.getElementById("submenu_servicos");
    
    oSubMenu1.style.display = "none";
    oSubMenu2.style.display = "none";
    oSubMenu3.style.display = "none";
    oSubMenu4.style.display = "none";
    
    switch (parseInt(area_id, 10))
    {
        case 1:
            oSubMenu1.style.display = "block";
            oSubMenu1.style.left = "3px";
            break;
        case 2:
            oSubMenu2.style.display = "block";
            oSubMenu2.style.left = "140px";
            break;
        case 3:
            oSubMenu3.style.display = "block";
            oSubMenu3.style.left = "246px";
            break;
        case 4:
            oSubMenu4.style.display = "block";
            oSubMenu4.style.left = "360px";
            break;
    }
}

function FecharSubMenu()
{
    var oSubMenu1 = document.getElementById("submenu_afaculdade");
    var oSubMenu2 = document.getElementById("submenu_ensino");
    var oSubMenu3 = document.getElementById("submenu_noticias");
    var oSubMenu4 = document.getElementById("submenu_servicos");
    
    oSubMenu1.style.display = "none";
    oSubMenu2.style.display = "none";
    oSubMenu3.style.display = "none";
    oSubMenu4.style.display = "none";
}

function ConfigurarSubMenu()
{
    var oSubMenu1 = document.getElementById("submenu_afaculdade");
    var oSubMenu2 = document.getElementById("submenu_ensino");
    var oSubMenu3 = document.getElementById("submenu_noticias");
    var oSubMenu4 = document.getElementById("submenu_servicos");
    var oMenu = document.getElementById("menu");
    
    oMenu.onmouseout = function(event)
    {
        if (event)
        {
            if (event.relatedTarget != oSubMenu1 && event.relatedTarget != oSubMenu2 && event.relatedTarget != oSubMenu3 && event.relatedTarget != oSubMenu4)
                FecharSubMenu();
        }
        else if (window.event)
        {
            if (window.event.toElement != oSubMenu1 && window.event.toElement != oSubMenu2 && window.event.toElement != oSubMenu3 && window.event.toElement != oSubMenu4)
                FecharSubMenu();
        }
    }
    
    /* A FACULDADE */
    oSubMenu1.onmouseout = function(event)
    {
        if (event)
        {
            if (event.relatedTarget != oSubMenu1.childNodes[0] && event.relatedTarget != oSubMenu1)
                FecharSubMenu();
        }
        else if (window.event)
        {
            if (window.event.toElement != oSubMenu1.childNodes[0] && window.event.toElement != oSubMenu1 && window.event.toElement.tagName.toLowerCase() != "object")
                FecharSubMenu();
        }
    }
    
    oSubMenu1.childNodes[0].onmouseout = function(event)
    {
        if (event)
        {
            if (event.relatedTarget != oSubMenu1)
                FecharSubMenu();
        }
        else if (window.event)
        {
            if (window.event.toElement != oSubMenu1)
                FecharSubMenu();
        }
    }
    
    /* ENSINO */
    oSubMenu2.onmouseout = function(event)
    {
        if (event)
        {
            if (event.relatedTarget != oSubMenu2.childNodes[0] && event.relatedTarget != oSubMenu2)
                FecharSubMenu();
        }
        else if (window.event)
        {
            if (window.event.toElement != oSubMenu2.childNodes[0] && window.event.toElement != oSubMenu2 && window.event.toElement.tagName.toLowerCase() != "object")
                FecharSubMenu();
        }
    }
    
    oSubMenu2.childNodes[0].onmouseout = function(event)
    {
        if (event)
        {
            if (event.relatedTarget != oSubMenu2)
                FecharSubMenu();
        }
        else if (window.event)
        {
            if (window.event.toElement != oSubMenu2)
                FecharSubMenu();
        }
    }
    
    /* NOTÍCIAS */
    oSubMenu3.onmouseout = function(event)
    {
        if (event)
        {
            if (event.relatedTarget != oSubMenu3.childNodes[0] && event.relatedTarget != oSubMenu3)
                FecharSubMenu();
        }
        else if (window.event)
        {
            if (window.event.toElement != oSubMenu3.childNodes[0] && window.event.toElement != oSubMenu3 && window.event.toElement.tagName.toLowerCase() != "object")
                FecharSubMenu();
        }
    }
    
    oSubMenu3.childNodes[0].onmouseout = function(event)
    {
        if (event)
        {
            if (event.relatedTarget != oSubMenu3)
                FecharSubMenu();
        }
        else if (window.event)
        {
            if (window.event.toElement != oSubMenu3)
                FecharSubMenu();
        }
    }
    
    /* SERVIÇOS */
    oSubMenu4.onmouseout = function(event)
    {
        if (event)
        {
            if (event.relatedTarget != oSubMenu4.childNodes[0] && event.relatedTarget != oSubMenu4)
                FecharSubMenu();
        }
        else if (window.event)
        {
            if (window.event.toElement != oSubMenu4.childNodes[0] && window.event.toElement != oSubMenu4 && window.event.toElement.tagName.toLowerCase() != "object")
                FecharSubMenu();
        }
    }
    
    oSubMenu4.childNodes[0].onmouseout = function(event)
    {
        if (event)
        {
            if (event.relatedTarget != oSubMenu4)
                FecharSubMenu();
        }
        else if (window.event)
        {
            if (window.event.toElement != oSubMenu4)
                FecharSubMenu();
        }
    }
}

/*
|----------------------------------------------------------------------------------------------------|
|           Função: AbrirLogin                                                                       |
|        Descrição: Chamar janela de login                                                           |
|  ================================================================================================  |
|       Parâmetros: href = caminho que deve redirecionar depois de logado.                           |
|           Evento: nenhum                                                                           |
|  Tipo de Retorno: void                                                                             |
|  ================================================================================================  |
|           Criado: 04/09/2006 | Por: Diego Martins                                                  |
|       Modificado: __/__/____ | Por:                                                                |
|----------------------------------------------------------------------------------------------------|
*/
function AbrirLogin(href)
{
    document.getElementById('login_usuario').style.display = "block";
    document.getElementById('hdn_href').value = href;
}

/*
|----------------------------------------------------------------------------------------------------|
|           Função: FecharLogin                                                                      |
|        Descrição: Fecha a janela de login                                                          |
|  ================================================================================================  |
|       Parâmetros: nenhum                                                                           |
|           Evento: nenhum                                                                           |
|  Tipo de Retorno: void                                                                             |
|  ================================================================================================  |
|           Criado: 04/09/2006 | Por: Diego Martins                                                  |
|       Modificado: __/__/____ | Por:                                                                |
|----------------------------------------------------------------------------------------------------|
*/
function FecharLogin()
{
    document.getElementById('login_usuario').style.display = "none";
}

/*
|----------------------------------------------------------------------------------------------------|
|           Função: EnviarFormulario                                                                 |
|        Descrição: Valida os campos do formulário de login                                          |
|  ================================================================================================  |
|       Parâmetros: nenhum                                                                           |
|           Evento: nenhum                                                                           |
|  Tipo de Retorno: void                                                                             |
|  ================================================================================================  |
|           Criado: 04/09/2006 | Por: Diego Martins                                                  |
|       Modificado: __/__/____ | Por:                                                                |
|----------------------------------------------------------------------------------------------------|
*/
function EnviarFormulario()
{
    //Instanciando o objeto de Validação
    var oValidator = new Validator();
    
    oValidator.setForm("login_user");
    oValidator.setTipoMensagem("alert");
    oValidator.Items.Add("dgwkZwofNf", "Por favor, informe um e-mail válido.", "email", "");
    oValidator.Items.Add("qbjrbOzYTQ", "Por favor, preencha a senha.", "", "");
    
    if (!oValidator.Validate())
        return false;
    else
        return true;
}