$(document).ready(function() {
    $("#telefoneRodape").mask("(99) 9999-9999");
    $("#telefonecliente").mask("(99) 9999-9999");
    $("#cep").mask("99999-999");
    $("#cnpj").mask("99.999.999/9999-99");

    buildsubmenus_horizontal();
});
function isExplorer(){
    return navigator.appName == "Microsoft Internet Explorer";
}
function replaceAll(str, de, para){
    var pos = str.indexOf(de);
    while (pos > -1){
        str = str.replace(de, para);
        pos = str.indexOf(de);
    }
    return str;
}
function formataNomeDocumento(str) {
    a = ['ª','º','°', ' ', ';', '\'', 'À', 'Á', 'Â', 'Ã', 'Ä', 'Å', 'Æ', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ð', 'Ñ', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', 'Ø', 'Ù', 'Ú', 'Û', 'Ü', 'Ý', 'ß', 'à', 'á', 'â', 'ã', 'ä', 'å', 'æ', 'ç', 'è', 'é', 'ê', 'ë', 'ì', 'í', 'î', 'ï', 'ñ', 'ò', 'ó', 'ô', 'õ', 'ö', 'ø', 'ù', 'ú', 'û', 'ü', 'ý', 'ÿ', 'Ā', 'ā', 'Ă', 'ă', 'Ą', 'ą', 'Ć', 'ć', 'Ĉ', 'ĉ', 'Ċ', 'ċ', 'Č', 'č', 'Ď', 'ď', 'Đ', 'đ', 'Ē', 'ē', 'Ĕ', 'ĕ', 'Ė', 'ė', 'Ę', 'ę', 'Ě', 'ě', 'Ĝ', 'ĝ', 'Ğ', 'ğ', 'Ġ', 'ġ', 'Ģ', 'ģ', 'Ĥ', 'ĥ', 'Ħ', 'ħ', 'Ĩ', 'ĩ', 'Ī', 'ī', 'Ĭ', 'ĭ', 'Į', 'į', 'İ', 'ı', 'Ĳ', 'ĳ', 'Ĵ', 'ĵ', 'Ķ', 'ķ', 'Ĺ', 'ĺ', 'Ļ', 'ļ', 'Ľ', 'ľ', 'Ŀ', 'ŀ', 'Ł', 'ł', 'Ń', 'ń', 'Ņ', 'ņ', 'Ň', 'ň', 'ŉ', 'Ō', 'ō', 'Ŏ', 'ŏ', 'Ő', 'ő', 'Œ', 'œ', 'Ŕ', 'ŕ', 'Ŗ', 'ŗ', 'Ř', 'ř', 'Ś', 'ś', 'Ŝ', 'ŝ', 'Ş', 'ş', 'Š', 'š', 'Ţ', 'ţ', 'Ť', 'ť', 'Ŧ', 'ŧ', 'Ũ', 'ũ', 'Ū', 'ū', 'Ŭ', 'ŭ', 'Ů', 'ů', 'Ű', 'ű', 'Ų', 'ų', 'Ŵ', 'ŵ', 'Ŷ', 'ŷ', 'Ÿ', 'Ź', 'ź', 'Ż', 'ż', 'Ž', 'ž', 'ſ', 'ƒ', 'Ơ', 'ơ', 'Ư', 'ư', 'Ǎ', 'ǎ', 'Ǐ', 'ǐ', 'Ǒ', 'ǒ', 'Ǔ', 'ǔ', 'Ǖ', 'ǖ', 'Ǘ', 'ǘ', 'Ǚ', 'ǚ', 'Ǜ', 'ǜ', 'Ǻ', 'ǻ', 'Ǽ', 'ǽ', 'Ǿ', 'ǿ','´'];
    b = ['a','o','o', '_', '', '', 'A', 'A', 'A', 'A', 'A', 'A', 'AE', 'C', 'E', 'E', 'E', 'E', 'I', 'I', 'I', 'I', 'D', 'N', 'O', 'O', 'O', 'O', 'O', 'O', 'U', 'U', 'U', 'U', 'Y', 's', 'a', 'a', 'a', 'a', 'a', 'a', 'ae', 'c', 'e', 'e', 'e', 'e', 'i', 'i', 'i', 'i', 'n', 'o', 'o', 'o', 'o', 'o', 'o', 'u', 'u', 'u', 'u', 'y', 'y', 'A', 'a', 'A', 'a', 'A', 'a', 'C', 'c', 'C', 'c', 'C', 'c', 'C', 'c', 'D', 'd', 'D', 'd', 'E', 'e', 'E', 'e', 'E', 'e', 'E', 'e', 'E', 'e', 'G', 'g', 'G', 'g', 'G', 'g', 'G', 'g', 'H', 'h', 'H', 'h', 'I', 'i', 'I', 'i', 'I', 'i', 'I', 'i', 'I', 'i', 'IJ', 'ij', 'J', 'j', 'K', 'k', 'L', 'l', 'L', 'l', 'L', 'l', 'L', 'l', 'l', 'l', 'N', 'n', 'N', 'n', 'N', 'n', 'n', 'O', 'o', 'O', 'o', 'O', 'o', 'OE', 'oe', 'R', 'r', 'R', 'r', 'R', 'r', 'S', 's', 'S', 's', 'S', 's', 'S', 's', 'T', 't', 'T', 't', 'T', 't', 'U', 'u', 'U', 'u', 'U', 'u', 'U', 'u', 'U', 'u', 'U', 'u', 'W', 'w', 'Y', 'y', 'Y', 'Z', 'z', 'Z', 'z', 'Z', 'z', 's', 'f', 'O', 'o', 'U', 'u', 'A', 'a', 'I', 'i', 'O', 'o', 'U', 'u', 'U', 'u', 'U', 'u', 'U', 'u', 'U', 'u', 'A', 'a', 'AE', 'ae', 'O', 'o',''];
    for (i = 0;i< a.length;i++)
        str = replaceAll(str, a[i], b[i]);

    return str;
}
function url_encode( str ) {
    var histogram = {}, tmp_arr = [];
    var ret = (str+'').toString();

    var replacer = function(search, replace, str) {
        var tmp_arr = [];
        tmp_arr = str.split(search);
        return tmp_arr.join(replace);
    };

    // The histogram is identical to the one in urldecode.
    histogram["'"]      = '%27';
    histogram['(']      = '%28';
    histogram[')']      = '%29';
    histogram['*']      = '%2A';
    histogram['~']      = '%7E';
    histogram['!']      = '%21';
    histogram['%20']    = '+';
    histogram['\u20AC'] = '%80';
    histogram['\u0081'] = '%81';
    histogram['\u201A'] = '%82';
    histogram['\u0192'] = '%83';
    histogram['\u201E'] = '%84';
    histogram['\u2026'] = '%85';
    histogram['\u2020'] = '%86';
    histogram['\u2021'] = '%87';
    histogram['\u02C6'] = '%88';
    histogram['\u2030'] = '%89';
    histogram['\u0160'] = '%8A';
    histogram['\u2039'] = '%8B';
    histogram['\u0152'] = '%8C';
    histogram['\u008D'] = '%8D';
    histogram['\u017D'] = '%8E';
    histogram['\u008F'] = '%8F';
    histogram['\u0090'] = '%90';
    histogram['\u2018'] = '%91';
    histogram['\u2019'] = '%92';
    histogram['\u201C'] = '%93';
    histogram['\u201D'] = '%94';
    histogram['\u2022'] = '%95';
    histogram['\u2013'] = '%96';
    histogram['\u2014'] = '%97';
    histogram['\u02DC'] = '%98';
    histogram['\u2122'] = '%99';
    histogram['\u0161'] = '%9A';
    histogram['\u203A'] = '%9B';
    histogram['\u0153'] = '%9C';
    histogram['\u009D'] = '%9D';
    histogram['\u017E'] = '%9E';
    histogram['\u0178'] = '%9F';

    // Begin with encodeURIComponent, which most resembles PHP's encoding functions
    ret = encodeURIComponent(ret);

    for (search in histogram) {
        replace = histogram[search];
        ret = replacer(search, replace, ret) // Custom replace. No regexing
    }

    // Uppercase for full PHP compatibility
    return ret.replace(/(\%([a-z0-9]{2}))/g, function(full, m1, m2) {
        return "%"+m2.toUpperCase();
    });

    return ret;
}
function url_decode( str ) {

    var histogram = {};
    var ret = str.toString();

    var replacer = function(search, replace, str) {
        var tmp_arr = [];
        tmp_arr = str.split(search);
        return tmp_arr.join(replace);
    };

    // The histogram is identical to the one in urlencode.
    histogram["'"]   = '%27';
    histogram['(']   = '%28';
    histogram[')']   = '%29';
    histogram['*']   = '%2A';
    histogram['~']   = '%7E';
    histogram['!']   = '%21';
    histogram['%20'] = '+';
    histogram['\u20AC'] = '%80';
    histogram['\u0081'] = '%81';
    histogram['\u201A'] = '%82';
    histogram['\u0192'] = '%83';
    histogram['\u201E'] = '%84';
    histogram['\u2026'] = '%85';
    histogram['\u2020'] = '%86';
    histogram['\u2021'] = '%87';
    histogram['\u02C6'] = '%88';
    histogram['\u2030'] = '%89';
    histogram['\u0160'] = '%8A';
    histogram['\u2039'] = '%8B';
    histogram['\u0152'] = '%8C';
    histogram['\u008D'] = '%8D';
    histogram['\u017D'] = '%8E';
    histogram['\u008F'] = '%8F';
    histogram['\u0090'] = '%90';
    histogram['\u2018'] = '%91';
    histogram['\u2019'] = '%92';
    histogram['\u201C'] = '%93';
    histogram['\u201D'] = '%94';
    histogram['\u2022'] = '%95';
    histogram['\u2013'] = '%96';
    histogram['\u2014'] = '%97';
    histogram['\u02DC'] = '%98';
    histogram['\u2122'] = '%99';
    histogram['\u0161'] = '%9A';
    histogram['\u203A'] = '%9B';
    histogram['\u0153'] = '%9C';
    histogram['\u009D'] = '%9D';
    histogram['\u017E'] = '%9E';
    histogram['\u0178'] = '%9F';

    for (replace in histogram) {
        search = histogram[replace]; // Switch order when decoding
        ret = replacer(search, replace, ret) // Custom replace. No regexing
    }

    // End with decodeURIComponent, which most resembles PHP's encoding functions
    ret = decodeURIComponent(ret);

    return ret;
}
function htmlspecialchars(str) {
    if (typeof(str) == "string") {
        str = str.replace(/&/g, "&amp;"); /* must do &amp; first */
        str = str.replace(/"/g, "&quot;");
        str = str.replace(/'/g, "&#039;");
        str = str.replace(/</g, "&lt;");
        str = str.replace(/>/g, "&gt;");
    }
    return str;
}
function rhtmlspecialchars(str) {
    if (typeof(str) == "string") {
        str = str.replace(/&gt;/ig, ">");
        str = str.replace(/&lt;/ig, "<");
        str = str.replace(/&#039;/g, "'");
        str = str.replace(/&quot;/ig, '"');
        str = str.replace(/&amp;/ig, '&'); /* must do &amp; last */
    }
    return str;
}
function htmlEntities(texto){
    //by Micox - elmicox.blogspot.com - www.ievolutionweb.com
    var i,carac,letra,novo='';
    for(i=0;i<texto.length;i++){
        carac = texto[i].charCodeAt(0);
        if( (carac > 47 && carac < 58) || (carac > 62 && carac < 127) ){
            //se for numero ou letra normal
            novo += texto[i];
        }else{
            novo += "&#" + texto[i].charCodeAt(0) + ";";
        }
    }
    return novo;
}
function abrirPagID(url, idDiv){
    return $.ajax({
        type: "GET",
        url: url,
        async: true,
        success : function (dados){
            $("#"+idDiv).html(dados);
        },
        beforeSend : function (){
            $("#"+idDiv).html("Carregando...");
        }
    });
}
function abrirPagPostID(url, idDiv, dados){
    return $.ajax({
        type: "POST",
        url: url,
        data: dados,
        async: true,
        success : function (dados){
            $("#"+idDiv).html(dados);
        },
        beforeSend : function (){
            $("#"+idDiv).html("Carregando...");
        }
    });
}
function ativaScript(url){
    $.ajax({
        url: url
    });
}
function ativaScriptPOST(url, dados){
    $.ajax({
        type: "POST",
        url: url,
        data: dados
    });
}
function ativaScriptResposta(url){
    return $.ajax({
        url: url,
        async: false
    }).responseText;
}
function fechaPopUpApoio(){
    $(".popUpMidiaKit").remove();
    $(".escureceTela").fadeOut(300, function(){
        $(this).remove();
    });
}
function popUpMidiaKit(){
    //abre a caixa de cadastro
    $("body").append("<div class=\"escureceTela\" onclick=\"fechaPopUpApoio();\"></div>\n\
                      <div class=\"popUpMidiaKit\">\n\
                            <div class=\"fecharPopUpMidiaKit\">\n\
                                <a href=\"javascript:void(0);\" onclick=\"downloadMidiaKit();\">\n\
                                    <img src=\"imagens/conteudo/icones_opcoes/download.png\" style=\"width: 32px; height: 32px;\">\n\
                                    Download do Midia Kit\n\
                                </a>\n\
                                <span onclick=\"fechaPopUpApoio();\">Fechar</span></div>\n\
                            "+ativaScriptResposta("class/Ajax.php?funcao=midiaKitBookFlip")+"\n\
                      </div>");
}
function downloadMidiaKit(){
    var loc = isExplorer() ? "../" : "";
    window.open(loc+'class/Ajax.php?funcao=baixaMidiaKit','_blank', 'width=10, height=10, top=10, left=10, scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no');
}
function validaEnvioEmailRodape(){
    if(!$("#nomeRodape").val()){
        alert("Você precisa preencher todos o campo \"Nome\"");
        $("#nomeRodape").focus();
        return false;
    }
    if(!$("#emailRodape").val()){
        alert("Você precisa preencher todos o campo \"E-Mail\"");
        $("#emailRodape").focus();
        return false;
    }

    if(!checkMail($("#emailRodape").val())){
        alert("\"E-Mail\" não esta no formato correto");
        $("#emailRodape").focus();
        return false;
    }
    
    if(!$("#telefoneRodape").val()){
        alert("Você precisa preencher todos o campo \"Telefone\"");
        $("#telefoneRodape").focus();
        return false;
    }
    if(!$("#comentarioRodape").val()){
        alert("Você precisa preencher todos o campo \"Comentario\"");
        $("#comentarioRodape").focus();
        return false;
    }

    abrirPagID("class/Ajax.php?funcao=enviaEmailRodapeSite&nome="+$("#nomeRodape").val()+"&email="+$("#emailRodape").val()+"&telefone="+$("#telefoneRodape").val()+"&comentario="+$("#comentarioRodape").val(),"respostaEmailRodape");
    return true;
}
function checkMail(mail){
    var er = new RegExp(/^[A-Za-z0-9_\-\.]+@[A-Za-z0-9_\-\.]{2,}\.[A-Za-z0-9]{2,}(\.[A-Za-z0-9])?/);
    if(typeof(mail) == "string"){
        if(er.test(mail)){
            return true;
        }
    }else if(typeof(mail) == "object"){
        if(er.test(mail.value)){
            return true;
        }
    }
    return false;
}
function chamaConteudo(idComercial,formato,vertical){
    if(!vertical || vertical=='false'){
        formato = 'h';
        //retira o ultimo botao de "vertical" acima do painel
        $("#cabecalhoTelao > span:last").hide();
    }else{
        //reabilita o ultimo botao de "vertical" acima da tela
        $("#cabecalhoTelao > span:last").show();
    }

    //altera o tamanho do painel
    $("#cabecalhoTelao > span:last").click(function(){
        $("#voltaVideo").css({
            'position': 'relative',
            'left': "50%",
            'margin-left': '-101px',
            'width': '202px',
            'height': '383px'
        });
    });
    $("#formatoConteudo").val(formato);
    $("#idComercial").val(idComercial);
    $("#seVertical").val(vertical);

    abrirPagID("class/Ajax.php?funcao=conteudoArquivo&formato="+formato+"&idComercial="+idComercial,"videoConteudo");
}
function abrirJanelaAJAX(url){
    $("body").append("<div class='janelaPopUPFundo'></div><div class='janelaPopUP'><div class='cabecalhoJanelaPopUpFundo'><img src='imagens/conteudo/icones_opcoes/fechar.png' onclick=\"$('.janelaPopUPFundo').remove(),$('.janelaPopUP').remove();\" /></div><div id='paginaASerMostrada'></div></div>");
    abrirPagID(url,"paginaASerMostrada");
}
function fechaElemento(id){
    document.getElementById(id).style.display="none";
}
function abreElemento(id){
    document.getElementById(id).style.display="block";
}
function iniciaBannerHome(){
    velocidadeCrescimento = 150; //velocidade em qeu os links crescem e diminuem
    marqueeInit({
        uniqueid: "imgCidades",
        inc: 8,                 //speed - pixel increment for each iteration of this marquee's movement
        mouse: 'cursor driven', //mouseover behavior ('pause' 'cursor driven' or false)
        style: {
            padding: '2px',
            width: '980px',
            height: '180px'
        },
        moveatleast: 1,
        neutral: 150,
        savedirection: false,
        random: false
    });
    $(".marquee0 > div > div > ul").imgbubbles({
        factor:1.20
    });
}
function efeitoPontoUnidades(){
    //quando a div é clicada, ela mostra a listagem de cidades (ul)
    //mas o efeito nao se aplica a imagem (setinha)
    $(".listaCidades > li img + div").click(function () {
        $(this).siblings().not('img').slideToggle('fast');
    }).toggle(
        function(){
            $(this).siblings("img").attr("src","imagens/conteudo/setaBaixo.png");
        },
        function(){
            $(this).siblings("img").attr("src","imagens/conteudo/setaLado.png");
        });
    //adiciona o evendo a imagem (setinha) também, mas sem afetar todas de uma vez, apenas o seu irmao (div)
    $(".listaCidades > li img").click(function () {
        $(this).siblings("div").click();
    })
}
function removerUsuario(id){
    //remove o usuario
    ativaScript("class/Ajax.php?funcao=sisUsuariosDelete_row&idUsuario="+id);

    //remove a linah da tabela
    $(".rowselected").remove();
    
//atualiza a tabela
//atualizaGridSisUsuario();
}
function baixaVideoCheckin(video){
    window.open((isExplorer() ? "../" : "") + "class/Ajax.php?funcao=baixaVideoCheckin&video="+video,"janela", "width=350, height=50, top=10, left=10, scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no");
}
function alternarMarcacaoChekin(marcar){
    $(".divArredondadaCinzaCheckin input[type='checkbox']").each(function(indice, elemento){
        this.checked=marcar;
    });
}
function retirarDoCheckin(){
    var fotos = "<?xml version=\"1.0\" encoding=\"utf-8\"?>";
    fotos += "<dados>";

    if($(".divArredondadaCinzaCheckin input[type='checkbox']:checked").length == 0){
        alert("Selecione ao menos uma foto para ser retirada deste checkin");
        return false;
    }

    $(".divArredondadaCinzaCheckin input[type='checkbox']:checked").each(function(){
        endFoto = $(this).siblings("a").find("img").attr("src");
        fotos += "<arq>";
        fotos += "<idAssoc>"+$(this).val()+"</idAssoc>";
        fotos += "<endFoto>"+endFoto+"</endFoto>";
        fotos += "</arq>";
        //retira a foto da coluna
        $(this).parent().remove();
    });
    fotos += "</dados>";

    //envia o XML com os IDs para serem removidos
    ativaScriptPOST("class/Ajax.php", "funcao=apagaAssocPontoCheckin&idAssoc="+fotos);
    return true;
}
function adicionarCheckin(){
    $("#continuaFormAdicionarCheckin").html(ativaScriptResposta("class/Ajax.php?funcao=adicionaDescricaoCheckin"));
}
function retirarPontoDoCheckin(idPontoCheckin){
    if(confirm("Tem certeza que deseja excluir este ponto do checkin?")){
        var status = ativaScriptResposta("class/Ajax.php?funcao=retirapontoDoCheckin&idPontoCheckin="+idPontoCheckin);
        //apaga os registros e pastas do servidor
        if(status != "erro" && status != "erroExclusao"){
            //captura o id do elemento pai
            var pai = $("#pontoCheckin"+idPontoCheckin).parent();
            
            //apaga posição do elemento da lista
            $("#pontoCheckin"+idPontoCheckin).remove();

            //reinsere o elemento qeu avisa que nao ha pontos no checkin
            if($(pai).find("li").length == 0){
                $(pai).append("<li class=\"semPontoFotoCheckin\">Não ha fotos cadastrada</li>");
            }

            //apaga a div arredondada
            $("#cadastroCheckinDireita").html("");

            return true;
        }else{
            alert("Ocorreu um erro durante a exclusao do registro do ponto no Checkin. \n\ Tente novamente mais tarde.");
        }       
    }
    return false;
}
function cadastraCheckin(){
    var descricao = $("#descricaiNovoCheckin").val();
    var idCliente = $("#idCliente").val();
    
    //verifica se a descricao veio em branco
    if(descricao.trim()==""){
        alert("Insira uma descriçaõ e clique no botão 'Confirmar'");
        return false;
    }
    var status = ativaScriptResposta("class/Ajax.php?funcao=cadastraCheckin&descricao="+descricao+"&idCliente="+idCliente);

    //verifica se o cadastro é duplicado
    if(status == "duplicado"){
        alert("Já existe um checkin com esta descrição para o dia de hoje. Por favor, insira uma descrição diferente");
        return false;
    }

    //verifica se o cadastro deu certo
    if(status == "erro"){
        alert("Erro durante o cadastro. Verifique as informações inseridas e tente novamente");
        return false;
    }
    
    $("#listagemCheckinAdicionados ul:eq(0)").append("<li>"+status+"</li>");
    $("#continuaFormAdicionarCheckin").html("");
    ativaSlideElemento($("#listagemCheckinAdicionados ul").find("label:last"));
    return true;
}
function editarCheckin(idCheckin, refLi){
    var label = $(refLi).parent().parent().find("label:eq(0)");

    //retira o efeito toogle do label
    $(label).unbind('click');
    
    var li = $(refLi).parent().parent(); //$(li).find("label:eq(0)").text()
    $(li).find("label:eq(0)").html("<input type=\"text\" value=\""+$(li).find("label:eq(0)").text()+"\" style=\"width: 130px;\" />"+
        "<img src=\"imagens/conteudo/icones_opcoes/confirmar.png\" style=\"width: 15px; height: 15px;cursor:pointer;\" onclick=\"confirmaAlteracaoNomeCheckin('"+idCheckin+"', this);\" />"+
        "<img src=\"imagens/conteudo/icones_opcoes/fechar.png\" style=\"width: 15px; height: 15px;cursor:pointer;\" onclick=\"cancelaAlteracaoNomeCheckin('"+idCheckin+"', this);\" />").focus();
}
function cancelaAlteracaoNomeCheckin(idCheckin, refImg){
    //reativa o efeito toggle no label
    ativaSlideElemento($(refImg).parent());
    
    $(refImg).parent().html(ativaScriptResposta("class/Ajax.php?funcao=recuperaDescricaoCheckin&idCheckin="+idCheckin));
//reativa o efeito toggle no elemento
}
function confirmaAlteracaoNomeCheckin(idCheckin, refImg){
    var li = $(refImg).parent();
    var novoNome = $(li).find("input[type='text']").val();

    if(novoNome == ""){
        alert("Você deve especificar uma descricão para o Checkin");
        return false;
    }

    //atualiza o nome no banco de dados
    if(ativaScriptResposta("class/Ajax.php?funcao=atualizaNomeCheckin&idCheckin="+idCheckin+"&nome="+novoNome) == "ok"){
        //seta o novo nome no HTML
        $(li).html(novoNome);
    }    

    //reinsere o efeito toggle no label
    ativaSlideElemento($(li).parent().find("label:eq(0)"));

    return true;
}
function visualizarCheckin(idCheckin){
    abrirPagID("class/Ajax.php?funcao=visualizaCheckin&idCheckin="+idCheckin,"cadastroCheckinDireita");
}
function ativaSlide(){
    $("#listagemCheckinAdicionados ul li label").each(function(indice, elemento){
        ativaSlideElemento(elemento);
    });
}
function ativaSlideElemento(elemento){
    $(elemento).click(function(){
        $(this).parent().find("ul").slideToggle(1000);
    });
}
function removerCheckin(idCheckin, refLi){
    if(confirm("Tem certeza que deseja exclir este Checkin? Todos as inforamções e Fotos inseridas serão excluidas e nao poderão ser recuperadas")){
        var status = ativaScriptResposta("class/Ajax.php?funcao=excluirCheckin&idCheckin="+idCheckin);

        if(status != "erro" && status != "erroExclusao"){
            var li = $(refLi).parent().parent();
            li.remove();
            $("#cadastroCheckinDireita").html("");
        }else{
            alert("Erro durante a exclusao do checkin. "+status);
        }
    }
}
function selecionaCheckins(){
    var dateDe = $("#periodoDe").val();
    var dataAte = $("#periodoAte").val();
    var idCliente = $("#idCliente").val();

    $("#listagemCheckinAdicionados ul").html(ativaScriptResposta("class/Ajax.php?funcao=selecionaCheckins&dataDe="+dateDe+"&dataAte="+dataAte+"&idCliente="+idCliente));
    ativaSlide();
}
function visualizarAoCheckin(idCheckin,refLi){
    var li = $(refLi).parent().parent();

    alert($(li).find(".semPontoFotoCheckin").lenght);

    li.append("<ul><li></li></ul>");
}
function adicionarAoCheckin(idCheckin,refLi){
    var li = $(refLi).parent().parent();

    //mostra lista escondida
    if($(li).find("ul").css("display") == "none"){
        $(li).find("ul").slideToggle("fast");
    }

    //retira a mensagem de sem pontos selecionado
    if(li.find(".semPontoFotoCheckin").length > 0){
        li.find(".semPontoFotoCheckin").remove();
    }

    //nao exibe a linha de cadastro, caso haja um cadastro ainda aberto
    if(li.find("select").length > 0){
        return false;
    }

    $("#pontosCheckin"+idCheckin).append("<li>"+ativaScriptResposta("class/Ajax.php?funcao=selecionaPontosCadastroCheckin")+
        "<img onclick=\"confirmaCadastroPontoNoCheckin('"+idCheckin+"');\" style=\"width: 15px; height: 15px;cursor:pointer;\" src=\"imagens/conteudo/icones_opcoes/confirmar.png\">\n\
<img onclick=\"cancelaCadastroPontoNoCheckin('"+idCheckin+"');\" style=\"width: 15px; height: 15px;cursor:pointer;\" src=\"imagens/conteudo/icones_opcoes/fechar.png\"></li>");
    return true;
}
function confirmaCadastroPontoNoCheckin(idCheckin){
    var idPonto = $("#idPonto").val();
    var status = ativaScriptResposta("class/Ajax.php?funcao=cadastraPontoNoCheckin&idCheckin="+idCheckin+"&idPonto="+idPonto);

    //caso ja esteja cadastrado
    if(status == "jacadastrado"){
        alert("Este ponto ja esta cadastrado neste checkin");
        cancelaCadastroPontoNoCheckin(idCheckin);
        return false;
    }

    //caso tenha dado erro....
    if(status == "erro"){
        alert("Houve um erro durante o cadastro do ponto no checkin");
        cancelaCadastroPontoNoCheckin(idCheckin);
        return false;
    }

    //caso o cadastro tenhha ocorrido normalmente...
    $("#pontosCheckin"+idCheckin).find("select").parent().remove();
    $("#pontosCheckin"+idCheckin).append(status);
    return true;
}
function cancelaCadastroPontoNoCheckin(idCheckin){
    $("#pontosCheckin"+idCheckin).find("select").parent().remove();
    if($("#pontosCheckin"+idCheckin).find("li").length == 0){
        $("#pontosCheckin"+idCheckin).append("<li class=\"semPontoFotoCheckin\">Não ha fotos cadastrada</li>");
    }
}
function visualizaFotosCheckins(idPontoCheckin){
    abrirPagID("class/Ajax.php?funcao=exibeMaterialChekin&idPontoCheckin="+idPontoCheckin,"cadastroCheckinDireita");
}
function insereAoCheckin(idCheckin, idPonto){
    $("#inserirMaisFotosCheckin").html(
        "<input type=\"file\" id=\"arquivo\" /><br />\n\
         <input type=\"button\" value=\"Finalizar\" onclick=\"$('#arquivo').fileUploadStart();\" />\n\
         <input type=\"button\" value=\"Cancelar\" onclick=\"$('#inserirMaisFotosCheckin').html('');\" />");
    iniciaUploadCheckin(idCheckin, idPonto);
}
function iniciaUploadCheckin(idCheckin, idPonto){
    $("#arquivo").fileUpload({
        "uploader":     "js/upload/uploader.swf",
        "cancelImg":    "imagens/layout/cancel.png",
        "folder":       "../../arquivos/checkin/"+idCheckin+"/"+idPonto,
        "script":       '../../js/upload/upload.php',
        "multi":        true,

        //'buttonImg'   : 'conteudo/botao_selecionar.jpg',
        "fileExt"       :"*.jpg;",
        "buttonText"    :"Buscar Arquivo",
        "width"         :"100",
        "sizeLimit"     :"62914560",
        "fileDesc"      :"Formatos multimidia",
        "simUploadLimit": 1,
        
        "onSelect"      : function(event,ID,fileObj){
        //fotos +="<nomeArquivo>"+fileObj.name+"</nomeArquivo>";
        },
        "onComplete"  : function(event, ID, fileObj, response, data) {
            var idAssocPontoCheckin = ativaScriptResposta(
                "class/Ajax.php?funcao=cadastraAssocPontoCheckinIndividual&idPonto="+idPonto
                +"&idCheckin="+idCheckin
                +"&nomeFoto="+fileObj.name);

            $("#listagemFotosCheckin").append("<li>\n\
              <input type=\"checkbox\" value=\""+idAssocPontoCheckin+"\" />\n\
              <a href=\"arquivos/checkin/fotos/" + fileObj.name + "\" class=\"thickbox\" title=\"Teste\">\n\
                  <img src=\"arquivos/checkin/"+idCheckin+"/"+idPonto+"/" + fileObj.name + "\" />\n\
              </a>\n\
           </li>");
        },
        'onAllComplete' :function(event,data){
            $("body").append("<script type=\"text/javascript\" src=\"js/thickbox.js\"></script><link type=\"text/css\" rel=\"stylesheet\" href=\"css/thickbox.css\" />");
            $('#inserirMaisFotosCheckin').html('');
        }
    });
}
function criaPDFCheckin(idCheckin){
    var width = 10;
    var height = 10;

    var left = 99;
    var top = 99;

    ie = isExplorer() ? "../../" : "";
    
    window.open(ie+"class/Ajax.php?funcao=criaPDFcheckin&idCheckin="+idCheckin,'janela', 'width='+width+', height='+height+', top='+top+', left='+left+', scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no');
}
function formataData(data){
    return data.split(data.search("/")>0 ? "/" : "-").reverse().join(data.search("/")<0 ? "/" : "-");
}
function atualizaGridSisUsuario(){
    mygrid = new dhtmlXGridObject("tabelaUsuarios");
    mygrid.setImagePath("dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Nome,E-mail,Telefone,Cliente");
    mygrid.attachHeader("#text_filter,#text_filter,&nbsp;,#text_filter");
    mygrid.setInitWidths("250,250,140,*");
    mygrid.setColAlign("left,left,left,left");
    mygrid.setColTypes("ro,ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("str,str,str,str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=sisUsuariosPegaXMLusuarios");
    //============================================================================================;
    myDataProcessor = new dataProcessor("class/Ajax.php?funcao=sisUsuariosAtualiza");
    myDataProcessor.setTransactionMode("POST", true);
    myDataProcessor.init(mygrid);
}
function escreveNaDiv(idDiv,mensagem){
    $("#"+idDiv).html(mensagem);
}
function converteEmXML(a){
    parser=new DOMParser();
    doc = parser.parseFromString(a,"text/xml");

    return doc;
}
function clearAlteraSenha(){
    document.getElementById('senhaAtual').value = '';
    document.getElementById('senhaNova').value = '';
    document.getElementById('cNovaSenha').value = '';
}
function validaAlteraSenha(){
    if (document.getElementById('senhaAtual').value.length==0) {
        alert("Preencha o campo \"Senha atual\".");
        return false;
    }
    if (document.getElementById('senhaNova').value.length==0) {
        alert("Preencha o campo \"Nova senha\".");
        return false;
    }
    if (document.getElementById('cNovaSenha').value.length==0) {
        alert("Preencha o campo \"Confirmar nova senha\".");
        return false;
    }
    if (document.getElementById('cNovaSenha').value != document.getElementById('senhaNova').value) {
        alert("Confirme corretamente a nova senha");
        return false;
    }
    return true;
}
function updateValidaSenha() {
    if(validaAlteraSenha()) {
        abrirPagID("class/Ajax.php?funcao=alteraSenha&senhaAtual="+document.getElementById('senhaAtual').value+"&senhaNova="+document.getElementById('senhaNova').value+"&idUsuario="+document.getElementById('idUsuario').value,"alteraSenhaResposta");
        clearAlteraSenha();
    }
}
function alteraMarcacao(n){
    a=document.getElementsByTagName("input");
    b=document.getElementsByTagName("input");
    //procura o primeiro elemento
    p=0;
    while(b[p].name!=n){
        p++;
    }
    if(a[p].checked==false){
        //começa marcar os elementos
        for(i=0;i<a.length;i++){
            if(a[i].name==n){
                a[i].checked=true;
            }
        }
    }else{
        //começa a desmarcar os elementos
        for(i=0;i<a.length;i++){
            if(a[i].name==n){
                a[i].checked=false;
            }
        }
    }
    //desmarca a primeira coluna
    if(n!="negado"){
        //começa a desmarcar os elementos
        for(i=0;i<a.length;i++){
            if(a[i].name=="negado"){
                a[i].checked=false;
            }
        }
    }else{
        //começa a desmarcar os elementos
        for(i=0;i<a.length;i++){
            if(a[i].name!="negado"){
                a[i].checked=false;
            }
        }
    }
}
function verificaMarcacao(n){
    a=document.getElementsByTagName("input");
    alert(a[0].checked);
}
function clearUser(){
    document.getElementById('nomeUser').value = '';
    document.getElementById('emailUser').value = '';
}
function validaCadUser(){
    if (document.getElementById('nomeUser').value.length==0) {
        alert("Preencha o campo \"Nome\".");
        return false;
    }
    if (document.getElementById('emailUser').value.length==0) {
        alert("Preencha o campo \"E-mail\".");
        return false;
    }
    return true;
}
function getSelect(tag) {
    var i = 0;
    var sel = 0;

    //captura em formato array todos os checkboxes cujo nome é recebido como parametro na variavel "tag"
    var objCheckBox = $(":checkbox[name|="+tag+"]");
    var selecionadas = "";
    for (i=0; i < objCheckBox.length; i++) {
        if (objCheckBox[i].checked) {
            sel++;
            //selecionadas += objCheckBox[i].value+"-";
            selecionadas += objCheckBox[i].value+"-";
        }
    }

    return selecionadas;
}
function updateValidaCadUser() {
    if(validaCadUser()) {
        var negado = getSelect('negado');
        var visualizar = getSelect('visualizar');
        var cadastrar = getSelect('cadastrar');
        var remover = getSelect('remover');
        
        var nome = document.getElementById('nomeUser').value;
        var email = document.getElementById('emailUser').value;
        var cliente = document.getElementById('clienteuser').value;
        var tipo = document.getElementById('tipoUser').value;
        var telefone = document.getElementById('telefoneUser').value;

        abrirPagID("class/Ajax.php?funcao=salvaUsuario&nome="+nome
            +"&email="+email
            +"&clienteuser="+cliente
            +"&negado="+negado
            +"&visualizar="+visualizar
            +"&cadastrar="+cadastrar
            +"&remover="+remover
            +"&tipo="+tipo
            +"&telefone="+telefone,"mostraResultadoEdicaoUsuario");

    //   clearUser();//
    }
}
function controlaCheckbox(id, valor) {
    var i = 0;

    var objCheckBoxNegado = $(":checkbox[name|=negado]");
    var objCheckBoxVisual = $(":checkbox[name|=visualizar]");
    var objCheckBoxCadast = $(":checkbox[name|=cadastrar]");
    var objCheckBoxRemove = $(":checkbox[name|=remover]");

    if(id != "negado[]"){
        for (i=0; i < objCheckBoxNegado.length; i++) {
            if(objCheckBoxNegado[i].value == valor){
                if(objCheckBoxNegado[i].checked == true){
                    objCheckBoxNegado[i].checked = false;
                }
            }
        }
    }else{
        for (i=0; i < objCheckBoxVisual.length; i++) {
            if(objCheckBoxVisual[i].value == valor){
                if(objCheckBoxVisual[i].checked == true){
                    objCheckBoxVisual[i].checked = false;
                }
            }
        }
        for (i=0; i < objCheckBoxCadast.length; i++) {
            if(objCheckBoxCadast[i].value == valor){
                if(objCheckBoxCadast[i].checked == true){
                    objCheckBoxCadast[i].checked = false;
                }
            }
        }
        for (i=0; i < objCheckBoxRemove.length; i++) {
            if(objCheckBoxRemove[i].value == valor){
                if(objCheckBoxRemove[i].checked == true){
                    objCheckBoxRemove[i].checked = false;
                }
            }
        }
    }
}
function validaEditUser(){
    if (document.getElementById('nomeUser').value.length==0){
        alert("Preencha o campo \"Nome\".");
        return false;
    }
    if (document.getElementById('emailUser').value.length==0){
        alert("Preencha o campo \"E-mail\".");
        return false;
    }
    return true;
}
function valEditUser() {
    if(validaEditUser()) {
        var negado = getSelect('negado');
        var visualizar = getSelect('visualizar');
        var cadastrar = getSelect('cadastrar');
        var remover = getSelect('remover');
        var nome = document.getElementById('nomeUser').value;
        var email = document.getElementById('emailUser').value;
        var clienteuser = document.getElementById('clienteuser').value;
        var id_usuario = document.getElementById('idUsuario').value;
        var nivel = document.getElementById('nivelUser').value;
        var cargo = document.getElementById('cargoUser').value;
        var telefone = document.getElementById('telefoneUser').value;

        abrirPagID("class/Ajax.php?funcao=editaUsuario&+nome="+nome
            +"&email="+email
            +"&clienteuser="+clienteuser
            +"&negado="+negado
            +"&visualizar="+visualizar
            +"&cadastrar="+cadastrar
            +"&remover="+remover
            +"&id_usuario="+id_usuario
            +"&cargo="+cargo
            +"&nivel="+nivel
            +"&telefone="+telefone,
            "mostraResultadoEdicaoUsuario");
    //clearUser();
    }
}
function editaUsuario(){
    if(mygrid.getSelectedRowId() == null){
        alert("Selecione um Usuario para Editar");
    }else{
        location = location + "/editar/"+mygrid.getSelectedRowId();
    }
}
function visualizaUsuario(){
    if(mygrid.getSelectedRowId() == null){
        alert("Selecione um Usuario para Visualizar");
    }else{
        location = location + "/visualizar/"+mygrid.getSelectedRowId();
    }
}
function iniciaGridCadastraUsuario(){
    //init grid and set its parameters (this part as always);
    mygrid = new dhtmlXGridObject("tabelaUsuarios");
    mygrid.setImagePath("js/dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Nome,E-mail,Telefone,Cliente");
    mygrid.attachHeader("#text_filter,#text_filter,&nbsp;,#select_filter");

    mygrid.setInitWidths("250,250,140,*");
    mygrid.setColAlign("left,left,left,left");
    mygrid.setColTypes("ro,ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("str,str,str,str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=sisUsuariosPegaXMLusuarios");
    //============================================================================================;
    myDataProcessor = new dataProcessor("class/Ajax.php?funcao=sisUsuariosAtualiza");
    myDataProcessor.setTransactionMode("POST", true);
    myDataProcessor.init(mygrid);
//============================================================================================;
}
function iniciaGridGerenciadorClientes(){
    mygrid = new dhtmlXGridObject("tabelaClientes");
    mygrid.setImagePath("dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Razão Social,Nome Fantasia,Telefone,E-mail");
    mygrid.attachHeader("#text_filter,#text_filter,&nbsp;,&nbsp;");
    mygrid.setInitWidths("200,200,150,*");
    mygrid.setColAlign("left,left,left,left");
    mygrid.setColTypes("ro,ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.attachEvent("onRowSelect",habilitaBotaoEditar);
    mygrid.setColSorting("str,str,str,str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=pegaGridCliente");
    mygrid.enableSmartRendering(true);
    
    //============================================================================================;
    myDataProcessorContato = new dataProcessor("class/Ajax.php?funcao=gerClienteAtualiza");
    myDataProcessorContato.setTransactionMode("POST", true);
    myDataProcessorContato.init(mygrid);
//============================================================================================;
}
function habilitaBotaoEditar(r){
    if(ativaScriptResposta("class/Ajax.php?funcao=verificaPermissaoEdicaoVendedor&idCliente="+r)>0){
        $("#botaoEditarCliente").css("display","inline");
    }else{
        $("#botaoEditarCliente").css("display","none");
    }
}
function editaCliente(){
    if(mygrid.getSelectedRowId() == null){
        alert("Selecione um Cliente para Editar");
    }
    else{
        location = location + "/editar/"+mygrid.getSelectedRowId();
    }
}
function visualizarCliente(){
    if(mygrid.getSelectedRowId() == null){
        alert("Selecione um Cliente para Visualizar");
    }
    else{
        location = location + "/visualizar/"+mygrid.getSelectedRowId();
    }
}
function salvaEdicaoCliente(idCliente){
    if(validaCadCliente()) {
        var url = "&razaoSocial="+url_encode($('#razaoSocial').val())+
        "&nomeFantasia="+url_encode($('#nomeFantasia').val())+
        "&cpfcnpj="+$('#cpf-cnpj').val()+
        "&iestadual="+$('#iestadual').val()+
        "&endereco="+$('#endereco').val()+
        "&complemento="+$('#complemento').val()+
        "&cep="+$('#cep').val()+
        "&bairro="+$('#bairro').val()+
        "&cidade="+$('#cidade').val()+
        "&estado="+$('#estado').val()+
        "&fonecliente="+$('#telefonecliente').val()+
        "&mailcliente="+$('#mailcliente').val()+
        "&site="+$('#siteCliente').val()+
        "&responsavel="+$('#responsavel').val()+
        "&tcliente="+$('#tCliente').val()+
        "&tipocliente="+$('#tipoCliente').val();
        abrirPagPostID("class/Ajax.php", "mostraResultadoEdicaoCadastroCliente", "funcao=salvaEdicaoCliente&idCliente="+idCliente+url);
    //clearCliente();
    }
}
function clearCliente(){
    document.getElementById('razaoSocial').value = '';
    document.getElementById('nomeFantasia').value = '';
    document.getElementById('cpf-cnpj').value = '';
    document.getElementById('iestadual').value = '';
    document.getElementById('endereco').value = '';
    document.getElementById('complemento').value = '';
    document.getElementById('cep').value = '';
    document.getElementById('bairro').value = '';
    document.getElementById('cidade').value = '';
    document.getElementById('estado').value = '';
    document.getElementById('telefonecliente').value = '';
    document.getElementById('mailcliente').value = '';
    document.getElementById('sitecliente').value = '';
    document.getElementById('responsavel').value = '';
    document.getElementById('tCliente').value = '';
    document.getElementById('tipoCliente').value = '';
}
function validaCadCliente(){
    if (document.getElementById('razaoSocial').value.length==0){
        document.getElementById('razaoSocial').focus();
        alert("Preencha o campo \"Razão Social\".");
        return false;
    }
    if (document.getElementById('nomeFantasia').value.length==0){
        document.getElementById('nomeFantasia').focus();
        alert("Preencha o campo \"Nome Fantasia\".");
        return false;
    }
    if (document.getElementById('cpf-cnpj').value.length==0){
        document.getElementById('cpf-cnpj').focus();
        alert("Preencha o campo \"CPF/CNPJ\".");
        return false;
    }
    if (document.getElementById('tCliente').value.length==0) {
        document.getElementById('tCliente').focus();
        alert("Preencha o campo \"Tipo do cliente\".");
        return false;
    }
    if (document.getElementById('responsavel').value=="") {
        document.getElementById('responsavel').focus();
        alert("Preencha o campo \"Responsavel\".");
        return false;
    }
    return true;
}
function salvaCliente() {
    if(validaCadCliente()) {
        var url="class/Ajax.php?funcao=cadastraCliente&razaoSocial="+document.getElementById('razaoSocial').value
        +"&nomeFantasia="+document.getElementById('nomeFantasia').value
        +"&cpfcnpj="+document.getElementById('cpf-cnpj').value
        +"&iestadual="+document.getElementById('iestadual').value
        +"&endereco="+document.getElementById('endereco').value
        +"&complemento="+document.getElementById('complemento').value
        +"&cep="+document.getElementById('cep').value
        +"&bairro="+document.getElementById('bairro').value
        +"&cidade="+document.getElementById('cidade').value
        +"&estado="+document.getElementById('estado').value
        +"&fonecliente="+document.getElementById('telefonecliente').value
        +"&mailcliente="+document.getElementById('mailcliente').value
        +"&site="+document.getElementById('siteCliente').value
        +"&responsavel="+document.getElementById('responsavel').value
        +"&tcliente="+document.getElementById('tCliente').value
        +"&idFranquia="+document.getElementById('idFranquia').value;
        abrirPagID(url,"mostraResultadoEdicaoCadastroCliente");
    //$("#dClienteEditarVisualizar > input").val("");
    }
}
function iniciaGridGerenciaContatosClientes() {
    mygridContato = new dhtmlXGridObject('tabelaContatosClientes');
    mygridContato.setImagePath("dhtmlxgrid/codebase/imgs/");
    mygridContato.setHeader("Cliente,Contato,Cargo,Aniversário,E-mail,Celular");
    mygridContato.attachHeader("#text_filter,#text_filter,&nbsp;,&nbsp;,&nbsp;,&nbsp;");
    mygridContato.setInitWidths("150,150,150,100,150,*");
    mygridContato.setColAlign("left,left,left,left,left,left");
    mygridContato.setColTypes("ro,ro,ro,ro,ro,ro");
    mygridContato.setSkin("dhx_skyblue");
    mygridContato.setColSorting("str,str,str,str,str,str");
    mygridContato.init();
    mygridContato.loadXML("class/Ajax.php?funcao=pegaGridContato");

    //============================================================================================;
    myDataProcessorContato = new dataProcessor("class/Ajax.php?funcao=atualizaSituacaoContatoClientes");
    myDataProcessorContato.setTransactionMode("POST", true);
    myDataProcessorContato.init(mygridContato);
//============================================================================================;
}
function validaSalvaContatoCliente(){
    if($("#contato").val()==""){
        alert("O campo contato nao pode ser em branco");
        return false;
    }
    if($("#email").val()==""){
        alert("O campo email nao pode ser em branco");
        return false;
    }
    return true;
}
function salvaContatoCliente(){
    if(validaSalvaContatoCliente()){
        abrirPagID("class/Ajax.php?funcao=cadastraContatoCliente&contato="+$("#contato").val()+"&cargo="+$("#cargo").val()+"&aniversario="+$("#aniversario").val()+"&email="+$("#email").val()+"&celular="+$("#celular").val()+"&cliente="+$("#cliente").val(),"respostaCadastroContatoCliente");
    }
}
function salvaEdicaoContatoCliente(idContatoCliente){
    if(validaSalvaContatoCliente()){
        abrirPagID("class/Ajax.php?funcao=editaContatoCliente&idContatoCliente="+idContatoCliente+"&contato="+$("#contato").val()+"&cargo="+$("#cargo").val()+"&aniversario="+$("#aniversario").val()+"&email="+$("#email").val()+"&celular="+$("#celular").val()+"&cliente="+$("#cliente").val(),"respostaCadastroContatoCliente");
    }
}
function editaContatoCliente(){
    if(mygridContato.getSelectedRowId() == null){
        alert('Selecione um contato para editar');
    }else{
        location.href = (isExplorer() ? "../../" : "") + "privado/cliente/contatos/editar/"+mygridContato.getSelectedRowId();
    }
}
function visualizaContatoCliente(){
    if(mygridContato.getSelectedRowId() == null){
        alert('Selecione um contato para Visualizar');
    }
    else{
        //window.self.location.href = "privado/cliente/contatos/visualizar/"+mygridContato.getSelectedRowId();
        location.href = (isExplorer() ? "../../" : "") + "privado/cliente/contatos/visualizar/"+mygridContato.getSelectedRowId();
    }
}
function iniciaGridGerenciaSituacaoClientes() {
    mygridVisita = new dhtmlXGridObject("tabelaSituacaoClientes");
    mygridVisita.setImagePath("dhtmlxgrid/codebase/imgs/");
    mygridVisita.setHeader("Cliente,Ultima visita,Descrição da ultima visita,Próxima visita, Responsável");
    mygridVisita.attachHeader("#text_filter,&nbsp;,#text_filter,&nbsp;,#text_filter");
    mygridVisita.setInitWidths("150,110,290,110,150");
    mygridVisita.setColAlign("left,left,left,left,left");
    mygridVisita.setColTypes("ed,ed,txt,ed,ed");
    mygridVisita.setSkin("dhx_skyblue");
    mygridVisita.setColSorting("str,str,str,str,str");
    mygridVisita.init();
    mygridVisita.loadXML("class/Ajax.php?funcao=pegaGridSituacaoClientes");
    mygridVisita.enableSmartRendering(true);

    //============================================================================================;
    myDataProcessorVisita = new dataProcessor("class/Ajax.php?funcao=atualizaSituacaoClientes");
    myDataProcessorVisita.setTransactionMode("POST", true);
    myDataProcessorVisita.init(mygridVisita);
//============================================================================================;
}
function removeSituacaoCliente(a){
    //remove o usuario da base
    ativaScript("class/Ajax.php?funcao=getClientesSituacaoDelete_row&idRow="+a);
    
    //apaga a linha da tabela
    $(".rowselected").remove();
}
function cadastraSituacaoCliente(){
    abrirPagID("class/Ajax.php?funcao=cadastraSituacaoCliente&cliente="+$("#clienteCadastraSituacaoCliente").val()+"&dataV="+$("#dataVisitaCadstraSituacaoCliente").val()+"&dataPV="+$("#dataProxVisitaCadstraSituacaoCliente").val()+"&desc="+$("#descricaoCadstraSituacaoCliente").val(),"respostaCadastraSituacaoCliente");
}
function sisPontosCadastroPontos() {
    mygrid = new dhtmlXGridObject("tabelaGridPontos");
    mygrid.setImagePath("dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Categoria,Título,Status,Texto Tarja,Endereço,Site,Classe,Telas,Pessoas,Cidade,Estado,Unidade");
    mygrid.attachHeader("&nbsp;,#text_filter,#select_filter,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;");
    mygrid.setInitWidths("150,200,150,200,200,100,100,80,80,120,80,120");
    mygrid.setColAlign("left,left,center,left,left,center,center,center,center,center,center,center");
    mygrid.setColTypes("ro,ro,ro,ro,ro,ro,ro,ro,ro,ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("str,str,str,str,str,str,str,str,str,str,str,str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=sisPontosPegaCadastroPontos");
    mygrid.enableSmartRendering(true);

    //============================================================================================;
    myDataProcessor = new dataProcessor("class/Ajax.php?funcao=sisPontosAtualizaCadastroPontos");
    myDataProcessor.setTransactionMode("POST", true);
    myDataProcessor.init(mygrid);
//============================================================================================;
}
function grupoPontos() {
    mygrid = new dhtmlXGridObject("tabelaGridPontos");
    mygrid.setImagePath("dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Categoria,Título,Unidade");
    mygrid.attachHeader("#select_filter,#text_filter,#text_filter");
    mygrid.setInitWidths("150,*,100");
    mygrid.setColAlign("left,left,left");
    mygrid.setColTypes("ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("str,str,str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=grupoCadastra");
    mygrid.enableSmartRendering(true);

    //============================================================================================;
    myDataProcessor = new dataProcessor("class/Ajax.php?funcao=sisPontosAtualizaCadastroPontos");
    myDataProcessor.setTransactionMode("POST", true);
    myDataProcessor.init(mygrid);
//============================================================================================;
}
function sisPontosEditar(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione um Usuario para Editar');
    }else{
        window.self.location.href = 'privado/ponto/pontos/editar/'+mygrid.getSelectedRowId();
    }
}
function sisPontosVisualizar(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione um Usuario para Editar');
    }else{
        window.self.location.href = 'privado/ponto/pontos/visualizar/'+mygrid.getSelectedRowId();
    }
}
function sisPontosRemover(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione um Usuario para Remover');
    }else{
        mygrid.deleteSelectedItem();
    }
}
function carregaCidade(id, selecionado){
    abrirPagID("class/Ajax.php?funcao=redeInfoTVFiltraCidade&id="+id+"&selecionado="+selecionado,"cidade");
}
function sisPontosEditarFotos(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione uma Foto para Editar');
    }
    else{
        window.self.location.href = 'privado/ponto/fotos/editar/'+mygrid.getSelectedRowId();
    }
}
function sisPontosFotos() {
    mygrid = new dhtmlXGridObject("mostraListagemFotosPontos");
    mygrid.setImagePath("js/dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Ponto");
    mygrid.attachHeader("#text_filter");
    mygrid.attachEvent("onRowDblClicked", "sisPontosFotosVisualizar");
    mygrid.setInitWidths("*");
    mygrid.setColAlign("left");
    mygrid.setColTypes("ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=sisPontosPegaFotos");
    mygrid.enableSmartRendering(true);

    //============================================================================================;
    myDataProcessor = new dataProcessor("class/Ajax.php?funcao=sisPontosFotosAtualizaFotoPonto");
    myDataProcessor.setTransactionMode("POST", true);
    myDataProcessor.init(mygrid);
//============================================================================================;
}
function sisPontosFotosVisualizar(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione uma Foto para Visualizar');
    }else{
        abrirPagID("class/Ajax.php?funcao=exibeFotosPonto&idFoto="+mygrid.getSelectedRowId(),"sisPontosFotosColuna2");
    }
}
function edita(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione um Ponto para editar');
    }
    else{
        window.self.location.href = 'EditaFotoPonto.php?id_foto_ponto='+mygrid.getSelectedRowId();
    }
}
function atualizaPontoFoto(idPonto,idFotoPonto){
    abrirPagID("class/Ajax.php?funcao=atualizaPontoFoto&idPonto="+idPonto+"&idFotoPonto="+idFotoPonto,"respostaAtualziaPontoFoto");
}
function iniciaTinyMaceAdicionarNoticia(){
    tinyMCE.init({
        // General options
        mode : "exact",
        elements : "elm1",
        theme : "advanced",
        plugins : "pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,wordcount,advlist,autosave",

        // Theme options
        theme_advanced_buttons1 : "save,newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,styleselect,formatselect,fontselect,fontsizeselect",
        theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,insertdate,inserttime,preview,|,forecolor,backcolor",
        theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iespell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",
        theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,pagebreak,restoredraft",
        theme_advanced_toolbar_location : "top",
        theme_advanced_toolbar_align : "left",
        theme_advanced_statusbar_location : "bottom",
        theme_advanced_resizing : true,

        // Example content CSS (should be your site CSS)
        content_css : "css/content.css",

        // Drop lists for link/image/media/template dialogs
        template_external_list_url : "lists/template_list.js",
        external_link_list_url : "lists/link_list.js",
        external_image_list_url : "lists/image_list.js",
        media_external_list_url : "lists/media_list.js",

        // Style formats
        style_formats : [
        {
            title : 'Bold text',
            inline : 'b'
        },

        {
            title : 'Red text',
            inline : 'span',
            styles : {
                color : '#ff0000'
            }
        },

        {
            title : 'Red header',
            block : 'h1',
            styles : {
                color : '#ff0000'
            }
        },

        {
            title : 'Example 1',
            inline : 'span',
            classes : 'example1'
        },

        {
            title : 'Example 2',
            inline : 'span',
            classes : 'example2'
        },

        {
            title : 'Table styles'
        },

        {
            title : 'Table row 1',
            selector : 'tr',
            classes : 'tablerow1'
        }
        ],

        // Replace values for the template plugin
        template_replace_values : {
            username : "Some User",
            staffid : "991234"
        }
    });
}
function cadastroNoticiaRSS() {
    var de = $("#dataDE").val();
    var ate = $("#dataATE").val();
    
    mygrid = new dhtmlXGridObject('tabelaGridNoticiasRSS');
    mygrid.setImagePath("dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Nº, Data,Categoria,Título,Conteúdo,Fonte,Ativo,idCategoria, idCliente");
    mygrid.setInitWidths("50,80,140,160,300,*,*,0,0");
    mygrid.attachHeader("#text_filter,#text_filter,#text_filter,#text_filter,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;");
    mygrid.setColAlign("center,center,left,left,left,left,center,center,center");
    mygrid.setColTypes("ro,ro,ro,ro,ro,ro,ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("int,str,str,str,str,str,str,int,int");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=pegaNoticiaClienteRSS&dataDe="+de+"&dataAte="+ate);
    //=========================================================================
    myDataProcessor = new dataProcessor("class/Ajax.php?funcao=updateNoticiaClienteRSS");
    myDataProcessor.setTransactionMode("POST", true);
    myDataProcessor.init(mygrid);
//=========================================================================
}
function editNotClienteEditar(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione uma noticia para editar');
    }
    else{
        location.href = (isExplorer() ? "../" : "") +
        "privado/rss/editar/"+mygrid.getSelectedRowId();
    }
}
function criaRSS(idCliente){
    if($("#categoriaNoticia").val() == ""){
        alert('Selecione uma Categoria para criar RSS');
    }else{
        var resp = ativaScriptResposta("class/Ajax.php?funcao=atualizaArquivoRSS&idCliente="+idCliente+"&idCategoria="+$("#categoriaNoticia").val());

        if(resp == '1'){
            alert('Arquivo RSS criado com sucesso');
        }else{
            alert('Erro ao criar o RSS');
        }
    }
}
function editNotClienteDesativar(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione uma Noticia para Desativar');
    }else{
        var procede = ativaScriptResposta("class/Ajax.php?funcao=desativaRSS&idCliente="+mygrid.cells(mygrid.getSelectedRowId(),8).getValue()+
            "&idCategoria="+mygrid.cells(mygrid.getSelectedRowId(),7).getValue()+
            "&idNoticia="+mygrid.getSelectedRowId());

        if(procede == "1"){
            mygrid.cells(mygrid.getSelectedRowId(),6).setValue("Não");
        }
    }
}
function editNotClienteAtivar(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione uma Noticia para Desativar');
    }
    else{
        var procede = ativaScriptResposta("class/Ajax.php?funcao=ativaRSS&idCliente="+mygrid.cells(mygrid.getSelectedRowId(),8).getValue()+
            "&idCategoria="+mygrid.cells(mygrid.getSelectedRowId(),7).getValue()+
            "&idNoticia="+mygrid.getSelectedRowId());

        if(procede == "1"){
            mygrid.cells(mygrid.getSelectedRowId(),6).setValue("Sim");
        }
    }
}
function editNotClienteVisualizar(){
    if(mygrid.getSelectedRowId()==null){
        alert('Selecione uma noticia para visualizar');
    }else{
        location.href = (isExplorer() ? "../" : "") +
        "privado/rss/visualizar/"+mygrid.getSelectedRowId();
    }
}
function editNotClienteRemover(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione uma Noticia para Remover');
    }
    else{
        mygrid.deleteSelectedItem();
    }
}
function tamanhoMaximoTextArea(field, countfield, maxlimit) {
    if(typeof maxlimit == 'undefined') maxlimit = 140;

    if ($(field).val().length > maxlimit)
        $(field).val($(field).val().substring(0, maxlimit));
    else
        $(countfield).text(maxlimit - $(field).val().length);
}
function MascaraMoeda(objTextBox, SeparadorMilesimo, SeparadorDecimal, e){
    var key = '';
    var i = j = 0;
    var len = len2 = 0;
    var strCheck = '0123456789';
    var aux = aux2 = '';
    var whichCode = (window.Event) ? e.which : e.keyCode;
    if (whichCode == 13) return true;
    var t = new String(objTextBox.value);
    if (whichCode == 8){
        objTextBox.value = t.substring(0, t.length-1);
    }
    key = String.fromCharCode(whichCode); // Valor para o código da Chave
    if (strCheck.indexOf(key) == -1) return false; // Chave inválida
    len = objTextBox.value.length;
    for(i = 0; i < len; i++)
        if ((objTextBox.value.charAt(i) != '0') && (objTextBox.value.charAt(i) != SeparadorDecimal)) break;
    aux = '';
    for(; i < len; i++)
        if (strCheck.indexOf(objTextBox.value.charAt(i))!=-1) aux += objTextBox.value.charAt(i);
    aux += key;
    len = aux.length;
    if (len == 0) objTextBox.value = '';
    if (len == 1) objTextBox.value = '0'+ SeparadorDecimal + '0' + aux;
    if (len == 2) objTextBox.value = '0'+ SeparadorDecimal + aux;
    if (len > 2) {
        aux2 = '';
        for (j = 0, i = len - 3; i >= 0; i--) {
            if (j == 3) {
                aux2 += SeparadorMilesimo;
                j = 0;
            }
            aux2 += aux.charAt(i);
            j++;
        }
        objTextBox.value = '';
        len2 = aux2.length;
        for (i = len2 - 1; i >= 0; i--)
            objTextBox.value += aux2.charAt(i);
        objTextBox.value += SeparadorDecimal + aux.substr(len - 2, len);
    }
    return false;
}
function sisPropGetEdita(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione uma Proposta para editar');
    }
    else{
        /**********************************
         * APAGAR ESTE TRECHO DEPOIS
         */
        if(mygrid.getSelectedRowId() < 2480){
            alert('Esta proposta foi bloqueada para edição\n\ Apenas Visualização esta disponível');
            return false;
        }
        /**ATE AQUI*******************************/
        window.self.location.href = "privado/proposta/editar/"+mygrid.getSelectedRowId();
    }
}
function gridGerPacotesRemover(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione uma Proposta para Remover');
    }
    else{
        mygrid.deleteSelectedItem();
    }
}
function adicionarPacote(){
    pacote = prompt("Para cadastrar novo Pacote, preencha os campos abaixo e clique em OK!");
    if(pacote !="" && pacote!=null){
        ativaScript("class/Ajax.php?funcao=adicionaNovoPacote&nomePacote="+pacote);
    }
}
function gridGerPacotesVisualizar(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione um Produto para visualizar');
    }else{
        window.self.location.href = 'privado/gerProdutos/pacote/visualizar/'+mygrid.getSelectedRowId();
    }
}
function visualizaPacote(idGrupo) {
    mygrid = new dhtmlXGridObject("visualizaPacote");
    mygrid.setImagePath("dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Descrição, Pacote, Ponto");
    mygrid.setInitWidths("150,150,*");
    mygrid.attachHeader("#text_filter,&nbsp;,&nbsp;");
    mygrid.setColAlign("left,left,left");
    mygrid.setColTypes("ed,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("str,str,str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=visualizaPacote&idGrupo="+idGrupo);
}
function tabelaCadastroProposta(de,ate) {
    mygrid = new dhtmlXGridObject("tabelaCadastroProposta");
    mygrid.setImagePath("js/dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Nº,PI,Data,Responsável,Cliente,Total, arquivo");
    mygrid.setInitWidths("50,50,70,140,*,100,0");
    mygrid.attachHeader("#text_filter,#text_filter,#text_filter,#select_filter,#text_filter,&nbsp;,&nbsp;");
    mygrid.setColTypes("ro,ro,ro,ro,ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("str,str,str,str,str,str,str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=tabelaCadastroProposta&de="+de+"&ate="+ate);

    //============================================================================================;
    myDataProcessor = new dataProcessor("class/Ajax.php?funcao=updateTabelaCadastroProposta");
    myDataProcessor.setTransactionMode("POST", true);
    myDataProcessor.init(mygrid);
//============================================================================================;
}
function tabelaCadastroPropostaEdita(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione uma proposta para editar');
    }
    else{
        window.self.location.href = "privado/proposta/editar/"+mygrid.getSelectedRowId();
    }
}
function tabelaCadastroPropostaVisualiza(){
    if(mygrid.getSelectedRowId() == null){
        alert("Selecione uma proposta para visualizar");
    }else{
        window.open("propostas/"+mygrid.cells(mygrid.getSelectedRowId(), 7).getValue());
    }
}
function gridGerPacotesRemover(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione uma Proposta para Remover');
    }else{
        mygrid.deleteSelectedItem();
    }
}
function typeOf(obj) {
    return typeof(obj) == "object" ? (obj.length ? "array" : "object") : typeof(obj);
}
function tabelaSisPropGerEdita(idProposta) {
    mygrid = new dhtmlXGridObject("tabelaSisPropGerCadastra");
    mygrid.setImagePath("js/dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("&nbsp;,&nbsp;,id_produto,Produtos,Categoria,Cidade,Info.,Inserção,Funcionamento,Duraçao VT,Período,Tipo do Período,R$/Inserção,Total R$,RS_base,nTelas");
    mygrid.setInitWidths("40,0,0,*,80,80,40,70,90,70,65,95,80,70,0,0");
    mygrid.attachHeader("&nbsp;,&nbsp;,Pesquisar: <input type='button' value='<' onclick='busca.anterior();' /><input type='text' id='procuraString' onkeyup='busca.verificaEnter(event);' /><input type='button' value='>' onclick='busca.proximo();' />,#cspan,#cspan,#cspan,<div id='logBusca'></div>,#cspan,#cspan,#cspan,#cspan,#cspan,#cspan,#cspan,#cspan,#cspan");
    mygrid.setColAlign("center,left,left,left,left,center,left,center,center,center,center,center,center,center,center,left,center,left,left");
    mygrid.setColTypes("ch,ro,ro,ro,ed,ed,ro,ed,ed,co,ed,co,ed,ed,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("na,na,na,str,str,str,str,int,int,str,str,str,str,str,str,int");
    mygrid.attachEvent("onEditCell",editaGridPropostaPontos);
    mygrid.attachEvent("onCheck", selecionaPontoProposta);
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=tabelaSisPropGerCadastra&idProposta="+idProposta,function() {
        //seta duração '15' como default, se nao tiver, deixa em branco
        for (i=0; i < mygrid.getRowsNum(); i++){
            id = mygrid.getRowId(i);
            combo = mygrid.getCustomCombo(id,9);

            if(combo.size() > 1){
                valor = combo.getKeys();
                mygrid.cells(id,9).setValue(valor[0]);
            }
        }
        //seta o mes como default
        setarColunaCadastroProposta('11','0');
    });
}
function setaMesDefaultEdicaoProposta(){
    for (i=1; i<=mygrid.getRowsNum(); i++){
        mygrid.cells(i, 10).setValue(mygrid.cells(i, 14).getValue());
    }
}
function tabelaSisPropGerCadastraGrupos() {
    grupos = new dhtmlXGridObject("tabelaGrupos");
    grupos.setImagePath("js/dhtmlxgrid/codebase/imgs/");
    grupos.setHeader("&nbsp;,&nbsp;,Cliente,Grupo,Cliente,idPonto");
    grupos.setInitWidths("70,50,50,*,250,0");
    grupos.setColAlign("center,left,left,left,left,left");
    grupos.setColTypes("ch,sub_row_grid,ro,ro,ro,ro");
    grupos.init();
    grupos.setSkin("dhx_skyblue");
    grupos.loadXML("class/Ajax.php?funcao=tabelaSisPropGerCadastraGrupos");
    grupos.setColSorting("na,na,na,str,co,str");
    grupos.attachEvent("onEditCell",function(stage, rowId, colId){
        if (stage == 1) { //ao clicar no marcador.....
            combo = grupos.cells(rowId,5).getValue();
            valores = combo.split(",");
            
            //estado do checkbox do grupo selecionado
            ch = grupos.cells(rowId,0).getValue();
            
            //percorre a lista dos pontos para selecionar os elementos do grupo
            for(j = 0; j < valores.length; j++){
                if(mygrid.cells(valores[j],0).getValue() != '1'){
                    mygrid.cells(valores[j],0).setValue('1');
                    editaGridCadastroProposta(2,valores[j],0,mygrid);
                    selecionaPontoProposta(valores[j],null,1);
                }
                else{
                    checkSelecionados(valores[j],null,0);
                    editaGridCadastroProposta(2,valores[j],0,mygrid);
                }
            }
            atribuiDesconto(selec, 13);
        //selecionaChecados();
        }
        if (stage == 2) {
            //nao deixa selecionar nenhum ponto,
            //é apenas para visualizar
            if (colId == 4){
                return false;
            }
        }
        return true;
    });
}
function cadastraDuracaoPonto(rowId){
    var resposta = ativaScriptResposta("class/Ajax.php?funcao=cadastraDuracaoPonto"
        +"&duracao="+$("#duracaoInsDurPonto").val()
        +"&preco="+moeda2float($("#precoInsDurPonto").val())
        +"&idPonto="+$("#idPontoCadastroDuracaoVT").val());

    if(resposta == "false" || resposta == 0){
        alert("Duração ja cadastrada ou erro durante o cadastro");
        return false;
    }
    else{
        alert("Cadastado com sucesso");

        //insere o novo valor ao select para nao precisar atualizar a grid toda
        combo = mygrid.getCustomCombo(rowId,9);
        mygrid.getCustomCombo(rowId,9).put(moeda2float($("#precoInsDurPonto").val()),$("#duracaoInsDurPonto").val());
        if(selec.doesRowExist(rowId)){
            comboSe = selec.getCustomCombo(rowId,9);
            selec.getCustomCombo(rowId,9).put(moeda2float($("#precoInsDurPonto").val()),$("#duracaoInsDurPonto").val());
        }
        
        fechaCadastroDuracaoPonto();
    }
    return true;
}
function fechaCadastroDuracaoPonto(){
    $(".escureceTela").fadeOut("slow").remove();
    $(".adicionaDuracaoPonto").fadeOut("slow").remove();
}
function tabelaSisPropGerCadastra(idProposta) {
    mygrid = new dhtmlXGridObject("tabelaSisPropGerCadastra");
    mygrid.setImagePath("js/dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("&nbsp;,&nbsp;,id_produto,Produtos,Categoria,Cidade,Info.,Inserção,Funcionamento,Duraçao VT,Período,Tipo do Período,R$/Inserção,Total R$,RS_base,nTelas");
    mygrid.setInitWidths("40,0,0,*,80,80,40,70,90,70,65,95,80,70,0,0");
    mygrid.attachHeader("&nbsp;,&nbsp;,Pesquisar: <input type='button' value='<' onclick='busca.anterior();' /><input type='text' id='procuraString' onkeyup='busca.verificaEnter(event);' /><input type='button' value='>' onclick='busca.proximo();' />,#cspan,#cspan,#cspan,<div id='logBusca'></div>,#cspan,#cspan,#cspan,#cspan,#cspan,#cspan,#cspan,#cspan,#cspan");
    mygrid.setColAlign("center,left,left,left,left,left,center,center,center,center,center,center,center,center,center,left,center,left,left");
    mygrid.setColTypes("ch,ro,ro,ro,ed,ed,ro,ed,ro,co,ed,co,ro,ed,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("na,na,na,str,str,str,str,int,int,str,str,str,str,str,str,int");
    mygrid.attachEvent("onEditCell",editaGridPropostaPontos);
    mygrid.attachEvent("onCheck", selecionaPontoProposta);
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=tabelaSisPropGerCadastra&idProposta="+idProposta,function() {
        //seta duração '15' como default, se nao tiver, deixa em branco
        mygrid.forEachRow(function(id){
            combo = mygrid.getCustomCombo(id,9);
            
            if(combo.size() > 0){
                valor = combo.getKeys();
                mygrid.cells(id,9).setValue(valor[0]);
            }
            //seta as linhas escondidas
            if(mygrid.cells(id,0).getValue()==1){
                mygrid.setRowHidden(id,true);
            }
        });

        //seta o mes como default
        if(typeOf(idProposta) == "undefined"){
            setarColunaCadastroProposta('11','0');
        }else{
            setarMesEdicaoProposta();
        }
    });
}
function setarMesEdicaoProposta(){
    mygrid.forEachRow(function(rowId){
        if(mygrid.cells(rowId, 0).getValue() != '1'){
            mygrid.cells(rowId, 11).setValue('0');

            calculaTotalPonto(mygrid, rowId, 14, 11, 10, 13);
            calculaRsInsercao(mygrid, rowId, 11, 10, 7, 13, 12);
        }        
    });
    
    atribuiDesconto(mygrid, 13);
}
function cadastraSubPonto(idPonto){
    var descricao = $("#descricaoSubPonto").val();
    var nTVs = $("#nTVs").val();

    var cadSubPonto = ativaScriptResposta("class/Ajax.php?funcao=cadastraSubPonto&descricao="+descricao+"&nTVs="+nTVs+"&idPonto="+idPonto);

    if(cadSubPonto == "ok"){
        $(".ponto"+idPonto+" > ul > li").last().before("<li><input type='checkbox' value='" + nTVs + "' id='ch_" + idPonto + "_" + ($(".ponto"+idPonto+" > ul > li").length -1) + "' checked='checked' /><label for='ch_" + idPonto + "_" + ($(".ponto"+idPonto+" > ul > li").length -1) + "'>" + descricao + "</label><li>");
    }else{
        alert(cadSubPonto);
    }
    fechaCadastroDuracaoPonto();
}
function somaNTVs(idPonto, ch){
    var numTV = 0;
    var numTVTotal = 0;
    var subPonto = new Array();
    var sb = "";

    if($(".ponto"+idPonto+" [type='checkbox']").length == 0){
        return false;
    } 

    //soma quantos numero de TVs sobraram para o ponto
    $(".ponto"+idPonto+" [type='checkbox']").each(function(indice,elemento){
        if(this.checked){
            numTV = numTV + parseInt($(this).val());
        }
        numTVTotal = numTVTotal + parseInt($(this).val());
        sb = ($(this).attr("class")).split("_");
        subPonto.splice(indice,1,sb[1]);
    });

    //atualiza o estados dos check na hora de ir pra tabela de selecionados
    if(typeOf(ch) != "undefined"){
        if(!ch.checked){
            $(ch).removeAttr("checked");
        }else{
            $(ch).attr("checked", "checked");
        }
    }
    
    //atualiza a linha onde armazena o numero de telas selecionado
    mygrid.cells(idPonto, 15).setValue(numTV);

    //divide o total do produto
    //calculaRsTotal(mygrid, idPonto, numTV, numTVTotal);

    //faz a mesma coisa com a tabela selecionados
    if(selec.doesRowExist(idPonto)){
        selec.cells(idPonto, 15).setValue(numTV);
        selec.cells(idPonto, 17).setValue(subPonto.join("|"));

    //calculaRsTotal(selec, idPonto, numTV, numTVTotal);
        
    //calculaTotalPonto(selec, idPonto, 14, 11, 10, 13);
    //calculaRsInsercao(selec, idPonto, 11, 10, 7, 13, 12);
    }
    
    //calcula o R$ por inserção, pois a quantidade de telas muda o preço por inserção
    //calculaTotalPonto(mygrid, idPonto, 14, 11, 10, 13);
    //calculaRsInsercao(mygrid, idPonto, 11, 10, 7, 13, 12);

    //soma o total
    $("#total").text(float2moeda(somarTotal(13, selec)));
    return true;
}
function calculaPrecoPorSubPonto(idPonto){
    //alert(grid.cells(idPonto, 7).getValue());
    var numTV = 0;
    var numTVTotal = 0;
    
    //caso nao tenha sub-Pontos, entao considera-se apenas o numero de telas total
    //condidera tb o estados do checkboxes
    if(typeof $(".ponto"+idPonto+" [type='checkbox']").val() == 'undefined'){
        numTV = mygrid.cells(idPonto, 15).getValue();
        numTVTotal = mygrid.cells(idPonto, 15).getValue();
    }else{
        //soma quantos numero de TVs sobraram para o ponto
        $(".ponto"+idPonto+" [type='checkbox']").each(function(indice,elemento){
            if(this.checked){
                numTV = numTV + parseInt($(this).val());
                $(this).attr("checked", "checked");
            }else{
                $(this).removeAttr("checked");
            }
            numTVTotal = numTVTotal + parseInt($(this).val());
        });
    }
    
    var insercaoReal = (typeof objetoLinha[idPonto] == 'undefined' ?
        mygrid.cells(idPonto, 7).getValue() : objetoLinha[idPonto].getInsercao());
    var insercao = parseInt(mygrid.cells(idPonto, 7).getValue());

    //adequa o preço ao periodo
    var totalproduto = moeda2float(mygrid.cells(idPonto, 14).getValue());
    totalproduto = numTV * totalproduto / numTVTotal;

    totalproduto = totalproduto * mygrid.cells(idPonto, 10).getValue() / (mygrid.cells(idPonto, 11).getValue() == 0 ? 1 : 30);

    //adequa o totalProduto ao numero de inserções
    totalproduto = totalproduto * insercao / insercaoReal;

    //mostra o valor correto
    mygrid.cells(idPonto, 13).setValue(float2moeda(totalproduto));
    if(selec.doesRowExist(idPonto)){
        var subPonto = new Array();
        //caso nao tenha sub-Pontos, entao considera-se apenas o numero de telas total
        if(typeof $(".ponto"+idPonto+" [type='checkbox']").val() == 'undefined'){
            numTV = selec.cells(idPonto, 15).getValue();
            numTVTotal = selec.cells(idPonto, 15).getValue();
        }else{
            //soma quantos numero de TVs sobraram para o ponto
            $(".ponto"+idPonto+" [type='checkbox']").each(function(indice,elemento){
                if(this.checked){
                    //captura o id do subponto pra inserir na ultima coluna (para a legenda no PDF)
                    subPonto.splice(subPonto.lenght,0,$(this).attr("class").split("_")[1]);
                    //alert($(this).attr("class").split("_")[1]);
                    numTV = numTV + parseInt($(this).val());
                }
                numTVTotal = numTVTotal + parseInt($(this).val());
            });
        }

        //adiciona a listagem de sub_pontos a grid
        selec.cells(idPonto, 17).setValue(subPonto.join("|"));

        var insercaoReal = (typeof objetoLinha[idPonto] == 'undefined' ?
            selec.cells(idPonto, 7).getValue() : objetoLinha[idPonto].getInsercao());
        var insercao = parseInt(selec.cells(idPonto, 7).getValue());

        //adequa o preço ao periodo
        var totalproduto = moeda2float(selec.cells(idPonto, 14).getValue());
        totalproduto = numTV * totalproduto / numTVTotal;
        totalproduto = totalproduto * selec.cells(idPonto, 10).getValue() / (selec.cells(idPonto, 11).getValue() == 0 ? 1 : 30);

        //adequa o totalProduto ao numero de inserções
        totalproduto = totalproduto * insercao / insercaoReal;

        //mostra o valor correto
        selec.cells(idPonto, 13).setValue(float2moeda(totalproduto));    
    }
    atribuiDesconto(selec, 13);
}
function adicionaSubPonto(idPonto){
    popupPadraoProposta(
        "<h3>Adicionar Sub-Ponto</h3>\n\
            <ul>\n\
                <li><span>Descrição</span><input type=\"text\" id=\"descricaoSubPonto\" />\n\
                <li><span>Nº TVs</span><input type=\"text\" id=\"nTVs\" /></li>\n\
                <li><input type=\"button\" value=\"Cadastrar\" onclick=\"cadastraSubPonto("+idPonto+");\" /></li>\n\
            </ul>\n\
            </span>");
}
function popupPadraoProposta(conteudo){
    //abre a caixa de cadastro
    $("body").append("<div class=\"escureceTela\" onclick=\"fechaCadastroDuracaoPonto();\"></div>\n\
                      <div class=\"adicionaDuracaoPonto\">\n\
                          <span class=\"fecharDuracaoPonto\" onclick=\"fechaCadastroDuracaoPonto();\">Fechar</span>\n\
                          "+conteudo+"\n\
                      </div>")
    .children(".adicionaDuracaoPonto")
    .fadeIn(300);
}
function alternaComboProposta(idPonto){
    $(".infoAdicionalSubPonto ").not(".ponto" + idPonto).hide("fast");
    $(".ponto" + idPonto).toggle("fast");
}
function selecionaChecados(){
    var t = mygrid.getCheckedRows(0);
    t = t.split(",");

    for(r = 0; r < t.length; r++){
        selecionaPontoProposta(t[r],null,1);
    }
}
function selecionaPontoProposta(rId,cInd,state){
    if(state == 1){
        //combo do tipo de periodo (dia e mes)
        selec.getCombo(11).put(1,"Dia");
        selec.getCombo(11).put(0,"Mês");

        //reune os sub-grupos selecionados para cadastar na base (util na hora de editar proposta)
        //ja salvando os checkbox checados
        var subGrupo = new Array(0);
        $(".ponto"+rId+" [type='checkbox']:checked").each(function(indice, elemento){
            if(!elemento.checked){
                $(elemento).removeAttr("checked");
            }else{
                $(elemento).attr("checked", "checked");
            }
        
            idSubGrupo = $(elemento).attr('class').split("_");
            subGrupo.splice(indice, 1, idSubGrupo[1]);
        });

        var miniPopUp = mygrid.cells(rId,6).getValue();
        mygrid.cells(rId,6).setValue('');        

        selec.addRow(rId, [
            mygrid.cells(rId,0).getValue(),   // 0
            mygrid.cells(rId,1).getValue(),   // 1
            mygrid.cells(rId,2).getValue(),   // 2
            mygrid.cells(rId,3).getValue(),   // 3
            mygrid.cells(rId,4).getValue(),   // 4
            mygrid.cells(rId,5).getValue(),   // 5
            miniPopUp,                        // 6
            mygrid.cells(rId,7).getValue(),   // 7
            mygrid.cells(rId,8).getValue(),   // 8
            mygrid.cells(rId,9).getValue(),   // 9
            mygrid.cells(rId,10).getValue(),  // 10
            mygrid.cells(rId,11).getValue(),  // 11
            mygrid.cells(rId,12).getValue(),  // 12
            mygrid.cells(rId,13).getValue(),  // 13
            mygrid.cells(rId, 14).getValue(), // 14
            mygrid.cells(rId, 15).getValue(), // 15
            mygrid.cells(rId,9).getText(),    // 16
            subGrupo.join("|")]);             // 17
            
        //captura os valores para duracaoVT
        var duracaoPontos = mygrid.getCustomCombo(rId,9);
        var arr = duracaoPontos.getKeys();
        var tam = duracaoPontos.size();
        var duracaoSelec = selec.getCustomCombo(rId,9);
        for(i = 0; i < tam; i++){
            duracaoSelec.put(arr[i], duracaoPontos.get(arr[i]));
        }
        selec.cells(rId,9).setValue(arr[0]);

        mygrid.setRowHidden(rId, true);
        atribuiDesconto(mygrid, 13);
    }
    return true;
}
var insercaoAntiga = 0;
var precoAntiga = 0;

