Ignore:
Timestamp:
07/09/12 15:23:03 (12 years ago)
Author:
marcosw
Message:

Ticket #2947 - Melhoria na exportação de mensagem individual

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sandbox/2.4.2-expresso3/expressoMail1_2/inc/class.exporteml.inc.php

    r5934 r6745  
    1616        var $mbox_stream; 
    1717        var $tempDir; 
    18          
     18 
    1919        function ExportEml() { 
    2020            
     
    214214                // se encontram em um mesmo folder 
    215215                if (count($sorted_msgs)==1){ 
    216                                                          
    217216                        $array_names_keys = array_keys($sorted_msgs); 
    218217                        $this->folder = mb_convert_encoding($array_names_keys[0], "UTF7-IMAP","UTF-8, ISO-8859-1, UTF7-IMAP"); 
     
    228227                                $fileName       = $this->CreateFileEml($sEMLData, $tempDir, $msg_number[0]."_".$_SESSION[ 'phpgw_session' ][ 'session_id' ]); 
    229228                 
    230                                  
     229                                $header    = imap_headerinfo($this->mbox_stream, imap_msgno($this->mbox_stream, $msg_number[0]), 80, 255); 
     230                $subject = $this->decode_subject($header->fetchsubject); 
     231 
    231232                                imap_close($this->mbox_stream); 
    232233                                if (!$fileName) { 
    233234                                        return false; 
    234235                                }else{ 
    235                                         return $tempDir.'/'.$fileName; 
     236                                        $return = array(); 
     237                                        $return[] = $tempDir.'/'.$fileName; 
     238                                        $return[] = $subject; 
     239                                        return $return; 
    236240                                } 
    237241                        } 
     
    271275                        } 
    272276 
    273                         return $file; 
     277                        return $file;                    
    274278                 
    275279                //exporta mensagens de diferentes pastas 
     
    362366                                $file = false; 
    363367                        } 
    364  
    365368            return $file; 
    366369                 
     
    369372                { 
    370373                        $this-> folder = $params['folder']; 
    371                                 $this->folder = mb_convert_encoding($this->folder, "UTF7-IMAP","UTF-8, ISO-8859-1, UTF7-IMAP"); 
     374                        $this->folder = mb_convert_encoding($this->folder, "UTF7-IMAP","UTF-8, ISO-8859-1, UTF7-IMAP"); 
    372375                        $array_ids = explode(',', $params['msgs_to_export']); 
    373376                        $error = False; 
     
    383386                                $sEMLData       = $this->parseEml($header, $body);                      
    384387                                $fileName       = $this->CreateFileEml($sEMLData, $tempDir, $array_ids[0]."_".$_SESSION[ 'phpgw_session' ][ 'session_id' ]); 
     388                         
     389                                $header    = imap_headerinfo($this->mbox_stream, imap_msgno($this->mbox_stream, $array_ids[0]), 80, 255); 
     390                    $subject = $this->decode_subject($header->fetchsubject); 
    385391 
    386392                                imap_close($this->mbox_stream); 
     
    388394                                        return false; 
    389395                                } else { 
    390                                         return $tempDir.'/'.$fileName; 
     396                                        $return = array(); 
     397                                        $return[] = $tempDir.'/'.$fileName; 
     398                                        $return[] = $subject; 
     399                                        return $return; 
    391400                                } 
    392401                        } 
     
    424433                                $file = false; 
    425434                        } 
    426  
    427435                        return $file; 
    428436                } 
     
    453461                        $fileName       = $this->CreateFileEml($sEMLData, $tempDir, $array_ids[0]."_".$_SESSION[ 'phpgw_session' ][ 'session_id' ]); 
    454462 
     463                        $header    = imap_headerinfo($this->mbox_stream, imap_msgno($this->mbox_stream, $array_ids[0]), 80, 255); 
     464            $subject = $this->decode_subject($header->fetchsubject); 
     465 
    455466                        imap_close($this->mbox_stream); 
    456467                        if (!$fileName) { 
    457468                                return false; 
    458469                        } else { 
    459                                 return $tempDir.'/'.$fileName; 
     470                                $return = array(); 
     471                                $return[] = $tempDir.'/'.$fileName; 
     472                                $return[] = $subject; 
     473                                return $return; 
    460474                        } 
    461475                } 
Note: See TracChangeset for help on using the changeset viewer.