Changeset 6487 for trunk/expressoMail1_2
- Timestamp:
- 06/14/12 09:02:04 (12 years ago)
- Location:
- trunk/expressoMail1_2
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/expressoMail1_2/inc/class.imap_functions.inc.php
r6483 r6487 1095 1095 function get_info_msg($params) 1096 1096 { 1097 1098 1097 if(isset($params['alarm'])){ 1099 1098 $alarm = $params['alarm']; … … 5332 5331 5333 5332 } 5333 5334 5335 /** 5336 * Método que retorna as mensagens com a flag $FilteredMessage que representa as mensagens filtradas que devem ser alertadas para o usuário 5337 * 5338 * @license http://www.gnu.org/copyleft/gpl.html GPL 5339 * @author Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 5340 * @sponsor Caixa Econômica Federal 5341 * @author Airton Bordin Junior <airton@prognus.com.br> 5342 * @author Marcieli <marcieli@prognus.com.br> 5343 * @author Marcos <marcosw@prognus.com.br> 5344 * @param <Array> <$paramFolders> <Pastas onde devem ser buscadas as mensagens> 5345 * @return <Mensagens encontradas com a flag $FilteredMessage> 5346 * @access <public> 5347 */ 5348 function getFlaggedAlertMessages($paramFolders) { 5349 5350 $folders = explode(",", $paramFolders['folders']); 5351 5352 $messages = array(); 5353 $result = array(); 5354 $label = '$FilteredMessage'; 5355 5356 foreach ($folders as $folder) { 5357 $this->mbox = $this->open_mbox($folder); 5358 /* Não deletadas, não lidas e com a flag */ 5359 $messages = imap_search($this->mbox, 'UNDELETED UNSEEN KEYWORD "$FilteredMessage"', SE_UID); 5360 if(is_array($messages)) 5361 foreach ($messages as $k => $m) { 5362 $headers = imap_fetch_overview($this->mbox, $m, FT_UID); 5363 $date = explode(" ", $headers[0]->date); 5364 $result[$m."_".$folder] = array ( 5365 'udate' => $headers[0]->udate, 5366 'smalldate' => $date[4], 5367 'from' => $headers[0]->from, 5368 'subject' => self::decodeMimeString($headers[0]->subject), 5369 'msg_number' => $m, 5370 'msg_folder' => $folder 5371 ); 5372 } 5373 } 5374 $result_final = array(); 5375 foreach ($result as $r){ 5376 $result_final[] = $r; 5377 } 5378 5379 return $result_final; 5380 } 5381 5382 /** 5383 * Esta função é chamada ao clicar sobre uma mensagem listada nos alertas de Filtro por Remetente 5384 * remove a flag e chama a função que recupera os dados da mensagem, para serem utilizados na abertura da aba de leitura da msg 5385 */ 5386 function open_flagged_msg($params){ 5387 $message_number = $params['msg_number']; 5388 $message_folder = $params['msg_folder']; 5389 $alarm = $params['alarm']; 5390 if ($message_folder && $message_number) { 5391 $this->mbox = $this->open_mbox($message_folder); 5392 imap_clearflag_full($this->mbox, $message_number, '$FilteredMessage', ST_UID); 5393 } 5394 $r = $this->get_info_msg(array('msg_number' => $message_number, 'msg_folder' =>urlencode($message_folder), 'alarm' => ($alarm))); 5395 return $r; 5396 } 5397 5398 /** 5399 * Remove a flag que caracteriza uma mensagem como alertada por Filtro por Remetente. 5400 * se houver o parametro msg_number, então remove a flag de uma msg especifica 5401 * se não houver o parametro msg_number, mas sim o from, então remove a flag de todas as msgs da pasta (parametro from), 5402 * e que o remetente for o from. 5403 */ 5404 function removeFlagMessagesFilter($params){ 5405 $message_number = $params['msg_number']; 5406 $folder = $params['folder']; 5407 5408 if(isset($message_number)){ 5409 if(isset($folder)){ 5410 $message_number = explode(',', $message_number); 5411 $this->mbox = $this->open_mbox($folder); 5412 foreach ($message_number as $k => $m) { 5413 imap_clearflag_full($this->mbox, $m, '$FilteredMessage', ST_UID); 5414 } 5415 } 5416 } 5417 else{ 5418 $from = $params['from']; 5419 if(isset($folder) && isset($from)){ 5420 $this->mbox = $this->open_mbox($folder); 5421 $messages = imap_search($this->mbox, 'UNDELETED UNSEEN KEYWORD "$FilteredMessage"', SE_UID); 5422 } 5423 if(is_array($messages)){ 5424 foreach ($messages as $k => $m) { 5425 $headers = imap_fetch_overview($this->mbox, $m, FT_UID); 5426 if(strpos($headers[0]->from, $from) > 0){ 5427 imap_clearflag_full($this->mbox, $m, '$FilteredMessage', ST_UID); 5428 } 5429 } 5430 } 5431 } 5432 5433 return array('status' => "success"); 5434 } 5435 5334 5436 } 5335 5437 ?> -
trunk/expressoMail1_2/index.php
r6237 r6487 72 72 <script type="text/javascript" src="../prototype/modules/calendar/js/calendar.codecs.js"></script> 73 73 74 <link rel="stylesheet" type="text/css" href="../prototype/plugins/freeow/style/freeow/freeow.css" > 75 <script type="text/javascript" src="../prototype/plugins/freeow/jquery.freeow.min.js"></script> 76 <script type="text/javascript" src="../prototype/plugins/freeow/jquery.freeow.js"></script> 74 77 75 78 <script src="js/rich_text_editor.js" type="text/javascript"></script> -
trunk/expressoMail1_2/js/draw_api.js
r6469 r6487 1980 1980 var msg_selected; 1981 1981 function draw_message(info_msg, ID){ 1982 // remove a flag $FilteredMessage da mensagem ao ser lida 1983 if(info_msg.Unseen == "U"){ 1984 $.each(fromRules, function(index, value) { 1985 if(value == info_msg.msg_folder){ 1986 cExecute ("$this.imap_functions.removeFlagMessagesFilter&folder="+info_msg.msg_folder+"&msg_number="+info_msg.msg_number, function(){}); 1987 return false; 1988 } 1989 }); 1990 } 1982 1991 var content = document.getElementById('content_id_' + ID); 1983 1992 -
trunk/expressoMail1_2/js/main.js
r6469 r6487 6 6 var results_search_messages = ""; 7 7 var cabecalho = '<h4>ExpressoLivre - ExpressoMail</h4>'; 8 // Variavel para controle de atualização das mensagens listadas na modal de alerta de filtro por remetente 9 var checkAlarmsFilter = false; 8 10 9 11 //Os IE's < 9 não possui suporte a trim() introduzida no JavaScript 1.8.1 … … 158 160 mobile_device = ( ( data.constructor == Boolean ) ? data : ( data === 'true' ) ); 159 161 }); 162 160 163 setTimeout('auto_refresh()', time_refresh); 161 164 … … 507 510 508 511 function refresh(alert_new_msg){ 512 getFromAlertRules(); 509 513 var handler_refresh = function(data){ 514 if(checkAlarmsFilter){ 515 handlerMessageFilter = function (data) { 516 alarmFollowupflagged('filtersAlarms', data); 517 } 518 /* Busca nas pastas indexadas para ver se há novas mensagens com a flag $FilteredMessage */ 519 cExecute ("$this.imap_functions.getFlaggedAlertMessages&folders="+fromRules, handlerMessageFilter); 520 } 521 checkAlarmsFilter = true; 510 522 if(data['msg_range_end']) 511 523 if(data['msg_range_end'] > 0) … … 1135 1147 Element('tot_m').innerHTML = n_total_msg; 1136 1148 } 1137 1138 1149 refresh(); 1139 1150 } … … 1170 1181 refresh(); 1171 1182 if (parseInt(msgs_number) > 0 || msgs_number.length > 0){ 1172 $.ajax({ 1183 // remove a flag $FilteredMessage da mensagem, depois move 1184 var handler_removeFlag = function(){ 1185 $.ajax({ 1173 1186 url: 'controller.php?' + $.param( {action: '$this.imap_functions.move_messages', 1174 1187 folder: folder, … … 1191 1204 } 1192 1205 1193 }); 1206 }); 1207 } 1208 var hasFolder = false; 1209 $.each(fromRules, function(index, value) { 1210 if(value == folder){ 1211 hasFolder = true; 1212 cExecute ("$this.imap_functions.removeFlagMessagesFilter&folder="+folder+"&msg_number="+msgs_number, handler_removeFlag); 1213 return false; 1214 } 1215 }); 1216 if(!hasFolder){ 1217 handler_removeFlag(); 1218 } 1219 1194 1220 }else 1195 1221 write_msg(get_lang('No selected message.')); … … 2784 2810 set_msg_as_read(results_search_messages, false, true); 2785 2811 Element("check_box_message_" + msgs_to_set[i]).checked = false; 2812 2813 // remove a flag $FilteredMessage da mensagem ao ser marcada como lida 2814 $.each(fromRules, function(index, value) { 2815 if(value == folder){ 2816 cExecute ("$this.imap_functions.removeFlagMessagesFilter&folder="+folder+"&msg_number="+msgs_to_set, function(){}); 2817 return false; 2818 } 2819 }); 2820 2786 2821 break; 2787 2822 case "flagged": … … 2808 2843 else 2809 2844 folder = Element("input_folder_"+msgs_to_set+"_r").value; 2810 2845 2811 2846 if (msgs_to_set) 2812 2847 $.ajax({ … … 3993 4028 }; 3994 4029 4030 function truncate(text, size){ 4031 var result = text; 4032 if(text.length > size){ 4033 result = text.substring(0,size) + '...'; 4034 } 4035 return result; 4036 } 4037 3995 4038 DataLayer.links('message'); 3996 4039 DataLayer.poll('message',30); -
trunk/expressoMail1_2/js/messages_controller.js
r6469 r6487 88 88 if (msgs_number == 'selected') 89 89 msgs_number = get_selected_messages(); 90 90 91 if(currentTab != 0 && currentTab.indexOf("search_") >= 0){ 91 92 var content_search = document.getElementById('content_id_'+currentTab); -
trunk/expressoMail1_2/setup/phpgw_pt-br.lang
r6348 r6487 16 16 Add user into my IM expressoMail1_2 pt-br Adicionar no meu IM 17 17 After store email in your local computer delete it from server expressoMail1_2 pt-br Depois de guardar e-mail no seu computador local, excluí-lo do servidor 18 Alert message filter by sender expressoMail1_2 pt-br Alertar ao receber mensagens filtradas por remetente 18 19 all expressoMail1_2 pt-br Todas 19 20 All messages are successfully unarchived expressoMail1_2 pt-br Mensagens desarquivadas com sucesso … … 561 562 There is not %1 folder, Expresso is creating it for you... Please, repeat your request later. expressoMail1_2 pt-br Pasta %1 inexistente, Expresso criará para você. Contudo por favor repita a operação em seguida. 562 563 There's an action processing. Do you want abort it? expressoMail1_2 pt-br Existe uma ação que ainda está sendo processada. Suspender ação? 564 The filter is active for alerts expressoMail1_2 pt-br O filtro está ativo para alertas 563 565 The results were found in the Global Catalog expressoMail1_2 pt-br Ocorrências encontradas no Catálogo Geral 564 566 The selected folder is empty. expressoMail1_2 pt-br A pasta selecionada está vazia. … … 900 902 will be removed. This action cannot be undone. Want to continue? expressoMail1_2 pt-br serão removidas. Essa ação não poderá ser desfeita. Deseja continuar? 901 903 Message size greateruler than allowed (Default rule) expressoMail1_2 pt-br Tamanho da mensagem excede o limite de tamanho configurado pelo administrador 904 You have an archived message: expressoMail1_2 pt-br Você tem uma mensagem arquivada: 905 You have %1 messages archived: expressoMail1_2 pt-br Você tem %1 mensagens arquivadas: 906 Filter by sender expressoMail1_2 pt-br Filtro por Remetente 907 Follow ups expressoMail1_2 pt-br Sinalizadas 908 Done expressoMail1_2 pt-br Concluídas 909 This filter not permits alert expressoMail1_2 pt-br Este filtro não permite alerta -
trunk/expressoMail1_2/templates/default/index.tpl
r5878 r6487 211 211 <div id="sendFileMessages" style="display:none;"></div> 212 212 <div id="quickAddContact" style="display:none;"></div> 213 <div id="freeow" class="freeow freeow-bottom-right"></div> 213 214 <!-- END list -->
Note: See TracChangeset
for help on using the changeset viewer.