//objeto da linha da proposta
function linhaProposta(idLinha){
    this.id = idLinha;
    var funcionamento = 0;
    var insercao = 0;
    var rsIns = 0;
    var numTV = 0;

    //GETs
    this.getId = function(){
        return this.id;
    }
    this.getFuncionamento = function(){
        return this.funcionamento;
    }
    this.getInsercao = function(){
        return this.insercao;
    }
    this.getRsIns = function(){
        return this.rsIns;
    }
    this.getNumTV = function(){
        return this.numTV;
    }

    //SETs
    this.setId = function(id){
        this.id = id;
    }
    this.setFuncionamento = function(funcionamento){
        this.funcionamento = funcionamento;
    }
    this.setInsercao = function(insercao){
        this.insercao = insercao;
    }
    this.setRsIns = function(rsIns){
        this.rsIns = rsIns;
    }
    this.setNumTV = function(numTV){
        this.numTV = numTV;
    }
    return this;
}
var objetoLinha = new Array();
function editaGridCadastroProposta(stage, rowId, colId, grid){
    //executa a funçaõ antes de qualquer alteração
    if(stage== 1){
        //        if(typeof objetoLinha == 'undefined'){
        //            var objetoLinha = new Array();
        //        }
        //cria o objeto da linha com as configurações default
        linhaObjeto = new linhaProposta(rowId);

        if(typeof objetoLinha[rowId] == 'undefined'){
            //if(linhaObjeto.getFuncionamento() == 0)
            linhaObjeto.setFuncionamento(grid.cells(rowId, 8).getValue());

            //if(linhaObjeto.getInsercao() == 0)
            linhaObjeto.setInsercao(grid.cells(rowId, 7).getValue());

            //if(linhaObjeto.getNumTV() == 0)
            linhaObjeto.setNumTV(grid.cells(rowId, 15).getValue());

            objetoLinha[rowId] = linhaObjeto;
        }
        

        insercaoAntiga = parseInt(grid.cells(rowId, 7).getValue());
        precoAntigo = float2moeda(grid.cells(rowId, 14).getValue());
        //alert(precoAntigo)
        //R$ por Inserção ou total
        if ((colId == 12) || (colId == 13)){
            //captura o input que tem o R$ Inserção
            $(".dhx_combo_edit").keypress(function(event){
                return MascaraMoeda(this,'.',',',event);
            });
        }
    }
    if (stage == 2) {
        //muda a duração
        if (colId == 9){
            //caso o usuario tenha apertado em "Adicionar"
            if(grid.cells(rowId, 9).getValue() == "+"){
                //captura o nome do ponto
                var nomePonto=grid.cells(rowId, 3).getValue();
                
                popupPadraoProposta("<h3>"+nomePonto+"</h3>\n\
                            <ul>\n\
                                <li><span>Duração:</span><input type=\"text\" id=\"duracaoInsDurPonto\" /></li>\n\
                                <li><span>Nº TVs: </span><input type=\"text\" id=\"nTVsInsDurPonto\" onkeyup=\"achaTotal();\" /></li>\n\
                                <li><span>Ins:    </span><input type=\"text\" id=\"insInsDurPonto\" onkeyup=\"achaTotal();\" value=\"54\" /></li>\n\
                                <li><span>RS/Ins: </span><input type=\"text\" id=\"rsInsInsDurPonto\" value=\"0,00\" onkeyup=\"achaTotal();\" onkeypress=\"return(MascaraMoeda(this,'.',',',event));\" /></li>\n\
                                <li><span>Preço:</span><input type=\"text\" id=\"precoInsDurPonto\" value=\"0,00\" onkeyup=\"achaRSIns();\" onkeypress=\"return(MascaraMoeda(this,'.',',',event));\" /></li>\n\
                                <li><input type=\"button\" value=\"Cadastrar\" onclick=\"cadastraDuracaoPonto("+rowId+");\" /></li></ul>\n\
                            <input type=\"hidden\" value=\""+rowId+"\" id=\"idPontoCadastroDuracaoVT\" />");
                            
                //impede a "seleção" do + para o cadastro em si da proposta
                return false;
            }
            
            grid.cells(rowId, 13).setValue(float2moeda(grid.cells(rowId, 9).getValue()));
            grid.cells(rowId, 14).setValue(float2moeda(grid.cells(rowId, 9).getValue()));
            calculaTotalPonto(grid, rowId, 14, 11, 10, 13);
            calculaRsInsercao(grid, rowId, 11, 10, 7, 13, 12);

            //atribui para o selec, caso exista
            if(selec.doesRowExist(rowId)){
                selec.cells(rowId, 16).setValue(selec.cells(rowId, 9).getText());
            }

            atribuiDesconto(selec, 13);
            somaNTVs(rowId);
            //$("#total").text(float2moeda(somarTotal(13, grid)));
            return true;
        }

        //muda o periodo
        if (colId == 10 || colId == 11){
            calculaTotalPonto(grid, rowId, 14, 11, 10, 13);
            //calculaRsInsercao(grid, rowId, 11, 10, 7, 13, 12);
            calculaPrecoPorSubPonto(rowId);
            //atribuiDesconto(selec, 13);
            //somaNTVs(rowId);
            //$("#total").text(float2moeda(somarTotal(13, grid, false)));
            return true;
        }

        //muda R$/Inserções
        //obsoleto, R$/Ins nao altera mais manualmente
        if (colId == 12){
            var funcionamento = parseInt(grid.cells(rowId, 8).getValue());
            var insercao = parseInt(grid.cells(rowId, 7).getValue());
            var rsIns = moeda2float(grid.cells(rowId, 12).getValue());
            var nTV = parseInt(grid.cells(rowId, 15).getValue());
            grid.cells(rowId, 13).setValue(float2moeda(funcionamento*insercao*rsIns*nTV));
            return true;
        }
        
        if(colId == 13){
            atribuiDesconto(selec, 13);
            grid.cells(rowId, 14).setValue(grid.cells(rowId, 13).getValue());
            
            //procura a inserção
            var funcionamento = parseInt(grid.cells(rowId, 8).getValue());
            var insercao = parseInt(grid.cells(rowId, 7).getValue());
            var periodo = parseInt(grid.cells(rowId, 10).getValue());
            var tipoPeriodo = parseInt(grid.cells(rowId, 11).getValue());
            var rsIns = moeda2float(grid.cells(rowId, 12).getValue());
            var total = moeda2float(grid.cells(rowId, 14).getValue());
            var numTV = parseInt(grid.cells(rowId, 15).getValue());
            
            //descobre o valor referente a um mês
            var insercaoNova = total/rsIns/funcionamento/numTV;

            linha = rowId;

            //tira a regra de tres pra descobrir a inserção correta com relação ao periodo (se for diferente de um mes)
            insercaoNova = (linha.getInsercao() * (tipoPeriodo == '0' ? periodo*30 : periodo)) / 30;

            grid.cells(rowId, 7).setValue(insercaoNova);
            
            //somaNTVs(rowId);
            //$("#total").text(float2moeda(somarTotal(13, grid)));
            return true;
        }

        //muda o total ou inserção
        if (colId == 7){
            calculaPrecoPorSubPonto(rowId);

            //atribuiDesconto(selec, 13);
            return true;
        }

        //retorno que nunca na historia será chamado
        somaNTVs(rowId);
        return true;
    }else{
        $("#total").text(float2moeda(somarTotal(13, grid)));
        return true;
    }

    $("#total").text(float2moeda(somarTotal(13, selec)));
    return true;
}
function editaGridPropostaPontos(stage, rowId, colId){
    editaGridCadastroProposta(stage, rowId, colId, mygrid);
    return true;
}
function editaGridPropostaSelecionados(stage, rowId, colId){
    return editaGridCadastroProposta(stage, rowId, colId, selec);
}
function tabelaSisPropGerCadastraSelecionados(idProposta) {
    if(idProposta == "undefined"){
        idProposta = null;
    }
    selec = new dhtmlXGridObject("tabelaSisPropGerCadastraSelecionados");
    selec.setImagePath("js/dhtmlxgrid/codebase/imgs/");
    
    selec.setHeader("&nbsp;,&nbsp;,id_produto,Produtos,Categoria,Cidade,Info.,Inserção,Funcionamento,Duraçao VT,Período,Tipo do Período,R$/Inserção,Total R$,RS_base,nTelas,duracaoVTLabel,subGrupos,tipoPeriodoCadastrado");
    selec.setInitWidths("40,0,0,*,80,80,70,70,90,70,65,95,80,70,0,0,0,0,0");
    selec.setColAlign("center,left,left,left,left,center,center,center,center,center,center,center,center,center,center,left,center,left,left");
    selec.setColTypes("ch,ro,ro,ro,ed,ed,ro,ed,ed,co,ed,co,ed,ed,ro,ro,ro,ro,ro");
    selec.setSerializableColumns("false,false,true,true,false,false,false,true,true,true,true,true,true,true,false,true,true,true,false");
    
    selec.setSkin("dhx_skyblue");
    selec.setColSorting("na,na,na,str,str,str,str,int,int,str,str,str,str,str,str,int,str,str,str");
    selec.attachEvent("onEditCell",editaGridPropostaSelecionados);
    selec.attachEvent("onCheck", checkSelecionados);
    if(idProposta != null){
        selec.loadXML("class/Ajax.php?funcao=selecSelecionados&idProposta="+idProposta,function(){
            //seta o mes como default
            //seta a duracao correta
            selec.forEachRow(function(id){
                selec.cells(id,11).setValue(selec.cells(id,18).getValue()+'');

                combo = selec.getCustomCombo(id,9);
                if(combo.size() > 1){
                    valor = combo.getKeys();
                    selec.cells(id,9).setValue(selec.cells(id,16).getValue());
                }
            });
        });
    }
    selec.init();
}
function checkSelecionados(rId,cInd,state){
    if(state == 0){
        //reexibe a linha na tabela de pontos
        mygrid.setRowHidden(rId, false);

        //seta o marcador da linha como "nao checado"
        mygrid.cells(rId, 0).setValue(0);

        //seta o tipo periodo para o que o usuario setou na grid selecioandos
        mygrid.cells(rId,11).setValue(selec.cells(rId,11).getValue());

        //atualiza o estado dos checkboxes antes de devolver a linha
        $(".ponto"+rId+" [type='checkbox']:checked").each(function(indice, elemento){
            if(!elemento.checked){
                $(elemento).removeAttr("checked");
            }else{
                $(elemento).attr("checked", "checked");
            }
        });

        var miniPopUp = selec.cells(rId,6).getValue();
        selec.deleteRow(rId);

        mygrid.cells(rId,6).setValue(miniPopUp);
    }
}
function calculaTotalPonto(grid, rowId, totalReal, tipoPeriodo, periodo, total){
    var valor = moeda2float(grid.cells(rowId, totalReal).getValue());
    var valorC = 0;

    if(grid.cells(rowId, tipoPeriodo).getValue() == 0){
        //se for mes...
        valorC = valor * grid.cells(rowId, periodo).getValue()
    }else{
        //se for dia...
        valorC = (valor / 30) * grid.cells(rowId, periodo).getValue();
    }
    //    //mini log
    //    var data = new Date();
    //   $("#observacao").val(data.getHours()+":"+data.getMinutes()+":"+data.getSeconds()
    //        + " \n" + (grid.cells(rowId, tipoPeriodo).getValue() == 0 ? "Mês" : "Dia") + " \n" + valor);

    //atribui o valor correto ao valor na grid
    grid.cells(rowId, total).setValue(float2moeda(valorC));
}
function calculaRsTotal(grid, idPonto, nTelas, nTelasTotal){
    //divide o total do produto
    var totalproduto = moeda2float(grid.cells(idPonto, 14).getValue());
    totalproduto = totalproduto * nTelas / nTelasTotal;
    totalproduto = totalproduto * grid.cells(idPonto, 10).getValue() / (grid.cells(idPonto, 11).getValue() == 0 ? 1 : 30);
    
    grid.cells(idPonto, 13).setValue(float2moeda(totalproduto));
}
function calculaRsInsercao(grid, rowId, tipoPeriodo, periodo, insercao, total, rsInsercao){
    var dias = 0;

    //se for mes...
    if(grid.cells(rowId, tipoPeriodo).getValue() == 0){
        dias = grid.cells(rowId, periodo).getValue() * 30;
    //se for dia...
    }else{
        dias = grid.cells(rowId, periodo).getValue();
    }
    
    //var rsInser = ((moeda2float(grid.cells(rowId, total).getValue()) / (dias * grid.cells(rowId, insercao).getValue())))/ grid.cells(rowId, 15).getValue();
    var rsInser = moeda2float(grid.cells(rowId, total).getValue()) / grid.cells(rowId, insercao).getValue() / grid.cells(rowId, 8).getValue() / grid.cells(rowId, 15).getValue();

    //muda inserções por dia
    if(rsInser == "Infinity"){
        grid.cells(rowId, rsInsercao).setValue("0,00");
    }else{
        grid.cells(rowId, rsInsercao).setValue(float2moeda(rsInser));
    }
}
function somarTotal(indice, grid, selecionado){
    if(typeof(selecionado)=="undefined") selecionado = true;

    var total = 0;

    arr = grid.getCheckedRows(0).split(",");
    grid.forEachRow(function(id){
        //total += selecionado ? (grid.cells(id,0).getValue() == '1' ? moeda2float(grid.cells(id,indice).getValue()) : 0) : moeda2float(grid.cells(id,indice).getValue());
        total += selecionado ? (jQuery.inArray(id, arr) > -1 ? moeda2float(grid.cells(id,indice).getValue()) : 0) : moeda2float(grid.cells(id,indice).getValue());
    });
    
    return total;
}
function contraiPadronizacao(){
    $(".padronizarPontosProposta").slideToggle("slow");
}
function setarColunaCadastroProposta(coluna, valor){
    for (i=0; i < mygrid.getRowsNum(); i++){
        rowId = mygrid.getRowId(i);
        mygrid.cells(rowId, coluna).setValue(valor);

        //calculaPrecoPorSubPonto(rowId);

        calculaTotalPonto(mygrid, rowId, 14, 11, 10, 13);
    //calculaRsInsercao(mygrid, rowId, 11, 10, 7, 13, 12);
    }
    $("#total").text(float2moeda(somarTotal(13, selec)));
    atribuiDesconto(selec, 13);
}
function achaTotal(){
    var nTelas = $("#nTVsInsDurPonto");
    var rsIns = $("#rsInsInsDurPonto").val();
    var ins = parseInt($("#insInsDurPonto").val(),10);
    ins = isNaN(ins) ? 54 : ins;

    var fun = parseInt($("#funcionamento").val(),10);
    fun = isNaN(fun) ? 30 : fun;

    //Total = R$/Ins. * funcionamento * inserções * numero de telas
    var total = moeda2float(rsIns)*fun*ins*($(nTelas).val() == "" ? 1 : $(nTelas).val());
    $("#precoInsDurPonto").val(isNaN(total) ? "0,00" : float2moeda(total));
}
function achaRSIns(){
    var nTelas = $("#nTVsInsDurPonto");
    var total = $("#precoInsDurPonto").val();
    var ins = parseInt($("#insInsDurPonto").val(),10);
    ins = isNaN(ins) ? 54 : ins;

    var fun = parseInt($("#funcionamento").val(),10);
    fun = isNaN(fun) ? 30 : fun;

    //Total = R$/Ins. * funcionamento * inserções * numero de telas
    var rsIns = moeda2float(total)/fun/ins/($(nTelas).val() == "" ? 1 : $(nTelas).val());
    $("#rsInsInsDurPonto").val(isNaN(rsIns) ? "0,00" : float2moeda(rsIns));
}
function buscaPontoProposta(mygrid,texto,coluna){
    /*
     * Para que esta classe tenha efeito, é necessario criar uma coluna (que nao precisa
     * necessariamente aparecer na grid final) com a descrição do resultado formatada, ou
     * seja, utilizando-se dos metodos "formatarDocumento" e "strtolower", pois esta coluna
     * será utilizada como base para a pesquisa
     *
     * É necessario que tenha a função "formatarDocumento" em javascript também.
     **/
    var result = new Array();        //lista de resultados
    var index = 0;                   //ponteiro da busca
    this.grid = mygrid;              //objeto dhtmlxgrid da grid onse sera feita a pesquisa
    this.inputTexto = $("#"+texto);  //id da caixa de texto da pesquisa
    this.coluna = coluna;            //indice da coluna onde as informações serão buscadas
    this.incluirSelecionados = false;//indica se contará os produtos selecionados

    this.indiceCorreto = function(totalRegistros){
        if(index > totalRegistros){
            index = 0;
        }else if(index<0){
            index = totalRegistros;
        }
        return index;
    }

    this.verificaEnter = function(characterCode){
        if((characterCode.keyCode==13)||(characterCode.keyCode==40)) { //enter ou setinha pra baixo
            /*caso o usuario tenha apertado Enter
            entao executa o proximo resultado da busca
            ou o primeiro caso a busca ainda nao tenha sido
            iniciada*/
            this.proximo();
        }else if(characterCode.keyCode==38){ //setinha pra cima
            this.anterior();
        }else{
            /*caso o usuario tenha apertado qualquer outra tecla
            ele reinicia toda a busca
            baseado na nova palavra*/
            //reiniciaIndex();
            this.index = -1;
            this.proximo();
        }
    }

    this.preencheResult = function(){
        var celula = "";
        //formata o texto para evitar caseSensitive
        texto = formataNomeDocumento(this.inputTexto.val()).toLowerCase();
        for (i=0; i<this.grid.getRowsNum(); i++){
            idAprocurar = this.grid.getRowId(i);
            celula = this.grid.cells(idAprocurar, this.coluna).getValue();
            
            //seleciona os resultado ignorando os resultados ja selecionados
            if(celula.indexOf(texto) > -1  && (!this.getIncluirSelecionados() ? this.grid.cells(idAprocurar, 0).getValue()!=1 : true)){
                //preenche o fim do array
                result.splice(result.length,1,this.grid.getRowId(i));
            }
        }           
        
    }

    this.reiniciaIndex = function(){
        index = 0;
    }

    this.selecionados = function(){
        var selecionados = 0;
        for (i=1; i<=this.grid.getRowsNum(); i++){
            if(this.grid.cells(i, 0).getValue()==1){
                selecionados++;
            }
        }
        return selecionados;
    }

    this.naoSelecionados = function(){
        return this.grid.getRowsNum()-this.selecionados();
    }

    this.procurar = function(str){
        //se a string estiver em branco, entao nao executa a funçao
        //e reinicia os resultados da classe
        if(str.trim()==""){
            $("#logBusca").html("");
            this.grid.showRow(1);
            return false;
        }
        //array de resultados
        result = new Array();
        this.preencheResult();


        //busca o indice correto (caso o usuario tenha chego ao fim
        //da pesquisa ou queira voltar um resultado)
        this.index = this.indiceCorreto(result.length);

        //finalmente seleciona a linha correta baseada na busca
        this.grid.selectRowById(result[this.index-1]);

        resultadoLog = this.index == 0 ? (result.length == 0 ?
            "Nenhum resultado encontrado" : "Busca finalizada") :
        "Exibindo indice "+(this.index)+" de um total de "+(result.length)+" resultados";

        $("#logBusca").html(resultadoLog);

        return true;
    }

    this.proximo = function (){
        this.procurar(this.inputTexto.val(),index++);
    }

    this.anterior = function (){
        this.procurar(this.inputTexto.val(),index--);
    }

    this.setIncluirSelecionados = function(incluirSelecionados){
        this.incluirSelecionados = incluirSelecionados;
    }

    this.getIncluirSelecionados = function(){
        return this.incluirSelecionados;
    }

    //retorna a instancia da classe
    return this;
}
function zeratudo(){
    document.getElementById('total').value = "0";
    document.getElementById('desconto').value = "0";
    document.getElementById('producao').value = "0";
}
function roundNumber (rnum) {
    return Math.round(rnum*Math.pow(10,2))/Math.pow(10,2);
}
function float2moeda(num) {
    var x = 0;
    if(num<0) {
        num = Math.abs(num);
        x = 1;
    }
    if(isNaN(num)) num = "0";
    var cents = Math.floor((num*100+0.5)%100);
    num = Math.floor((num*100+0.5)/100).toString();

    if(cents < 10) cents = "0" + cents;
    for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
        num = num.substring(0,num.length-(4*i+3))+'.'
        +num.substring(num.length-(4*i+3));
    var ret = num + ',' + cents;
    if (x == 1) ret = ' - ' + ret;
    return ret;
}
function moeda2float(moeda){
    moeda = moeda.replace(".","");
    moeda = moeda.replace(",",".");
    return parseFloat(moeda);
}
function atribuiDesconto(grid, totalReal){
    var tot = 0;
    var id = 0;
    for (i=0; i< grid.getRowsNum(); i++){
        id = grid.getRowId(i);
        if(grid.cells(id, 0).getValue()==1){
            tot +=  moeda2float(grid.cells(id, totalReal).getValue());
        }
    }
    
    $("#total").html(ativaScriptResposta("class/Ajax.php?funcao=calculaDescontoCadastroProposta&desconto="+$("#descontoProposta").val()+"&total="+tot));
}
function verificaNumero(e) {
    return !(e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57));
}
function validaFormProp(){
    var campos = "";
    
    if (document.getElementById("responsavel").value==""){
        $("#responsavel").css("background","#F07C31").focus(function(){
            $(this).css("background", "#FFF");
        });
        campos += "<li>Responsável</li>";
    }
    if (document.getElementById("data").value.length==0){
        $("#data").css("background","#F07C31").focus(function(){
            $(this).css("background", "#FFF");
        });
        campos += "<li>Data</li>";
    }
    if (document.getElementById("cliente").value.length==0){
        $("#cliente").css("background","#F07C31").focus(function(){
            $(this).css("background", "#FFF");
        });
        campos += "<li>Cliente</li>";
    }

    /*if (document.getElementById("periodoProposta").value.length==0){
        $("#periodoProposta").css("background","#F07C31").focus(function(){
            $(this).css("background", "#FFF");
        });
        campos += "<li>Período</li>";
    }*/

    if (document.getElementById("producaoVT").value.length==0){
        $("#producaoVT").css("background","#F07C31").focus(function(){
            $(this).css("background", "#FFF");
        });
        campos += "<li>Produção</li>";
    }
    if (document.getElementById("prazoProducaoVT").value.length==0){
        $("#prazoProducaoVT").css("background","#F07C31").focus(function(){
            $(this).css("background", "#FFF");
        });
        campos += "<li>Prazo</li>";
    }
    if (document.getElementById("validadeProposta").value.length==0){
        $("#validadeProposta").css("background","#F07C31").focus(function(){
            $(this).css("background", "#FFF");
        });
        campos += "<li>Validade</li>";

    }

    if(campos.length > 0){
        popupPadraoProposta("<h3>Os seguintes campos não foram preenchidos corretamente:</h3>\n\
                                    <ul style=\"list-style: circle;\">"+campos+"</ul> \n\
                            <div class=\"ui-corner-all ui-state-error\">\n\
                                <img src=\"imagens/conteudo/icones_opcoes/alerta64.png\" style=\"float: left;\" />\n\
                                É necessário preenche-los para que a proposta possa ser finalizada\n\
                                <div style=\"clear: both;\"></div>\n\
                            </div>");
        $("html, body").scrollTop(0);
        return false;
    }

    return true;
}
function stringToXML(text){
    if (window.ActiveXObject){
        var doc=new ActiveXObject('Microsoft.XMLDOM');
        doc.async='false';
        doc.loadXML(text);
    } else {
        var parser=new DOMParser();
        var doc=parser.parseFromString(text,'text/xml');
    }
    return doc;
}
function var_dump(obj) {
    if(typeof obj == "object") {
        return "Type: "+typeof(obj)+((obj.constructor) ? "\nConstructor: "+obj.constructor : "")+"\nValue: " + obj;
    } else {
        return "Type: "+typeof(obj)+"\nValue: "+obj;
    }
}//end function var_dump
function validaCadastroProposta(idProposta){
    var err = false;
    if (validaFormProp()){
        for (i=1; i <= selec.getRowsNum(); i++){
            if(selec.cells2((i-1), 9).getText() == "&nbsp;" ||      //duração VT
                selec.cells2((i-1), 7).getValue() == "" ||          //inserção
                selec.cells2((i-1), 8).getValue() == "" ||          //funcionamento
                selec.cells2((i-1), 10).getValue() == ""){          //periodo
                selec.setRowColor(selec.getRowId(i-1),"#FF6347");
                err = true;
            }
        }
       
        //serializa a grid de elementos selecionados transformando-a em um arquivo XML, sua linda
        var ser = stringToXML(selec.serialize());
        var row = $(ser).find("row");

        //se o cara nao selecionou nenhum ponto, nao tem como criar uma proposta
        if(row.length == 0){
            alert("Selecione ao menos 1 ponto para finalizar a proposta");
            return false;
        }

        //seleciona as informações basicas para a proposta
        var contato             = $("#contato").val();
        var responsavel         = $("#responsavel").val();
        var data                = $("#data").val();
        var agencia             = $("#agencia").val();
        var cliente             = $("#cliente").val();
        var producaoVT          = $("#producaoVT").val();
        var prazoProducaoVT     = $("#prazoProducaoVT").val();
        var validade            = $("#validadeProposta").val();
        var desconto            = $("#descontoProposta").val();
        var total               = $("#total").text();
        var mostra              = $("#mostrarValorInsercao").val();
        var observacao          = $("#observacao").val();
        var periodo             = $("#periodoProposta").val();
        var tipoPer             = $("input[name='tipoPeriodo']:checked").val();

        if(!err){
            if(typeof(idProposta)=="undefined"){
                abrirPagPostID("class/Ajax.php","respostaCriaPDFProposta",
                    "funcao=cadastraProposta&responsavel="+responsavel+
                    "&data="+data+
                    "&agencia="+agencia+
                    "&cliente="+cliente+
                    "&producaoVT="+producaoVT+
                    "&mostra="+mostra+
                    "&validade="+validade+
                    "&contato="+contato+
                    "&desconto="+desconto+
                    "&total="+total+
                    "&prazoProducaoVT="+prazoProducaoVT+
                    "&observacao="+url_encode(observacao)+
                    "&periodo="+periodo+
                    "&tipoPeriodo="+tipoPer+
                    "&produto="+url_encode(selec.serialize()));
            }else{
                abrirPagPostID("class/Ajax.php","respostaCriaPDFProposta",
                    "funcao=editaProposta&idProposta="+idProposta+
                    "&responsavel="+responsavel+
                    "&data="+data+
                    "&agencia="+agencia+
                    "&cliente="+cliente+
                    "&producaoVT="+producaoVT+
                    "&mostra="+mostra+
                    "&validade="+validade+
                    "&contato="+contato+
                    "&desconto="+desconto+
                    "&total="+total+
                    "&prazoProducaoVT="+prazoProducaoVT+
                    "&observacao="+url_encode(observacao)+
                    "&periodo="+periodo+
                    "&tipoPeriodo="+tipoPer+
                    "&produto="+url_encode(selec.serialize()));
            }
            $("#respostaCriaPDFProposta")
            .hide()
            .removeClass("ui-state-error")
            .slideDown("slow")
            .addClass("ui-state-highlight");
        }else{
            mygrid.clearSelection();
            $("#respostaCriaPDFProposta")
            .html("<span style='font-weight: bold;'>Alerta!</span><br /><br />Há um problema com um ou mais produtos selecionados<br />\n\
                Por favor, verifique os produtos cadastrados com fundo vermelho e certifique-se que todas as informações necessarias \n\
                (tais como <span style='font-weight: bold;'>tempo do VT, inserções, dias de funcionamento, sub-pontos</span>, entre outras)\n\
                foram setadas corretamente")
            .hide()
            .css("height","80px")
            .slideDown("slow")
            .addClass("ui-state-error");
        }
    }
    return true;
}
function baixaPDFPaginaFotos(idProposta){
    var width = 10;
    var height = 10;

    var left = 99;
    var top = 99;

    ie = isExplorer() ? "../../" : "";

    window.open(ie+"class/Ajax.php?funcao=baixaPDFPaginaFotos&arquivo="+idProposta,'janela', 'width='+width+', height='+height+', top='+top+', left='+left+', scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no');
}
function baixaPDFProposta(idProposta){
    var width = 10;
    var height = 10;

    var left = 99;
    var top = 99;

    ie = isExplorer() ? "../../" : "";

    window.open(ie+"class/Ajax.php?funcao=baixaPDFProposta&idProposta="+idProposta,'janela', 'width='+width+', height='+height+', top='+top+', left='+left+', scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no');
}
function baixaPDFPP(idPP){
    var width = 10;
    var height = 10;

    var left = 99;
    var top = 99;

    ie = isExplorer() ? "../../" : "";

    window.open(ie+"class/Ajax.php?funcao=baixaPDFPP&idPP="+idPP,'janela', 'width='+width+', height='+height+', top='+top+', left='+left+', scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no');
}
function baixaPDFPropostaVisualizar(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione uma Proposta para visualizar');
    }else{
        window.open((isExplorer() ? "../" : "") + "class/Ajax.php?funcao=baixaPDFProposta&idProposta="+mygrid.getSelectedRowId(),"janela", "width=350, height=50, top=10, left=10, scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no");
    }
}
function baixaPDFPP(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione uma PP para baixar');
    }else{
        window.open((isExplorer() ? "../" : "") + "class/Ajax.php?funcao=baixaPDFPP&idPP="+mygrid.getSelectedRowId(),"janela", "width=350, height=50, top=10, left=10, scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no");
    }
}
function janelaParaDownload(idFunc){
    var width = 10;
    var height = 10;

    var left = 99;
    var top = 99;

    var loc = isExplorer() ? "../" : "";

    window.open(loc + idFunc,'janela', 'width='+width+', height='+height+', top='+top+', left='+left+', scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no');
}
function cadastroPI(){
    var de = $("#de").val();
    var ate = $("#ate").val();
    var idFranquia = $("#idFranquia").val()

    mygrid = new dhtmlXGridObject("tabelaPICadastra");
    mygrid.setImagePath("dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Nº,Data,Cliente,Responsável,Total,arquivo");
    mygrid.setInitWidths("40,80,200,180,*,0");
    mygrid.attachHeader("#text_filter,#text_filter,#select_filter,#select_filter,&nbsp;,&nbsp;");
    mygrid.setColAlign("left,center,left,left,center,center");
    mygrid.setColTypes("ro,ro,ro,ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("str,str,str,str,str,str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=getPI&de="+de+"&ate="+ate+"&idFranquia="+idFranquia);

    myDataProcessor = new dataProcessor("class/Ajax.php?funcao=getPIAtualiza");
    myDataProcessor.setTransactionMode("POST", true);
    myDataProcessor.init(mygrid);
}
function gerPIEdita(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione uma PI para editar');
    }else{
        location.href = (isExplorer() ? "../" : "") +
        "privado/pi/editar/"+mygrid.getSelectedRowId();
    }
}
function gerPIVisualizar(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione uma PI para visualizar');
    }else{
        loc = isExplorer() ? "../" : "";
        window.open(loc+"class/Ajax.php?funcao=baixaArquivoPI&idPI="+mygrid.getSelectedRowId(),'PDFPI','width=10, height=10, top=100, left=100, scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no');
    }
}
function gerPIRemover(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione uma PI para Remover');
    }else{
        mygrid.deleteSelectedItem();
    }
}
function telaCadastroPI(){
    mygrid = new dhtmlXGridObject("tabelaPICadastra");
    mygrid.setImagePath("dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Nº,Data,Cliente,Responsável,Total,arquivo");
    mygrid.setInitWidths("40,80,200,180,*,0");
    mygrid.attachHeader("#text_filter,#text_filter,#select_filter,#select_filter,&nbsp;,&nbsp;");
    mygrid.setColAlign("left,center,left,left,center,center");
    mygrid.setColTypes("ro,ro,ro,ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("str,str,str,str,str,str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=getPICadastro");
}
function validaCadastroPI(){
    var colunas = new Array();
    $("#selectCamposPI input[type='checkbox']").each(function(indice, elemento){
        colunas.splice(indice, 1, elemento.checked ? 1 : 0);
    });

    var valores = new Array();
    $("#selectValoresPI input[type='checkbox']").each(function(indice, elemento){
        valores.splice(indice, 1, elemento.checked ? 1 : 0);
    });

    proposta = mygrid.getSelectedRowId();
    if(proposta == null){
        alert('Selecione uma proposta para cadastrar a PI');
        return false;
    }

    data = $("#data").val();
    if(data == ""){
        alert('Insira uma data');
        return false;
    }

    pgto = $("#pgto").val();
    if(pgto == ""){
        alert('Selecione uma forma de pagamento');
        return false;
    }

    vencimento = $("#vencimento").val();
    if(vencimento == ""){
        alert('Selecione um vencimento');
        return false;
    }

    observacoes = $("#observacoes").val();

    idPi = ativaScriptResposta("class/Ajax.php?funcao=cadastraPI&proposta="+proposta
        +"&data="+data
        +"&pgto="+pgto
        +"&vencimento="+vencimento
        +"&observacoes="+observacoes);
    if(idPi!="false"){
        alert("PI cadastrada com sucesso");
        abrirPagID("class/Ajax.php?funcao=criaPDFPI&idPi="+idPi
            +"&colunas="+colunas.join("|")
            +"&valores="+valores.join("|")
            ,"mostrarPDFPI");
    }else{
        alert("Erro ao cadastrar a PI");
    }
    return true;
}
function selecaoCamposPDF(){
    $("#selecaoCamposPDF").slideToggle("fast");
}
function validaEdicaoPI(idPi){
    var colunas = new Array();
    $("#selectCamposPI input[type='checkbox']").each(function(indice, elemento){
        colunas.splice(indice, 1, elemento.checked ? 1 : 0);
    });

    var valores = new Array();
    $("#selectValoresPI input[type='checkbox']").each(function(indice, elemento){
        valores.splice(indice, 1, elemento.checked ? 1 : 0);
    });
    
    proposta = mygrid.getSelectedRowId();
    if(proposta == null){
        alert('Selecione uma proposta para cadastrar a PI');
        return false;
    }

    data = $("#data").val();
    if(data == ""){
        alert('Insira uma data');
        return false;
    }

    pgto = $("#pgto").val();
    if(pgto == ""){
        alert('Selecione uma forma de pagamento');
        return false;
    }

    vencimento = $("#vencimento").val();
    if(vencimento == ""){
        alert('Selecione um vencimento');
        return false;
    }

    observacoes = $("#observacoes").val();
    responsavel = $("#responsavel").val();

    if(ativaScriptResposta(
        "class/Ajax.php?funcao=editaPI&idPi="+idPi
        +"&proposta="+proposta
        +"&data="+data
        +"&pgto="+pgto
        +"&vencimento="+vencimento
        +"&observacoes="+observacoes
        +"&responsavel="+responsavel)!="false"){
        alert("PI editada com sucesso");
        abrirPagID("class/Ajax.php?funcao=criaPDFPI&idPi="+idPi+"&colunas="+colunas.join("|")
            +"&valores="+valores.join("|"),"mostrarPDFPI");
    }else{
        alert("Erro ao editar a PI");
    }
    return true;
}
function tabelaPOP(){
    de=$("#filtroDe").val();
    ate=$("#filtroAte").val();
    mygrid = new dhtmlXGridObject("tabelaPOP");
    mygrid.setImagePath("js/dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("No,Data Inicio,Data Fim,Cliente,Franquia,Status");
    mygrid.setInitWidths("30,70,70,140,*");
    mygrid.attachHeader("#text_filter,#text_filter,#text_filter,#text_filter,#select_filter,&nbsp;");
    mygrid.setColAlign("center,center,left,left,left,center");
    mygrid.setColTypes("ro,ro,ro,ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("str,str,str,str,str,str");
    mygrid.attachEvent("onRowDblClicked", visualizaInfoPOP);
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=getGridPOP&de="+de+"&ate="+ate);
}
function editarPOP(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione um POP para editar');
    }else{
        window.self.location.href = 'privado/pop/editar/'+mygrid.getSelectedRowId();
    }
}
function finalizaPOP(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione um POP para finalizar');
    }
    else{
        var obs = prompt("Se desejar informe uma observação!", "");
        abrirPagID("class/Ajax.php?funcao=finalizaPOP&idPop="+mygrid.getSelectedRowId()+"&obs="+obs,"respostaEdicaoPOP");
    }
    tabelaPOP();
}
function view(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione um POP para visualizar');
    }
    else{
        carregaPOP(mygrid.getSelectedRowId());
    }
}
function visualizaInfoPOP(){
    if(mygrid.getSelectedRowId() != null){
        abrirPagID("class/Ajax.php?funcao=selecionaInformacoesPOP&idPop="+mygrid.getSelectedRowId(),"gerenciaPOPdireita");
    }else{
        alert("selecione um POP para que a visualização seja possivel");
    }
}
function clonarPOP(){
    if(mygrid.getSelectedRowId() == null){
        alert("Selecione um POP para Clonar");
    }else{
        var idPopClonado = ativaScriptResposta("class/Ajax.php?funcao=clonarPOP&idPOP="+mygrid.getSelectedRowId());

        if(idPopClonado != "erro"){
            alert("POP clonado com sucesso\n\ O POP clonado("+idPopClonado+") pode ser editado normalmente");
            tabelaPOP();
        }else{
            alert("Erro ao edita o POP");
        }
    }
}
function atualizaAuthPOP(){
    minutos = 15;
    document.getElementById("gerenciaPOPdireita").innerHTML = "";
    setInterval("tabelaPOP()",(minutos*60) * 1000);
}
function tabelaEdicaoPOP(idPop){
    mygrid = new dhtmlXGridObject("tabelaEdicaoPOP");
    mygrid.setImagePath("dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader(",Produto,Inserção,Tipo");
    mygrid.setInitWidths("0,270,80,*");
    mygrid.attachHeader("&nbsp;,&nbsp;,&nbsp;,&nbsp;");
    mygrid.setColAlign("left,left,center,center");
    mygrid.setColTypes("ro,ro,ed,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("str,str,str,str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=tabelaEdicaoPOP&idPop="+idPop);
}
function validaFormPOP(){
    if (document.getElementById("periodoDe").value.length==0){
        alert("Preencha o campo \"Data\".");
        return false;
    }
    if (document.getElementById("periodoAte").value.length==0){
        alert("Preencha o campo \"Data\".");
        return false;
    }
    return true;
}
function atualizaPOP(idPop){
    if (validaFormPOP()){
        var dataInicio = document.getElementById("periodoDe").value;
        var dataFim = document.getElementById("periodoAte").value;
        var obs = document.getElementById("obs").value;
        var cliente = $("#cliente").val();
        alert(cliente)
        produtos = new Array();
        
        for (i=1; i<=mygrid.getRowsNum(); i++){
            produtos.push(mygrid.cells(i, 0).getValue() + "|" + mygrid.cells(i, 2).getValue()+"|"+mygrid.cells(i, 3).getValue());
        }

        abrirPagID("class/Ajax.php?funcao=atualizaPOP&idPop="+idPop+"&dataInicio="+dataInicio+"&dataFim="+dataFim+"&obs="+obs+"&cliente="+cliente+"&produto="+(produtos.join(">")),"respostaEdicaoPOP");
    }
}
function tabelaPP(){
    mygrid = new dhtmlXGridObject("tabelaPP");
    mygrid.setImagePath("dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Nº,Data,Cliente,Responsável,Valor VT,Duração VT");
    mygrid.setInitWidths("40,80,*,180,100,100");
    mygrid.attachHeader("#text_filter,#text_filter,#select_filter,#select_filter,&nbsp;,&nbsp;");
    mygrid.setColAlign("left,center,left,left,center,center");
    mygrid.setColTypes("ro,ro,ro,ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("str,str,str,str,str,str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=pegaGridPP&de="+document.getElementById("periodoDe").value+"&ate="+document.getElementById("periodoAte").value);
    //============================================================================================;
    myDataProcessor = new dataProcessor("class/Ajax.php?funcao=atualizaPP");
    myDataProcessor.setTransactionMode("POST", true);
    myDataProcessor.init(mygrid);
}
function editaPP(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione um PP para editar');
    }else{
        window.self.location.href = "privado/pp/editar/"+mygrid.getSelectedRowId();
    }
}
function visualizaPP(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione uma PP para visualizar');
    }else{
        window.self.location.href = 'privado/pp/visualizar/'+mygrid.getSelectedRowId();
    }
}
function deletaPP(){
    if(mygrid.getSelectedRowId() != null){
        if(confirm('Deseja apagar a pp selecionada?')){
            mygrid.deleteSelectedItem();
        }
    }else{
        alert("Selecione uma PP para exclusão");
    }
}
function pegaGridCadastraPP(){
    mygrid = new dhtmlXGridObject("tabelaPPCadastra");
    mygrid.setImagePath("dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Nº,Data,Cliente,Responsável,Total,arquivo");
    mygrid.setInitWidths("40,80,200,180,*,0");
    mygrid.attachHeader("#text_filter,#text_filter,#select_filter,#select_filter,&nbsp;,&nbsp;");
    mygrid.setColAlign("left,center,left,left,left,center");
    mygrid.setColTypes("ro,ro,ro,ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("str,str,str,str,str,str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=pegaGridPICadastroPP&de="+document.getElementById("periodoDe").value+"&ate="+document.getElementById("periodoAte").value);

    $("#tabelaPPCadastra").removeAttr("title");
}
function validaCadastroPP(){
    if (document.getElementById('responsavel').value==""){
        alert("Preencha o campo \"ResponsÃ¡vel\".");
        return false;
    }
    if (document.getElementById('data').value.length==0){
        alert("Preencha o campo \"Data\".");
        return false;
    }
    if (document.getElementById('cliente').value.length==0){
        alert("Preencha o campo \"Cliente\".");
        return false;
    }

    if (document.getElementById("duracaoVT").value.length==0){
        alert("Preencha o campo \"DuraÃ§Ã£o\".");
        return false;
    }
    if (document.getElementById('producaoVT').value.length==0){
        alert("Preencha o campo \"Produção\".");
        return false;
    }
    if (document.getElementById('prazoVT').value.length==0){
        alert("Preencha o campo \"Prazo\".");
        return false;
    }
    return true;
}
function cadastraPP(){
    if (validaCadastroPP()){
        var usuario = document.getElementById("responsavel").value;
        var data = document.getElementById("data").value;
        var agencia = document.getElementById("agencia").value;
        var cliente = document.getElementById("cliente").value;
        var contato = document.getElementById("contato").value;
        var duracao = document.getElementById("duracaoVT").value;
        var producao = document.getElementById("producaoVT").value;
        var prazo = document.getElementById("prazoVT").value;
        var idPi = mygrid.getSelectedRowId();
        var orientacao = $("input[name='orientacao']:checked").val();
        var obs = $("#obs").val();

        abrirPagID("class/Ajax.php?funcao=cadastraPP&data="+data
            +"&cliente="+cliente
            +"&agencia="+agencia
            +"&contato="+contato
            +"&duracao="+duracao
            +"&producao="+producao
            +"&prazo="+prazo
            +"&usuario="+usuario
            +"&idPi="+idPi
            +"&orientacao="+orientacao
            +"&obs="+url_encode(obs)
            ,"respostaCadastroPP");
    }
}
function precoProducaoVT(duracao){
    switch (duracao){
        case '30' :
            return "400,00";
        case '60' :
            return "0,00";
        default :
        case '15' :
            return "300,00";
    }
}
function atualizaPP(idPP){
    if (validaCadastroPP()){
        var usuario = document.getElementById("responsavel").value;
        var data = document.getElementById("data").value;
        var agencia = document.getElementById("agencia").value;
        var cliente = document.getElementById("cliente").value;
        var contato = document.getElementById("contato").value;
        var duracao = document.getElementById("duracaoVT").value;
        var producao = document.getElementById("producaoVT").value;
        var prazo = document.getElementById("prazoVT").value;
        var idPi = mygrid.getSelectedRowId();

        abrirPagID("class/Ajax.php?funcao=atualizaCadastroPP&idPP="+idPP+"&data="+data+"&cliente="+cliente+"&agencia="+agencia+"&contato="+contato+"&duracao="+duracao+"&producao="+producao+"&prazo="+prazo+"&usuario="+usuario+"&idPi="+idPi,"respostaCadastroPP");
    }
}
function confirmaExclusao(link){
    if (confirm('Tem certeza que deseja apagar este arquivo?')) {
        document.location.href = link;
    }
}
function apagaArquivoInfoFile(idMaterial,elem){
    if(confirm("Deseja apagar o arquivo?")){
        resposta = ativaScriptResposta("class/Ajax.php?funcao=apagaArquivoInfoFile&idMaterial="+idMaterial);
        if(resposta=="true"){
            elem.parentNode.parentNode.parentNode.removeChild(elem.parentNode.parentNode)
        }else{
            alert(resposta);
        }
    }
}
function apagaArquivoMaterialComercial(idMaterial,elem){
    if(confirm("Deseja apagar o arquivo?")){
        resposta = ativaScriptResposta("class/Ajax.php?funcao=apagaMaterialComercial&idMaterial="+idMaterial);
        if(resposta=="true"){
            elem.parentNode.parentNode.parentNode.removeChild(elem.parentNode.parentNode)
        }else{
            alert(resposta);
        }
    }
}
function validaCampo(){
    if (document.getElementById('cliente').value.length==0){
        alert("Prencha o campo \"Cliente\".");
        return false;
    }
    if (document.getElementById('descricao').value.length==0){
        alert("Prencha o campo \"Descrição\".");
        return false;
    }
    return true;
}
function validaEnvio(){
    if(validaCampo()){
        $('#arquivo').fileUploadStart();
    }
}
function mostraArquivoInserido(idMaterial){
    form.submit();
}
function validaAprovacaoComercial(idComercial){
    if($("input[name=aprovado]:checked").length==0){
        alert("Selecione \"Aprovado\" ou \"Nao Aprovado\"");
        return false;
    }else{
        abrirPagID("class/Ajax.php?funcao=validaAprovacaoComercial&idComercial="+idComercial+'&aprovado='+$('input[name=aprovado]:checked').val()+'&observacoes='+$('#observacoes').val(),'respostaAprovacaoComercial');
        return true;
    }
}
function excluiArquivoPastaCliente(arquivo,elem){
    if(confirm("Deseja Realmente excluir o arquivo "+arquivo.split("/")[arquivo.split("/").length-1])){
        a = ativaScriptResposta("class/Ajax.php?funcao=excluiArquivoCliente&arquivo="+arquivo);
        if(a=="true"){
            alert("arquivo excluido");

            (elem.parentNode.parentNode.removeChild(elem.parentNode))
        }else{
            alert("Erro ao exlcuir o arquivo");
        }
    }
}
function relatorioAtendimento() {
    mygrid = new dhtmlXGridObject("visualizaRelatorio");
    mygrid.setImagePath("js/dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Nº PI,Data,Franquia, Atendente,Cliente,Período,Total,PDF");
    mygrid.attachHeader("#text_filter,#text_filter,#select_filter,#select_filter,#text_filter,&nbsp;,&nbsp;,&nbsp;");
    mygrid.setInitWidths("80,100,200,100,190,80,100,50");
    mygrid.setColAlign("center,center,left,left,left,left,center,center");
    mygrid.setColTypes("ro,ed,ed,ro,ro,ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("str,str,str,str,str,str,str,str");
    mygrid.attachEvent("onFilterStart",function(a,b){
        //a - array of column indexes
        //b - array of filter values
        mygrid.clearAll();
        mygrid.loadXML("class/Ajax.php?funcao=relatorioAtendimento&dataDe="+$("#dataDe").val()+"&dataAte="+$("#dataAte").val()+"&franquia="+$("#franquia").val()+"&responsavel="+b[2]+"&opcao="+$("input[name=ppcombo]:checked").val(), function(grid){
            calculaRelatorioAtendimento(mygrid);
        });
        return false; // block default
    });
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=relatorioAtendimento&dataDe="+$("#dataDe").val()+"&dataAte="+$("#dataAte").val()+"&franquia="+$("#franquia").val()+"&responsavel="+$("#responsavel").val()+"&opcao="+$("input[name=ppcombo]:checked").val(), function(grid){
        calculaRelatorioAtendimento(mygrid);
    });
    mygrid.enableSmartRendering(true);
}
function calculaRelatorioAtendimento(grid_obj){
    var total = 0;
    var celula = 0;
    var i = 1;
    for (i=1; i <= grid_obj.getRowsNum(); i++){
        if(grid_obj.cells(i, 6).getValue() != "Bonificado"){
            celula = grid_obj.cells(i, 6).getValue();
            celula = moeda2float(celula);
            total = total + celula;
        }
    }
    $("#total").val(float2moeda(total));
}
function criaPDFAtendimento(){
    window.open("class/Ajax.php?funcao=criaRelatorioPDFAtendimento&dataDe="+$("#dataDe").val()+"&dataAte="+$("#dataAte").val()+"&responsavel="+$("#responsavel").val()+"&franquia="+$("#franquia").val()+"&opcao="+$("input[name=ppcombo]:checked").val(),'PDF Atendimento','width=10, height=10, top=100, left=100, scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no');
}
function criaExcelAtendimento(){
    window.open("class/Ajax.php?funcao=criaRelatorioExcelAtendimento&dataDe="+$("#dataDe").val()+"&dataAte="+$("#dataAte").val()+"&responsavel="+$("#responsavel").val()+"&franquia="+$("#franquia").val()+"&opcao="+$("input[name=ppcombo]:checked").val(),'PDF Atendimento','width=10, height=10, top=100, left=100, scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no');
}
function criaPDFVisita(){
    switch($("#tipo").val()){
        case 'visitas' :
            window.open("class/Ajax.php?funcao=criaPDFRelatorioVisita&dataDe="+$("#dataDe").val()+"&dataAte="+$("#dataAte").val(),'PDF Visita','width=10, height=10, top=100, left=100, scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no');
            break;
        default:
        case 'dados' :
            window.open("class/Ajax.php?funcao=criaPDFRelatorioCliente",'PDF Visita','width=10, height=10, top=100, left=100, scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no');
            break;
    }
}
function verificaTipoRelatorioVisita(tipo){
    switch(tipo){
        case 'visitas' :
            relatorioVisitasSituacao();
            break;
        default:
        case 'dados' :
            relatorioVisitasDados();
            break;
    }
}
function relatorioVisitasDados(){
    var responsavel = $("#responsavel").val();
    
    
    mygrid = new dhtmlXGridObject("visualizaRelatorio");
    mygrid.setImagePath("dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Razão Social,Nome Fantasia,CNPJ,Inscrição Estadual,Endereço,Complemento,CEP,Bairro,Cidade,Estado,Telefone,E-mail,Site,Responsável");
    mygrid.attachHeader("#text_filter,#text_filter,#text_filter,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;");
    mygrid.setInitWidths("150,150,150,150,200,150,100,150,200,50,100,200,200,200");
    mygrid.setColAlign("left,left,left,left,left,left,left,left,left,left,left,left,left,left");
    mygrid.setColTypes("ro,ro,ro,ro,ro,ro,ro,ro,ro,ro,ro,ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("str,str,str,str,str,str,str,str,str,str,str,str,str,str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=pegaGridRelatorioCliente&responsavel="+responsavel);
    mygrid.enableSmartRendering(true);
}
function relatorioVisitasSituacao(){
    var responsavel = $("#responsavel").val();
    var dataDe = $("#dataDe").val();
    var dataAte = $("#dataAte").val();

    mygrid = new dhtmlXGridObject("visualizaRelatorio");
    mygrid.setImagePath("dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Razão Social,Nome Fantasia,Visita,Prox. Visita,Descrição,Responsável");
    mygrid.attachHeader("#text_filter,#text_filter,#text_filter,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;");
    mygrid.setInitWidths("150,150,150,150,200,150,100,150,200,50,100,200,200,200");
    mygrid.setColAlign("left,left,left,left,left,left,left,left,left,left,left,left,left,left");
    mygrid.setColTypes("ro,ro,ro,ro,ro,ro,ro,ro,ro,ro,ro,ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("str,str,str,str,str,str,str,str,str,str,str,str,str,str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=pegaGridRelatorioSituacaoCliente&responsavel="+responsavel+"&dataDe="+dataDe+"&dataAte="+dataAte);
    mygrid.enableSmartRendering(true);
}
function selecionaCidades(estado){
    if($(":checkbox[name|="+estado+"]:eq(0)").attr("checked")){
        $(":checkbox[name|="+estado+"]").removeAttr("checked");
    }else{
        $(":checkbox[name|="+estado+"]").attr("checked","checked");
    }
}
function geraRelatorioPonto(){
    switch(parseInt($('input[name=criterio]:radio:checked').val())){
        case (1) :
            selecionaTodasCidades();
            break;
        case (2) :
            selecionaCliente();
            break;
        default :
            alert("Selecione \"cidades\" ou \"clientes\" nas opções acima");
    }
}
function selecionaTodasCidades(){
    var categoria = $("#categoria").val();
    var estado = $("#estado").val();
    var cidade = $("#cidade").val();

    var classeDE = $("#classeDE").val();
    var classeATE = $("#classeATE").val();

    var publicoDE = $("#publicoDE").val();
    var publicoATE = $("#publicoATE").val();

    var telaDE = $("#telaDE").val();
    var telaATE = $("#telaATE").val();

    var cliente = $("#listaCliente").val() == "undefined" ? "56" : $("#listaCliente").val();
    
    s = new Array();
    $("input:checkbox:checked").each(function(){
        s.push($(this).val());
    });
    //"class/Ajax.php?funcao=tabelaGridPontoXML&id="+categoria+"&estado="+estado+"&cidade="+cidade+"&classeDE="+classeDE+"&classeATE="+classeATE+"&publicoDE="+publicoDE+"&publicoATE="+publicoATE+"&telaDE="+telaDE+"&telaATE="+telaATE+"&idCliente="+cliente
    window.open("class/Ajax.php?funcao=criaRelatorioPDFPonto&criterio=cidades&id="+s.toString()+"&estado="+estado+"&cidade="+cidade+"&classeDE="+classeDE+"&classeATE="+classeATE+"&publicoDE="+publicoDE+"&publicoATE="+publicoATE+"&telaDE="+telaDE+"&telaATE="+telaATE+"&idCliente="+cliente,
        "Relatorio de Pontos",
        "height=10, width=10, top=100, left=100, scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no");
}
function selecionaCliente(){
    window.open("class/Ajax.php?funcao=criaRelatorioPDFPonto&criterio=cliente&id="+$("#listaCliente").val(),"Relatorio de Pontos", "height=10, width=10, top=100, left=100, scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no");
}
function buildsubmenus_horizontal(){
    var menuids=["treemenu1"] //Enter id(s) of SuckerTree UL menus, separated by commas
    if(document.getElementById(menuids[0])!=null){
        for (var i=0; i<menuids.length; i++){
            var ultags=document.getElementById(menuids[i]).getElementsByTagName("ul")
            for (var t=0; t<ultags.length; t++){
                if (ultags[t].parentNode.parentNode.id==menuids[i]){ //if this is a first level submenu
                    ultags[t].style.top=ultags[t].parentNode.offsetHeight+"px" //dynamically position first level submenus to be height of main menu item
                //ultags[t].parentNode.getElementsByTagName("a")[0].className="mainfoldericon"
                }
                else{ //else if this is a sub level menu (ul)
                    ultags[t].style.left=ultags[t-1].getElementsByTagName("a")[0].offsetWidth+"px" //position menu to the right of menu item that activated it
                //ultags[t].parentNode.getElementsByTagName("a")[0].className="subfoldericon"
                }
                ultags[t].parentNode.onmouseover=function(){
                    this.getElementsByTagName("ul")[0].style.visibility="visible"
                }
                ultags[t].parentNode.onmouseout=function(){
                    this.getElementsByTagName("ul")[0].style.visibility="hidden"
                }
            }
        }
    }
}
function pegaGridCadastraPOP(idPop){
    var de = $("#dataDeFiltroPOP").val();
    var ate = $("#dataAteFiltroPOP").val();

    mygrid = new dhtmlXGridObject("tabelaCadastraPOP");
    mygrid.setImagePath("js/dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Nº,Data PI,Cliente,Responsável,idProposta");
    mygrid.setInitWidths("50,80,300,*,0");
    mygrid.attachHeader("#text_filter,#text_filter,#select_filter,#select_filter,&nbsp;");
    //mygrid.setColAlign("left,left,left,left");
    mygrid.setColTypes("ro,ro,ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("str,str,str,str,str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=tabelaCadastroPOPXML&de="+de+"&ate="+ate,function(){
        if(typeOf(idPop) != "undefined"){
            mygrid.selectRowById(idPop);
        }
    });
    mygrid.setUpdateMode("off");
}
function validaCadastroPOP(){
    if($("#dataDe").val()==""){
        alert("Selecione um periodo 'De'");
        return false;
    }

    if($("#dataAte").val()==""){
        alert("Selecione um periodo 'Ate'");
        return false;
    }
    return true;
}
function cadastraPOP(idPop){
    var tipoEvento = $("input[name='tipoEvento']:checked").val();
    var tipoPOP = $("input[name='tipoPop']:checked").val();
    var idSolicitantePI = "";
    var idPontos = "";
    var arquivos = "";
    var subPonto = new Array();

    if(tipoPOP == '0'){//se for POP normal, captura-se o id da PI
        if(mygrid.getSelectedRowId() == null){
            alert("Você deve selecinar uma PI");
            return false;
        }else{
            idSolicitantePI = mygrid.getSelectedRowId();
        }
    }else{//caso seja POP avulso, captura-se o XML dos pontos selecionados
        idSolicitantePI = $("#idCliente").val();
        idPontos = "<pontos>";
        popAvulso.forEachRow(function(id){
            //se a linha esta selecionada, captura-se o id do ponto
            if(popAvulso.cells(id, 0).getValue() == '1'){
                //captura os sub-pontos do POP
                $(".ponto"+popAvulso.cells(id, 5).getValue()+" [type='checkbox']:checked").each(function(indice, elemento){
                    idSubGrupo = $(elemento).attr('class').split("_");
                    subPonto.splice(indice, 1, idSubGrupo[1]);
                });

                idPontos += "<ponto>";
                idPontos += "<idPonto>"+popAvulso.cells(id, 5).getValue()+"</idPonto>";
                idPontos += "<insercao>"+popAvulso.cells(id, 4).getValue()+"</insercao>";
                idPontos += "<subPonto>"+subPonto+"</subPonto>";
                idPontos += "</ponto>";
                subPonto = new Array();
            }
        });
        idPontos += "</pontos>";

        //verifica se nenhum ponto foi selecionado
        if($(idPontos).find("ponto").length == 0){
            alert("Você deve selecionar pelo menos um ponto para cadastar POP Avulso");
            return false;
        }
    }
    arquivos = "<arquivos>";
    //captura os arquivos inseridos em outro XML
    $("#listagemArquivos li").each(function(indice,elemento){
        arquivos += "<arquivo>";
        arquivos += "<caminho>"+$(elemento).find("input:eq(0)").val()+"</caminho>";
        arquivos += "<nome>"+$(elemento).find("input:eq(1)").val()+"</nome>";
        arquivos += "</arquivo>";
    });
    arquivos += "</arquivos>";

    if(validaCadastroPOP()){
        //envia as informações para o servidor
        //vai cadastrar novo POP
        abrirPagPostID(
            "class/Ajax.php",
            "respostaCadastraPOP",
            "funcao=cadastraPOP&dataDe="+$("#dataDe").val()+
            
            "&dataAte="+$("#dataAte").val()+
            "&obs="+$("#observacoes").val()+
            "&idPontos="+idPontos+
            "&idSolicitantePI="+idSolicitantePI+
            "&tipoEvento="+tipoEvento+
            "&tipoPOP="+tipoPOP+
            "&arquivos="+url_encode(arquivos)+
            "&idPop="+idPop
            );
    }else{
        return false;
    }
    return true;
}
function criaRelatorioExcel(idPop){
    window.open("class/Ajax.php?funcao=selecionaInformacoesPOPExcel&idPop="+idPop,
        "Relatorio Newsletter",
        "width=10, height=10, top=10, left=10, scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no");
}
function incrementaEnvioDeArquivoCadastraPOP(){
    $("#listagemArquivos").append("<li>\n\
                                    <span>Caminho:</span><input type=\"text\" /><br />\n\
                                    <span>Arquivo:</span><input type=\"text\" />\n\
                                    <a href=\"javascript:void(0);\" onclick=\"removeEnvioDeArquivoCadastraPOP(this)\">X</a>\n\
                                </li>");
}
function removeEnvioDeArquivoCadastraPOP(link){
    $(link).parent().remove();
}
function pegaGridCadastraPopAvulso(idCliente, idPop){
    popAvulso = new dhtmlXGridObject("tabelaCadastraPOP");
    popAvulso.setImagePath("js/dhtmlxgrid/codebase/imgs/");
    popAvulso.setHeader(",Info.,Produto,Categoria,Inserção,idProduto,Cidade,nomeFiltro");
    popAvulso.setInitWidths("40,30,*,120,25,0, 100,0");
    popAvulso.attachHeader("<input type='button' value='<' onclick='busca.anterior();' /><input type='text' id='procuraString' onkeyup='busca.verificaEnter(event);' /><input type='button' value='>' onclick='busca.proximo();' />,#cspan,#cspan,#select_filter,&nbsp;,&nbsp;,#select_filter,&nbsp;");
    //popAvulso.setColAlign("left,left,left,left");
    popAvulso.setColTypes("ch,ro,ro,ro,ed,ro,ro,ro");
    popAvulso.setSkin("dhx_skyblue");
    popAvulso.setColSorting("na,str,str,str,str,str,str,str");
    popAvulso.groupBy(0);
    popAvulso.customGroupFormat=function(name,count){
        if (name == 0){
            return "Pontos disponíveis: "+count;
        }
        if (name == 1){
            return "Pontos selecionados: "+count;
        }
    }
    popAvulso.init();
    popAvulso.loadXML("class/Ajax.php?funcao=pegaGridCadastraPopAvulsoXML&idCliente="+idCliente+"&idPop="+idPop,function() {
        popAvulso.groupBy(0);
    });

    busca = new buscaPontoProposta(popAvulso,"procuraString",7);
    busca.setIncluirSelecionados(false);

    popAvulso.setUpdateMode("off");
}
function validaCadastroPOPAvulso(){
    if($("#dataDe").val()==""){
        alert("Selecione um periodo 'De'");
        return false;
    }

    if($("#dataAte").val()==""){
        alert("Selecione um periodo 'Ate'");
        return false;
    }
    if($("#cliente").val()==""){
        alert("Selecione um cliente para poder prosseguir");
        return false;
    }
    return true;
}
function cadastraPOPAvulso(){
    produtos = new Array();
    if(validaCadastroPOPAvulso()){
        for (i=1; i<=mygrid.getRowsNum(); i++){
            if(mygrid.cells(i, 0).getValue()==1){
                produtos.push(
                    mygrid.cells(i, 1).getValue()+">"+
                    mygrid.cells(i, 2).getValue()+">"+
                    mygrid.cells(i, 3).getValue()+">"+
                    mygrid.cells(i, 4).getValue());
            }
        }
        prod = produtos.join("|");
        abrirPagPostID("class/Ajax.php","respostaCadastraPOP","funcao=cadastraPOPAvulso&dataDe="+$("#dataDe").val()+"&dataAte="+$("#dataAte").val()+"&obs="+$("#observacoes").val()+"&duracao="+$("#duracaovt").val()+"&cliente="+$("#cliente").val()+"&produtos="+prod);
    }
}
function envialoginEsqueciMinhaSenha(){
    abrirPagID("class/Ajax.php?funcao=formeceNovaSenha&email="+$("#email").val(),"respostaEsqueciMinhaSenha");
}
function relatorioNewsletter(){
    mygrid = new dhtmlXGridObject("tabelaNewsletter");
    mygrid.setImagePath("js/dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Nº,Email, Tipo,tipoCod");
    mygrid.attachHeader("&nbsp;,#text_filter,&nbsp;,&nbsp;");
    mygrid.setInitWidths("70,*,250,0");
    mygrid.setColTypes("ro,ro,co,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("int,str,str,int");
    mygrid.attachEvent("onEditCell",function(stage, rowId, colId){
        //se confirma o estagio
        if(stage == 2){
            //se modifica o tipo de cliente
            if(colId == 2){
                var novoTipo = mygrid.cells(rowId, 2).getValue();
                //valida no banco o novo tipo para o email tal
                ativaScript("class/Ajax.php?funcao=modificaTipoClienteNewsletter&novoTipo="+novoTipo+"&idNewsletter="+rowId);
            }
        }
        return true;
    });
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=selecionaNewsletter",function(){
        mygrid.forEachRow(function(id){
            mygrid.cells(id,2).setValue(mygrid.cells(id,3).getValue());
        });
    });

    myDataProcessor = new dataProcessor("class/Ajax.php?funcao=getNewsletterAtualiza");
    myDataProcessor.setTransactionMode("POST", true);
    myDataProcessor.init(mygrid);
}
function baixaComercialRecebido(nomeArquivo){
    var loc = isExplorer() ? "../" : "";
    window.open(loc+'class/Ajax.php?funcao=baixaArquivoPastaMaterialComercial&arquivo='+nomeArquivo,'_blank', 'width=10, height=10, top=10, left=10, scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no');
}
function adicionarEmailNewsLetter(){
    email = window.prompt("Insira o nome do novo contato");
    if(email){
        if(ativaScriptResposta("class/Ajax.php?funcao=cadastraNewsletter&email="+email)=="ok"){
            relatorioNewsletter();
        }
    }
    
}
function removeEmailNewsLetter(){
    if(mygrid.getSelectedRowId() != null){
        if(confirm('Deseja o email selecionado?')){
            mygrid.deleteSelectedItem();
        }
    }else{
        alert("Selecione um email para exclusão");
    }
}
function baixarRelatorioNewsletter(){
    window.open('class/Ajax.php?funcao=criaRelatorioNewsletter', "Relatorio Newsletter",'width=10, height=10, top=10, left=10, scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no');
}
function controlaCampos(){
    if (document.getElementById("todos").checked){
        document.getElementById("categoria").disabled = true;
        document.getElementById("categoria").style.backgroundColor = "#E0E0E0";
        document.getElementById("estado").disabled = true;
        document.getElementById("estado").style.backgroundColor = "#E0E0E0";
        document.getElementById("cidade").disabled = true;
        document.getElementById("cidade").style.backgroundColor = "#E0E0E0";
        document.getElementById("classeDE").disabled = true;
        document.getElementById("classeDE").style.backgroundColor = "#E0E0E0";
        document.getElementById("classeATE").disabled = true;
        document.getElementById("classeATE").style.backgroundColor = "#E0E0E0";
        document.getElementById("publicoDE").disabled = true;
        document.getElementById("publicoDE").style.backgroundColor = "#E0E0E0";
        document.getElementById("publicoATE").disabled = true;
        document.getElementById("publicoATE").style.backgroundColor = "#E0E0E0";
        document.getElementById("telaDE").disabled = true;
        document.getElementById("telaDE").style.backgroundColor = "#E0E0E0";
        document.getElementById("telaATE").disabled = true;
        document.getElementById("telaATE").style.backgroundColor = "#E0E0E0";
    }
    else{
        document.getElementById("categoria").disabled = false;
        document.getElementById("categoria").style.backgroundColor = "#FFFFFF";
        document.getElementById("estado").disabled = false;
        document.getElementById("estado").style.backgroundColor = "#FFFFFF";
        document.getElementById("cidade").disabled = false;
        document.getElementById("cidade").style.backgroundColor = "#FFFFFF";
        document.getElementById("classeDE").disabled = false;
        document.getElementById("classeDE").style.backgroundColor = "#FFFFFF";
        document.getElementById("classeATE").disabled = false;
        document.getElementById("classeATE").style.backgroundColor = "#FFFFFF";
        document.getElementById("publicoDE").disabled = false;
        document.getElementById("publicoDE").style.backgroundColor = "#FFFFFF";
        document.getElementById("publicoATE").disabled = false;
        document.getElementById("publicoATE").style.backgroundColor = "#FFFFFF";
        document.getElementById("telaDE").disabled = false;
        document.getElementById("telaDE").style.backgroundColor = "#FFFFFF";
        document.getElementById("telaATE").disabled = false;
        document.getElementById("telaATE").style.backgroundColor = "#FFFFFF";
    }
}
function RedeInfoTVFiltroPonto(){
    var categoria = $("#categoria").val();
    var estado = $("#estado").val();
    var cidade = $("#cidade").val();

    var classeDE = $("#classeDE").val();
    var classeATE = $("#classeATE").val();

    var publicoDE = $("#publicoDE").val();
    var publicoATE = $("#publicoATE").val();

    var telaDE = $("#telaDE").val();
    var telaATE = $("#telaATE").val();

    if (document.getElementById("todos").checked){
        abrirPagID("class/Ajax.php?funcao=redeinfoTVpontoatuacaoFiltro", "RedeinfoTVresult");
    }else{
        abrirPagID("class/Ajax.php?funcao=redeinfoTVpontoatuacaoFiltro&id="+categoria+"&estado="+estado+"&cidade="+cidade+"&classeDE="+classeDE+"&classeATE="+classeATE+"&publicoDE="+publicoDE+"&publicoATE="+publicoATE+"&telaDE="+telaDE+"&telaATE="+telaATE, "RedeinfoTVresult");
    }
}
function tabelaGridPonto(){
    var categoria = $("#categoria").val();
    var estado = $("#estado").val();
    var cidade = $("#cidade").val();

    var classeDE = $("#classeDE").val();
    var classeATE = $("#classeATE").val();

    var publicoDE = $("#publicoDE").val();
    var publicoATE = $("#publicoATE").val();

    var telaDE = $("#telaDE").val();
    var telaATE = $("#telaATE").val();

    var cliente = $("#listaCliente").val() == "undefined" ? "56" : $("#listaCliente").val();

    mygrid = new dhtmlXGridObject("tabelaGridPonto");
    mygrid.setImagePath("js/dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Id,Ponto,Pes/Dia,Nº TV,Cidade");
    mygrid.attachHeader("&nbsp;,#text_filter,&nbsp;,&nbsp;,&nbsp;");
    mygrid.setInitWidths("30,*,80,80,150");
    mygrid.setColTypes("ro,ro,ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("int,str,int,int,str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=tabelaGridPontoXML&id="+categoria+"&estado="+estado+"&cidade="+cidade+"&classeDE="+classeDE+"&classeATE="+classeATE+"&publicoDE="+publicoDE+"&publicoATE="+publicoATE+"&telaDE="+telaDE+"&telaATE="+telaATE+"&idCliente="+cliente,function(){
        if(mygrid.getRowsNum()==0){
            $("#icoPDF").hide();
        }else{
            $("#icoPDF").show();
        }
    });
}
function iniciaTinyMaceAdicionarNewsletter(){
    tinyMCE.init({
        // General options
        mode : "exact",
        elements : "newsletterConteudo",
        theme : "advanced",
        plugins : "pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,wordcount,advlist,autosave",

        // Theme options
        theme_advanced_buttons1 : "save,newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,styleselect,formatselect,fontselect,fontsizeselect",
        theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,insertdate,inserttime,preview,|,forecolor,backcolor",
        theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iespell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",
        theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,pagebreak,restoredraft",
        theme_advanced_toolbar_location : "top",
        theme_advanced_toolbar_align : "left",
        theme_advanced_statusbar_location : "bottom",
        theme_advanced_resizing : true,

        // Example content CSS (should be your site CSS)
        //content_css : "css/content.css",

        // Drop lists for link/image/media/template dialogs
        template_external_list_url : "lists/template_list.js",
        external_link_list_url : "lists/link_list.js",
        external_image_list_url : "lists/image_list.js",
        media_external_list_url : "lists/media_list.js",

        // Style formats
        style_formats : [
        {
            title : 'Bold text',
            inline : 'b'
        },

        {
            title : 'Red text',
            inline : 'span',
            styles : {
                color : '#ff0000'
            }
        },

        {
            title : 'Red header',
            block : 'h1',
            styles : {
                color : '#ff0000'
            }
        },

        {
            title : 'Example 1',
            inline : 'span',
            classes : 'example1'
        },

        {
            title : 'Example 2',
            inline : 'span',
            classes : 'example2'
        },

        {
            title : 'Table styles'
        },

        {
            title : 'Table row 1',
            selector : 'tr',
            classes : 'tablerow1'
        }
        ],

        // Replace values for the template plugin
        template_replace_values : {
            username : "Some User",
            staffid : "991234"
        }
    });
}
function enviaNewsletter(){
    tinyMCE.triggerSave();
    var conteudo = url_encode($('#newsletterConteudo').val());
    var imagem = $('#nomeArquivo').val();
    var linkNewsletter = $("#linkNewsletter").val();
    $(".thickbox").attr('href','class/Ajax.php?funcao=montaNewsletter&height=500&width=750&texto='+conteudo+'&tituloPrincipal='+$('#tituloNewsletter').val()+"&imagem="+imagem+"&linkNewsletter="+linkNewsletter);
}
function enviaEmailTesteNewsletter(){
    tinyMCE.triggerSave();
    var conteudo = url_encode($('#newsletterConteudo').val());
    var destinatarioNewsletter = $("#destinatarioNewsletter").val();
    var assuntoNewsletter = $("#assuntoNewsletter").val();
    var tituloNewsletter = $("#tituloNewsletter").val();
    var linkNewsletter = $("#linkNewsletter").val();
    var numeroEnvioNewsletter = $("#numeroEnvioNewsletter").val();
    var imagem = $('#nomeArquivo').val();

    $(".thickbox").attr("href","class/Ajax.php?funcao=enviaEmailTesteNewsletter&height=500&width=750&texto="+conteudo+"&tituloPrincipal="+$('#tituloNewsletter').val()+"&imagem="+imagem+"&linkNewsletter="+linkNewsletter+"&tituloNewsletter="+tituloNewsletter+"&numeroEnvioNewsletter="+numeroEnvioNewsletter+"&assuntoNewsletter="+assuntoNewsletter+"&destinatarioNewsletter="+destinatarioNewsletter);

}
function zerarEmailsNewsletter(){
    if(confirm("Tem certeza que você deseja setar todos os contatos do Newsletter como 'Não enviado?'")){
        abrirPagID("class/Ajax.php?funcao=zerarEmailsNewsletter","newsLetterColuna2");
    }
}
function validaEnvioNewsletter(){
    if($("#destinatarioNewsletter").val()==""){
        alert("Preencha o campo 'Destinatário'");
        $("#destinatarioNewsletter").focus();
        return false;
    }

    if($("#assuntoNewsletter").val()==""){
        alert("Preencha o campo 'Assunto'");
        $("#assuntoNewsletter").focus();
        return false;
    }

    if($("#tituloNewsletter").val()==""){
        alert("Preencha o campo 'Titulo'");
        $("#tituloNewsletter").focus();
        return false;
    }

    if($("#linkNewsletter").val()==""){
        alert("Preencha o campo 'Link Principal'");
        $("#linkNewsletter").focus();
        return false;
    }

    if($("#numeroEnvioNewsletter").val()==""){
        alert("Preencha o campo 'Quantidade de Envio'");
        $("#numeroEnvioNewsletter").focus();
        return false;
    }

    tinyMCE.triggerSave();
    var conteudo = url_encode($('#newsletterConteudo').val());
    var destinatarioNewsletter = $("#destinatarioNewsletter").val();
    var assuntoNewsletter = $("#assuntoNewsletter").val();
    var tituloNewsletter = $("#tituloNewsletter").val();
    var linkNewsletter = $("#linkNewsletter").val();
    var numeroEnvioNewsletter = $("#numeroEnvioNewsletter").val();
    var imagem = $('#nomeArquivo').val();
    if(confirm("Tem certeza que deseja finalizar e enviar o Newsletter?")){
        $(".thickbox").attr("href","class/Ajax.php?funcao=enviarNewsLetter&height=500&width=750&texto="+conteudo+"&tituloPrincipal="+$('#tituloNewsletter').val()+"&imagem="+imagem+"&linkNewsletter="+linkNewsletter+"&tituloNewsletter="+tituloNewsletter+"&numeroEnvioNewsletter="+numeroEnvioNewsletter+"&assuntoNewsletter="+assuntoNewsletter+"&destinatarioNewsletter="+destinatarioNewsletter);
    }
    return true;
}
function iniciaTinyMaceGerConteudo(textArea){
    tinyMCE.init({
        // General options
        mode : "exact",
        elements : textArea,
        theme : "advanced",
        plugins : "pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,wordcount,advlist,autosave",

        // Theme options
        theme_advanced_buttons1 : "save,newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,styleselect,formatselect,fontselect,fontsizeselect",
        theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,insertdate,inserttime,preview,|,forecolor,backcolor",
        theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iespell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",
        theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,pagebreak,restoredraft",
        theme_advanced_toolbar_location : "top",
        theme_advanced_toolbar_align : "left",
        theme_advanced_statusbar_location : "bottom",
        theme_advanced_resizing : false,

        // Example content CSS (should be your site CSS)
        //content_css : "css/content.css",

        // Drop lists for link/image/media/template dialogs
        template_external_list_url : "lists/template_list.js",
        external_link_list_url : "lists/link_list.js",
        external_image_list_url : "lists/image_list.js",
        media_external_list_url : "lists/media_list.js",

        // Style formats
        style_formats : [
        {
            title : 'Bold text',
            inline : 'b'
        },

        {
            title : 'Red text',
            inline : 'span',
            styles : {
                color : '#ff0000'
            }
        },

        {
            title : 'Red header',
            block : 'h1',
            styles : {
                color : '#ff0000'
            }
        },

        {
            title : 'Example 1',
            inline : 'span',
            classes : 'example1'
        },

        {
            title : 'Example 2',
            inline : 'span',
            classes : 'example2'
        },

        {
            title : 'Table styles'
        },

        {
            title : 'Table row 1',
            selector : 'tr',
            classes : 'tablerow1'
        }
        ],

        // Replace values for the template plugin
        template_replace_values : {
            username : "Some User",
            staffid : "991234"
        }
    });
}
function atualizaConteudoEmpresa(){
    //atualzia o conteudo do campo de texto
    tinyMCE.triggerSave();

    //captura os valores
    var titulo = $("#tituloPagina").val();
    var subTitulo = $("#subTituloPagina").val();
    var artigo = url_encode($("#artigoGerConteudoEmpresa").val());
    var linkYoutube = converteFormatosYoutube($("#linkYoutube").val());

    //envia as informações para a pagina server-side
    abrirPagPostID("class/Ajax.php", "respostaConteudo", "funcao=atualizaConteudoEmpresa&titulo="+titulo+"&subTitulo="+subTitulo+"&linkYoutube="+linkYoutube+"&artigo="+artigo);
}
function trocaVideo(video,idIframe){
    $("#"+idIframe).attr("src",converteFormatosYoutube(video));
}
function limpaVideoGerConteudoEmpresa(video){
    $("#srcVideoConteudo").attr("src",converteFormatosYoutube(video));
}
function converteFormatosYoutube(video){
    return "http://www.youtube.com/embed/"+pegaIDYoutube(video);
}
function pegaIDYoutube(video){
    return video.slice(video.indexOf("v=")+2,video.indexOf("&", video.indexOf("v=")+2)==-1 ? video.length : video.indexOf("&"));
}
function validaCadastroParceiroConteudo(){
    if($("#nomeParceiro").val()==""){
        $("#nomeParceiro").focus()
        alert("Preencha o campo 'Nome'");
        return false;
    }

    if($("#siteParceiro").val()==""){
        $("#siteParceiro").focus()
        alert("Preencha o campo 'Site'");
        return false;
    }

    if($("#ordemParceiro").val()==""){
        $("#ordemParceiro").focus()
        alert("Preencha o campo 'Ordem'");
        return false;
    }

    $("#arquivoParceiro").fileUploadStart();
    return true;
}
function cadastroParceiroConteudo (){
    var ok = ativaScriptResposta("class/Ajax.php?funcao=cadastraParceiroConteudo&nome="+$("#nomeParceiro").val()+"&site="+$("#siteParceiro").val()+"&ordem="+$("#ordemParceiro").val()+"&nomeArquivo="+$("#nomeArquivo").val());
    if(validaCadastroParceiroConteudo() && ok){
        $("#tabelaParceiroConteudo").append("<tr id=\""+ok+"\"><td><img onclick=\"confirmaExclusaoParceiroConteudo(this);\" style=\"width:32px;height:32px;cursor:pointer;\" src=\"imagens/conteudo/icones_opcoes/fechar.png\"></td><td>"+$("#nomeParceiro").val()+"</td><td><img style=\"width:60px;height:60px;\" src=\"imagens/conteudo/parceiros_conteudo/"+formataNomeDocumento($("#nomeArquivo").val())+"\"></td><td>"+$("#siteParceiro").val()+"</td><td>"+$("#ordemParceiro").val()+"</td></tr>");
    }
}
function confirmaExclusaoParceiroConteudo(parceiroId){
    if(window.confirm("Deseja excluir o parceiro de conteudo '"+$(parceiroId).parent().next().html()+"'?")){
        ativaScript("class/Ajax.php?funcao=excluirParceiroConteudo&idParceiro="+$(parceiroId).parent().parent().attr("id"));
        $(parceiroId).parent().parent().remove();
    }
}
function insereLinhaTabelaParceiroConteudo(ok){
    $("#tabelaParceiroConteudo").append("<tr><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td></tr>");
}
function atualizaConteudoMidia(){
    //atualzia o conteudo do campo de texto
    tinyMCE.triggerSave();

    //captura os valores
    var titulo = $("#tituloPagina").val();
    var subTitulo = $("#subTituloPagina").val();
    var artigo = url_encode($("#artigoGerConteudoMidia").val());

    //envia as informações para a pagina server-side
    abrirPagPostID("class/Ajax.php", "respostaConteudo", "funcao=atualizaConteudoMidia&titulo="+titulo+"&subTitulo="+subTitulo+"&artigo="+artigo);
}
function cadastroAnunciante(){
    if($("#nomeAnunciante").val()==""){
        $("#nomeAnunciante").focus()
        alert("Preencha o campo 'Nome'");
        return false;
    }

    var ok = ativaScriptResposta("class/Ajax.php?funcao=cadastraAnunciante&nome="+$("#nomeAnunciante").val()+"&nomeArquivo="+$("#nomeArquivoAnunciante").val());
    if(ok){
        $("#arquivoAnunciante").fileUploadStart();
        $("#tabelaAnunciante").append("<tr id=\""+ok+"\"><td><img onclick=\"confirmaExclusaoAnunciante(this);\" style=\"width:32px;height:32px;cursor:pointer;\" src=\"imagens/conteudo/icones_opcoes/fechar.png\"></td><td>"+$("#nomeParceiro").val()+"</td><td><img style=\"width:60px;height:60px;\" src=\"imagens/conteudo/anunciantes/"+formataNomeDocumento($("#nomeArquivo").val())+"\"></td></tr>");
    }
    return true;
}
function confirmaExclusaoAnunciante(anuncianteId){
    if(window.confirm("Deseja excluir o anunciante '"+$(anuncianteId).parent().next().html()+"'?")){
        ativaScript("class/Ajax.php?funcao=excluirAnunciante&idAnunciante="+$(anuncianteId).parent().parent().attr("id"));
        $(anuncianteId).parent().parent().remove();
    }
}
function insereInfoEspecial(texto,textarea){
    //    tinyMCE.triggerSave();
    //    var content = $("#"+textarea).val();
    //    alert(content);
    //    $("#"+textarea).val("dasdasd");
    //    tinyMCE.triggerSave();
    //tinyMCE.activeEditor.dom.setHTML(tinyMCE.activeEditor.dom.select('p'), 'some inner html');
    //alert($(tinyMCE.activeEditor.dom.select('p')).html())
    var el = tinyMCE.activeEditor.dom.create('span', null, texto);
    tinyMCE.activeEditor.selection.setNode(el);

    //Pega a textarea
    var textarea = document.getElementById(textarea);

    //Texto a ser inserido
    //var texto = document.getElementById("txtValor").value;

    //inicio da seleção
    var sel_start = textarea.selectionStart;

    //final da seleção
    var sel_end = textarea.selectionEnd;

    //tratamento para Mozilla
    if (!isNaN(textarea.selectionStart)){
        var sel_start = textarea.selectionStart;
        var sel_end = textarea.selectionEnd;

        mozWrap(textarea, texto, '')
        textarea.selectionStart = sel_start + texto.length;
        textarea.selectionEnd = sel_end + texto.length;
    }

    else if (textarea.createTextRange && textarea.caretPos){
        if (baseHeight != textarea.caretPos.boundingHeight){
            textarea.focus();
            storeCaret(textarea);
        }
        var caret_pos = textarea.caretPos;
        caret_pos.text = caret_pos.texto.charAt(caret_pos.texto.length - 1) == ' ' ? caret_pos.text + text + ' ' : caret_pos.text + text;

    }//Para quem não é possível inserir, inserimos no final mesmo (IE...)
    else{
        textarea.value = textarea.value + texto;
    }
}
/*
 Essa função abre o texto em duas strings e insere o texto bem na posição do cursor, após ele une novamento o texto mas com o texto inserido
 Essa maravilhosa função só funciona no Mozilla... No IE não temos as propriedades selectionstart, textLength...
 */
