Changeset 6348


Ignore:
Timestamp:
05/30/12 01:20:05 (12 years ago)
Author:
airton
Message:

Ticket #2815 - Inconsistencia com filtros de mensagens com anexos

Location:
trunk
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/expressoMail1_2/setup/phpgw_pt-br.lang

    r6284 r6348  
    337337messages        expressoMail1_2 pt-br   mensagens 
    338338messages found in folder:       expressoMail1_2 pt-br   mensagens encontradas na pasta: 
     339Message has attachment  expressoMail1_2 pt-br   Mensagem tem anexo 
    339340Message signed by:      expressoMail1_2 pt-br   Mensagem assinada por: 
    340341Messages saved in %1 folder.    expressoMail1_2 pt-br   Mensagens salvas na pasta %1. 
  • trunk/prototype/modules/filters/edit-filter.ejs

    r6128 r6348  
    1010%> 
    1111<form action="filter:detail" method="POST"> 
     12        <input type="hidden" class="imapDelimiter" value="<%= data.delimiter %>"></input> 
    1213        <div class="rule-details-container"> 
    1314                <h3><a href="#"><%= get_lang("Criteria")%></a></h3> 
     
    7778                        </fieldset> 
    7879                        <fieldset> 
    79                                 <input type="checkbox" value="hasAttachment" name="hasAttachment" /> 
     80                                <input type="hidden" name="criteriaOperator[]" value="^"></input> 
     81                                <input type="checkbox" name="criteriaValue[]" value="*.*" class="hasAttachment"/> 
     82                                <input type="hidden" name="criteriaType[]" value="hasAttachment"/> 
    8083                                <label><%= get_lang("The message has attachment")%></label> 
    8184                        </fieldset> 
  • trunk/prototype/modules/filters/filter-list.ejs

    r6270 r6348  
    1919                                        if(data.rules[i].id != "vacation"){ 
    2020                                                for (var j=0; j<data.rules[i].criteria.length; j++) { 
     21                                                        if(data.rules[i].criteria[j].field == 'hasAttachment') { 
     22                                        %>         
     23                                                <li><strong><%= get_lang("Message has attachment") %></strong></li> 
     24                                        <%      } 
     25                                                        else { 
    2126                                        %> 
    22                                                 <li><strong><%= get_lang(data.rules[i].criteria[j].field) %>:</strong> <%= data.rules[i].criteria[j].value %></li> 
    23                                         <% 
     27                                                                <li><strong><%= get_lang(data.rules[i].criteria[j].field) %>:</strong> <%= data.rules[i].criteria[j].value %></li> 
     28                                        <%               } 
     29                                         
    2430                                                } 
    2531                                        } else { 
  • trunk/prototype/modules/filters/filters.js

    r6284 r6348  
    151151        nameObj.attr("disabled", "disabled"); 
    152152    for( var i = 0; i < filter.criteria.length; i++ ){ 
     153                if(filter.criteria[i].field == 'hasAttachment') { 
     154                        $(".hasAttachment").attr("checked", "True"); 
     155                        continue; 
     156                } 
    153157                criterias.filter( '[value="' + filter.criteria[i].field + '"]' ) 
    154158                .siblings( '[name="criteriaOperator[]"]' ).val( filter.criteria[i].operator ).end() 
     
    167171    } 
    168172    //isExact.val( filter.isExact != "false"? "and" : "or" ); 
    169         isExact.filter('[value="'+(filter.isExact != "false"? "and" : "or")+'"]').attr("checked", "True"); 
     173        isExact.filter('[value="'+(filter.isExact != "false"? "and" : "or")+'"]').attr("checked", "True");       
    170174} 
    171175 
  • trunk/prototype/modules/filters/init.ejs

    r6224 r6348  
    33        <div class="expresso-window-container filter-manager-window rule-edit-container" title="<% get_lang("Rules for message classification")%>"></div> 
    44</div> 
    5  
  • trunk/prototype/modules/filters/interceptors/FilterMapping.php

    r6213 r6348  
    118118                                } 
    119119                        } 
    120                         //if( $data['enabled'] == 'false' ) 
    121                                 //continue; 
    122120                                 
    123121                        $vacation = false; 
     
    151149                                                $criteria[$j]['field'] = "\"" . $criteria[$j]['field'] . "\""; 
    152150                                                $criteria[$j]['value'] = "" . imap_8bit($criteria[$j]['value']) . "*\", \"" . base64_encode($criteria[$j]['value']) . ""; 
     151                                                $criteria[$j]['operator'] = "^";  //temporary 
    153152                                                $script_criteria .= "header :"; 
    154153                                                break; 
     
    161160                                                continue; 
    162161                                        case 'hasAttachment': 
    163                                                 //$hasAttach = true; 
    164                                                 continue; 
     162                                                $criteria[$j]['field'] = ''; 
     163                                                $script_criteria .= "body :"; 
     164                                                $criteria[$j]['operator'] = "^^"; 
     165                                                $require_body = true; 
     166                                                break; 
    165167                                        default: 
    166168                                                $script_criteria .= "header :"; 
     
    188190                                                $criteria[$j]['operator'] = "matches"; 
    189191                                                $criteria[$j]['value'] = "[\"" . $criteria[$j]['value'] . "*\"]"; 
     192                                                $startswith = true; 
     193                                                break; 
     194                                        case '^^': 
     195                                                $criteria[$j]['operator'] = "raw :matches"; 
     196                                                $criteria[$j]['value'] = "[\"*filename=*\"]"; 
    190197                                                $startswith = true; 
    191198                                                break; 
     
    261268                if($require_reject || $require_fileinto || $require_vacation || $require_body || $require_flag) 
    262269                { 
     270                        /* Para habilitar as funções desejadas, edite a diretiva sieve_extensions no arquivo de configuração "/etc/imapd.conf" */ 
    263271                        $script_header .= "require ["; 
    264272                        $require_reject ? $script_header .= "\"reject\", " : "";  
     
    266274                        $require_vacation? $script_header .= "\"vacation\", " : "";   
    267275                        $require_flag ? $script_header .= "\"imapflags\", " : "";   
    268                         $require_body ? $script_header .= "\"body\", " : "";  /* tem que instalar as extensões no Cyrus */ 
     276                        $require_body ? $script_header .= "\"body\", " : "";   
    269277                        $script_header = substr($script_header,0,-2); 
    270278                        $script_header .= "];\r\n"; 
     
    278286                $json_data = json_encode($rules); 
    279287                 
    280                 $script_begin = "#Filtro gerado por Expresso Livre versão 2.4\r\n\r\n"; 
     288                $script_begin = "#Filtro gerado por Expresso Livre\r\n\r\n"; 
    281289 
    282290                $content = $script_begin . $script_header . $script_rules . "\r\n\r\n#PseudoScript#" . "\r\n#" . $json_data; 
Note: See TracChangeset for help on using the changeset viewer.