- Timestamp:
- 09/14/12 09:12:15 (12 years ago)
- Location:
- sandbox/newExpressoMail/prototype
- Files:
-
- 39 added
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
sandbox/newExpressoMail/prototype/services/ImapServiceAdapter.php
r6930 r7209 2 2 /** 3 3 * 4 * Copyright (C) 2012 Cons órcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br)4 * Copyright (C) 2012 Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 5 5 * 6 6 * This program is free software; you can redistribute it and/or modify it under … … 26 26 * 27 27 * You can contact Prognus Software Livre headquarters at Av. Tancredo Neves, 28 * 6731, PTI, Edif ício do Saber, 3º floor, room 306, Foz do Iguaçu - PR - Brasil or at28 * 6731, PTI, EdifÃcio do Saber, 3º floor, room 306, Foz do Iguaçu - PR - Brasil or at 29 29 * e-mail address prognus@prognus.com.br. 30 30 * 31 * Classe de abstra ção que faz uma adaptação para manipulação de informações32 * no IMAP a partir de v ários métodos.31 * Classe de abstração que faz uma adaptação para manipulação de informações 32 * no IMAP a partir de vários métodos. 33 33 * 34 34 * @package Prototype 35 35 * @license http://www.gnu.org/copyleft/gpl.html GPL 36 * @author Cons órcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br)36 * @author Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 37 37 * @version 2.4 38 * @sponsor Caixa Econ ômica Federal39 * @since Arquivo disponibilizado na vers ão 2.438 * @sponsor Caixa EconÃŽmica Federal 39 * @since Arquivo disponibilizado na versão 2.4 40 40 */ 41 41 … … 48 48 * @package Prototype (Mail) 49 49 * @license http://www.gnu.org/copyleft/gpl.html GPL 50 * @author Cons órcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br)50 * @author Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 51 51 * @version 2.4 52 * @sponsor Caixa Econ ômica Federal53 * @since Classe disponibilizada na vers ão 2.452 * @sponsor Caixa EconÃŽmica Federal 53 * @since Classe disponibilizada na versão 2.4 54 54 */ 55 55 class ImapServiceAdapter extends imap_functions/* implements Service*/ … … 70 70 $context = isset($justthese['context']) ? $justthese['context'] : '' ; 71 71 72 $context = $context == '' ? (isset($criteria['folder']) ? $criteria : '') : $context; 73 72 74 switch( $URI['concept'] ) 73 75 { 74 76 case 'folder': 75 77 { 78 76 79 $result = $this->getFolders(); 77 80 … … 122 125 123 126 /** 124 * Trata o caso espec ífico de retorno do atributo messageId127 * Trata o caso especÃfico de retorno do atributo messageId 125 128 * 126 * TODO - refazer todo a opera ção find do conceito message, uma vez que esta129 * TODO - refazer todo a operação find do conceito message, uma vez que esta 127 130 * foi desenvolvida quando a nova API ainda era muito imatura e se encontra 128 * muito acoplada àestrutura de retorno esperada pelo plugin jqGrid131 * muito acoplada à estrutura de retorno esperada pelo plugin jqGrid 129 132 */ 130 133 if ( $justthese ) … … 150 153 151 154 /** 152 * Se n ão foi passado messageNumber no filtro,155 * Se não foi passado messageNumber no filtro, 153 156 * busca todas as mensagens de cada pasta 154 157 */ … … 341 344 342 345 /** 343 * Se éuma busca por messageId346 * Se é uma busca por messageId 344 347 */ 345 348 if (!empty($map['messageId'])) { … … 358 361 359 362 /** 360 * Se éuma busca por messageNumber.361 * Lembrando que, neste caso, s ó deve ser suportada uma única pasta no filtro.363 * Se é uma busca por messageNumber. 364 * Lembrando que, neste caso, só deve ser suportada uma única pasta no filtro. 362 365 */ 363 366 } else { … … 366 369 367 370 /** 368 * Se éuma busca por messageId, deve ser comparado com os messageNumbers371 * Se é uma busca por messageId, deve ser comparado com os messageNumbers 369 372 * passados no filtro, se houverem. 370 373 */ … … 377 380 378 381 /** 379 * Adicionar demais atributos às mensagens para retorno382 * Adicionar demais atributos à s mensagens para retorno 380 383 */ 381 384 if(is_array($messages)) … … 392 395 393 396 /** 394 * Se éuma busca por messageId e todos os messageIds foram econstrados:397 * Se é uma busca por messageId e todos os messageIds foram econstrados: 395 398 * Stop searching in all folders 396 399 */ … … 452 455 453 456 /** 454 * identifica se o formato de ID é"folder/subfolder/subsubfolder/<messageNumber>" ou "<message-id>"457 * identifica se o formato de ID é "folder/subfolder/subsubfolder/<messageNumber>" ou "<message-id>" 455 458 */ 456 459 $folderName = $messageNumber = false; … … 479 482 /** 480 483 * Busca pela mensagem com o messageId dado. Se uma pasta foi passada, busca nela, 481 * sen ão busca em todas.484 * senão busca em todas. 482 485 */ 483 486 … … 549 552 * TODO 550 553 * Verificar erro ao tentar setar uma flag com o limite de flags atingido 551 * onde o status retornado pelo imap_setflag_full é true mesmo não sendo possível552 * a inser ção da flag.554 * onde o status retornado pelo imap_setflag_full é true mesmo não sendo possÃvel 555 * a inserção da flag. 553 556 */ 554 557 … … 558 561 /** 559 562 * Busca pela mensagem com o messageId dado. Se uma pasta foi passada, busca nela, 560 * sen ão busca em todas.563 * senão busca em todas. 561 564 */ 562 565 $folders = array (); … … 693 696 return $return; 694 697 } 698 case 'folder': 699 { 700 701 } 695 702 } 696 703 } … … 740 747 741 748 /** 742 * Se éuma busca por messageId749 * Se é uma busca por messageId 743 750 */ 744 751 if (!empty($map['messageId'])) { … … 754 761 755 762 /** 756 * Se éuma busca por messageNumber.757 * Lembrando que, neste caso, s ó deve ser suportada uma única pasta no filtro.763 * Se é uma busca por messageNumber. 764 * Lembrando que, neste caso, só deve ser suportada uma única pasta no filtro. 758 765 */ 759 766 } else { … … 762 769 763 770 /** 764 * Se éuma busca por messageId, deve ser comparado com os messageNumbers771 * Se é uma busca por messageId, deve ser comparado com os messageNumbers 765 772 * passados no filtro, se houverem. 766 773 */ … … 777 784 778 785 /** 779 * Se éuma busca por messageId e todos os messageIds foram econstrados:786 * Se é uma busca por messageId e todos os messageIds foram econstrados: 780 787 * Stop searching in all folders 781 788 */ … … 802 809 803 810 /** 804 * TODO - implementar a dele ção de todos os followupflaggeds conforme filtro811 * TODO - implementar a deleção de todos os followupflaggeds conforme filtro 805 812 */ 806 813 } … … 809 816 { 810 817 /** 811 * Os únicos atributos da sinalização presentes no IMAP são folderName, messageNumber e messageId,812 * por ém a operação de update desses atributos não faz sentido para o usuário da DataLayer,813 * pois na pr ática elas são executadas através das operações de CREATE e DELETE.814 * Assim, para os conceitos "labeled" e "followupflagged", s ófaz sentido o update de818 * Os únicos atributos da sinalização presentes no IMAP são folderName, messageNumber e messageId, 819 * porém a operação de update desses atributos não faz sentido para o usuário da DataLayer, 820 * pois na prática elas são executadas através das operações de CREATE e DELETE. 821 * Assim, para os conceitos "labeled" e "followupflagged", só faz sentido o update de 815 822 * atributos gravados no banco de dados e nunca no IMAP. 816 823 */
Note: See TracChangeset
for help on using the changeset viewer.