function mozWrap(txtarea, open, close){
    var selLength = txtarea.textLength;
    var selStart = txtarea.selectionStart;
    var selEnd = txtarea.selectionEnd;
    var scrollTop = txtarea.scrollTop;

    if (selEnd == 1 || selEnd == 2){
        selEnd = selLength;
    }
    //S1 tem o texto do começo até a posição do cursor
    var s1 = (txtarea.value).substring(0,selStart);

    //S2 tem o texto selecionado
    var s2 = (txtarea.value).substring(selStart, selEnd)

    //S3 tem todo o texto selecionado
    var s3 = (txtarea.value).substring(selEnd, selLength);

    //COloca o texto na textarea. Utiliza a string que estava no início, no meio a string de entrada, depois a seleção seguida da string
    //de fechamento e por fim o que sobrou após a seleção
    txtarea.value = s1 + open + s2 + close + s3;
    txtarea.selectionStart = selEnd + open.length + close.length;
    txtarea.selectionEnd = txtarea.selectionStart;
    txtarea.focus();
    txtarea.scrollTop = scrollTop;
    return false;
}
/*
 Insert at Caret position. Code from
  [url]http://www.faqts.com/knowledge_base/view.phtml/aid/1052/fid/130[/url]
 */
function storeCaret(textEl){
    if (textEl.createTextRange){
        textEl.caretPos = document.selection.createRange().duplicate();
    }
}
function atualizaConteudoRedeInfoTV(){
    //atualzia o conteudo do campo de texto
    tinyMCE.triggerSave();
    //captura os valores
    var titulo = $("#tituloPagina").val();
    var subTitulo = $("#subTituloPagina").val();
    var artigo = url_encode($("#artigoGerConteudoRedeInfoTV").val());

    //envia as informações para a pagina server-side
    abrirPagPostID("class/Ajax.php", "respostaConteudo", "funcao=atualizaConteudoInfoTV&titulo="+titulo+"&subTitulo="+subTitulo+"&artigo="+artigo);
}
function atualizaConteudoFranquia(){
    //atualzia o conteudo do campo de texto
    tinyMCE.triggerSave();

    //captura os valores
    var titulo = $("#tituloPagina").val();
    var subTitulo = $("#subTituloPagina").val();
    var artigo = url_encode($("#artigoGerConteudoFranquia").val());

    //envia as informações para a pagina server-side
    abrirPagPostID("class/Ajax.php", "respostaConteudo", "funcao=atualizaConteudoFranquia&titulo="+titulo+"&subTitulo="+subTitulo+"&artigo="+artigo);
}
function atualizaConteudoInfoTVempresas(){
    //atualzia o conteudo do campo de texto
    tinyMCE.triggerSave();

    //captura os valores
    var titulo = $("#tituloPagina").val();
    var subTitulo = $("#subTituloPagina").val();
    var artigo = url_encode($("#artigoGerConteudoInfoTVempresas").val());

    //envia as informações para a pagina server-side
    abrirPagPostID("class/Ajax.php", "respostaConteudo", "funcao=atualizaConteudoInfoTVempresas&titulo="+titulo+"&subTitulo="+subTitulo+"&artigo="+artigo);
}
function atualizaConteudoConteudo(){
    //atualzia o conteudo do campo de texto
    tinyMCE.triggerSave();

    //captura os valores
    var titulo = $("#tituloPagina").val();
    var subTitulo = $("#subTituloPagina").val();
    var artigo = url_encode($("#artigoGerConteudoConteudo").val());
    var youTube = $("#srcVideoConteudo").attr("src");
    alert(youTube)

    //envia as informações para a pagina server-side
    abrirPagPostID("class/Ajax.php", "respostaConteudo", "funcao=atualizaConteudoConteudo&titulo="+titulo+"&subTitulo="+subTitulo+"&artigo="+artigo+"&youtube="+youTube);
}
function cadastraPrograma(){
    var titulo = $("#tituloNovoPrograma").val();
    var duracao = $("#duracaoNovoPrograma").val();
    var fonte = $("#fonteNovoPrograma").val();
    var ordem = $("#ordemNovoPrograma").val();
    var formato = $("input[name='formatoNovoPrograma']").val();
    var nomeArquivo = $("#nomeArquivoNovoPrograma").val();
    var nomeIcone = $("#nomeIconeNovoPrograma").val();

    abrirPagID("class/Ajax.php?funcao=cadastraPrograma&titulo="+titulo+"&duracao="+duracao+"&fonte="+fonte+"&ordem="+ordem+"&formato="+formato+"&nomeArquivo="+nomeArquivo+"&nomeIcone="+nomeIcone,"TB_ajaxContent");
}
function gerConteudoAdicionarCategoria(){
    var nomeCategoria = window.prompt("insira o nome da nova categoria");
    var listagem = $("#gerConteudoListagemGeralDownloads").append("<li>"+nomeCategoria+"</li>");
}
function adicionarProdutoCategoriaDownload(categoria){
    var descricao = $("#descricaoNovoDownload").val();
    var caminho = $("#caminhoNovoDownload").val();

    abrirPagID("class/Ajax.php?funcao=atualizaConteudoDownload&descricao="+descricao+"&caminho="+caminho+"&idCategoria="+categoria,"TB_ajaxContent");
}
function adicionarLinkPaginaDownloads(catNum){
    $(".catDownloadGerConteudo_"+catNum).append("<li>Nome: <input type=\"text\" class=\"novoItemCategoriaDownload\" /> Link :<input type=\"text\" class=\"novoLinkItemCategoriaDownload\" /> <input type=\"button\" value=\"Confirmar\" onclick=\"insereItemCategoriaDownload(this);\" name=\""+catNum+"\" /><input type=\"button\" onclick=\"cancelaItemCategoriaDownload(this);\" value=\"Cancelar\" /></li>")
}
function cancelaItemCategoriaDownload(ref){
    var li = $(ref).parent();
    li.remove();
}
function insereItemCategoriaDownload(botao){
    var item = $(botao).parent().children("input:eq(0)").val();
    var link = $(botao).parent().children("input:eq(1)").val();

    if(window.confirm("Tem certeza que deseja inserir um novo item na pagina de downloads")){
        //insere o novo link ao objeto
        ativaScript("class/Ajax.php?funcao=insereitemCategoriaDownload&item="+item+"&link="+link+"&categoria="+botao.name);
        //insere o item na listagem do gerenciador de download
        $(botao).parent().parent().append("<li><a href=\""+link+"\">"+item+"</a></li>");
        //remove as opções de inserçao
        $(botao).parent().remove();
    }
}
function excluirItem(categoria,chave,botao){
    if(window.confirm("Tem certeza que deseja remover este item?\nAs informações editadas nao poderão ser recuperadas")){
        //insere o novo link ao objeto
        ativaScript("class/Ajax.php?funcao=retiraItemCategoriaDownload&chave="+chave+"&categoria="+categoria);
        
        //remove a linha do item excluido
        $(botao).parent().remove();
    }
}
function adicionarCategoriaDownload(){
    var nomeCategoria = window.prompt("Insera o nome da nova categoria");

    if(nomeCategoria == ""){
        return false;
    }

    if(window.confirm("Tem certeza que deseja inserir uma nova categoria ('"+nomeCategoria+"') ?")){
        ativaScript("class/Ajax.php?funcao=insereCategoriaDownload&categoria="+nomeCategoria);
    }

    return true;
}
function removerCategoriaDownload(indice, ref){
    if(window.confirm("Tem certeza que deseja excluir esta categoria? todos os links serão perdidos e nao poderao ser recuperados")){
        ativaScript("class/Ajax.php?funcao=retiraCategoriaDownload&indice="+indice);
        $("#listaGemCategoriaItem_"+indice).remove();
    }
}
function confirmaReordenacaoCategoriaDownload(){
    if(window.confirm("Tem certeza que deseja reordenar todas as categorias?")){
        var ind = "<?xml version=\"1.0\" encoding=\"utf-8\"?><categorias>\n";
        $("#todasCategorias li[id^='listaGemCategoriaItem_']").each(function(indice, elemento){
            ind += "<categoria>\n";
            ind += "  <indiceAntigo>"+$(elemento).attr("id").replace("listaGemCategoriaItem_", "")+"</indiceAntigo>\n";
            ind += "  <indiceNovo>"+indice+"</indiceNovo>\n";
            ind += "</categoria>\n";
        });
        ind += "</categorias>\n";

        //envia as informações para a pagina server-side
        abrirPagPostID("class/Ajax.php", "respostaConteudo", "funcao=reordenaCategoriaDownload&indice="+ind);
    }
}
function cadastraFranquia(){
    var nome =      $("#insereFranquiaNome").val();
    var site =      $("#insereFranquiaSite").val();
    var permissao = $("#insereFranquiaPermissao").val();
    var ordem =     $("#insereFranquiaOrdem").val();
    var descricao = $("#insereFranquiaDescricao").val();
    var telefone =  $("#insereFranquiaTelefone").val();
    var email =     $("#insereFranquiaEmail").val();
    var endereco =  $("#insereFranquiaEndereco").val();
    var contato =   $("#insereFranquiaContato").val();
    var logo =      $("#insereFranquiaLogo").val();
    var banner =    $("#insereFranquiaBanner").val();

    //alert(nome+"\n"+site+"\n"+permissao+"\n"+ordem+"\n"+descricao+"\n"+telefone+"\n"+email+"\n"+endereco+"\n"+contato+"\n"+logo+"\n"+banner);

    abrirPagPostID("class/Ajax.php", "respostaConteudo",
        "funcao=cadastraFranquia&nome="+nome+
        "&site="+site+
        "&permissao="+permissao+
        "&ordem="+ordem+
        "&descricao="+descricao+
        "&telefone="+telefone+
        "&endreco="+endereco+
        "&email="+email+
        "&endereco="+contato+
        "&logo="+logo+
        "&banner="+banner);
}
function gruposListagemGrupos(){
    mygrid = new dhtmlXGridObject("tabelaGrupos");
    mygrid.setImagePath("js/dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Nome");
    mygrid.attachHeader("#text_filter");
    mygrid.setInitWidths("*");
    mygrid.setColTypes("ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("str");
    mygrid.attachEvent("onRowDblClicked", function(){
        gruposListagemPontosGrupos(mygrid.getSelectedRowId());
    });
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=tabelaGruposXML");
}
function gruposListagemPontosGrupos(idGrupo){
    gridPonto = new dhtmlXGridObject("tabelaPontos");
    gridPonto.setImagePath("js/dhtmlxgrid/codebase/imgs/");
    gridPonto.setHeader(",Nome,Cliente");
    gridPonto.attachHeader("&nbsp;,#text_filter,#select_filter");
    gridPonto.setInitWidths("40,*,200");
    gridPonto.setColTypes("ch,ro,ro");
    gridPonto.setSkin("dhx_skyblue");
    gridPonto.setColSorting("str,str,str");
    gridPonto.setColAlign("ch,left,left");
    gridPonto.attachEvent("onCheck", function(rId,cInd,state){
        if(cInd == 0){
            if(gridPonto.cells(rId,0).getValue() == 0){
                ativaScript("class/Ajax.php?funcao=retirarPontoGrupo&idPonto="+rId+"&idGrupo="+idGrupo);
            }else{
                ativaScript("class/Ajax.php?funcao=inserirPontoGrupo&idPonto="+rId+"&idGrupo="+idGrupo);
            }
        }
    });
    gridPonto.groupBy(0,["#title","#cspan","#cspan"]);
    gridPonto.customGroupFormat = function(name,count){
        if (name == 0){
            return "Pontos disponíveis: "+count;
        }
        if (name == 1){
            return "Pontos selecionados: "+count;
        }
    }
    gridPonto.init();
    gridPonto.loadXML("class/Ajax.php?funcao=tabelaPontosGruposXML&idGrupo="+idGrupo);
}
function adicionarGrupo(){
    var nomeGrupo = prompt("Insira o nome do grupo");

    if(nomeGrupo.length > 0){
        var idGrupo = ativaScriptResposta("class/Ajax.php?funcao=adicionaGrupoPonto&nomeGrupo="+nomeGrupo);
        mygrid.addRow(idGrupo, nomeGrupo);
    }
}
function editarGrupo(){
    if(mygrid.getSelectedRowId() == null){
        alert("Seleciona um grupo para editar");
        return false;
    }
    //captura o nome antigo
    var nomeGrupo = mygrid.cellById(mygrid.getSelectedRowId(),0).getValue();

    //captura o nome novo
    var novoNomeGrupo = prompt("Insira o novo nome do Grupo",nomeGrupo);

    //atualiza o novo nome na base de dados
    ativaScript("class/Ajax.php?funcao=editaGrupo&novoNomeGrupo="+novoNomeGrupo+"&idGrupo="+mygrid.getSelectedRowId());

    //reseta o novo nome na grid
    mygrid.cellById(mygrid.getSelectedRowId(),0).setValue(novoNomeGrupo);

    return true;
}
function excluirGrupo(){
    if(mygrid.getSelectedRowId() == null){
        alert("Seleciona um grupo para excluir");
        return false;
    }

    if(!confirm("Tem certeza que deseja apagar o grupo? AVISO: Os grupos excluidos nao poderão mais ser recuperados. Esta decisão não afetará os pontos.")){
        return false;
    }

    //exclui o script na base
    ativaScript("class/Ajax.php?funcao=excluirGrupo&idGrupo="+mygrid.getSelectedRowId());

    mygrid.deleteSelectedRows();

    $("#tabelaPontos").html("").css("border","none");
    return true;
}
function visualizarGrupo(){
    if(mygrid.getSelectedRowId() == null){
        alert("Seleciona um grupo para visualizar");
        return false;
    }

    gruposListagemPontosGrupos(mygrid.getSelectedRowId());
    return true;
}
function selecionaConteudoInterno(idConteudo){
    if (document.selection) {
        var range = document.body.createTextRange();
        range.moveToElementText(document.getElementById(idConteudo));
        range.select();
    }
    else if (window.getSelection) {
        var range = document.createRange();
        range.selectNode(document.getElementById(idConteudo));
        window.getSelection().addRange(range);
    }
}
function formataFundoPeriodoDeAte(){
    $(".periodoDe").focusin(function(){
        $(".periodoDe").css("background","url(null)");
    }).focusout(function(){
        $(".periodoDe").css("background","url('imagens/layout/fundoCampoDe.png') no-repeat");
    });
    $(".periodoAte").focusin(function(){
        $(".periodoAte").css("background","url(null)");
    }).focusout(function(){
        $(".periodoAte").css("background","url('imagens/layout/fundoCampoAte.png') no-repeat");
    });

    $(".periodoDe").attr("onChange","formataFundoPeriodoDeAte();");
    $(".periodoAte").attr("onChange","formataFundoPeriodoDeAte();");

    if($(".periodoDe").val()==""){
        $(".periodoDe").css("background","url('imagens/layout/fundoCampoDe.png') no-repeat");
    }else{
        $(".periodoDe").css("background","url(null)");
    }

    if($(".periodoAte").val()==""){
        $(".periodoAte").css("background","url('imagens/layout/fundoCampoAte.png') no-repeat");
    }else{
        $(".periodoAte").css("background","url(null)");
    }
}
function pegaGridRelatorioPontoIndividual(){
    var categoria = $("#categoria").val();
    var estado = $("#estado").val();
    var cidade = $("#cidade").val();

    var classeDE = $("#classeDE").val();
    var classeATE = $("#classeATE").val();

    var publicoDE = $("#publicoDE").val();
    var publicoATE = $("#publicoATE").val();

    var telaDE = $("#telaDE").val();
    var telaATE = $("#telaATE").val();

    var filtro = $("input:radio[name=tipoFiltroPonto]:checked").val();

    var de = $("#dataDE").val();
    var ate = $("#dataATE").val();

    mygrid = new dhtmlXGridObject("tabelaPontosIndividuais");
    mygrid.setImagePath("js/dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("Nº,Ponto,Cidade,Estado,Pessoas,TVs,Renda,PrecoMedio,DescotnoMedio,Total");
    mygrid.attachHeader("#text_filter,#text_filter,#text_filter,#text_filter,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;,&nbsp;");
    mygrid.setInitWidths("40,*,80,40,80,40,100,90,80,70");
    mygrid.setColAlign("left,left,left,center,left,center,center,center,center,center");
    mygrid.setColTypes("ro,ro,ro,ro,ro,ro,ro,ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("int,str,str,str,int,int,str,str,str,str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=selecionaPontosIndividualXML&de="+de+"&ate="+ate+"&idCategoria="+categoria+"&estado="+estado+"&cidade="+cidade+"&classeDE="+classeDE+"&classeATE="+classeATE+"&publicoDE="+publicoDE+"&publicoATE="+publicoATE+"&telaDE="+telaDE+"&telaATE="+telaATE+"&filtro="+filtro);
}
function criaPDFRelatorioPontoIndividual(de,ate){
    var categoria = $("#categoria").val();
    var estado = $("#estado").val();
    var cidade = $("#cidade").val();

    var classeDE = $("#classeDE").val();
    var classeATE = $("#classeATE").val();

    var publicoDE = $("#publicoDE").val();
    var publicoATE = $("#publicoATE").val();

    var telaDE = $("#telaDE").val();
    var telaATE = $("#telaATE").val();

    var filtro = $("input:radio[name=tipoFiltroPonto]:checked").val();

    var cam = isExplorer() ? "../../" : "";
    idPonto = $("#idPonto").val() == "" ? null : $("#idPonto").val();
    window.open(cam + "class/Ajax.php?funcao=selecionaPontosIndividualPDF&de="+de+"&ate="+ate+"&idCategoria="+categoria+"&estado="+estado+"&cidade="+cidade+"&classeDE="+classeDE+"&classeATE="+classeATE+"&publicoDE="+publicoDE+"&publicoATE="+publicoATE+"&telaDE="+telaDE+"&telaATE="+telaATE+"&filtro="+filtro,'PDF Venda Ponto','width=10, height=10, top=100, left=100, scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no');
}
function criaExcelRelatorioPontoIndividual(de,ate){
    var categoria = $("#categoria").val();
    var estado = $("#estado").val();
    var cidade = $("#cidade").val();

    var classeDE = $("#classeDE").val();
    var classeATE = $("#classeATE").val();

    var publicoDE = $("#publicoDE").val();
    var publicoATE = $("#publicoATE").val();

    var telaDE = $("#telaDE").val();
    var telaATE = $("#telaATE").val();

    var cam = isExplorer() ? "../../" : "";

    idPonto = $("#idPonto").val() == "" ? null : $("#idPonto").val();

    //var porFranquia = document.getElementById("porFranquia").checked;
    var filtro = $("input:radio[name=tipoFiltroPonto]:checked").val();

    window.open(cam + "class/Ajax.php?funcao=selecionaPontosIndividualExcel&de="+de+"&ate="+ate+"&idCategoria="+categoria+"&estado="+estado+"&cidade="+cidade+"&classeDE="+classeDE+"&classeATE="+classeATE+"&publicoDE="+publicoDE+"&publicoATE="+publicoATE+"&telaDE="+telaDE+"&telaATE="+telaATE+"&filtro="+filtro,'PDF Venda Ponto','width=10, height=10, top=100, left=100, scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, fullscreen=no');
}
function cadastraPonto(){
    //XML dos subPontos
    this.subPontos = new Array();
    
    this.adicionarCamposCadastroSubPonto = function(){
        var campo = "<li>";
        campo += "<span>Descrição: </span><input type=\"text\" />";
        campo += "<span>Num TVs </span><input type=\"text\" />";
        campo += "<a href=\"javascript:void(0);\" onclick=\"cadPonto.cancelarAdicaoSubPonto($(this).parent());\"><img src=\"imagens/conteudo/icones_opcoes/fechar.png\" /></a>";
        //campo += "<a href=\"javascript:void(0);\" onclick=\"cadPonto.confirmaAdicaoSubPonto(this);\"><img src=\"imagens/conteudo/icones_opcoes/confirmar.png\" /></a>";
        campo += "<input type=\"hidden\" />";
        campo += "</li>";
        $("#subPontoCadastrarEditar ul").append(campo);
    }
    this.cancelarAdicaoSubPonto = function(elemento){
        $(elemento).remove();
    }
    this.adicionarCamposCadastroDuracao = function(){
        var campo = "<li>";
        campo += "  <span>Dur.:     </span><input class=\"dur\" type=\"text\" onkeypress=\"return verificaNumero(event);\" />";
        campo += "  <span>Franquia: </span><select class=\"fra\">"+ativaScriptResposta("class/Ajax.php?funcao=exibeListagemFranquiaCadastroDuracaoPonto")+"</select>";
        //campo += "  <span>NºTVs:    </span><input class=\"nTV\" type=\"text\" value=\"1\" onkeypress=\"return verificaNumero(event);\" onkeyup=\"cadPonto.achaTotal($(this).parent().find('.rsI'));\" />";
        //campo += "  <span>Inserção: </span><input class=\"ins\" type=\"text\" value=\"54\" onkeyup=\"cadPonto.achaTotal($(this).parent().find('.rsI'));\" onblur=\"cadPonto.campoVazio(this, '54');\" />";

        campo += "  <span>R$/Ins:    </span><input class=\"rsI\" value=\"0,00\" type=\"text\" onkeypress=\"return(MascaraMoeda(this, '.',',', event));\" onkeyup=\"cadPonto.achaTotal(this);\" onblur=\"cadPonto.campoVazio(this, '0,00');\" />";
        campo += "  <span>Total:    </span><input class=\"total\" value=\"0,00\" type=\"text\" onkeypress=\"return(MascaraMoeda(this, '.',',', event));\" onkeyup=\"cadPonto.achaRSIns(this);\" onblur=\"cadPonto.campoVazio(this, '0,00');\" />";

        campo += "  <a href=\"javascript:void(0);\" onclick=\"cadPonto.cancelarAdicaoSubPonto($(this).parent());\"><img src=\"imagens/conteudo/icones_opcoes/fechar.png\" /></a>";
        campo += "  <input type=\"hidden\" />";
        campo += "</li>";
        $("#duracaoPontoCadastrarEditar ul").append(campo);
    }
    this.excluirDuracaoVT = function(idPonto, duracao, elemento){
        if(confirm("Tem certeza que deseja excluir esta duração? \n\ Esta ação terá efeito mesmo se voce cancelar a edição do ponto")){
            ativaScript("class/Ajax.php?funcao=excluirDuracaoVTPonto&idPonto="+idPonto+"&duracao="+duracao);
            cadPonto.cancelarAdicaoSubPonto($(elemento).parent());
        }
    }
    this.achaTotal = function(campoRSIns){
        //var nTelas = $(campoRSIns).parent().find(".nTV");
        var nTelas = $("#numerotelas");
        var rsIns = $(campoRSIns).val();
        
        //var ins = parseInt($(campoRSIns).parent().find(".ins").val(),10);
        var ins = parseInt($("#insercao").val());
        ins = isNaN(ins) ? 54 : ins;

        var funcionamento = parseInt($("#funcionamento").val());
        funcionamento = isNaN(funcionamento) ? 26 : funcionamento;
        
        //Total = R$/Ins. * funcionamento * inserções * numero de telas
        var total = moeda2float(rsIns)*funcionamento*ins*($(nTelas).val() == "" ? 1 : $(nTelas).val());
        $(campoRSIns).parent().find(".total").val(isNaN(total) ? "0,00" : float2moeda(total));
    }
    this.achaRSIns = function(campoTotal){
        //var nTelas = $(campoTotal).parent().find(".nTV");
        var nTelas = $("#numerotelas");
        //var ins = parseInt($(campoTotal).parent().find(".ins"));
        var ins = parseInt($("#insercao").val());
        ins = isNaN(ins) ? 54 : ins;

        var funcionamento = parseInt($("#funcionamento").val());
        funcionamento = isNaN(funcionamento) ? 26 : funcionamento;

        //Total = R$/Ins. * funcionamento * inserções * numero de telas
        var rsIns = moeda2float(campoTotal.value)/funcionamento/ins/($(nTelas).val() == "" ? 1 : $(nTelas).val());
        $(campoTotal).parent().find(".rsI").val(isNaN(rsIns) ? "0,00" : float2moeda(rsIns));
    }
    this.campoVazio = function(campo, valor){
        if(campo.value == "")
            campo.value = valor;
    }
    this.stringToXML = function(text){
        var doc = null;
        if (window.ActiveXObject){
            doc=new ActiveXObject("Microsoft.XMLDOM");
            doc.async="false";
            doc.loadXML(text);
        } else {
            var parser=new DOMParser();
            doc=parser.parseFromString(text,"text/xml");
        }
        return doc;
    }
    this.confirmaAdicaoSubPonto = function(elemento){
        var inputs = "<info>";
        var campos = new Array("descricao","numtv","id");
        $(elemento).find("input").each(function(a){
            inputs += "<"+campos[a]+">";
            inputs += $(this).val();
            inputs += "</"+campos[a]+">";
        });
        //fecha o trecho XML
        inputs += "</info>";
        //insere na coleção de XMLs a classe
        this.subPontos.push(this.stringToXML(inputs));
    //exclui o botao de confirmar
    //$(elemento).remove();
    }
    this.unificaSubPonto = function(){
        this.subPontos = new Array();
        for(i=0; i< $("#subPontoCadastrarEditar ul li").length; i++){
            this.confirmaAdicaoSubPonto($("#subPontoCadastrarEditar ul li")[i]);
        }
        dados = "<sub>";
        for(s=0; s<this.subPontos.length;s++){
            dados += "<info>";
            $(this.subPontos[s]).find("info").each(function(){
                dados += "<descricao>"+$(this).find("descricao").text()+"</descricao>";
                dados += "<numtv>"+$(this).find("numtv").text()+"</numtv>";
                dados += "<id>"+$(this).find("id").text()+"</id>";
            });
            dados += "</info>";
        }
        dados += "</sub>";
        //xml pronto
        return dados;
    }
    this.unificaDuracaoVT = function(){
        var dados = "<duracao>";
        $("#duracaoPontoCadastrarEditar ul").find("li").each(function(indice, elemento){
            dados += "<dur>";
            dados += "<vt>"+$(elemento).find(".dur").val()+"</vt>";
            //dados += "<numtv>"+$(elemento).find(".nTV").val()+"</numtv>";
            dados += "<total>"+$(elemento).find(".total").val()+"</total>";
            dados += "<franquia>"+$(elemento).find(".fra").val()+"</franquia>";
            dados += "</dur>";
        });
        dados += "</duracao>";
        //xml pronto
        return dados;
    }
    this.validaCadastro = function(){
        if($("#titulo").val() == ""){
            alert("O campo \"Título\" é obrigatorio");
            $("#titulo").focus();
            return false;
        }

        if($("#endereco").val() == ""){
            alert("O campo \"Endereço\" é obrigatorio");
            $("#endereco").focus();
            return false;
        }

        if($("#classe").val() == ""){
            alert("O campo \"Classe\" é obrigatorio");
            $("#classe").focus();
            return false;
        }

        if($("#numerotelas").val() == ""){
            alert("O campo \"Numero de telas\" é obrigatorio");
            $("#numerotelas").focus();
            return false;
        }

        if($("#idCliente").val() == ""){
            alert("O campo \"Unidade de Negócio\" é obrigatorio");
            $("#idCliente").focus();
            return false;
        }

        if($("#estado").val() == ""){
            alert("O campo \"Estado\" é obrigatorio");
            $("#estado").focus();
            return false;
        }

        if($("#cidade").find("option").length == 0 || $("#cidade").val() == ""){
            alert("O campo \"Cidade\" é obrigatorio");
            $("#cidade").focus();
            return false;
        }
        return true;
    }
    this.stringParametros = function(){
        var endImg = "";
        if(typeof $("#visualizacaoImagemIcone").attr("src") != "undefined"){
            //captura nome da imagem
            endImg = ($("#visualizacaoImagemIcone").attr("src")).split("/");
        }

        var dados = "&categoriaNovoPonto="+$("#categoriaNovoPonto").val();
        dados += "&titulo="+$("#titulo").val();
        dados += "&endereco="+$("#endereco").val();
        dados += "&site="+$("#sitec").val();
        dados += "&classe="+$("#classe").val();
        dados += "&infoadicional="+$("#infoadicional").val();
        dados += "&numerotelas="+$("#numerotelas").val();
        dados += "&pessoasdia="+$("#pessoasdia").val();
        dados += "&unidadeNegocio="+$("#idCliente").val();
        dados += "&estado="+$("#estado").val();
        dados += "&cidade="+$("#cidade").val();
        dados += "&prioridade="+$("#prioridade").val();
        dados += "&insercao="+$("#insercao").val();
        dados += "&funcionamento="+$("#funcionamento").val();
        dados += "&ativoCadastroPonto="+$("input[name='ativoCadastraPonto']:checked").val();
        dados += "&icone="+endImg[endImg.length-1];
        dados += "&subPonto="+this.unificaSubPonto();
        dados += "&duracaoVT="+this.unificaDuracaoVT();
        return dados;
    }
    this.enviaDadosCadastro = function (){
        if(this.validaCadastro()){
            abrirPagPostID("class/Ajax.php?funcao=sisPontosCadastraNovoPonto","respostaCadastraNovoPontooo",this.stringParametros());
        }
    }
    this.enviaDadosEdicao = function (idPonto){
        if(this.validaCadastro()){
            abrirPagPostID("class/Ajax.php?funcao=sisPontosAtualizaPonto","respostaCadastraNovoPontooo",this.stringParametros()+"&idPonto="+idPonto);
        }
    }
}
function listagemGrupoNewsletter(){
    grupo = new dhtmlXGridObject("listagemGrupoNewsletter");
    grupo.setImagePath("js/dhtmlxgrid/codebase/imgs/");
    grupo.setHeader("Nome, Resposta");
    grupo.setInitWidths("*, 200");
    grupo.attachHeader("#text_filter,#text_filter");
    grupo.setColTypes("ed,ed");
    grupo.setSkin("dhx_skyblue");
    grupo.setColSorting("str,str");
    grupo.attachEvent("onEditCell",function(stage, rowId, colId){
        if (stage == 2) {
            //modifica a coluna de email resposta
            if(colId == 1){
                var verificacao = ativaScriptResposta("class/Ajax.php?funcao=atualizaEmailRespostaGrupoNewsletter&idGrupo="+grupo.getSelectedRowId()+"&email="+grupo.cells(rowId, 1).getValue());
                if(verificacao == "ok"){
                    return true;
                }
                else{
                    alert('erro ao atualizar o email de resposta do grupo '+verificacao);
                    return false;
                }
            }

            if(colId == 0){
                return editarGrupoNewsletter(grupo.cells(rowId, 0).getValue())
            }
        }
    });
    grupo.init();
    grupo.loadXML("class/Ajax.php?funcao=gridGruposNewsletter");

    //============================================================================================;
    myDataProcessor = new dataProcessor("class/Ajax.php?funcao=updateListagemGrupoNewsletter&emailResposta="+grupo.getSelectedRowId());
    myDataProcessor.setTransactionMode("POST", true);
    myDataProcessor.init(grupo);
//============================================================================================;
}
function emailsNewsletter(idGrupo){
    emails = new dhtmlXGridObject("emailsNewsletter");
    emails.setImagePath("js/dhtmlxgrid/codebase/imgs/");
    emails.setHeader(",Email,Tipo Cliente, Dominio");
    emails.setInitWidths("30,*,120,120");
    emails.attachHeader("&nbsp;,#text_filter,#select_filter,#select_filter");
    emails.setColTypes("ch,ro,ro,ro");
    emails.setSkin("dhx_skyblue");
    emails.setColSorting("str,str,str,str");
    emails.init();
    emails.attachEvent("onCheck", function(rId){
        ativaScript("class/Ajax.php?funcao=modificaGrupo&idNewsletter="+rId+"&idGrupo="+grupo.getSelectedRowId());
    });
    emails.customGroupFormat = function(name,count){
        if (name == 0){
            return "Não fazem parte do grupo: "+count;
        }
        if (name == 1){
            return "Fazem parte do grupo: "+count;
        }
    }
    emails.loadXML("class/Ajax.php?funcao=gridEmailsNewsletterCadastroGrupo&idGrupo="+idGrupo,function(){
        emails.groupBy(0);
    });
    emails.setUpdateMode("off");
}
function adicionarGrupoNewsletter(){
    var nomeGrupo = window.prompt("Insira o nome do novo grupo");
    if(nomeGrupo != null && nomeGrupo.trim() != ""){
        var idGrupo = ativaScriptResposta("class/Ajax.php?funcao=cadastraGrupoNewsletter&nome="+nomeGrupo);

        if(idGrupo != "erro"){
            grupo.addRow(idGrupo, [nomeGrupo, "comercial@infotv.com.br"]);
        }
    }
}
function editarGrupoNewsletter(nomeGrupo){
    if(grupo.getSelectedRowId() == null){
        alert("Selecione ao menos um grupo para editar");
        return false;
    }

    if(nomeGrupo != null && nomeGrupo.trim() != ""){
        var idGrupo = ativaScriptResposta("class/Ajax.php?funcao=atualizaGrupoNewsletter&nome="+nomeGrupo+"&idNewsletter="+grupo.getSelectedRowId());

        if(idGrupo != "erro"){
            grupo.cells(grupo.getSelectedRowId(), 0).setValue(nomeGrupo);
            return true;
        }else{
            alert('erro ao atualizar o nome do grupo '+verificacao);
            return false;
        }
    }

}
function excluiGrupoNewsletter(){
    if(grupo.getSelectedRowId() == null){
        alert('Selecione um Grupo para remover');
    }else{
        if(confirm("Tem certeza que deseja excluir o grupo? Esta decisão não afetará os emails cadastrados")){
            grupo.deleteSelectedItem();
        }
    }
}
function visualizarGrupoNewsletter(){
    if(grupo.getSelectedRowId() == null){
        alert('Selecione um Grupo para visualizar');
    }else{
        abrirPagID("class/Ajax.php?funcao=exibeConfiguracaoGrupoNewsletter&idGrupo="+grupo.getSelectedRowId(),"infoGrupoNewsletter");
        emailsNewsletter(grupo.getSelectedRowId());
    }
}
function reiniciaEmailsGrupoNewsletter(idGrupo){
    ativaScript("class/Ajax.php?funcao=reiniciaEnvioGrupoNewsletter&idGrupo="+idGrupo);
    abrirPagID("class/Ajax.php?funcao=exibeConfiguracaoGrupoNewsletter&idGrupo="+idGrupo,"infoGrupoNewsletter");
}
function iniciaCadastroNewsletter(){
    iniciaTinyMaceAdicionarNewsletter();
}
function fechaVisualziacaoNewsletter(){
    $("#thickBoxVisualizar").fadeOut(300,function(){
        $(this).remove();
    });
    $("#fundoPretoTransparenteThchikbox").fadeOut(300,function(){
        $(this).remove();
    });
}
function abreJanelaAuxiliarNewsletter(){
    $("body").append(
        "<div id=\"fundoPretoTransparenteThchikbox\" onclick=\"fechaVisualziacaoNewsletter();\"></div>\n\
<div id=\"thickBoxVisualizar\">\n\
    <div id=\"thickBoxVisualizarConteudo\"></div>\n\
<div id=\"cabecalhoVisualziacaoNewsletter\">\n\
    <a href=\"javascript:void(0);\" onclick=\"fechaVisualziacaoNewsletter();\">Fechar</a>\n\
</div>\n\
</div>");
    $("#thickBoxVisualizar").hide().fadeIn(300);
}
function BlocosNewsletter(){
    //conteudo (array de XML)
    this.blocos = new Array();
    //campos de envio
    var destinatarioNewsletter = "";
    var assuntoNewsletter = "";
    var tituloNewsletter = "";
    var linkNewsletter = "";
    var numeroEnvioNewsletter = "";
    var tipoNewsletter = "";
    var emailResposta = "";
    var idGrupoNewsletter = new Array();
    ////////////////Métodos GETTERS e SETTERS
    this.getDestinatarioNewsletter = function(){
        return this.destinatarioNewsletter;
    }
    this.getAssuntoNewsletter = function(){
        return this.assuntoNewsletter;
    }
    this.getTituloNewsletter = function(){
        return this.tituloNewsletter;
    }
    this.getLinkNewsletter = function(){
        return this.linkNewsletter;
    }
    this.getNumeroEnvioNewsletter = function(){
        return this.numeroEnvioNewsletter;
    }
    this.getTipoNewsletter = function(){
        return this.tipoNewsletter;
    }
    this.getIdGrupoNewsletter = function(){
        return this.idGrupoNewsletter;
    }
    this.getEmailResposta = function(){
        return this.emailResposta;
    }
    this.setDestinatarioNewsletter = function(d){
        this.destinatarioNewsletter = d;
    }
    this.setAssuntoNewsletter = function(d){
        this.assuntoNewsletter = d;
    }
    this.setTituloNewsletter = function(d){
        this.tituloNewsletter = d;
    }
    this.setLinkNewsletter = function(d){
        this.linkNewsletter = d;
    }
    this.setNumeroEnvioNewsletter = function(d){
        this.numeroEnvioNewsletter = d;
    }
    this.setTipoNewsletter = function(d){
        this.tipoNewsletter = d;
    }
    this.setIdGrupoNewsletter = function(d){
        this.idGrupoNewsletter = d;
    }
    this.setEmailResposta = function(d){
        this.emailResposta = d;
    }
    ////////////////Fim dos métodos GETTERS e SETTERS
    this.preencheAtributos = function(){
        tinyMCE.triggerSave();
        this.setDestinatarioNewsletter($("#destinatarioNewsletter").val());
        this.setAssuntoNewsletter($("#assuntoNewsletter").val());
        this.setTituloNewsletter($("#tituloNewsletter").val());
        this.setLinkNewsletter($("#linkNewsletter").val());
        this.setNumeroEnvioNewsletter($("#numeroEnvioNewsletter").val());
        this.setTipoNewsletter($("#tipoNewsletter").val());
        this.setEmailResposta($("#emailResposta").val());
        var prov = new Array();
        $(".listaGrupoNewsletter > li > input:checkbox:checked").each(function(){
            prov.push($(this).val());
        });
        this.setIdGrupoNewsletter(prov);
    }
    this.stringToXML = function(text){
        var doc = null;
        if (window.ActiveXObject){
            doc=new ActiveXObject('Microsoft.XMLDOM');
            doc.async='false';
            doc.loadXML(text);
        } else {
            var parser=new DOMParser();
            doc=parser.parseFromString(text,'text/xml');
        }
        return doc;
    }
    this.confirmaAdicaoBloco = function(){
        var template = $("#selectEstilo").val();
        var conteudo = "";
        //atualiza o conteudo do tinyMCE
        tinyMCE.triggerSave();

        //captura o conteudo do newsletter, se necessario
        if(template != 4){
            conteudo = url_encode($("#newsletterConteudo").val());
        }

        //captura o link que vai na imagem, se necessario
        var linkImagem = $("#linkImagem").val();

        var imagem = "";
        if(template != 2){
            imagem = url_encode($("#previewImagemBloco img").attr("src"));
        }
        var nomeTemplate = document.getElementById('selectEstilo').options[document.getElementById('selectEstilo').selectedIndex].text;

        //cria a estrutura do XML para este bloco
        var dados = "<info>";
        dados += "<imagem>"+imagem+"</imagem>";
        dados += "<template>"+template+"</template>";
        dados += "<conteudo>"+conteudo+"</conteudo>";
        dados += "<linkImagem>"+linkImagem+"</linkImagem>";
        dados += "</info>";

        dados = this.stringToXML(dados);
        $("#blocosFinalizados li").last().html("<li style=\"font-weight: bold;posotion: relative;\">"+nomeTemplate+"<div style=\"float: right;\">Ex.</div><div style=\"float: right;\">Ed.</div></li>");
        this.adicionaXML(dados);
        this.previsualizacaoAutomaticaNewsletter();
        //remove a isntancia do tinyMCE caso o usuario queira inserir mais blocos
        tinyMCE.execCommand('mceRemoveControl',false,'newsletterConteudo');
    }
    this.adicionaXML = function(xml){
        this.blocos.push(xml);
    }
    this.unificaXML = function(){
        var dados = "<?xml version=\"1.0\" encoding=\"utf-8\"?><dados>";
        for(a=0; a<this.blocos.length;a++){
            dados += "<info>";
            $(this.blocos[a]).find("info").each(function(){
                dados += "<imagem>"+$(this).find("imagem").text()+"</imagem>";
                dados += "<template>"+$(this).find("template").text()+"</template>";
                dados += "<conteudo><![CDATA["+$(this).find("conteudo").text()+"]]></conteudo>";
                dados += "<linkImagem><![CDATA["+$(this).find("linkImagem").text()+"]]></linkImagem>";
            });
            dados += "</info>";
        }
        dados += "</dados>";
        //xml pronto

        return dados;
    }
    this.exibeAmostraTemplateNewsletter = function(){
        $("#selectEstilo").change(function(){
            $("#visualizaEstiloBloco").css("background","url(imagens/noticiaCliente/imagem/estiloBlocoNewsletter/estilo"+this.value+".png)");
        }).children("option")
        .mouseover(function(){
            $("#visualizaEstiloBlocoDefinitivo").css("background","url(imagens/noticiaCliente/imagem/estiloBlocoNewsletter/estilo"+this.value+".png)");
        })
        .mouseout(function(){
            $("#visualizaEstiloBlocoDefinitivo").css("background","none");
        });
        $('#arquivo').fileUpload({
            'uploader':     'js/upload/uploader.swf',
            'cancelImg':    'imagens/layout/cancel.png',

            'folder':       '../../../imagens/noticiaCliente/newsLetter/',
            'script':       '../../../js/upload/upload.php',
            'multi':        false,

            //'buttonImg'   : 'conteudo/botao_selecionar.jpg',
            'fileExt'       : '*.zip;*.rar;*.ppt;*.pps;*.ppsx;*.pptx;*.pdf;*.doc;*.docx;*.xls;*.xlsx;*.avi;*.mpg;*.mpeg;*.mp3;*.wma;*.wmv;*.mov;*.jpg;*.png;*.psd;*.swf;*.mp4;*.pdf;*.fla',
            'buttonText'    : 'Buscar Imagem',
            'width'         : '100',
            'sizeLimit'     : '62914560',
            'fileDesc'      : 'Imagens',
            'onSelect'      : function(event,ID,fileObj){
                $('#nomeArquivo').val(fileObj.name);
                $('#arquivo').fileUploadStart();
            },
            'onComplete'  : function(event, ID, fileObj, response, data) {
                $("#previewImagemBloco").html("Link Imagem: <input type=\"text\" id=\"linkImagem\" value=\"\" /><br />"+
                    "<img src=\"imagens/noticiaCliente/newsLetter/"+fileObj.name+" \" />");
            }
        });
    }
    this.cancelaAdicaoBloco = function(){
        $("#blocosFinalizados li").last().remove();
    }
    this.iniciaTinyMaceAdicionarNewsletter = function(){
        tinyMCE.init({
            // General options
            mode : "exact",
            elements : "newsletterConteudo",
            theme : "advanced",
            plugins : "pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,wordcount,advlist,autosave",
            relative_urls : false,
            convert_urls : false,

            // Theme options
            theme_advanced_buttons1 : "save,newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,styleselect,formatselect,fontselect,fontsizeselect",
            theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,forecolor,backcolor",
            theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iespell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",
            theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,pagebreak,restoredraft",
            theme_advanced_toolbar_location : "top",
            theme_advanced_toolbar_align : "left",
            theme_advanced_statusbar_location : "bottom",
            theme_advanced_resizing : true,

            // Example content CSS (should be your site CSS)
            //content_css : "css/content.css",

            // Drop lists for link/image/media/template dialogs
            template_external_list_url : "lists/template_list.js",
            external_link_list_url : "lists/link_list.js",
            external_image_list_url : "lists/image_list.js",
            media_external_list_url : "lists/media_list.js",

            // Style formats
            style_formats : [
            {
                title : 'Bold text',
                inline : 'b'
            },

            {
                title : 'Red text',
                inline : 'span',
                styles : {
                    color : '#ff0000'
                }
            },

            {
                title : 'Red header',
                block : 'h1',
                styles : {
                    color : '#ff0000'
                }
            },

            {
                title : 'Example 1',
                inline : 'span',
                classes : 'example1'
            },

            {
                title : 'Example 2',
                inline : 'span',
                classes : 'example2'
            },

            {
                title : 'Table styles'
            },

            {
                title : 'Table row 1',
                selector : 'tr',
                classes : 'tablerow1'
            }
            ],

            // Replace values for the template plugin
            template_replace_values : {
                username : "Some User",
                staffid : "991234"
            }
        });
    }
    this.adicionarBlocoDeNewsletter = function(){
        $("#blocosFinalizados").append(
            "<li>Template:\n\
          <select class=\"selectEstilo\" id=\"selectEstilo\">\n\
              <option value=\"1\">Template 1</option>\n\
              <option value=\"2\">Template 2</option>\n\
              <option value=\"3\">Template 3</option>\n\
              <option value=\"4\">Template 4</option>\n\
              <option value=\"5\">Template 5</option>\n\
              <option value=\"6\">Template 6</option>\n\
          </select>\n\
          <div id='visualizaEstiloBloco' style=\"width: 300px; height: 120px;background:url(imagens/noticiaCliente/imagem/estiloBlocoNewsletter/estilo1.png);\">\n\
             <div id='visualizaEstiloBlocoDefinitivo' style=\"width: 300px; height: 120px;\">\n\
             </div>\n\
          </div>\n\
          <input type='file' id='arquivo' /><br />\n\
          <span id='previewImagemBloco'></span>\n\
          <span id='linksConfirmaBlocoNewsletter'>\n\
              <a href='javascript:void(0);' onclick='bl.confirmaAdicaoBloco();'> <img src='imagens/conteudo/icones_modulos/Checked-32.png' /> </a>\n\
              <a href='javascript:void(0);' onclick='bl.cancelaAdicaoBloco();'> <img src='imagens/conteudo/icones_opcoes/fechar.png' /> </a>\n\
          </span>\n\
          <textarea id=\"newsletterConteudo\" style=\"height: 400px;\" width='250' name=\"newsletterConteudo\"></textarea>\n\
        </li>");
        this.iniciaTinyMaceAdicionarNewsletter();
        this.exibeAmostraTemplateNewsletter();
    }
    this.validaCampos = function(){
        this.preencheAtributos();
        if(this.getDestinatarioNewsletter()==""){
            alert("Preencha o campo 'Destinatário'");
            $("#destinatarioNewsletter").focus();
            return false;
        }

        if(this.getAssuntoNewsletter()==""){
            alert("Preencha o campo 'Assunto'");
            $("#assuntoNewsletter").focus();
            return false;
        }

        if(this.getTituloNewsletter()==""){
            alert("Preencha o campo 'Titulo'");
            $("#tituloNewsletter").focus();
            return false;
        }

        if(this.getLinkNewsletter()==""){
            alert("Preencha o campo 'Link Principal'");
            $("#linkNewsletter").focus();
            return false;
        }

        if(this.getNumeroEnvioNewsletter()==""){
            alert("Preencha o campo 'Quantidade de Envio'");
            $("#numeroEnvioNewsletter").focus();
            return false;
        }
        return true;
    }
    this.stringParametros = function(){
        this.preencheAtributos();
        return "&conteudo="+this.unificaXML()+
        "&linkNewsletter="+this.getLinkNewsletter()+
        "&tituloNewsletter="+this.getTituloNewsletter()+
        "&numeroEnvioNewsletter="+this.getNumeroEnvioNewsletter()+
        "&assuntoNewsletter="+this.getAssuntoNewsletter()+
        "&tipoNewsletter="+this.getTipoNewsletter()+
        "&destinatarioNewsletter="+this.getDestinatarioNewsletter()+
        "&emailResposta="+this.getEmailResposta()+
        "&grupoNewsletter="+this.getIdGrupoNewsletter().toString();
    }
    this.validaEnvioNewsletter = function(){
        if(!this.validaCampos()){
            return false;
        }
        if(confirm("Tem certeza que deseja finalizar e enviar o Newsletter?")){
            abreJanelaAuxiliarNewsletter();
            abrirPagPostID("class/Ajax.php", "thickBoxVisualizarConteudo",
                "funcao=enviarNewsLetter&height=500&width=750"+this.stringParametros());
        }
        return true;
    }
    this.enviaNewsletter = function(){
        if(!this.validaCampos()){
            return false;
        }
        abreJanelaAuxiliarNewsletter();
        abrirPagPostID("class/Ajax.php", "thickBoxVisualizarConteudo",
            "funcao=viewNewsletter"+this.stringParametros());
        return true;
    }
    this.previsualizacaoAutomaticaNewsletter = function(){
        abrirPagPostID("class/Ajax.php", "newsLetterColuna2",
            "funcao=montaNewsletter"+this.stringParametros());
    }
    this.enviaEmailTesteNewsletter = function(){
        abreJanelaAuxiliarNewsletter();
        abrirPagPostID("class/Ajax.php",
            "thickBoxVisualizarConteudo",
            "funcao=enviaEmailTesteNewsletter&height=500&width=750"+this.stringParametros())

    }
    //retorna a instancia da classe
    return this;
}
function removerEmailMailing(){
    abrirPagID("class/Ajax.php?funcao=removerEmailMailing&email="+$("#email").val(), "respostaMailing");
}
function inserirEmailMailing(){
    abrirPagID("class/Ajax.php?funcao=inserirEmailMailing&email="+$("#email").val(), "respostaMailing");
}
function gridNoticia(){
    var de = $("#dataDE").val();
    var ate = $("#dataATE").val();

    mygrid = new dhtmlXGridObject("tabelaNoticia");
    mygrid.setImagePath("dhtmlxgrid/codebase/imgs/");
    mygrid.setHeader("ID,Título,Data,Tipo");
    mygrid.attachHeader("#text_filter,#text_filter,#select_filter,#select_filter");
    mygrid.setInitWidths("50,*,150,50");
    mygrid.setColAlign("center,left,center,center");
    mygrid.setColTypes("ro,ro,ro,ro");
    mygrid.setSkin("dhx_skyblue");
    mygrid.setColSorting("int,str,date,str");
    mygrid.init();
    mygrid.loadXML("class/Ajax.php?funcao=noticiaEditPegaGrid&dataDe="+de+"&dataAte="+ate);
    //============================================================================================;
    myDataProcessor = new dataProcessor("class/Ajax.php?funcao=excluiNoticia");
    myDataProcessor.setTransactionMode("POST", true);
    myDataProcessor.init(mygrid);
}
function excluirNoticia(){
    if(mygrid.getSelectedRowId() == null){
        alert('Selecione uma Noticia para Remover');
    }else{
        if(confirm("Tem certeza que deseja remover a noticia selecionada? A notícia apagada não poderá ser recuperada")){
            mygrid.deleteSelectedItem();
        }
    }
}
function editaNoticia(){
    if(mygrid.getSelectedRowId() == null){
        alert("Selecione uma Noticia para Editar");
    }else{
        location = location + "/editar/"+mygrid.getSelectedRowId();
    }
}
function visualizaNoticia(){
    if(mygrid.getSelectedRowId() == null){
        alert("Selecione uma Noticia para Visualziar");
    }else{
        location = location + "/visualizar/"+mygrid.getSelectedRowId();
    }
}
