Ignore:
Timestamp:
08/16/12 17:21:30 (12 years ago)
Author:
gustavo
Message:

Ticket #2911 - Melhoria na disposição e exibição das abas

Location:
sandbox/newExpressoMail/expressoMail1_2/js
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • sandbox/newExpressoMail/expressoMail1_2/js/abas.js

    r6997 r7043  
    88var countID = 2; 
    99var tab_content = ""; 
     10var lastIndexSelected = 0; 
    1011 
    1112var ptabs = $("#ptabs").tabs({  
    12         tabTemplate: "<li><a href='#{href}'>#{label}</a> <span class='ui-icon ui-icon-close'>Remover Aba</span></li>",  
     13        tabTemplate: "<li><a href='#{href}'>#{label}</a> <span class='ui-icon ui-icon-close' title='Fechar Aba'>Fechar Aba</span></li>",  
    1314        add: function( event, ui ) {  
    1415                countID++;  
    1516                $(ptabs).tabs('select', '#' + ui.panel.id);  
    1617                $.cookie('open_tabs', ($.cookie('open_tabs') ? $.cookie('open_tabs')+"," : "") +ui.panel.id.substring(6)); 
    17                 $( ui.panel ).append("<p>"+tab_content+"</p>");  
     18                $( ui.panel ).addClass("conteudo").append(tab_content);  
    1819        }, 
    1920        show: function(event, ui){ 
     
    2223        cookie: { 
    2324                expires: 1 
     25        }, 
     26        select: function(event, ui) {  
     27                console.log(ui.index); 
     28                lastIndexSelected = ui.index; 
    2429        } 
    2530});  
    2631 
    27 //CREATE A NEW TAB 
    28 function createTab(href, label, conteudo, callback){ 
     32/*  
     33        method : createTab 
     34        descrition : create a new tab 
     35        params : { 
     36                label : Label of the tab 
     37                * content : Content of the tab 
     38                * href : Tab id  
     39                * callback : a function 
     40        } 
     41        comments : { 
     42                #1 : if the user just set the label, a tab with blank content and a dynamic id is created 
     43                #2 : if a tab with a set href already exists, don't duplicate, this function only select the tab  
     44 
     45        * = Optional 
     46*/ 
     47 
     48function createTab(label, content,href, callback){ 
    2949        if( !$("#ptabs_"+href).length){ 
    30                 tab_content = conteudo; 
    31                 $(ptabs).tabs("add", "#ptabs_"+href, (label.length > 21 ? label.substring(0, 15)+"..." : label)); 
    32                 if(callback) 
     50                tab_content = content ? content : ""; 
     51                $(ptabs).tabs("add", "#ptabs_"+(href ? href : countID), (label.length > 21 ? label.substring(0, 18)+"..." : label)); 
     52                if(typeof(callback) == 'function')  
    3353                        callback(); 
    3454        }else{ 
    35                 var index = $( "li", $(ptabs) ).index( $('[href="#ptabs_'+ href +'"]').parent() ); 
    36                 $(ptabs).tabs( "select", index ); 
     55                $(ptabs).tabs( "select", indexTab(href) ); 
    3756        } 
    3857} 
     58 
     59 
     60/*  
     61        method : removeTab 
     62        descrition : remove a tab 
     63        params : { 
     64                * href : Tab id  
     65                * callback : a function 
     66        } 
     67        comments : { 
     68                #1 : if the user doesn't set no parameter, this function just remove the open tab 
     69 
     70        * = Optional 
     71*/ 
     72 
     73function removeTab(href, callback){ 
     74        ptabs.tabs("remove",  
     75                ( 
     76                        href ?  
     77                        indexTab(href) : lastIndexSelected 
     78                ) 
     79        ); 
     80        if(typeof(callback) == 'function')  
     81                callback(); 
     82} 
     83 
     84 
     85/*  
     86        method : indexTab 
     87        descrition : remove a tab 
     88        params : { 
     89                * href : Tab id  
     90        } 
     91        comments : { 
     92                #1 : if the user doesn't set no parameter, this function just return the index of the open tab 
     93 
     94        * = Optional 
     95*/ 
     96 
     97function indexTab(href){ 
     98        return href ?  
     99                $( "li", ptabs ).index( $('[href="'+href+'"]').parent() ) : lastIndexSelected; 
     100} 
  • sandbox/newExpressoMail/expressoMail1_2/js/common_functions.js

    r6997 r7043  
    11// BEGIN: FUNCTION RESIZE WINDOW 
     2var numBox = 0; 
     3 
    24if (!expresso_offline) { 
    35        var _showBar = showBar; 
     
    3739function resizeWindow(){ 
    3840 
    39         var divScrollMain = Element("divScrollMain_"+numBox); 
     41        if(!is_ie){ 
     42                var divScrollMain = Element("divScrollMain_"+numBox); 
     43        }else{ 
     44                var divScrollMain = Element("divScrollMain_"+0); 
     45        } 
    4046        var table_message = Element("table_message"); 
    4147        var content_folders = Element("content_folders"); 
     
    6470                for(var i = 1; BordersArray.length > 1 && i < BordersArray.length;i++) { 
    6571                        var div_scroll = Element("div_message_scroll_"+BordersArray[i].sequence); 
    66                         var div = Element("content_id_"+BordersArray[i].sequence); 
     72                        var div = Element("ptabs_"+BordersArray[i].sequence); 
    6773 
    6874                        if(div){ 
     
    7783        } 
    7884 
    79         if(content_folders){ 
    80                 var search_div = Element("search_div"); 
    81                 var contentFoldersY = findPosY(content_folders); 
    82                 content_folders.style.height = (clientHeight - (contentFoldersY + (contentFoldersY > findPosY(search_div) ? 0 : (search_div.clientHeight ? search_div.clientHeight : search_div.offsetHeight) + 5))) + "px"; 
    83         } 
    8485        //redim_borders(count_borders()); 
    8586        resizeMailList(); 
    8687} 
    8788// END: FUNCTION RESIZE WINDOW 
     89 
     90function resizeMailList() { 
     91        if (document.getElementById("table_message_header_box_"+numBox)==null) 
     92                return false; 
     93        var innerWidth = (window.innerWidth?window.innerWidth:document.body.clientWidth); 
     94        var scrollWidth = (innerWidth - 20 - getColumnPosition(Element("exmail_main_body"),"BODY")[0]); 
     95        document.getElementById("table_message_header_box_"+numBox).style.width = (scrollWidth-2)+'px'; 
     96        if (document.getElementById("table_resultsearch_"+numBox)==null) 
     97                document.getElementById("table_box").style.width = scrollWidth+'px'; 
     98        else 
     99                document.getElementById("table_resultsearch_"+numBox).style.width = scrollWidth+'px'; 
     100        syncColumns(); 
     101        //Alinhamento das colunas data e tamanho na pesquisa 
     102        if ( numBox > 0){ 
     103                if (is_mozilla && !is_webkit){ 
     104                        $('#table_message_header_box_'+numBox).attr('style','width:99.5%'); 
     105                        $('#colgroup_head_'+numBox).find('col').each(function(index,value){ 
     106                                 $(this).attr('width',colSizes[1][index]); 
     107                        }); 
     108                        $('#colgroup_main_'+numBox).find('col').each(function(index,value){ 
     109                                 $(this).attr('width',colSizes[1][index]); 
     110                        });      
     111                }        
     112                else if (is_webkit){ 
     113                        $('#table_message_header_box_'+numBox).removeAttr('style'); 
     114                        $('#table_message_header_box_'+numBox).css('table-layout','auto'); 
     115                } 
     116                else{ 
     117                        $('#table_message_header_box_'+numBox).css('table-layout','auto'); 
     118                } 
     119                $('#table_message_header_box_'+numBox).find('td').each(function(index,value){ 
     120                     $(this).width(colSizes[1][index]); 
     121                }); 
     122                $('#divScrollMain_'+numBox).find('tr:first').find('td').each(function(index,value){ 
     123                     $(this).width(colSizes[1][index]); 
     124                });                      
     125        } 
     126        $('#table_resultsearch_'+numBox).removeAttr('style'); 
     127} 
    88128 
    89129var _beforeunload_ = window.onbeforeunload; 
  • sandbox/newExpressoMail/expressoMail1_2/js/draw_api.js

    r6997 r7043  
    22 * Estrutura que guarda em cache as mensagens abertas, a exemplo da estrutura utilizada 
    33 * na funcionalidade de anexar mensagens. 
    4  * Isto reduz a necessidade de acessar estruturas da tela para obter informações sobre  
     4 * Isto reduz a necessidade de acessar estruturas da tela para obter informaᅵᅵes sobre  
    55 * as mensagens, como tem sido para encaminhar, responder, etc. 
    66 * Manter os dados 'limpos' em uma estrutura 'somente-leitura' permite maior flexibilidade 
    77 * para mudar a tela e menos processamento de limpeza de dados (por exemplo retirar tags de  
    8  * formatação, etc.)  
     8 * formataᅵᅵo, etc.)  
    99 */ 
    1010  
     
    4646 
    4747var currentTab,numBox = 0; // Open Tab and num of mailboxes opened at context 
    48 // Objeto Map, talvez o ideal fosse adicionar este objeto à Api do egroupware, e carregá-lo 
     48// Objeto Map, talvez o ideal fosse adicionar este objeto ï¿œ Api do egroupware, e carregï¿œ-lo 
    4949// aqui no expressoMail. 
    5050 
     
    982982} 
    983983 
    984 function resizeMailList() { 
    985         if (document.getElementById("table_message_header_box_"+numBox)==null) 
    986                 return false; 
    987         var innerWidth = (window.innerWidth?window.innerWidth:document.body.clientWidth); 
    988         var scrollWidth = (innerWidth - 20 - getColumnPosition(Element("exmail_main_body"),"BODY")[0]); 
    989         document.getElementById("table_message_header_box_"+numBox).style.width = (scrollWidth-2)+'px'; 
    990         if (document.getElementById("table_resultsearch_"+numBox)==null) 
    991                 document.getElementById("table_box").style.width = scrollWidth+'px'; 
    992         else 
    993                 document.getElementById("table_resultsearch_"+numBox).style.width = scrollWidth+'px'; 
    994         syncColumns(); 
    995         //Alinhamento das colunas data e tamanho na pesquisa 
    996         if ( numBox > 0){ 
    997                 if (is_mozilla && !is_webkit){ 
    998                         $('#table_message_header_box_'+numBox).attr('style','width:99.5%'); 
    999                         $('#colgroup_head_'+numBox).find('col').each(function(index,value){ 
    1000                                  $(this).attr('width',colSizes[1][index]); 
    1001                         }); 
    1002                         $('#colgroup_main_'+numBox).find('col').each(function(index,value){ 
    1003                                  $(this).attr('width',colSizes[1][index]); 
    1004                         });      
    1005                 }        
    1006                 else if (is_webkit){ 
    1007                         $('#table_message_header_box_'+numBox).removeAttr('style'); 
    1008                         $('#table_message_header_box_'+numBox).css('table-layout','auto'); 
    1009                 } 
    1010                 else{ 
    1011                         $('#table_message_header_box_'+numBox).css('table-layout','auto'); 
    1012                 } 
    1013                 $('#table_message_header_box_'+numBox).find('td').each(function(index,value){ 
    1014                      $(this).width(colSizes[1][index]); 
    1015                 }); 
    1016                 $('#divScrollMain_'+numBox).find('tr:first').find('td').each(function(index,value){ 
    1017                      $(this).width(colSizes[1][index]); 
    1018                 });                      
    1019         } 
    1020         $('#table_resultsearch_'+numBox).removeAttr('style'); 
    1021 } 
    1022  
    1023984function selectCancel(ev) { 
    1024985        return (false); 
     
    10811042 
    10821043 
    1083 /*Cria a div que permite a seleção de todas as mensagens*/ 
     1044/*Cria a div que permite a seleᅵᅵo de todas as mensagens*/ 
    10841045function drawSelectMsgsTable(){ 
    10851046        var div = $('<div>');    
     
    11041065        var div = $('.select-all-messages'); 
    11051066        var filterFlag = search_box_type != "ALL" ? '"' + get_lang(search_box_type) + "s" + '"': ""; 
    1106         /*Seleciona as mensagens ao navegar pelas páginas*/ 
     1067        /*Seleciona as mensagens ao navegar pelas pï¿œginas*/ 
    11071068        if (allMsgsSelected && msg_number == undefined){ 
    11081069                $('.checkbox').each(function(){ 
     
    11351096                $('#chk_box_select_all_messages').attr('checked',true); 
    11361097                if (total_pages > 1){ 
    1137                         var link = "<a class='select-link' href='#'>Limpar seleção?</a>"; 
     1098                        var link = "<a class='select-link' href='#'>Limpar seleᅵᅵo?</a>"; 
    11381099                        var info = "Todas as <b>"+totalFolderMsgs+"</b> mensagens "+filterFlag+" em "+folder+" foram selecionadas. "+link; 
    11391100                        div.html("<span>"+info+"<span>"); 
     
    11451106        else if (tSelected > 0 && !allMsgsSelected && total_pages > 1){ 
    11461107                $('#chk_box_select_all_messages').attr('checked',false); 
    1147                 var link = "<a class='select-link' href='#'>Limpar seleção?</a>"; 
     1108                var link = "<a class='select-link' href='#'>Limpar seleᅵᅵo?</a>"; 
    11481109                if (tSelected == 1){ 
    11491110                        var info = "Foi selecionada <b>"+tSelected+"</b> mensagem "+filterFlag+" em "+folder+". "+link; 
     
    11601121        } 
    11611122        else if (allMsgsSelected && total_pages > 1){ 
    1162                 var link = "<a class='select-link' href='#'>Limpar seleção?</a>"; 
     1123                var link = "<a class='select-link' href='#'>Limpar seleᅵᅵo?</a>"; 
    11631124                var info = "Todas as <b>"+totalFolderMsgs+"</b> mensagens "+filterFlag+" em "+folder+" foram selecionadas. "+link; 
    11641125                div.html("<span>"+info+"<span>"); 
     
    11841145        if (select){ 
    11851146                allMsgsSelected = true; 
    1186                 var link = "<a class='select-link' href='#'>Limpar seleção?</a>"; 
     1147                var link = "<a class='select-link' href='#'>Limpar seleᅵᅵo?</a>"; 
    11871148                var info = "Todas as <b>"+totalFolderMsgs+"</b> mensagens "+filterFlag+" em "+folder+" foram selecionadas. "+link; 
    11881149                div.html("<span>"+info+"<span>"); 
     
    12531214        /** 
    12541215         * Preenche a estrutura de cache de mensagens para posterior consulta de  
    1255          * informações sobre as mensagens no escopo global. 
     1216         * informaᅵᅵes sobre as mensagens no escopo global. 
    12561217         */ 
    12571218        for (var i=0; i<headers_msgs.length; i++) {  
     
    12641225                kill_current_box(); 
    12651226 
    1266         if(is_ie) 
    1267                 document.getElementById("border_table").width = "99.5%"; 
    1268  
    1269         numBox = 0; //As pastas sempre estarão na aba 0 
     1227        //if(is_ie) 
     1228        //              document.getElementById("border_table").width = "99.5%"; 
     1229 
     1230        numBox = 0; //As pastas sempre estarï¿œo na aba 0 
    12701231         
    12711232        openTab.content_id[numBox] = document.getElementById("ui-tabs-"+numBox); 
     
    16451606} 
    16461607 
    1647 // Passar o parâmetro offset para esta função 
     1608// Passar o parï¿œmetro offset para esta funᅵᅵo 
    16481609function make_tr_message(headers_msgs, msg_folder, offsetToGMT){ 
    16491610                headers_msgs.subject = html_entities(headers_msgs.subject); 
     
    19371898                        /** 
    19381899                                * Hack: 
    1939                                 * headers_msgs.followupflagged.id não vai funcionar porque já foi feito DataLayer.commit() 
     1900                                * headers_msgs.followupflagged.id nï¿œo vai funcionar porque jï¿œ foi feito DataLayer.commit() 
    19401901                                * por isso o id deve ser obtido do banco 
    1941                                 * também para verificar se há ou não sinalizador nesta mensagem 
     1902                                * tambï¿œm para verificar se hï¿œ ou nï¿œo sinalizador nesta mensagem 
    19421903                        */ 
    19431904 
     
    22582219        var folder; 
    22592220 
    2260         //Correção para fazer funcionar e-mails assinados no formato encapsulado. 
     2221        //Correᅵᅵo para fazer funcionar e-mails assinados no formato encapsulado. 
    22612222       // folder_id = info_msg.original_ID ? info_msg.original_ID: info_msg.msg_number; 
    22622223        //if ((folder = document.getElementById(info_msg.msg_number)) == null) 
     
    22842245                        }; 
    22852246                } 
    2286                 /*Ultima mensagem de cada página, exceto a ultima*/ 
     2247                /*Ultima mensagem de cada pï¿œgina, exceto a ultima*/ 
    22872248        else if( (current_page < total_pages) ){ 
    22882249                    
     
    23582319                        }; 
    23592320                } 
    2360                 //primeira mensagem de cada página, exceto a primeira 
     2321                //primeira mensagem de cada pï¿œgina, exceto a primeira 
    23612322                else if(current_page > 1){ 
    23622323                       
     
    32343195                        DataLayer.dispatchPath = "../prototype/"; 
    32353196                        var path = "../prototype/modules/calendar/"; 
    3236                          
     3197 
    32373198                        var startEvent = new Date();   
    32383199                        if(startEvent.toString('mm') < 30)  
     
    32543215                         
    32553216                         
    3256                         //Normalização dos dados evita ter que reemplementar toda as funcionalidades do calendar 
     3217                        //Normalizaᅵᅵo dos dados evita ter que reemplementar toda as funcionalidades do calendar 
    32573218                        eventDetails({  
    32583219                                         
     
    33473308         
    33483309        var update_labeleds_msg = function(){ 
    3349                 //TODO Mudar quando API abstrair atualizações no cache 
     3310                //TODO Mudar quando API abstrair atualizaᅵᅵes no cache 
    33503311                DataLayer.remove('labeled', false); 
    33513312                //DataLayer.get('labeled'); 
     
    33753336                        $(markers).find('span.removeLabeledMsg').click(function(event){ 
    33763337                                var id_labeled = $(event.target).attr("id"); 
    3377                                 //TODO Mudar quando API abstrair atualizações no cache 
     3338                                //TODO Mudar quando API abstrair atualizaᅵᅵes no cache 
    33783339                                //DataLayer.remove('labeled', false); 
    33793340                                //DataLayer.get('labeled'); 
     
    33993360        if ( info_msg.attachments && info_msg.attachments.length > 0 ) 
    34003361        { 
    3401                 //Código no padrão expresso 2.2 
     3362                //Cï¿œdigo no padrï¿œo expresso 2.2 
    34023363        var tr6 = document.createElement("TR"); 
    34033364                tr6.className = "tr_message_header"; 
     
    34443405                        if((url_decode(info_msg.attachments[i].name).indexOf(".ics")!=-1) || (url_decode(info_msg.attachments[i].name).indexOf(".vcard")!=-1)) 
    34453406                        { 
    3446                                 //Link para importar calendário 
     3407                                //Link para importar calendï¿œrio 
    34473408                                var link_import_attachment = new Image(); 
    34483409                                link_import_attachment.src = "templates/"+template+"/images/new.png"; 
     
    34593420            if((url_decode(info_msg.attachments[i].name).indexOf(".eml") != -1)) 
    34603421                        { 
    3461                                 //Link para importar calendário 
     3422                                //Link para importar calendï¿œrio 
    34623423                                var link_open_msg = new Image(); 
    34633424                                link_open_msg.src = "templates/"+template+"/images/email.png"; 
     
    35093470                                        break; 
    35103471                                case 12: 
    3511                                         write_msg('Este evento não existe mais.'); 
     3472                                        write_msg('Este evento nï¿œo existe mais.'); 
    35123473                                        return; 
    35133474                                        break;                   
     
    36263587 
    36273588                                if ( ( links.item( i ).href.indexOf( 'javascript:' ) !== 0 ) && 
    3628                                         (links.item( i ).href.indexOf(anchor_pattern) !== 0) ) //se não for âncora 
     3589                                        (links.item( i ).href.indexOf(anchor_pattern) !== 0) ) //se nï¿œo for ï¿œncora 
    36293590                                                links.item( i ).setAttribute( 'target', '_blank' ); 
    36303591                        } 
     
    36823643                        var fdr = info_msg.msg_folder;  
    36833644                                        var i = 0; 
    3684                                 //verifica se está no novo padrão de montagem das mensagens ou no antigo, necessário 
     3645                                //verifica se estï¿œ no novo padrï¿œo de montagem das mensagens ou no antigo, necessï¿œrio 
    36853646                                //para exibir as imagens no arquivamento local arquivamento local. 
    36863647                                if(thumbs){ 
     
    37443705 
    37453706        /* 
    3746          * TODO: implementar o controle como preferência do usuário 
     3707         * TODO: implementar o controle como preferï¿œncia do usuï¿œrio 
    37473708         * 
    37483709         */ 
     
    37773738                                                                                        '</a>'+  
    37783739                                                                                        '<span style="margin-left:5px; margin-top:7px; position:absolute;">'+name+'</span>'+  
    3779                                                                                         '<a title="Próxima" onclick="javascript:$.fancybox.next();" style="float:right;">' +  
     3740                                                                                        '<a title="Prï¿œxima" onclick="javascript:$.fancybox.next();" style="float:right;">' +  
    37803741                                                                                                '<img src="./templates/'+template+'/images/right_arrow_white.png" width="30" height="30" />' +  
    37813742                                                                                        '</a>' +  
     
    38793840        var validation = email.split('"'); 
    38803841         
    3881         //FUNÇÃO QUE VALIDA OS DADOS QUANDO O EMAIL É DIGITADO COM ("NOME SOBRENOME" <Email@dominio.com>) 
     3842        //FUNᅵᅵO QUE VALIDA OS DADOS QUANDO O EMAIL ï¿œ DIGITADO COM ("NOME SOBRENOME" <Email@dominio.com>) 
    38823843        var complexValidation = function(complexMail){ 
    38833844                var Objct = {}; 
     
    38993860                        ContactBox = complexValidation(validation); 
    39003861                        break; 
    3901                 //CORRIGI ERRO DE DIGITAÇÃO COMO ( huahua"<huhau@hauhau.com>) ou (hahahaha"huahua@email.com) ou ainda (hahahaha"huahua@ema  il.com) 
     3862                //CORRIGI ERRO DE DIGITAᅵᅵO COMO ( huahua"<huhau@hauhau.com>) ou (hahahaha"huahua@email.com) ou ainda (hahahaha"huahua@ema  il.com) 
    39023863                case 2:  
    39033864                        ContactBox = complexValidation(validation); 
    39043865                        break; 
    3905                 //RECEBE O EMAIL CORRETAMENTE SÓ VALIDA POSSIVEIS ERROS COMO O DE CIMA E OS CORRIGI CASO ACONTEÇAM 
     3866                //RECEBE O EMAIL CORRETAMENTE Sï¿œ VALIDA POSSIVEIS ERROS COMO O DE CIMA E OS CORRIGI CASO ACONTEï¿œAM 
    39063867                case 3: 
    39073868                        //RETIRA O PRIMEIRO INDICE QUE FICOU "INUTIL" 
     
    39383899                        }                
    39393900                         
    3940                         //FECHA OS CONTATOS DINÂMICOS 
     3901                        //FECHA OS CONTATOS DINï¿œMICOS 
    39413902                        if( (e.keyCode == 27) && $( this ).data( "catcomplete" ).menu.active ){ 
    39423903                                   e.stopPropagation(); 
     
    40373998                        var char = input.val().charAt(input.val().length-1); 
    40383999                        var maiusculas = RegExp("[A-Z]"); 
    4039                         /*Se o ultimo caracter for ">" é porque o campo está sendo editado (a partir de duplo clique)*/ 
     4000                        /*Se o ultimo caracter for ">" ï¿œ porque o campo estï¿œ sendo editado (a partir de duplo clique)*/ 
    40404001                        var tamanho = 0; 
    40414002                        if(char == ">"){ 
    4042                                 /*Faz um calculo prévio do tamanho do campo de acordo com o tamanho de cada caracter da string*/ 
     4003                                /*Faz um calculo prï¿œvio do tamanho do campo de acordo com o tamanho de cada caracter da string*/ 
    40434004                                for(i=0; i<input.val().length; i++){ 
    4044                                         /*Se o caracter for maiúsculo, o valor de pixel é maior*/ 
     4005                                        /*Se o caracter for maiï¿œsculo, o valor de pixel ï¿œ maior*/ 
    40454006                                        if(maiusculas.test(input.val().substr(i, 1)) == true){ 
    40464007                                                tamanho += 9; 
     
    40524013                                input.css("width", tamanho); 
    40534014                        } 
    4054                         /*Ao inserir novo contato, não existe a necessidade de calcular tamanho do campo*/ 
     4015                        /*Ao inserir novo contato, nï¿œo existe a necessidade de calcular tamanho do campo*/ 
    40554016                        else{ 
    40564017                                input.css("width", 15+(input.val().length * 9)); 
     
    40634024                var these = $(this); 
    40644025                 
    4065                 // Função para monstar a caixinha de e-mail. 
     4026                // Funᅵᅵo para monstar a caixinha de e-mail. 
    40664027                function makeBoxMail(){ 
    40674028                        if(canMakeBox && !fastSearch){ 
     
    40994060                }, 50); 
    41004061        }); 
    4101         //SE FOR EDIÇÃO DE EMAILS RECALCULA O INPUT E SETA O FOCO 
     4062        //SE FOR EDIᅵᅵO DE EMAILS RECALCULA O INPUT E SETA O FOCO 
    41024063        if(input.hasClass("box-input")){ 
    41034064                input.trigger("keydown"); 
     
    42794240} 
    42804241 
    4281 //FUNÇÃO QUE "SETA" OS BINDS DOS CAMPOS PARA - CC - CCO 
     4242//FUNᅵᅵO QUE "SETA" OS BINDS DOS CAMPOS PARA - CC - CCO 
    42824243function input_binds(div, ID){ 
    42834244 
     
    43044265                                box.unbind("dblclick").bind("dblclick", function(e){ 
    43054266                                        new $.Zebra_Dialog('<strong>Impossivel editar</strong> um contato do ldap\n' + 
    4306                                                 '<strong>Porém</strong>é possivel remove-lo', { 
     4267                                                '<strong>Porï¿œm</strong>ï¿œ possivel remove-lo', { 
    43074268                                                'buttons':  false, 
    43084269                                                'modal': false, 
     
    43214282         
    43224283         
    4323         //VERIFICA PREFERENCIA DE CONTATOS DINÂMICOS ESTA ATIVA 
     4284        //VERIFICA PREFERENCIA DE CONTATOS DINï¿œMICOS ESTA ATIVA 
    43244285        if(parseInt(preferences.use_dynamic_contacts)){ 
    4325                 //PREPARAÇÃO DA ARRAY DOS CONTATOS DINÂMICOS 
     4286                //PREPARAᅵᅵO DA ARRAY DOS CONTATOS DINï¿œMICOS 
    43264287 
    43274288                $.widget( "custom.catcomplete", $.ui.autocomplete, { 
     
    43564317                        } 
    43574318                }); 
    4358                 //INSERÇÃO DO AUTO COMPLETE AO INPUT 
     4319                //INSERᅵᅵO DO AUTO COMPLETE AO INPUT 
    43594320                div.find("input").catcomplete({ 
    43604321                        minLength: 1,                    
     
    43884349                        }, 
    43894350                         
    4390                         //EVENTO AO SELECIONAR UM CONTATO DINÂMICO 
     4351                        //EVENTO AO SELECIONAR UM CONTATO DINï¿œMICO 
    43914352                        select: function( event, ui ) { 
    43924353                                canMakeBox = false; 
     
    44104371                }) 
    44114372                 
    4412                 //MONTAGEM DA LISTA DE CONTATOS DINÂMICOS DO AUTO COMPLETE 
     4373                //MONTAGEM DA LISTA DE CONTATOS DINï¿œMICOS DO AUTO COMPLETE 
    44134374                .data( "catcomplete" )._renderItem = function( ul, item ) { 
    44144375                        if($(ul).find("li").length < 50){ 
    44154376                                var autocomplete = $(this)[0].element; 
    4416                                 //cálculo dinâmico da largura da lista 
     4377                                //cï¿œlculo dinï¿œmico da largura da lista 
    44174378                                var width = (item.label ? item.label.length : (item.value ? item.value.length : (item.email ? item.email.length : 20 ))); 
    44184379                                width = width*5 + (is_ie ? 170 : 200) + 16; 
     
    44344395                                                        'type':     'question', 
    44354396                                                        'custom_class': (is_ie ? 'configure-zebra-dialog' : ''), 
    4436                                                         'title':    'Atenção', 
    4437                                                         'buttons': ['Sim','Não'],                
     4397                                                        'title':    'Atenᅵᅵo', 
     4398                                                        'buttons': ['Sim','Nï¿œo'],              
    44384399                                                        'overlay_opacity': '0.5', 
    44394400                                                        'onClose':  function(caption) { 
     
    44434404                                                                        updateDynamicContact(); 
    44444405                                                                        cache = new Array(); 
    4445                                                                 }else if(caption == 'Não'){ 
     4406                                                                }else if(caption == 'Nï¿œo'){ 
    44464407                                                                        $(focusIn).focus(); 
    44474408                                                                } 
     
    44544415        } 
    44554416         
    4456         //FUNÇÃO DOS BOTÕES PARA - CC - CCO 
     4417        //FUNᅵᅵO DOS BOTï¿œES PARA - CC - CCO 
    44574418        div.parents("tr:first").find("button").button().click(function(){ 
    44584419                click = true; 
     
    44784439                });      
    44794440        } 
    4480         var ID = create_border("",border_ID); 
    4481          
     4441        //var ID = create_border("",border_ID); 
     4442        var ID = countID; 
     4443 
     4444        createTab("Nova Mensagem"); 
     4445 
    44824446        if (ID == 0) 
    44834447                return 0; 
     
    44904454                $("#footer_menu").css('display','none'); 
    44914455        } 
    4492         var content = $("#content_id_"+ID).html(DataLayer.render("../prototype/modules/mail/templates/new_message.ejs", {id: ID}));     
     4456        var content = $("#ptabs_"+ID).html(DataLayer.render("../prototype/modules/mail/templates/new_message.ejs", {id: ID}));     
    44934457        RichTextEditor.loadEditor2(ID); 
    44944458         
     
    45054469        } 
    45064470         
    4507         //AÇÃO GENERICA PARA ADICIONAR/REMOVER 
     4471        //AᅵᅵO GENERICA PARA ADICIONAR/REMOVER 
    45084472        var change_text = function(field, text, to_text){ 
    45094473                var text = (field.html() == text ? to_text : text); 
     
    45114475        } 
    45124476         
    4513         //AÇÃO GENERICA PARA ADICIONAR/REMOVER CC & CCO 
     4477        //AᅵᅵO GENERICA PARA ADICIONAR/REMOVER CC & CCO 
    45144478        var show_hide = function(field, button){ 
    45154479                button.toggleClass("expressomail-button-icon-ative"); 
     
    45254489        input_binds(content.find('[name="input_aux_to"]').css("max-width" , parseInt(content.find(".email-area").css("width"))-5).focus().parent().css({"max-height" : "115px", "overflow-y" : "auto"}), ID);    
    45264490         
    4527         //Botão TextoRico/TextoSimples 
     4491        //Botï¿œo TextoRico/TextoSimples 
    45284492        content.find(".new-msg-head-right-buttons").find(".button").button().filter(".rich-button").click(function(){ 
    4529                 /*Se o texto do botão for "Texto simples" exibirá a mensagem antes de alterar para texto simples*/ 
     4493                /*Se o texto do botï¿œo for "Texto simples" exibirï¿œ a mensagem antes de alterar para texto simples*/ 
    45304494                if($(".rich-button").find("span").text() == get_lang("Simple Text")){ 
    45314495                        $.Zebra_Dialog(get_lang("Convert this message into plain text can make parts of it are removed. Continue?"), { 
     
    45424506                        }) 
    45434507                } 
    4544                 /*Se o texto do botão for "Texto rico" simplesmente altera para texto rico*/ 
     4508                /*Se o texto do botï¿œo for "Texto rico" simplesmente altera para texto rico*/ 
    45454509                else{ 
    45464510                        RichTextEditor.setPlain(check_input(content.find('[name="textplain_rt_checkbox"]')), ID); 
     
    45494513        }) 
    45504514         
    4551         //Botão Adicionar/Remover CCO 
     4515        //Botï¿œo Adicionar/Remover CCO 
    45524516        .end().filter(".cco-button").click(function(){ 
    45534517                show_hide(content.find(".cco-tr"), $(this)); 
    45544518                change_text($(this).find(".ui-button-text"), get_lang("Add BCC"), get_lang('Remove CCo')); 
    45554519        }) 
    4556         //Botão Adicionar/Remover CC 
     4520        //Botï¿œo Adicionar/Remover CC 
    45574521        .end().filter(".cc-button").click(function(){ 
    45584522                show_hide(content.find(".cc-tr"), $(this)); 
    45594523                change_text($(this).find(".ui-button-text"), get_lang("Add CC"), get_lang('Remove CC')); 
    45604524        }) 
    4561     //Botão Responder a 
     4525    //Botï¿œo Responder a 
    45624526    .end().filter(".reply-to-button").click(function(){ 
    45634527        show_hide(content.find(".reply-to-tr"), $(this)); 
     
    49284892            e.preventDefault(); 
    49294893        }); 
    4930         //DRAG and DROP DE ARQUIVOS NÃO FUNCIONA NO IE 
     4894        //DRAG and DROP DE ARQUIVOS Nï¿œO FUNCIONA NO IE 
    49314895        if(!is_ie){ 
    49324896                $("body").bind('dragenter', function (e) { 
     
    49804944 
    49814945        var el_shared_users = Element("el_shared_users"); 
    4982         /* Recupera a pasta atual do usuário (selecionada) */ 
     4946        /* Recupera a pasta atual do usuï¿œrio (selecionada) */ 
    49834947        var user_shared = folder.split(cyrus_delimiter); 
    4984         /* Verifica se está nas próprias pastas */ 
     4948        /* Verifica se estï¿œ nas prï¿œprias pastas */ 
    49854949        if(user_shared[0] == "INBOX"){ 
    49864950                user_shared = User.me.uid; 
     
    49984962                        _option.text = el_shared_users.options[x].text; 
    49994963                        _option.value = el_shared_users.options[x].value; 
    5000                         /* Faz o tratamento do nome da pasta para fazer a verificação e selecionar o valor no select */ 
     4964                        /* Faz o tratamento do nome da pasta para fazer a verificaᅵᅵo e selecionar o valor no select */ 
    50014965                        var str_begin_name = _option.text.indexOf('<') + 1; 
    50024966                        var str_end_name = _option.text.indexOf('@'); 
    50034967                        var user_selected_name = _option.text.substring(str_begin_name, str_end_name); 
    5004                         /* Verifica se é o usuário da pasta selecionada */                       
     4968                        /* Verifica se ï¿œ o usuï¿œrio da pasta selecionada */                   
    50054969                        if(user_selected_name == user_shared){ 
    50064970                                _option.selected = 'selected'; 
     
    50354999                        _option.text =  '"'+mycn+'" <'+Element("user_email").value+'>'; 
    50365000                        _option.value  = mycn+";"+Element("user_email").value; 
    5037                         /* Verifica se é o usuário logado */ 
     5001                        /* Verifica se ï¿œ o usuï¿œrio logado */ 
    50385002                        if(user_shared == User.me.uid) 
    50395003                                _option.selected = 'selected'; 
     
    50475011                                _option.text = '"'+cn+'" <'+data[x].mail[0]+'>'; 
    50485012                                _option.value = cn+';'+data[x].mail[0]+';'+data[x].save_shared[0]+';'+data[x].uid[0]; 
    5049                                 /* Faz o tratamento do nome da pasta para fazer a verificação e selecionar o valor no select */ 
     5013                                /* Faz o tratamento do nome da pasta para fazer a verificaᅵᅵo e selecionar o valor no select */ 
    50505014                                var str_begin_name = _option.text.indexOf('<') + 1; 
    50515015                                var str_end_name = _option.text.indexOf('@'); 
    50525016                                var user_selected_name = _option.text.substring(str_begin_name, str_end_name);  
    5053                                 /* Verifica se é o usuário da pasta selecionada */ 
     5017                                /* Verifica se ï¿œ o usuï¿œrio da pasta selecionada */ 
    50545018                                if(user_selected_name == user_shared){ 
    50555019                                        _option.selected = 'selected'; 
     
    52205184        var tbody = Element('tbody_box'); 
    52215185        for (var i=0; i<(headers_msgs.length); i++){ 
    5222             // passa parâmetro offset 
     5186            // passa parï¿œmetro offset 
    52235187                var tr = this.make_tr_message(headers_msgs[i], headers_msgs[i].msg_folder); 
    52245188                if (tr) 
     
    54465410 
    54475411                if(isOverLimit) { 
    5448                         alert("Esse campo possui muitos endereços ("+_address.length+" destinatários).\r\n"+ 
    5449                         "Para evitar o travamento do navegador, o botão 'Adicionar Contato' foi desabilitado!"); 
     5412                        alert("Esse campo possui muitos endereï¿œos ("+_address.length+" destinatï¿œrios).\r\n"+ 
     5413                        "Para evitar o travamento do navegador, o botï¿œo 'Adicionar Contato' foi desabilitado!"); 
    54505414                } 
    54515415 
  • sandbox/newExpressoMail/expressoMail1_2/js/main.js

    r6997 r7043  
    77var results_search_messages = "";  
    88var cabecalho = '<h4>ExpressoLivre - ExpressoMail</h4>';  
    9 // Variavel para controle de atualização das mensagens listadas na modal de alerta de filtro por remetente 
     9// Variavel para controle de atualizaᅵᅵo das mensagens listadas na modal de alerta de filtro por remetente 
    1010var checkAlarmsFilter = false; 
    1111 
     
    1515DataLayer.get("folder", true); 
    1616 
    17 //Os IE's < 9 não possui suporte a trim() introduzida no JavaScript 1.8.1 
     17//Os IE's < 9 nï¿œo possui suporte a trim() introduzida no JavaScript 1.8.1 
    1818if(!String.prototype.trim){   
    1919        String.prototype.trim = function(){ 
     
    2121        }  
    2222} 
    23          
     23 
    2424function mount_url_folder(folders){ 
    2525        return folders.join(cyrus_delimiter); 
     
    8787 
    8888                $( "#ptabs span.ui-icon-close" ).live( "click", function() {  
    89                         var index = $( "li", $(ptabs) ).index( $( this ).parent() ); 
    90                         $(ptabs).tabs( "remove", index ); 
     89                        removeTab($( this ).prev().attr("href")); 
     90 
    9191                        var teste = ""; 
    9292                        var ola = $( this ); 
     
    102102                        axis: "x",  
    103103                        items: "li:not(.ui-tab-disabled)",  
    104                         placeholder: "ui-state-highlight"  
    105104                }).disableSelection(); 
    106105 
    107                 if($.cookie('open_tabs')){               
    108                         if($.cookie('open_tabs') != ""){         
    109                                 var selected = $.cookie('ui-tabs-1');    
    110                                 var ola = $.cookie('open_tabs'); 
    111                                 $.cookie('open_tabs', ""); 
    112                                 $.each(ola.split(','), function(index, value){ 
    113                                         var msg_number = value.split("_r_")[0]; 
    114                                         var msg_folder = Base64.decode(value.split("_r_")[1]); 
    115                                         $.ajax({ 
    116                                                 url: 'controller.php?' + $.param( {action: '$this.imap_functions.get_info_msg', 
    117                                               msg_number: msg_number,  
    118                                               msg_folder: msg_folder, 
    119                                               decoded: true } ), 
    120                                                 async : false, 
    121                                                 success: function( data ){ 
    122                                                     data = connector.unserialize( data ); 
    123                                                     if( data ) 
    124                                                                 show_msg( data ); 
    125                                                         $(ptabs).tabs("select", parseInt(selected)); 
    126                                             }, 
    127                                                 beforeSend: function( jqXHR, settings ){ 
    128                                                         connector.showProgressBar(); 
    129                                                 }, 
    130                                                 complete: function( jqXHR, settings ){ 
    131                                                         connector.hideProgressBar(); 
    132                                                 } 
    133                                         }); 
    134                                 }); 
    135                         } 
     106                if($.cookie('open_tabs')){       
     107                        $.Zebra_Dialog("Gostaria de recuperar suas mensagens que estavam abertas?", { 
     108                                'type':     'question', 
     109                                'title':    "Recuperar Mensagens Abertas", 
     110                                'buttons':  [get_lang("Yes"), get_lang("No")], 
     111                                'overlay_opacity' : 0.5, 
     112                                'onClose':  function(caption) { 
     113                                        if(caption == get_lang("Yes")){ 
     114                                                if($.cookie('open_tabs') != ""){         
     115                                                        var selected = $.cookie('ui-tabs-1');    
     116                                                        var ola = $.cookie('open_tabs'); 
     117                                                        $.cookie('open_tabs', ""); 
     118                                                        $.each(ola.split(','), function(index, value){ 
     119                                                                if(value.split("_r_").length > 1){ 
     120                                                                        var msg_number = value.split("_r_")[0]; 
     121                                                                        var msg_folder = Base64.decode(value.split("_r_")[1]); 
     122                                                                        $.ajax({ 
     123                                                                                url: 'controller.php?' + $.param( {action: '$this.imap_functions.get_info_msg', 
     124                                                                              msg_number: msg_number,  
     125                                                                              msg_folder: msg_folder, 
     126                                                                              decoded: true } ), 
     127                                                                                async : false, 
     128                                                                                success: function( data ){ 
     129                                                                                    data = connector.unserialize( data ); 
     130                                                                                    if( data ) 
     131                                                                                                show_msg( data ); 
     132                                                                                        $(ptabs).tabs("select", parseInt(selected)); 
     133                                                                            }, 
     134                                                                                beforeSend: function( jqXHR, settings ){ 
     135                                                                                        connector.showProgressBar(); 
     136                                                                                }, 
     137                                                                                complete: function( jqXHR, settings ){ 
     138                                                                                        connector.hideProgressBar(); 
     139                                                                                } 
     140                                                                        }); 
     141                                                                }else{ 
     142                                                                        write_msg("Novas Mensagens nï¿œo podem ser recuperadas, verifique seus rascunhos");                      
     143                                                                } 
     144                                                        }); 
     145                                                } 
     146                                        }else  
     147                                                write_msg("Mensagens removidas dos cookies"); 
     148                                                $.cookie('open_tabs', ''); 
     149                                        } 
     150                        }); 
    136151                } 
    137152 
     
    149164                    } 
    150165                } 
    151                 if (preferences.use_local_messages==1) { //O I.E 7 estava se atrapalhando caso esses loads fossem feitos após as chamadas ajax. Antes não apresentou problemas... 
     166                if (preferences.use_local_messages==1) { //O I.E 7 estava se atrapalhando caso esses loads fossem feitos apï¿œs as chamadas ajax. Antes nï¿œo apresentou problemas... 
    152167                        connector.loadScript('mail_sync'); 
    153168                        setTimeout('auto_archiving()', 30000); 
     
    159174                } 
    160175                cExecute ("$this.imap_functions.get_msgs&folder=INBOX&sort_box_type=SORTARRIVAL&search_box_type=ALL&sort_box_reverse=1&msg_range_begin=1", handler_populateSelectedMsgs); 
    161                 //Substituido por padrão Jquery 
     176                //Substituido por padrï¿œo Jquery 
    162177                cExecute ("$this.imap_functions.get_range_msgs2&folder=INBOX&msg_range_begin=1&msg_range_end="+preferences.max_email_per_page+"&sort_box_type=SORTARRIVAL&search_box_type=ALL&sort_box_reverse=1", handler_draw_box); 
    163178                //cExecute ("$this.db_functions.get_dropdown_contacts", save_contacts); //Save contacts needs preferences. 
     
    171186                //       
    172187 
    173                 //Troca da forma de construção de menu para o plugin jquery.contextMenu 
     188                //Troca da forma de construᅵᅵo de menu para o plugin jquery.contextMenu 
    174189                //ConstructMenuTools(); 
    175190                 
    176                 if ( (preferences.use_local_messages==1) && (expresso_local_messages.is_offline_installed()) )  //Precisa ser feito após a renderização da caixa de emails 
     191                if ( (preferences.use_local_messages==1) && (expresso_local_messages.is_offline_installed()) )  //Precisa ser feito apï¿œs a renderizaᅵᅵo da caixa de emails 
    177192                        check_mail_in_queue(); 
    178193                 
     
    181196                        loadApplet(); 
    182197                } 
    183                 // Fim da inserção da applet     
     198                // Fim da inserᅵᅵo da applet         
    184199                DataLayer.get("folder", true); 
    185200                cExecute("$this.imap_functions.get_folders_list&onload=true", update_menu);      
     
    250265        } 
    251266 
    252         // Versão 
     267        // Versï¿œo 
    253268        Element('divAppboxHeader').innerHTML = title_app; 
    254269 
     
    280295                '<td style="padding-left:17px" width=33% id="content_quota" align=left></td>' + 
    281296                '<td width=33% height=16px align=center nowrap><font face=Verdana, Arial, Helvetica, sans-serif color=#000066 size=2>' + 
    282                 '<b>ExpressoMail Offline</b><font size=1><b> - Versão 1.0</b></font></td>' + 
     297                '<b>ExpressoMail Offline</b><font size=1><b> - Versï¿œo 1.0</b></font></td>' + 
    283298                '<td width=33% id="div_menu_c3" align=right></td>' + 
    284299                '</tr></table>'; 
    285300 
    286                 //Troca da forma de construção de menu para o plugin jquery.contextMenu 
     301                //Troca da forma de construᅵᅵo de menu para o plugin jquery.contextMenu 
    287302                //ConstructMenuTools(); 
    288303 
     
    302317/** 
    303318 * Carrega a applet java no objeto search_div 
    304  * @author Mário César Kolling <mario.kolling@serpro.gov.br> 
     319 * @author Mï¿œrio Cï¿œsar Kolling <mario.kolling@serpro.gov.br> 
    305320 */ 
    306321 
     
    370385} 
    371386/* 
    372         função que remove todos os anexos... 
     387        funᅵᅵo que remove todos os anexos... 
    373388*/ 
    374389function remove_all_attachments(folder,msg_num) { 
     
    485500                // Verifica se existe o objeto applet 
    486501                if (!Element('cert_applet')){ 
    487                         // se não existir, mostra mensagem de erro. 
     502                        // se nï¿œo existir, mostra mensagem de erro. 
    488503                        write_msg(get_lang('The preference "%1" isn\'t enabled.', get_lang('Enable digitally sign/cipher the message?'))); 
    489504                } else { 
    490505                        // se existir prepara os dados para serem enviados e chama a 
    491                         // operação na applet 
     506                        // operaᅵᅵo na applet 
    492507 
    493508                   // if ((msg_info.DispositionNotificationTo) && ((msg_info.Unseen == 'U') || (msg_info.Recent == 'N'))){ 
     
    524539                var id_msg_read = ID+"_r_"+folderName; 
    525540         
    526         //Evita a tentativa de criação de uma aba cujo ID já existe 
     541        //Evita a tentativa de criaᅵᅵo de uma aba cujo ID jï¿œ existe 
    527542        if (Element("border_id_"+id_msg_read) && currentTab > 0)  
    528543                    id_msg_read += "n"; 
     
    548563                else { 
    549564                        var sbj = msg_info.subject.length < 21 ? msg_info.subject : msg_info.subject.substr(0,21) + "..."; 
    550                         createTab(id_msg_read,sbj, msg_info.body); 
     565                        var content = $(DataLayer.render("../prototype/modules/mail/templates/email.ejs", {info : msg_info})); 
     566 
     567                        createTab(sbj, content.html(), id_msg_read); 
     568 
     569                        content.find(".message-flags").buttonset(); 
     570                        //$(".message-flags").buttonset(); 
     571                        //$(".button").button(); 
    551572                        /* 
    552573                        var border_id = create_border(msg_info.subject, id_msg_read); 
     
    592613 
    593614                        if (confNotification) { 
    594                         /* Adequação a nova funcionalidade. Agora, a confirmação de leitura é uma preferência do usuário. */ 
     615                        /* Adequaᅵᅵo a nova funcionalidade. Agora, a confirmaᅵᅵo de leitura ï¿œ uma preferï¿œncia do usuï¿œrio. */ 
    595616                                if(preferences.confirm_read_message) { 
    596617                                        $.Zebra_Dialog(get_lang("Would you like to send the read receipt?"), { 
     
    642663                                alarmFollowupflagged('filtersAlarms', data); 
    643664                        } 
    644                         /* Busca  nas pastas indexadas para ver se há novas mensagens com a flag $FilteredMessage */ 
     665                        /* Busca  nas pastas indexadas para ver se hï¿œ novas mensagens com a flag $FilteredMessage */ 
    645666                        cExecute ("$this.imap_functions.getFlaggedAlertMessages&folders="+fromRules, handlerMessageFilter); 
    646667                } 
     
    864885function delete_msgs(folder, msgs_number, border_ID, show_success_msg,archive){  
    865886                        if( preferences.use_local_messages == 1 && expresso_local_messages.isArchiving( msgs_number, folder ) ){ 
    866                           alert( "Impossivel deletar mensagens que estão ainda estão sendo arquivadas." ); 
     887                          alert( "Impossivel deletar mensagens que estï¿œo ainda estï¿œo sendo arquivadas." ); 
    867888                          return; 
    868889                        } 
     
    877898                                        var arrayFolder = folder.split(cyrus_delimiter);  
    878899                                        userTrashFolder = 'user'+cyrus_delimiter+arrayFolder[1]+cyrus_delimiter+special_folders['Trash'];   
    879                                         /** TODO Mudar quando melhorias forem implementadas na API de atualização do cache */ 
     900                                        /** TODO Mudar quando melhorias forem implementadas na API de atualizaᅵᅵo do cache */ 
    880901                                        DataLayer.remove('folder', false); 
    881902                                        DataLayer.get('folder'); 
     
    9951016         
    9961017        if( preferences.use_local_messages == 1 && expresso_local_messages.isArchiving( selected_messages, folder ) ){ 
    997           alert( "Impossivel mover mensagens que estão ainda estão sendo arquivadas." ); 
     1018          alert( "Impossivel mover mensagens que estï¿œo ainda estï¿œo sendo arquivadas." ); 
    9981019          return; 
    9991020        } 
     
    11441165        var folder_error = new_folder_name; 
    11451166        if( preferences.use_local_messages == 1 && expresso_local_messages.isArchiving( msgs_number, folder ) ){ 
    1146             alert( "Impossivel mover mensagens que estão ainda estão sendo arquivadas." ); 
     1167            alert( "Impossivel mover mensagens que estï¿œo ainda estï¿œo sendo arquivadas." ); 
    11471168            return; 
    11481169        } 
     
    12081229                                        } 
    12091230                                } 
    1210                                 //se houver pagina anterior a paginação deve ser refeita 
     1231                                //se houver pagina anterior a paginaᅵᅵo deve ser refeita 
    12111232                                else if (current_page > 1){ 
    12121233                                        $('#msg_opt_previous_'+msg_to_delete.getAttribute('id') + '_r').trigger('click'); 
     
    12521273                if ( preferences.use_shortcuts == '1') { 
    12531274                        var all_messages = Element('tbody_box').childNodes; 
    1254                         // verificar se a msg selecionada com o checkbox é a mesma selecionada com o shortcut 
     1275                        // verificar se a msg selecionada com o checkbox ï¿œ a mesma selecionada com o shortcut 
    12551276                        var msg_list_shortcut = get_selected_messages_shortcut().split(','); 
    12561277                        if(data.msgs_number.length > 0 && msg_list_shortcut.length > 0 && data.msgs_number.toString() == msg_list_shortcut.toString()){ 
     
    13121333                } 
    13131334 
    1314         // se a aba estiver aberta e selecionada, apenas a msg da aba é movida 
     1335        // se a aba estiver aberta e selecionada, apenas a msg da aba ï¿œ movida 
    13151336        if(currentTab.toString().indexOf("_r") != -1 && currentTab == border_ID) 
    13161337        { 
     
    13821403} 
    13831404 
    1384 //Caso deseja-se que não se abra a mensagem anterior independente da  
     1405//Caso deseja-se que nï¿œo se abra a mensagem anterior independente da  
    13851406//preferencia do usuario 
    13861407function move_msgs_not_previus(folder, msgs_number, border_ID, new_folder, new_folder_name) { 
     
    13941415 
    13951416 
    1396       // se a aba estiver aberta e selecionada, apenas a msg da aba é movida 
     1417      // se a aba estiver aberta e selecionada, apenas a msg da aba ï¿œ movida 
    13971418      if(currentTab.toString().indexOf("_r") != -1) 
    13981419      { 
     
    14301451 
    14311452        if( !id_msgs ){ 
    1432             write_msg( "Todas as mensagens já foram arquivadas anteriormente." ); 
     1453            write_msg( "Todas as mensagens jï¿œ foram arquivadas anteriormente." ); 
    14331454            return; 
    14341455        } 
     
    14431464                msgs_info[i] = connector.unserialize( data[i] ); 
    14441465 
    1445             //vejo se já tinha mensagens locais 
     1466            //vejo se jï¿œ tinha mensagens locais 
    14461467            var h = expresso_local_messages.has_local_mails(); 
    14471468             
     
    15091530 
    15101531         if( !id_msgs ){ 
    1511               write_msg( "Todas as mensagens já foram arquivadas anteriormente." ); 
     1532              write_msg( "Todas as mensagens jï¿œ foram arquivadas anteriormente." ); 
    15121533              return; 
    15131534          } 
     
    15221543                msgs_info[i] = connector.unserialize( data[i] ); 
    15231544 
    1524             //vejo se já tinha mensagens locais 
     1545            //vejo se jï¿œ tinha mensagens locais 
    15251546            var h = expresso_local_messages.has_local_mails(); 
    15261547             
     
    17411762 
    17421763                          
    1743                         /* Verifica se está na tela de pesquisa. */ /* 
     1764                        /* Verifica se estï¿œ na tela de pesquisa. */ /* 
    17441765                        if(selected_messages.indexOf("_") != -1)  
    17451766                        {  
    17461767                                results_search_messages = selected_messages;  
    1747                                 /* Retira a informação da aba */ /* 
     1768                                /* Retira a informaᅵᅵo da aba */ /* 
    17481769                                selected_messages = selected_messages.substring(0,selected_messages.indexOf("_")); 
    17491770        } 
     
    21192140                        openTab.imapBox[new_border_ID] = folder_message.value; 
    21202141                        document.getElementById('font_border_id_'+new_border_ID).innerHTML = data.subject; 
    2121                         title = "Edição: "+ html_entities(data.subject); 
     2142                        title = "Ediᅵᅵo: "+ html_entities(data.subject); 
    21222143                         
    21232144                        data.to = Element("to_values_" + border_ID).value; 
     
    21912212} 
    21922213 
    2193 //DESENHA OS RETANGULOS PARA OS E-MAIL NA OPÇÃO REPLY 
     2214//DESENHA OS RETANGULOS PARA OS E-MAIL NA OPᅵᅵO REPLY 
    21942215function draw_reply_boxes_by_field(field, value, context){ 
    21952216        array = break_comma(value); 
     
    25542575                        } 
    25552576                        else { // crypt 
    2556                                 //TODO: Colocar mensagem de erro, e finalizar o método. 
     2577                                //TODO: Colocar mensagem de erro, e finalizar o mï¿œtodo. 
    25572578                                operation = 'nop'; 
    25582579                        } 
     
    26102631 
    26112632                */ 
    2612                 delete_border(ID,'true'); 
     2633                //delete_border(ID,'true'); 
     2634                removeTab(); 
     2635 
    26132636                var arrayTo = content.find(".to-tr").find(".box").clone(); 
    26142637                save_dynamic_contacts(arrayTo); 
     
    26602683} 
    26612684 
    2662 /*Função que grava o destinatário nos contatos dinâmicos*/ 
     2685/*Funᅵᅵo que grava o destinatï¿œrio nos contatos dinï¿œmicos*/ 
    26632686function save_dynamic_contacts(array){ 
    26642687        if(parseInt(preferences.use_dynamic_contacts)){ 
     
    26922715 
    26932716/** 
    2694  * Método chamado pela applet para retornar o resultado da assinatura/decifragem do e-mail. 
     2717 * Mï¿œtodo chamado pela applet para retornar o resultado da assinatura/decifragem do e-mail. 
    26952718 * para posterior envio ao servidor. 
    2696  * @author Mário César Kolling <mario.kolling@serpro.gov.br>, Bruno Vieira da Costa <bruno.vieira-costa@serpro.gov.br> 
     2719 * @author Mï¿œrio Cï¿œsar Kolling <mario.kolling@serpro.gov.br>, Bruno Vieira da Costa <bruno.vieira-costa@serpro.gov.br> 
    26972720 * @param smime O e-mail decifrado/assinado 
    2698  * @param ID O ID do e-mail, para saber em que aba esse e-mail será mostrado. 
    2699  * @param operation A operação que foi realizada pela applet (assinatura ou decifragem) 
     2721 * @param ID O ID do e-mail, para saber em que aba esse e-mail serï¿œ mostrado. 
     2722 * @param operation A operaᅵᅵo que foi realizada pela applet (assinatura ou decifragem) 
    27002723 */ 
    27012724function appletReturn(smime, ID, operation, folder){ 
     
    27282751        { 
    27292752                ID_tmp = ID; 
    2730                 // Lê a variável e chama a nova função cExecuteForm 
     2753                // Lï¿œ a variï¿œvel e chama a nova funᅵᅵo cExecuteForm 
    27312754                // Processa e envia para o servidor web 
    27322755                // Faz o request do connector novamente. Talvez implementar no connector 
    2733                 // para manter coerência. 
     2756                // para manter coerï¿œncia. 
    27342757 
    27352758                var handler_send_smime = function(data){ 
     
    27432766                textArea.value += smime; 
    27442767 
    2745                 // Lê a variável e chama a nova função cExecuteForm 
     2768                // Lï¿œ a variï¿œvel e chama a nova funᅵᅵo cExecuteForm 
    27462769                // Processa e envia para o servidor web 
    27472770                // Faz o request do connector novamente. Talvez implementar no connector 
    2748                 // para manter coerência. 
     2771                // para manter coerï¿œncia. 
    27492772                if (is_ie){ 
    27502773                        var i = 0; 
     
    27662789        zebraDiscardEventDialog = true; 
    27672790        window.setTimeout(function() { 
    2768             $.Zebra_Dialog('Existem anexos sendo enviados para o servidor. Caso envie sua mensagem agora estes arquivos serão perdidos.', { 
     2791            $.Zebra_Dialog('Existem anexos sendo enviados para o servidor. Caso envie sua mensagem agora estes arquivos serï¿œo perdidos.', { 
    27692792                'type':     'question', 
    27702793                'overlay_opacity': '0.5', 
     
    27932816        if (preferences.auto_save_draft == 1) 
    27942817           autoSaveControl.status[ID] = true; 
    2795         var content = $("#content_id_"+ID); 
    2796         var save_link = $("#content_id_"+ID).find(".save"); 
     2818        var content = $("#ptabs_"+ID); 
     2819        var save_link = $("#ptabs_"+ID).find(".save"); 
    27972820        var onClick = save_link.onclick; 
    27982821        save_link.onclick = ''; 
     
    28242847        input_type.value = RichTextEditor.plain[ID] ? 'plain' : 'html';  
    28252848         
    2826         var uids = document.createElement("INPUT"); 
     2849    /*    var uids = document.createElement("INPUT"); 
    28272850        uids.style.display='none'; 
    28282851        uids.name = "uids_save"; 
    28292852        uids.value = uidsSave[ID].toString(); 
    2830          
     2853    */     
    28312854        var save_folder = document.createElement("INPUT"); 
    28322855        save_folder.style.display='none'; 
     
    28342857        save_folder.value = (openTab.imapBox[ID] && openTab.type[ID] < 6) ? openTab.imapBox[ID]: "INBOX" + cyrus_delimiter + draftsfolder; 
    28352858         
    2836         var msg_attachments = document.createElement("INPUT"); 
     2859    /*    var msg_attachments = document.createElement("INPUT"); 
    28372860        msg_attachments.style.display='none'; 
    28382861        msg_attachments.name = "attachments"; 
    28392862        msg_attachments.value = listAttachment(ID); 
     2863        */ 
    28402864 
    28412865        if (is_ie){ 
     
    28472871                form = document.forms["form_message_"+ID]; 
    28482872 
    2849                 // Evita que e-mails assinados sejam enviados quando o usuário tenta enviar um e-mail 
    2850                 // não assinado (desmarcou a opção) após tentar enviar um e-mail assinado que não passou 
    2851                 // no teste de validação. 
     2873                // Evita que e-mails assinados sejam enviados quando o usuï¿œrio tenta enviar um e-mail 
     2874                // nï¿œo assinado (desmarcou a opᅵᅵo) apï¿œs tentar enviar um e-mail assinado que nï¿œo passou 
     2875                // no teste de validaᅵᅵo. 
    28522876                var checkSign = document.getElementById('return_digital_'+ID); 
    28532877                if (checkSign && !checkSign.checked){ 
     
    28632887        form.appendChild(input_folder); 
    28642888    form.appendChild(input_type); 
    2865         // Implementação do In_Reply_To e References 
     2889        // Implementaᅵᅵo do In_Reply_To e References 
    28662890        var msgId = document.createElement("INPUT"); 
    28672891        msgId.style.display = 'none'; 
     
    28712895        form.appendChild(msgId); 
    28722896    form.appendChild(save_folder); 
    2873     form.appendChild(uids); 
    2874         form.appendChild(msg_attachments); 
     2897    //form.appendChild(uids); 
     2898        //form.appendChild(msg_attachments); 
    28752899 
    28762900        var mail_type = document.createElement('input'); 
     
    29342958                        return; 
    29352959                }else if(invalidEmail[0] == true){ 
    2936                         write_msg("Os endereços de destinatário a seguir estão incorretos: "+invalidEmail[1]); 
     2960                        write_msg("Os endereï¿œos de destinatï¿œrio a seguir estï¿œo incorretos: "+invalidEmail[1]); 
    29372961                        return; 
    29382962                } 
     
    29612985        if((campo.replace(/^\s+|\s+$/g,"")) != ""){ 
    29622986                        if(invalidEmail[0] == true){ 
    2963                                 write_msg("Erro de SMTP: Os endereços de destinatário a seguir falharam: "+ invalidEmail[1]); 
     2987                                write_msg("Erro de SMTP: Os endereï¿œos de destinatï¿œrio a seguir falharam: "+ invalidEmail[1]); 
    29642988                                return false; 
    29652989                        }else{ 
    29662990                                if(semicolon.length > 1){ 
    2967                                         var stringError = "Erro de SMTP: Os endereços devem ser separados apenas por vígula: "; 
     2991                                        var stringError = "Erro de SMTP: Os endereï¿œos devem ser separados apenas por vï¿œgula: "; 
    29682992                                        for(var i= 0; i < semicolon.length; i++){ 
    29692993                                                stringError = stringError + semicolon[i]; 
     
    35623586                        if(to) { 
    35633587                                if(!printListTO) 
    3564                                         to = 'Os destinatários não estão sendo exibidos para esta impressão'; 
     3588                                        to = 'Os destinatï¿œrios nï¿œo estï¿œo sendo exibidos para esta impressï¿œo'; 
    35653589                                html += "<tr><td width=7%><font size='2'>" + get_lang('To') + ": </font></td><td><font size='2'>"+to+"</font></td></tr>"; 
    35663590                        } 
    35673591                        if (cc) { 
    35683592                                if(!printListCC) 
    3569                                         cc = 'Os destinatários não estão sendo exibidos para esta impressão'; 
     3593                                        cc = 'Os destinatï¿œrios nï¿œo estï¿œo sendo exibidos para esta impressï¿œo'; 
    35703594                                html += "<tr><td width=7%><font size='2'>" + get_lang('Cc') + ": </font></td><td><font size='2'>"+cc+"</font></td></tr>"; 
    35713595                        } 
    35723596                        if (cco) { 
    35733597                                if(!printListCCO) 
    3574                                         cco = 'Os destinatários não estão sendo exibidos para esta impressão'; 
     3598                                        cco = 'Os destinatï¿œrios nï¿œo estï¿œo sendo exibidos para esta impressï¿œo'; 
    35753599                                html += "<tr><td width=7%><font size='2'>" + get_lang('Cco') + ": </font></td><td><font size='2'>"+cco+"</font></td></tr>"; 
    35763600                        } 
     
    38303854                msgs_number = get_selected_messages(); 
    38313855 
    3832         //TODO: REFATORAR O CÓDIGO PARA EVITAR recodificação 
     3856        //TODO: REFATORAR O Cï¿œDIGO PARA EVITAR recodificaᅵᅵo 
    38333857        if(currentTab == 0) 
    38343858                msgs_number = get_selected_messages(); 
     
    38733897                msgs_number = get_selected_messages(); 
    38743898 
    3875         //TODO: REFATORAR O CÓDIGO PARA EVITAR recodificação 
     3899        //TODO: REFATORAR O Cï¿œDIGO PARA EVITAR recodificaᅵᅵo 
    38763900        if(currentTab == 0) 
    38773901                msgs_number = get_selected_messages(); 
     
    40534077                        if ( er.test(folder.id) ) 
    40544078                        { 
    4055                                 alert( "Mensagens não podem ser importadas em pastas locais" ); 
     4079                                alert( "Mensagens nï¿œo podem ser importadas em pastas locais" ); 
    40564080                                //archive_msgs('INBOX/Lixeira/tmpMoveToLocal',wfolders_tree._selected.id,data); 
    40574081                                //cExecute('$this.imap_functions.delete_mailbox',function(){},'del_past=INBOX/Lixeira/tmpMoveToLocal'); 
     
    40764100        if(typeof(Encoder) == "undefined"){ 
    40774101                /* 
    4078                 * Deve-se centralizar as informações do usuário logado afim de não incluir 
     4102                * Deve-se centralizar as informaᅵᅵes do usuï¿œrio logado afim de nï¿œo incluir 
    40794103                * arquivos de modulos distintos para este fim. 
    40804104                */ 
     
    42544278                                                        break;   
    42554279                                                case 6: 
    4256                                                         var acceptedSuggestion = confirm("Deseja atualizar o evento de acordo com a sugestão ?"); 
     4280                                                        var acceptedSuggestion = confirm("Deseja atualizar o evento de acordo com a sugestï¿œo ?"); 
    42574281                                                        $.ajax({ 
    42584282                                                                url: "controller.php?action="+import_url+'&from_ajax=true&id_user='+User.me.id+'&selected=true&cirus_delimiter='+cyrus_delimiter+'&acceptedSuggestion='+acceptedSuggestion+"&from="+document.getElementById('from_values_'+currentTab).value+'&uidAccount='+decodeOwner(), 
     
    42654289                                                        break; 
    42664290                                                case 9: 
    4267                                                         alert('Seu evento não possui alterações!'); 
     4291                                                        alert('Seu evento nï¿œo possui alteraᅵᅵes!'); 
    42684292                                                        return; 
    42694293                                                        break; 
    42704294                                                case 11: 
    4271                                                         alert('Este evento já fora importando por algum dos particpantes e já se encontra disponível em sua agenda compartilhada!'); 
     4295                                                        alert('Este evento jï¿œ fora importando por algum dos particpantes e jï¿œ se encontra disponï¿œvel em sua agenda compartilhada!'); 
    42724296                                                        return; 
    42734297                                                        break; 
     
    43484372        else { 
    43494373                expresso_local_messages.set_as_sent(rowid_message); 
    4350                 if(document.getElementById('_action')) { //Não posso manter esse elemento, pois o connector irá criar outro com o mesmo id para a próxima mensagem. 
     4374                if(document.getElementById('_action')) { //Nï¿œo posso manter esse elemento, pois o connector irï¿œ criar outro com o mesmo id para a prï¿œxima mensagem. 
    43514375                        el =document.getElementById('_action'); 
    43524376                        father = el.parentNode; 
     
    44674491} 
    44684492 
    4469                 /* Função que chama a tela para o usuário reportar um erro no email. */  
     4493                /* Funᅵᅵo que chama a tela para o usuï¿œrio reportar um erro no email. */  
    44704494                function reports_window(currentTab){  
    44714495                        ID_msg = currentTab.substr(0,currentTab.indexOf("_"));  
     
    44944518                                var prefix = 'user' + cyrus_delimiter+user_selected_name; 
    44954519                                 
    4496                                 /** TODO Mudar quando melhorias forem implementadas na API de atualização do cache */ 
     4520                                /** TODO Mudar quando melhorias forem implementadas na API de atualizaᅵᅵo do cache */ 
    44974521                                DataLayer.remove('folder', false); 
    44984522                                DataLayer.get('folder'); 
Note: See TracChangeset for help on using the changeset viewer.