Changeset 7157
- Timestamp:
- 09/04/12 11:43:49 (12 years ago)
- Location:
- sandbox/2.5.0-expresso1/expressoMail1_2
- Files:
-
- 1 added
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
sandbox/2.5.0-expresso1/expressoMail1_2/inc/class.exporteml.inc.php
r7040 r7157 478 478 } 479 479 480 481 482 /* Airton 483 * Fazendo o port de um método necessário para o funcionamento do arquivamento local 484 */ 485 //MAILARCHIVER 486 function js_source_var($params) { 487 $this-> folder = $params['folder']; 488 if(!$this->folder){ 489 $aux = explode(';',$params['msgs_to_export']); 490 $this->folder = $aux[0]; 491 $id_number = $aux[1]; 492 } 493 else{ 494 $id_number = $params['msgs_to_export']; 495 } 496 $this->folder = mb_convert_encoding($this->folder, "UTF7-IMAP","ISO_8859-1"); 497 $tempDir = ini_get("session.save_path"); 498 499 $this->connectImap(); 500 $header = $this-> getHeader($id_number); 501 $body = $this-> getBody($id_number); 502 503 imap_close($this->mbox_stream); 504 505 $input = $header . "\r\n\r\n" . $body; 506 $input = preg_replace('/\x1d/', '', $input); //remove special char control detected (hex 1D) 507 508 return($input); 509 } 510 /*Airton 511 * Fim do método portado 512 */ 513 514 515 516 517 480 518 function export_msg_data($id_msg,$folder) { 481 519 $this->folder = $folder; -
sandbox/2.5.0-expresso1/expressoMail1_2/inc/class.imap_functions.inc.php
r7070 r7157 5436 5436 } 5437 5437 5438 5439 /* Airton 5440 * Fazendo um port dos métodos necessários para o arquivamento de mensagens 5441 */ 5442 //MailArchiver -> get offsettogmt as a global javascript variable, invoked at "main.js", init() 5443 function get_offset_gmt(){ 5444 return($this->functions->CalculateDateOffset()); 5445 } 5446 5447 //MailArchiver -> get message flags only, invoked at archive operation 5448 function get_msg_flags($args){ 5449 $msg_folder = $args['folder']; 5450 $msg_n = $args['msg_number']; 5451 5452 $arr_msg = explode(",", $msg_n); 5453 5454 for($i=0; $i<count($arr_msg); $i++){ 5455 5456 if(!$this->mbox || !is_resource($this->mbox)) 5457 $this->mbox = $this->open_mbox($msg_folder); 5458 5459 if(!is_resource($this->mbox)) 5460 return(false); 5461 5462 $header = @imap_headerinfo($this->mbox, imap_msgno($this->mbox, $arr_msg[$i]), 80, 255); 5463 5464 if (!is_object($header)) 5465 return false; 5466 5467 $taglist[$i]["msgid"] = $msg_n; 5468 $taglist[$i]["unseen"] = $header->Unseen; 5469 $taglist[$i]["recent"] = $header->Recent; 5470 $taglist[$i]["flagged"] = $header->Flagged; 5471 $taglist[$i]["draft"] = $header->Draft; 5472 $taglist[$i]["answered"] = $header->Answered; 5473 $taglist[$i]["deleted"] = $header->Deleted; 5474 5475 if($header->Answered =='A' && $header->Draft == 'X') 5476 $taglist[$i]['forwarded'] = 'F'; 5477 else 5478 $taglist[$i]['forwarded'] = ' '; 5479 5480 if($_SESSION['phpgw_info']['user']['preferences']['expressoMail']['use_important_flag']) { 5481 $flag = preg_match('/importance *: *(.*)\r/i',imap_fetchheader($this->mbox, imap_msgno($this->mbox, $arr_msg[$i])),$importance); 5482 $taglist[$i]["importance"] = $flag==0?"Normal":$importance[1]; 5483 } 5484 } 5485 return $taglist; 5486 } 5487 /* Airton 5488 * Fim dos métodos 5489 */ 5490 5438 5491 } 5439 5492 ?> -
sandbox/2.5.0-expresso1/expressoMail1_2/js/doiMenuData.js
r7053 r7157 128 128 "move": {"name": get_lang("Move to")+"...", "icon": "move", callback: function(key, opt){ wfolders.makeWindow('', 'move_to'); }}, 129 129 "remove": {"name": get_lang("Delete"), "icon": "delete", callback: function(key, opt){ proxy_mensagens.delete_msgs('null','selected','null'); }}, 130 "export": {"name": get_lang("Export"), "icon": "export", callback: function(key, opt){ proxy_mensagens.export_all_messages(); }} 130 "export": {"name": get_lang("Export"), "icon": "export", callback: function(key, opt){ proxy_mensagens.export_all_messages(); }}, 131 /* Airton 132 TO-DO: Esse menu só deve aparecer quando a preferência de arquivamento local estiver ativada 133 Como aqui dentro não dá pra fazer um if, fazer isso no início do método, passar toda essa linha para uma string e depois só colocar a variável aqui embaixo 134 */ 135 "archive": {"name": get_lang("Archive"), "icon": "archive", callback: function(key, opt){ proxy_mensagens.archive_message('inbox', 'get_selected_messages'); }} 131 136 } 132 137 }); -
sandbox/2.5.0-expresso1/expressoMail1_2/js/mail_archiver.js
r7150 r7157 403 403 MailArchiver.prototype.Archive = function(source_folder,destination_folder,msgs_id){ 404 404 //window.alert('tentando arquivar a mensagem [' + msgs_id + '], do folder ['+source_folder+'] para a pasta destino ['+destination_folder+']'); 405 modal('archive_queue');405 //modal('archive_queue'); 406 406 407 407 try{ 408 409 408 //Sets the folders properties: destination and origin 410 409 expresso_mail_archive.folder_origin = source_folder; 411 412 410 expresso_mail_archive.CreateMessageList(msgs_id); 413 411 var tagsHandler = function(data){ … … 456 454 try{ 457 455 //Archive services needs session id, message source and destination folder 458 456 ArchiveServices.archive(expresso_mail_archive.getArchiveOperationOK, expresso_mail_archive.getArchiveOperationFailure, expresso_mail_archive.session.id, expresso_mail_archive.folder_destination, data); 459 457 } 460 458 catch(e){ … … 464 462 465 463 //document.getElementById('main_title').innerHTML = get_lang('Archiving message %1 of %2 on folder %3', expresso_mail_archive.messages_processed, expresso_mail_archive.total_messages, fcaption); 466 document.getElementById('text_archive_queue').innerHTML = get_lang('Archiving message %1 of %2 on folder %3', expresso_mail_archive.messages_processed+1, expresso_mail_archive.total_messages, fcaption);464 //document.getElementById('text_archive_queue').innerHTML = get_lang('Archiving message %1 of %2 on folder %3', expresso_mail_archive.messages_processed+1, expresso_mail_archive.total_messages, fcaption); 467 465 cExecute("$this.exporteml.js_source_var",arch_handler,"folder="+url_decode(source_folder)+"&msgs_to_export="+expresso_mail_archive.message_list[0]); 468 466 } 469 467 else{ 470 close_lightbox();468 //close_lightbox(); 471 469 write_msg(get_lang('Archive operation error: getting online message flags fails. Achievement will not be done'),true); 472 470 expresso_mail_archive.archivefolder = null; … … 493 491 catch(e){ 494 492 //window.alert(get_lang("Archive error: %1", (e.description)?e.description:e)); 495 493 expresso_mail_archive.getFaultInfo(); 496 494 } 497 495 } -
sandbox/2.5.0-expresso1/expressoMail1_2/js/messages_controller.js
r7150 r7157 711 711 } 712 712 } 713 714 715 716 /* Airton 717 * Método que vai chamar efetivamente o método Archive. 718 * TO-DO: Tirar desse arquivo o método e passar pra outro arquivo 719 */ 720 messages_proxy.prototype.archive_message = function(folder, msgs_number) { 721 if(msgs_number == 'get_selected_messages') 722 msgs_number = get_selected_messages(); 723 724 var array_msgs = msgs_number.split(","); 725 726 // No momento só estou arquivando uma primeira mensagem. 727 // Ver qual é o padrão de parâmetro que o serviço espera para mandar mais de uma mensagem para arquivar 728 expresso_mail_archive.Archive("INBOX", "inbox", array_msgs[0]); 729 //expresso_mail_archive.Archive("INBOX", "inbox", msgs_number); 730 } 731 732 733 713 734 /* 714 735 messages_proxy.prototype.proxy_export_all_msg=function(){ -
sandbox/2.5.0-expresso1/expressoMail1_2/templates/default/main.css
r7113 r7157 130 130 .context-menu-item.icon-delete-box{ background-image: url(images/user_delete.png); } 131 131 .context-menu-item.icon-quick-search-contact{ background-image: url(images/zoom.png); } 132 /* Airton. Adicionando o ícone da opção de arquivar do menu de contexto do expressoMail */ 133 .context-menu-item.icon-archive{ background-image: url(images/archive.png); } 132 134 133 135
Note: See TracChangeset
for help on using the changeset viewer.