Ignore:
Timestamp:
06/20/09 01:07:18 (15 years ago)
Author:
rafaelraymundo
Message:

Ticket #558 - Adicionada funcionalidade de assinatura e criptografia de e-mails.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/expressoMail1_2/js/local_messages.js

    r1000 r1035  
    135135        local_messages.prototype.get_local_mail = function(id_mail) { 
    136136                this.init_local_messages(); 
    137                 var rs = this.dbGears.execute("select mail.rowid,mail.mail,mail.ffrom,mail.subject,mail.body,mail.fto,mail.cc,folder.folder from mail inner join folder on mail.id_folder=folder.rowid  where mail.rowid="+id_mail); 
     137                var rs = this.dbGears.execute("select mail.rowid,mail.mail,mail.ffrom,mail.subject,mail.body,mail.fto,mail.cc,folder.folder,mail.original_id from mail inner join folder on mail.id_folder=folder.rowid  where mail.rowid="+id_mail); 
    138138                var retorno = null; 
    139139                if(rs.isValidRow()) { 
     
    141141                } 
    142142                retorno = connector.unserialize(retorno); 
    143                  
    144                 retorno['from'] = connector.unserialize(rs.field(2)); 
    145                 retorno['subject'] = rs.field(3); 
    146                 retorno['body'] = rs.field(4); 
    147                 //Codigo que as imagens embutidas em emails (com multipart/related ou multipart/mixed) sejam corretamente mostradas em emails arquivados. Os links do 
    148                 //tipo "./inc/show_embedded_attach.php?msg_folder=[folder]&msg_num=[msg_num]&msg_part=[part]" 
    149                 //são substituidos pelos links dos anexos capturados pelo gears. 
    150  
    151                 var thumbs= retorno.thumbs; 
    152                 var anexos= retorno.array_attach; 
    153                 for (i in anexos) 
    154                 { 
    155                     nomeArquivo = anexos[i]['name'].substring(0,anexos[i]['name'].length - 4); 
    156                     if(nomeArquivo.match('jpg')||anexos[i]['name'].match('gif')||anexos[i]['name'].match('png')) 
    157                         { 
    158                             var er_imagens = new RegExp("\\.\\/inc\\/show_embedded_attach.php\\?msg_folder=[\\w/]+\\&msg_num=[0-9]+\\&msg_part="+anexos[i]['pid']); 
    159                             var Result_imagens = er_imagens.exec(retorno['body']); 
    160                             retorno['body'] = retorno['body'].replace(Result_imagens,anexos[i]['url']); 
    161                             if(thumbs && thumbs[i]){ 
    162                                 er_imagens = new RegExp("\\.\\/inc\\/show_thumbs.php\\?file_type=image\\/[\\w]+\\&msg_num=[0-9]+\\&msg_folder=[\\w/%]+\\&msg_part="+anexos[i]['pid']); 
    163                                 Result_imagens = er_imagens.exec(thumbs[i]); 
    164                                 thumbs[i] = thumbs[i].replace(Result_imagens,"'"+anexos[i]['url']+"'"); 
    165                                 er_imagens = new RegExp("\\.\\/inc\\/show_img.php\\?msg_num=[0-9]+\\&msg_folder=[\\w/%]+\\&msg_part="+anexos[i]['pid']); 
    166                                 Result_imagens = er_imagens.exec(thumbs[i]); 
    167                                 thumbs[i] = thumbs[i].replace(Result_imagens,"'"+anexos[i]['url']+"'"); 
    168                                 thumbs[i] = thumbs[i].replace(/<IMG/i,'<img width="120"'); 
    169                             } 
     143 
     144        //alert('tipo retorno.source: ' + typeof(retorno.source)); 
     145 
     146        if (typeof(retorno.source) == 'string') 
     147        { 
     148            retorno.msg_number=rs.field(0); 
     149            retorno.original_ID=rs.field(8); 
     150            retorno.msg_folder=rs.field(7); 
     151 
     152            //alert('tipo retorno: '+typeof(retorno)) 
     153            //show_msg(retorno); 
     154        } 
     155                else 
     156        { 
     157            retorno['from'] = connector.unserialize(rs.field(2)); 
     158            retorno['subject'] = rs.field(3); 
     159            retorno['body'] = rs.field(4); 
     160            //Codigo que as imagens embutidas em emails (com multipart/related ou multipart/mixed) sejam corretamente mostradas em emails arquivados. Os links do 
     161            //tipo "./inc/show_embedded_attach.php?msg_folder=[folder]&msg_num=[msg_num]&msg_part=[part]" 
     162            //são substituidos pelos links dos anexos capturados pelo gears. 
     163 
     164            var thumbs= retorno.thumbs; 
     165            var anexos= retorno.array_attach; 
     166            for (i in anexos) 
     167            { 
     168                nomeArquivo = anexos[i]['name'].substring(0,anexos[i]['name'].length - 4); 
     169                if(nomeArquivo.match('jpg')||anexos[i]['name'].match('gif')||anexos[i]['name'].match('png')) 
     170                    { 
     171                        var er_imagens = new RegExp("\\.\\/inc\\/show_embedded_attach.php\\?msg_folder=[\\w/]+\\&msg_num=[0-9]+\\&msg_part="+anexos[i]['pid']); 
     172                        var Result_imagens = er_imagens.exec(retorno['body']); 
     173                        retorno['body'] = retorno['body'].replace(Result_imagens,anexos[i]['url']); 
     174                        if(thumbs && thumbs[i]){ 
     175                            er_imagens = new RegExp("\\.\\/inc\\/show_thumbs.php\\?file_type=image\\/[\\w]+\\&msg_num=[0-9]+\\&msg_folder=[\\w/%]+\\&msg_part="+anexos[i]['pid']); 
     176                            Result_imagens = er_imagens.exec(thumbs[i]); 
     177                            thumbs[i] = thumbs[i].replace(Result_imagens,"'"+anexos[i]['url']+"'"); 
     178                            er_imagens = new RegExp("\\.\\/inc\\/show_img.php\\?msg_num=[0-9]+\\&msg_folder=[\\w/%]+\\&msg_part="+anexos[i]['pid']); 
     179                            Result_imagens = er_imagens.exec(thumbs[i]); 
     180                            thumbs[i] = thumbs[i].replace(Result_imagens,"'"+anexos[i]['url']+"'"); 
     181                            thumbs[i] = thumbs[i].replace(/<IMG/i,'<img width="120"'); 
    170182                        } 
    171                 } 
    172  
    173                 retorno['to'] = connector.unserialize(rs.field(5)); 
    174                 retorno['cc'] = connector.unserialize(rs.field(6)); 
    175                  
    176                 retorno['local_message'] = true; 
    177                 retorno['msg_folder'] = "local_"+rs.field(7); //Now it's a local folder  
    178                 retorno['msg_number'] = rs.field(0); //the message number is the rowid 
     183                    } 
     184            } 
     185 
     186            retorno['to'] = connector.unserialize(rs.field(5)); 
     187            retorno['cc'] = connector.unserialize(rs.field(6)); 
     188 
     189            retorno['local_message'] = true; 
     190            retorno['msg_folder'] = "local_"+rs.field(7); //Now it's a local folder 
     191            retorno['msg_number'] = rs.field(0); //the message number is the rowid 
     192 
     193        } 
     194 
     195        rs.close(); 
    179196                this.finalize(); 
    180197                return retorno; 
     
    671688    } 
    672689 
     690    local_messages.prototype.get_msg_date = function (original_id, is_local){ 
     691 
     692        this.init_local_messages(); 
     693 
     694        if (typeof(is_local) == 'undefined') 
     695        { 
     696            is_local = false; 
     697        } 
     698 
     699        var rs; 
     700 
     701        if (is_local) 
     702        { 
     703            rs = this.dbGears.execute("select mail from mail where rowid="+original_id); 
     704        } 
     705        else 
     706        { 
     707            rs = this.dbGears.execute("select mail from mail where original_id="+original_id); 
     708        } 
     709        var tmp = connector.unserialize(rs.field(0)); 
     710        var ret = new Array(); 
     711        ret.fulldate = tmp.fulldate.substr(0,16); 
     712        ret.smalldate = tmp.msg_day; 
     713        ret.msg_day = tmp.msg_day; 
     714        ret.msg_hour = tmp.msg_day; 
     715 
     716        rs.close(); 
     717        this.finalize(); 
     718        return ret; 
     719    } 
     720 
    673721 
    674722    local_messages.prototype.download_all_local_attachments = function(folder,id){ 
Note: See TracChangeset for help on using the changeset viewer.