Changeset 6193


Ignore:
Timestamp:
05/15/12 15:02:07 (8 years ago)
Author:
airton
Message:

Ticket #2737 - Adequacao da codificacao do arquivo de interceptor da funcionalidade de filtro de mensagem

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/prototype/modules/filters/interceptors/FilterMapping.php

    r6163 r6193  
    22/** 
    33* 
    4 * Copyright (C) 2011 Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
     4* Copyright (C) 2011 Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
    55* 
    66* This program is free software; you can redistribute it and/or modify it under 
     
    2626* 
    2727* You can contact Prognus Software Livre headquarters at Av. Tancredo Neves, 
    28 * 6731, PTI, Bl. 05, Esp. 02, Sl. 10, Foz do Iguaçu - PR - Brasil or at 
     28* 6731, PTI, Bl. 05, Esp. 02, Sl. 10, Foz do Iguaçu - PR - Brasil or at 
    2929* e-mail address prognus@prognus.com.br. 
    3030* 
    31 * Descrição rápida do arquivo 
    32 * 
    33 * Arquivo responsável pela manipulação dos filtros 
     31* Descrição rápida do arquivo 
     32* 
     33* Arquivo responsável pela manipulação dos filtros 
    3434* 
    3535* @package    filters 
    3636* @license    http://www.gnu.org/copyleft/gpl.html GPL 
    37 * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
     37* @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
    3838* @version    1.0 
    39 * @sponsor    Caixa EconÃŽmica Federal 
    40 * @since      Arquivo disponibilizado na versão 2.4 
     39* @sponsor    Caixa Econômica Federal 
     40* @since      Arquivo disponibilizado na versão 2.4 
    4141*/ 
    4242 
     
    4444 
    4545/** 
    46 * Classe responsável pela manipulação dos filtros. 
     46* Classe responsável pela manipulação dos filtros. 
    4747* 
    4848* 
    4949* @package    prototype 
    5050* @license    http://www.gnu.org/copyleft/gpl.html GPL 
    51 * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
     51* @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
    5252* @author     Airton Bordin Junior <airton@prognus.com.br> 
    5353* @author     Gustavo Pereira dos Santos <gustavo@prognus.com.br> 
    5454* @version    1.0 
    55 * @since      Classe disponibilizada na versão 2.4 
     55* @since      Classe disponibilizada na versão 2.4 
    5656*/ 
    5757class FilterMapping 
     
    6060         
    6161        /** 
    62         * Método que cria o ID da regra que está sendo criada. 
    63         * 
    64         * @license    http://www.gnu.org/copyleft/gpl.html GPL 
    65         * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
    66         * @sponsor    Caixa EconÃŽmica Federal 
     62        * Método que cria o ID da regra que está sendo criada. 
     63        * 
     64        * @license    http://www.gnu.org/copyleft/gpl.html GPL 
     65        * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
     66        * @sponsor    Caixa Econômica Federal 
    6767        * @author     Airton Bordin Junior <airton@prognus.com.br> 
    6868        * @author         Gustavo Pereira dos Santos <gustavo@prognus.com.br>    
     
    8080         
    8181        /** 
    82         * Método que formata o Script de acordo com a sintaxe do Sieve. 
    83         * 
    84         * @license    http://www.gnu.org/copyleft/gpl.html GPL 
    85         * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
    86         * @sponsor    Caixa EconÃŽmica Federal 
    87         * @author     Airton Bordin Junior <airton@prognus.com.br> 
    88         * @author         Gustavo Pereira dos Santos <gustavo@prognus.com.br>    
    89         * @param      <Array> <$rules> <Array com as regras do usuário> 
     82        * Método que formata o Script de acordo com a sintaxe do Sieve. 
     83        * 
     84        * @license    http://www.gnu.org/copyleft/gpl.html GPL 
     85        * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
     86        * @sponsor    Caixa Econômica Federal 
     87        * @author     Airton Bordin Junior <airton@prognus.com.br> 
     88        * @author         Gustavo Pereira dos Santos <gustavo@prognus.com.br>    
     89        * @param      <Array> <$rules> <Array com as regras do usuário> 
    9090        * @return     <Regra de acordo com a sintaxe do Sieve> 
    9191        * @access     <public> 
     
    105105                                 
    106106                        if(array_key_exists("block", $data)) { 
    107                                 /* Usado na opção Bloquear usuário do ExpressoMail */ 
     107                                /* Usado na opção Bloquear usuário do ExpressoMail */ 
    108108                                if($data['block']) { 
    109109                                        ($i >0) ? $script_match = 'elsif anyof' : $script_match = 'if anyof'; 
     
    131131                        foreach ($criteria as $j => $value) 
    132132                        {                                        
    133  
     133                                 
    134134                                switch($criteria[$j]['field']) { 
    135135                                        case 'To':     
     
    197197                                        /*  
    198198                                           TO-DO: 
    199                                            Inconsistência na regra do "não contém". 
     199                                           Inconsistência na regra do "não contém". 
    200200                                        */ 
    201201                                        case '!*': 
     
    235235                                                $require_vacation = true; 
    236236                                                $action[$k]['parameter'] = "\"" . $action[$k]['parameter'] . "\""; 
    237                                                 $vacation_action = " :subject \"Fora do Escrit&oacuterio\" " . $action[$k]['parameter'] . ";"; 
     237                                                $vacation_action = ' :subject "Fora do Escritorio" ' . $action[$k]['parameter'] . ";"; 
    238238                                                $vacation = true; 
    239239                                                continue; 
     
    266266                        $require_vacation? $script_header .= "\"vacation\", " : "";   
    267267                        $require_flag ? $script_header .= "\"imapflags\", " : "";   
    268                         $require_body ? $script_header .= "\"body\", " : "";  /* tem que instalar as extensões no Cyrus */ 
     268                        $require_body ? $script_header .= "\"body\", " : "";  /* tem que instalar as extensões no Cyrus */ 
    269269                        $script_header = substr($script_header,0,-2); 
    270270                        $script_header .= "];\r\n"; 
     
    278278                $json_data = json_encode($rules); 
    279279                 
    280                 $script_begin = "#Filtro gerado por Expresso Livre versão 2.4\r\n\r\n"; 
     280                $script_begin = "#Filtro gerado por Expresso Livre versão 2.4\r\n\r\n"; 
    281281 
    282282                $content = $script_begin . $script_header . $script_rules . "\r\n\r\n#PseudoScript#" . "\r\n#" . $json_data; 
    283  
     283                 
    284284                return( $content ); 
    285285        } 
    286286         
    287287        /** 
    288         * Método que lê e faz o parser dos filtros antigos 
    289         * 
    290         * @license    http://www.gnu.org/copyleft/gpl.html GPL 
    291         * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
    292         * @sponsor    Caixa EconÃŽmica Federal 
    293         * @author     Airton Bordin Junior <airton@prognus.com.br> 
    294         * @author         Gustavo Pereira dos Santos <gustavo@prognus.com.br>    
    295         * @param      <$scriptName> <Regras do usuário> 
    296         * @return     <Regra do usuário parseada> 
     288        * Método que lê e faz o parser dos filtros antigos 
     289        * 
     290        * @license    http://www.gnu.org/copyleft/gpl.html GPL 
     291        * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
     292        * @sponsor    Caixa Econômica Federal 
     293        * @author     Airton Bordin Junior <airton@prognus.com.br> 
     294        * @author         Gustavo Pereira dos Santos <gustavo@prognus.com.br>    
     295        * @param      <$scriptName> <Regras do usuário> 
     296        * @return     <Regra do usuário parseada> 
    297297        * @access     <public> 
    298298        */ 
    299299        public function readOldScript($scriptName)  
    300300        { 
    301         // Recebe o conteúdo do array; 
     301        // Recebe o conteúdo do array; 
    302302        $lines = array(); 
    303303        $lines = preg_split("/\n/", $scriptName); 
     
    309309        //$this->size = trim($size_rule); 
    310310 
    311         // Verifica a composição do script; */ 
     311        // Verifica a composição do script; */ 
    312312        $line = array_shift($lines); 
    313313 
     
    336336         
    337337        /** 
    338         * Método que faz o parsing do Script Sieve, transformando em Array. 
    339         * 
    340         * @license    http://www.gnu.org/copyleft/gpl.html GPL 
    341         * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
    342         * @sponsor    Caixa EconÃŽmica Federal 
    343         * @author     Airton Bordin Junior <airton@prognus.com.br> 
    344         * @author         Gustavo Pereira dos Santos <gustavo@prognus.com.br>    
    345         * @param      <String> <$script> <Script Sieve com as regras do usuário> 
    346         * @return     <Regras do usuário em Array> 
     338        * Método que faz o parsing do Script Sieve, transformando em Array. 
     339        * 
     340        * @license    http://www.gnu.org/copyleft/gpl.html GPL 
     341        * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
     342        * @sponsor    Caixa Econômica Federal 
     343        * @author     Airton Bordin Junior <airton@prognus.com.br> 
     344        * @author         Gustavo Pereira dos Santos <gustavo@prognus.com.br>    
     345        * @param      <String> <$script> <Script Sieve com as regras do usuário> 
     346        * @return     <Regras do usuário em Array> 
    347347        * @access     <public> 
    348348        */ 
     
    359359                                $array_rule = explode("&&", $parsed_rule['rule'][$i]); 
    360360 
    361                                 /* TO-DO: Ver as actions possíveis além de reject e fileinto */ 
     361                                /* TO-DO: Ver as actions possíveis além de reject e fileinto */ 
    362362                                switch($array_rule[6]) { 
    363363                                        case 'reject': 
     
    404404                        return $old_rules; 
    405405                }  
    406                 /* Não tem regra antiga */ 
     406                /* Não tem regra antiga */ 
    407407                $pos = strripos($script, "#PseudoScript#"); 
    408408                $pseudo_script = substr( $script, $pos+17 ); 
     
    419419        * 
    420420        * @license    http://www.gnu.org/copyleft/gpl.html GPL 
    421         * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
    422         * @sponsor    Caixa EconÃŽmica Federal 
     421        * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
     422        * @sponsor    Caixa Econômica Federal 
    423423        * @author     Airton Bordin Junior <airton@prognus.com.br> 
    424424        * @author         Gustavo Pereira dos Santos <gustavo@prognus.com.br>    
     
    432432         
    433433        /** 
    434         * Método que recupera as regras do usuário. 
    435         * 
    436         * @license    http://www.gnu.org/copyleft/gpl.html GPL 
    437         * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
    438         * @sponsor    Caixa EconÃŽmica Federal 
    439         * @author     Airton Bordin Junior <airton@prognus.com.br> 
    440         * @author         Gustavo Pereira dos Santos <gustavo@prognus.com.br>    
    441         * @return     <Regras do usuário> 
     434        * Método que recupera as regras do usuário. 
     435        * 
     436        * @license    http://www.gnu.org/copyleft/gpl.html GPL 
     437        * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
     438        * @sponsor    Caixa Econômica Federal 
     439        * @author     Airton Bordin Junior <airton@prognus.com.br> 
     440        * @author         Gustavo Pereira dos Santos <gustavo@prognus.com.br>    
     441        * @return     <Regras do usuário> 
    442442        * @access     <public> 
    443443        */ 
     
    455455         
    456456        /** 
    457         * Método que aplica o filtro para as mensagens do usuário. 
    458         * 
    459         * @license    http://www.gnu.org/copyleft/gpl.html GPL 
    460         * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
    461         * @sponsor    Caixa EconÃŽmica Federal 
     457        * Método que aplica o filtro para as mensagens do usuário. 
     458        * 
     459        * @license    http://www.gnu.org/copyleft/gpl.html GPL 
     460        * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
     461        * @sponsor    Caixa Econômica Federal 
    462462        * @author     Airton Bordin Junior <airton@prognus.com.br> 
    463463        * @author         Gustavo Pereira dos Santos <gustavo@prognus.com.br>    
     
    506506         
    507507        /** 
    508         * Método que lê o script do usuário. 
    509         * 
    510         * @license    http://www.gnu.org/copyleft/gpl.html GPL 
    511         * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
    512         * @sponsor    Caixa EconÃŽmica Federal 
     508        * Método que lê o script do usuário. 
     509        * 
     510        * @license    http://www.gnu.org/copyleft/gpl.html GPL 
     511        * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
     512        * @sponsor    Caixa Econômica Federal 
    513513        * @author     Airton Bordin Junior <airton@prognus.com.br> 
    514514        * @author         Gustavo Pereira dos Santos <gustavo@prognus.com.br>    
     
    517517        * @param      <$criteria>  
    518518        * @param      <$original>  
    519         * @return     <Script do usuário> 
     519        * @return     <Script do usuário> 
    520520        * @access     <public> 
    521521        */ 
     
    527527   
    528528        /** 
    529         * Método que seta o script do usuário. 
    530         * 
    531         * @license    http://www.gnu.org/copyleft/gpl.html GPL 
    532         * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
    533         * @sponsor    Caixa EconÃŽmica Federal 
     529        * Método que seta o script do usuário. 
     530        * 
     531        * @license    http://www.gnu.org/copyleft/gpl.html GPL 
     532        * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
     533        * @sponsor    Caixa Econômica Federal 
    534534        * @author     Airton Bordin Junior <airton@prognus.com.br> 
    535535        * @author         Gustavo Pereira dos Santos <gustavo@prognus.com.br>    
     
    538538        * @param      <$criteria>  
    539539        * @param      <$original>  
    540         * @return     <Script do usuário> 
     540        * @return     <Script do usuário> 
    541541        * @access     <public> 
    542542        */ 
     
    561561         
    562562        /** 
    563         * Método que deleta o script do usuário. 
    564         * 
    565         * @license    http://www.gnu.org/copyleft/gpl.html GPL 
    566         * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
    567         * @sponsor    Caixa EconÃŽmica Federal 
     563        * Método que deleta o script do usuário. 
     564        * 
     565        * @license    http://www.gnu.org/copyleft/gpl.html GPL 
     566        * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
     567        * @sponsor    Caixa Econômica Federal 
    568568        * @author     Airton Bordin Junior <airton@prognus.com.br> 
    569569        * @author         Gustavo Pereira dos Santos <gustavo@prognus.com.br>    
     
    605605         
    606606        /** 
    607         * Método que pega o script do usuário. 
    608         * 
    609         * @license    http://www.gnu.org/copyleft/gpl.html GPL 
    610         * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
    611         * @sponsor    Caixa EconÃŽmica Federal 
     607        * Método que pega o script do usuário. 
     608        * 
     609        * @license    http://www.gnu.org/copyleft/gpl.html GPL 
     610        * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
     611        * @sponsor    Caixa Econômica Federal 
    612612        * @author     Airton Bordin Junior <airton@prognus.com.br> 
    613613        * @author         Gustavo Pereira dos Santos <gustavo@prognus.com.br>    
     
    616616        * @param      <$criteria>  
    617617        * @param      <$original>  
    618         * @return     <Script do usuário> 
     618        * @return     <Script do usuário> 
    619619        * @access     <public> 
    620620        */ 
     
    631631         
    632632        /** 
    633         * Método que lista as regras do usuário. 
    634         * 
    635         * @license    http://www.gnu.org/copyleft/gpl.html GPL 
    636         * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
    637         * @sponsor    Caixa EconÃŽmica Federal 
     633        * Método que lista as regras do usuário. 
     634        * 
     635        * @license    http://www.gnu.org/copyleft/gpl.html GPL 
     636        * @author     Consórcio Expresso Livre - 4Linux (www.4linux.com.br) e Prognus Software Livre (www.prognus.com.br) 
     637        * @sponsor    Caixa Econômica Federal 
    638638        * @author     Airton Bordin Junior <airton@prognus.com.br> 
    639639        * @author         Gustavo Pereira dos Santos <gustavo@prognus.com.br>    
     
    642642        * @param      <$criteria>  
    643643        * @param      <$original>  
    644         * @return     <Regras do usuário> 
     644        * @return     <Regras do usuário> 
    645645        * @access     <public> 
    646646        */ 
Note: See TracChangeset for help on using the changeset viewer.