function lTrim(texto){
    while (texto.indexOf(" ") == 0){
        texto = texto.replace(" ", "");
    }
    return texto;
}

function rTrim(texto){
    while (texto.lastIndexOf(" ") == texto.length-1){
        texto = texto.substring(0, texto.length-1);
    }
    return texto;
}

function trim(texto){
    return rTrim(lTrim(texto));
}

function Replace(totalValue,oldValue,newValue)
{
    while(totalValue.indexOf(oldValue) > -1)
        totalValue=totalValue.replace(oldValue,newValue);
    return totalValue;
}

function lerEmentas(blocoEmenta){
    var blocoTemplate = document.getElementById(blocoEmenta);
    var buffer = "";

    if (blocoTemplate){
        // Ajax
        var reqEmentas = false;
        // Mozilla/Safari
        if (window.XMLHttpRequest) {
            reqEmentas = new XMLHttpRequest();
        }
        // IE
        else{
            if (window.ActiveXObject) {
                reqEmentas = new ActiveXObject("Microsoft.XMLHTTP");
            }
        }

        reqEmentas.open("GET", "/SiteNasajon/site?cmd=CmdListarEmenta&acao=listajson", false);
        reqEmentas.send(null);
        var jsonEmentas = trim(reqEmentas.responseText);
        var listaEmentas = eval(jsonEmentas);
        for(var i=0; (i<listaEmentas.length);i++){
            var output = blocoTemplate.innerHTML;
            output = Replace(output, "(::hint::)", listaEmentas[i].titulo);
            output = Replace(output, "(::titulo::)", abreviarTexto(listaEmentas[i].tituloAbreviado, 30));
            if (navigator.userAgent.indexOf("Firefox") != -1) {
                    output = Replace(output, "%28::id::%29", listaEmentas[i].id);
            }else {
                    output = Replace(output, "(::id::)", listaEmentas[i].id);
            }
            output = Replace(output, "(::dataHora::)", listaEmentas[i].dataHora);
            buffer += output;

            if (i==1){
                break;
            }
        }
        if (listaEmentas.length > 0){
            blocoTemplate.innerHTML = buffer;
        }else{
            blocoTemplate.innerHTML = "<li><a href=http://www.nasajon.com.br:8080/SiteNasajon/educacional><strong>Aguarde o cronograma dos cursos para 2010</strong></a></li>";
        }
    }
}

function abreviarTexto(texto, maximoCaracteres){
    if (trim(texto).length <= maximoCaracteres){
        return trim(texto);
    }
    var palavras = texto.split(" ");

    while (palavras.length >= maximoCaracteres/2){
        novoTamanho = (palavras.length - (palavras.length % 2)) / 2;
        var palavrasAux = new Array(novoTamanho);
        var k=0;
        for(var h=0; h<palavras.length;h++){
            if ((h%2)==0){
                palavrasAux[k] = palavras[h];
                k++;
            }
        }
        palavras = palavrasAux;
    }
    
    var idxMaior = 0;
    var tamanhoMaior = 0;
    for(var i=0; i<palavras.length;i++){
        if (tamanhoMaior <= palavras[i].length){
            tamanhoMaior = palavras[i].length;
            idxMaior = i;
        }
    }
    palavras[idxMaior] = palavras[idxMaior].charAt(0) + ".";
    var textoTratado = "";
    for(var j=0; j<palavras.length;j++){
        textoTratado += palavras[j] + " ";
    }

    if (trim(textoTratado).length <= maximoCaracteres){
        return trim(textoTratado)
    }else{
        return abreviarTexto(textoTratado, maximoCaracteres);
    }
}

