Changeset 6243


Ignore:
Timestamp:
05/19/12 21:39:07 (12 years ago)
Author:
natan
Message:

Ticket #2752 - Criando pastas acentuadas no Expresso Mail - Corrigido

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/expressoMail1_2/inc/class.imap_functions.inc.php

    r6242 r6243  
    24022402        function get_folders_list($params = null) 
    24032403        { 
    2404  
     2404            $return = $this->getFolders( $params ); 
     2405         
     2406            foreach ($return as $i => &$vv) 
     2407            { 
     2408                $vv['folder_id'] = mb_convert_encoding($vv['folder_id'],'ISO-8859-1','UTF7-IMAP');//DECODIFICA ID DAS PASTAS COM ACENTOS 
     2409                $vv['folder_name'] = mb_convert_encoding($vv['folder_name'],'ISO-8859-1','UTF7-IMAP');//DECODIFICA NOME DAS PASTAS COM ACENTOS 
     2410                $vv['folder_parent'] = mb_convert_encoding($vv['folder_parent'],'ISO-8859-1','UTF7-IMAP');//DECODIFICA NOME DAS PASTAS COM ACENTOS 
     2411            } 
     2412 
     2413            return ( $return );         
     2414        } 
     2415         
     2416        function getFolders($params = null) 
     2417        { 
    24052418                ///Define Variaveis 
    24062419                $prefixShared = 'user'; //Prefixo das pastas compartilhadas 
     
    24522465                        { 
    24532466                                $append = array();                               
    2454                                 $append['folder_id'] = mb_convert_encoding($vv['id'],'ISO-8859-1','UTF7-IMAP');//DECODIFICA ID DAS PASTAS COM ACENTOS 
     2467                                $append['folder_id'] = $vv['id']; 
    24552468                                $append['folder_name'] = (($uid2cn && isset($vv['user'])) && ($cn = $this->ldap->uid2cn($vv['user']))) ? $cn : $vv['name']; 
    2456                                 $append['folder_name'] = mb_convert_encoding($append['folder_name'],'ISO-8859-1','UTF7-IMAP');//DECODIFICA NOME DAS PASTAS COM ACENTOS 
    24572469                                $status = imap_status($mboxStream, $vv['stream'], SA_UNSEEN); //Resgata Numero de mensagens não lidas 
    24582470                                $append['folder_unseen'] = isset($status->unseen) ? $status->unseen : 0 ; 
    24592471                                $append['folder_hasChildren'] = (($vv['attributes'] == 32) && ($vv['name'] != 'INBOX')) ? 1 : 0; 
    2460                                 $append['folder_parent'] = mb_convert_encoding($vv['parent'],'ISO-8859-1','UTF7-IMAP'); 
     2472                                $append['folder_parent'] = $vv['parent']; 
    24612473                                $return[] = $append; 
    24622474                        } 
     
    24822494                        $namebox =  mb_convert_encoding($namebox, "UTF7-IMAP", "UTF-8"); 
    24832495                        $result = "Ok"; 
     2496                         
    24842497                        if(!imap_createmailbox($mbox_stream,"{".$imap_server."}".$namebox)) 
    24852498                        { 
     
    24922505                                $namebox =  mb_convert_encoding($child, "UTF7-IMAP", "UTF-8"); 
    24932506                                $result = "Ok"; 
     2507 
    24942508                                if(!imap_createmailbox($mbox_stream,"{".$imap_server."}$namebox")) 
    24952509                                { 
  • trunk/prototype/services/ImapServiceAdapter.php

    r6212 r6243  
    7272                        case 'folder': 
    7373                        { 
    74                                 $result = $this->to_utf8($this->get_folders_list()); 
     74                                $result = $this->getFolders(); 
    7575 
    7676                                foreach ($result as $res) { 
    7777 
    7878                                        $response[] = array( 
    79                                                         'id' => $res['folder_id'], 
    80                                                         'commonName' => $res['folder_name'], 
    81                                                         'parentFolder' => $res['folder_parent'], 
     79                                                        'id' => mb_convert_encoding( $res['folder_id'], 'UTF-8', 'UTF7-IMAP' ), 
     80                                                        'commonName' => mb_convert_encoding( $res['folder_name'], 'UTF-8' , 'UTF7-IMAP' ), 
     81                                                        'parentFolder' => mb_convert_encoding( $res['folder_parent'], 'UTF-8' , 'UTF7-IMAP' ), 
    8282                                                        'messageCount' => array('unseen' => isset($res['folder_unseen']) ? $res['folder_unseen'] : null, 'total' => null) 
    8383                                                ); 
     
    282282                                                 
    283283                                                foreach ($map['labelId'] as $label) { 
    284                                                         $messagesLabeleds = imap_search($this->mbox, 'UNDELETED KEYWORD "$Label'.$label.'"', SE_UID); 
     284                                                        $messagesLabeleds = imap_search($this->mbox, 'UNDELETED KEYWORD "$ExpressoLabel'.$label.'"', SE_UID); 
    285285                                                         
    286286                                                        if(is_array($messagesLabeleds)) 
     
    422422                                if ($folderName && $messageNumber && $labelId) { 
    423423                                        $this->mbox = $this->open_mbox($folderName); 
    424                                         $messagesLabeleds = imap_search($this->mbox, 'UNDELETED KEYWORD "$Label'.$labelId.'"', SE_UID); 
     424                                        $messagesLabeleds = imap_search($this->mbox, 'UNDELETED KEYWORD "$ExpressoLabel'.$labelId.'"', SE_UID); 
    425425                                         
    426426                                        if (in_array($messageNumber, $messagesLabeleds)) { 
     
    517517                                if (isset($data['folderName']) && isset($data['messageNumber']) && isset($data['labelId'])) { 
    518518                                        $this->mbox = $this->open_mbox($data['folderName']); 
    519                                         imap_setflag_full($this->mbox, $data['messageNumber'], '$Label' . $data['labelId'], ST_UID); 
     519                                        imap_setflag_full($this->mbox, $data['messageNumber'], '$ExpressoLabel' . $data['labelId'], ST_UID); 
    520520 
    521521                                        return array ('id' => $data['folderName'].'/'.$data['messageNumber'].'#'.$data['labelId']); 
     
    691691                                if ($folderName && $messageNumber && $labelId) { 
    692692                                        $this->mbox = $this->open_mbox($folderName); 
    693                                         imap_clearflag_full($this->mbox, $messageNumber, '$Label' . $labelId, ST_UID); 
     693                                        imap_clearflag_full($this->mbox, $messageNumber, '$ExpressoLabel' . $labelId, ST_UID); 
    694694 
    695695                                } 
Note: See TracChangeset for help on using the changeset viewer.