Changeset 4242


Ignore:
Timestamp:
05/06/11 12:11:23 (8 years ago)
Author:
airton
Message:

Ticket #1848 - Problema de codificacao de caracteres acentuados no gerenciamento de filtros de mensagens

Location:
sandbox/2.2.0.2/expressoMail1_2
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • sandbox/2.2.0.2/expressoMail1_2/inc/class.ScriptS.inc.php

    r3859 r4242  
    215215 
    216216        function convert_specialchar($input) { 
    217                 $special_char = false; 
    218                 for ($i = 0; $i < strlen($input); $i++) { 
    219                         if (preg_match('/[^a-z0-9.@~_+=&\'*^\ \-\[\]]/i', $input[$i])) { 
    220                                 $special_char = true; 
    221                                 $input = preg_replace('/\\' . $input[$i] . '/', '=' . bin2hex($input[$i]), $input); 
    222                         } 
    223                 } 
    224  
    225                 if ($special_char) { 
    226                         /*                       * 
    227                          * When using arrays with pattern and replacement,  
    228                          * the keys are processed in the order they appear in the array.  
    229                          * See preg_replace in php.net/preg_replace  
    230                          * */ 
    231                         $patterns[0] = '/=c3/i'; 
    232                         $patterns[1] = '/ /'; 
    233                         $replacements[1] = ''; 
    234                         $replacements[0] = '_'; 
    235                         $input = preg_replace($patterns, $replacements, $input); 
    236                 } 
    237  
    238                 return($input); 
     217                $temp_input = $input;  
     218                $temp_input = imap_8bit($temp_input); 
     219 
     220                $patterns[0] = '/ /'; 
     221                $replacements[0] = '_';  
     222                $temp_input = preg_replace($patterns, $replacements, $temp_input);  
     223                return ($temp_input); 
    239224        } 
    240225 
     
    263248                        $rule['to'] = $this->convert_specialchar($tmp1[4]); 
    264249                        $tmpSubject = $tmp1[5]; 
    265                         $rule['subject'] = $this->convert_specialchar($tmp1[5]); 
     250                        $rule['subject'] = $rule['subject']           = " [\"" . $this->convert_specialchar($tmp1[5]) . "\", \"" . base64_encode($tmp1[5]) . "\"]"; 
    266251                        $rule['action'] = $tmp1[6]; 
    267252                        $rule['action_arg'] = utf8_encode(preg_replace("/\\r\\n/", "\r\n", $tmp1[7])); 
     
    347332                                                        $match = ':regex'; 
    348333                                                $newruletext .= "header " . $match . " \"subject\""; 
    349                                                 $newruletext .= " \"" . $rule['subject'] . "\""; 
     334                                                $newruletext .= "" . $rule['subject'] . ""; 
    350335                                                $started = 1; 
    351336                                        } 
  • sandbox/2.2.0.2/expressoMail1_2/js/filter.js

    r3962 r4242  
    556556                        } 
    557557 
    558                         if (  
    559                                 ( /[^\x00-\x80]/.test( Element("field1").value ) || /[^\x00-\x80]/.test( Element("field2").value ) || /[^\x00-\x80]/.test( Element("field3").value ) ) 
    560                                 && ( ! confirm( get_lang ( 'Your rule contains any accented character. The filter may not work. Do you wish to continue?' ) ) ) 
    561                         ) return false; 
    562558 
    563559                        if(LTrim(Element("field1").value) == "" && LTrim(Element("field2").value) == "" && LTrim(Element("field3").value) == "" && Element("field4").value == "") 
  • sandbox/2.2.0.2/expressoMail1_2/setup/phpgw_pt-br.lang

    r4231 r4242  
    645645Increases the maximum size of show emails from 100kb to 1mb'    expressoMail1_2 pt-br   Essa opção aumenta o tamanho máximo dos emails mostrados de 100KB para 1MB. 
    646646If you want to install a desktop shortcut for accessing the offline ExpressoMail please confirm it after pressing the Install offline button. </br> The application also can be accessed using the URL: expressoMail1_2 pt-br   Caso deseje instalar um ícone no desktop para acesso ao expressoMail offline, confirme a pergunta que aparecerá após clicar no botão "instalar offline". <br />A aplicação também pode ser acessada pela URL: 
    647 Your rule contains any accented character. The filter may not work. Do you wish to continue?    expressoMail1_2 en      Sua regra contem algum caracter acentuado. O filtro pode nao funcionar. Deseja continuar? 
    648647The selected folder cotain any accented character. The filter dont work with accented folders. Please, rename the folder or choose another folder.      expressoMail1_2 pt-br   A pasta selecionada contém algum caracter acentuado. O filtro não funcionada com pastas acentuadas. Por favor, mude o nome da pasta ou escolha outra. 
    649648Warning expressoMail1_2 pt-br   Atenção 
Note: See TracChangeset for help on using the changeset viewer.