Changeset 5620 for trunk/prototype


Ignore:
Timestamp:
03/05/12 03:05:00 (12 years ago)
Author:
cristiano
Message:

Ticket #2497 - Nova estrategia para o salvamento automatico de rascunhos

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/prototype/services/ImapServiceAdapter.php

    r5605 r5620  
    411411                                         $att = Controller::read(array('id'=> $value , 'concept' => 'mailAttachment')); 
    412412                                          
     413                                          
    413414                                         if($att['disposition'] == 'embedded') 
    414415                                         { 
     
    421422                                         unset($att); 
    422423                                    } 
    423                                     else //message attachment 
     424                                    else 
    424425                                    { 
    425426                                        $value = json_decode($value, true); 
    426                                         $sub =  $value['name'] ? $value['name'].'.eml' :'no title.eml'; 
    427                                         $mbox_stream = $this->open_mbox($value['folder']); 
    428                                         $rawmsg = $this->getRawHeader($value['uid']) . "\r\n\r\n" . $this->getRawBody($value['uid']); 
    429                                         $mailService->addStringAttachment($rawmsg, $sub, 'message/rfc822', '7bit', 'attachment' ); 
    430                                         unset($rawmsg); 
     427                                         
     428                                        switch ($value['type']) { 
     429                                            case 'imapPart': 
     430                                                    $att = $this->getForwardingAttachment($value['folder'],$value['uid'], $value['part']); 
     431                                                    if(strstr($body,'<img src="./inc/get_archive.php?msgFolder='.$value['folder'].'&msgNumber='.$value['uid'].'&indexPart='.$value['part'].'" />') !== false)//Embeded IMG 
     432                                                    {     
     433                                                        $body = str_ireplace('<img src="./inc/get_archive.php?msgFolder='.$value['folder'].'&msgNumber='.$value['uid'].'&indexPart='.$value['part'].'" />' , '<img src="'.$att['name'].'" />', $body); 
     434                                                        $mailService->addStringImage($att['source'], $att['type'], $att['name']); 
     435                                                    } 
     436                                                    else 
     437                                                        $mailService->addStringAttachment($att['source'], $att['name'], $att['type'], 'base64', isset($att['disposition']) ? $att['disposition'] :'attachment' ); 
     438                                                    unset($att); 
     439                                                break; 
     440                                              case 'imapMSG': 
     441                                                    $sub =  $value['name'] ? $value['name'].'.eml' :'no title.eml'; 
     442                                                    $mbox_stream = $this->open_mbox($value['folder']); 
     443                                                    $rawmsg = $this->getRawHeader($value['uid']) . "\r\n\r\n" . $this->getRawBody($value['uid']); 
     444                                                    $mailService->addStringAttachment($rawmsg, $sub, 'message/rfc822', '7bit', 'attachment' ); 
     445                                                    unset($rawmsg); 
     446                                                break; 
     447 
     448                                            default: 
     449                                                break; 
     450                                        } 
    431451                                    } 
    432452 
     
    434454                                 
    435455                                if($isHTML) $mailService->setBodyHtml($body); else $mailService->setBodyText($body); 
    436                                                           
     456   
    437457                                if(imap_append($mbox_stream, "{".$this->imap_server.":".$this->imap_port."}".$folder, $mailService->getMessage(), "\\Seen \\Draft")) 
    438458                                { 
     
    446466                  
    447467                                if($mbox_stream) imap_close($mbox_stream); 
    448                                  
    449                                  
    450                                  
     468 
    451469                                return $return; 
    452470                        } 
Note: See TracChangeset for help on using the changeset viewer.