Changeset 54565 in spip-zone


Ignore:
Timestamp:
Nov 17, 2011, 7:19:41 PM (8 years ago)
Author:
joseph@…
Message:

On passe par le pipeline facteur_pre_envoi pour nettoyer les messages avant envoi.

Par ailleurs, petite amélioration pour les version textes. ==> Le mail est récupérée même après nettoyage du texte par spip-lettres ou clevermail.

C'est une version cryptée qui est enregistrée en base de données => Ainsi, la version en ligne de la lettre envoyée est bien cryptée.

Location:
_plugins_/mailcrypt
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/mailcrypt/mailcrypt_fonctions.php

    r54522 r54565  
    3434        // protection des liens HTML
    3535        $texte = preg_replace(",[\"\']mailto:([^@\"']+)@([^\"']+)[\"\'],",
    36                 '"#" title="$1' . _MAILCRYPT_AROBASE_JS . '$2" onclick="location.href=' . _MAILCRYPT_FONCTION_JS_LANCER_LIEN . '(\'$1\',\'$2\'); return false;"', $texte);
     36                '"#$1#mc#$2#" title="$1' . _MAILCRYPT_AROBASE_JS . '$2" onclick="location.href=' . _MAILCRYPT_FONCTION_JS_LANCER_LIEN . '(\'$1\',\'$2\'); return false;"', $texte);
    3737        // retrait des titles en doublon... un peu sale, mais en attendant mieux ?
    3838        $texte = preg_replace(',title="[^"]+'._MAILCRYPT_AROBASE_JSQ.'[^"]+"([^>]+title=[\"\']),', '$1', $texte);
     
    4545
    4646function maildecrypt($texte) {
    47         if (strpos($texte, 'spancrypt')===false AND strpos($texte, 'mc_lancerlien')===false) return $texte;
     47        if (strpos($texte, 'spancrypt')===false AND strpos($texte, 'mc_lancerlien')===false AND strpos($texte, '#mc')===false) return $texte;
    4848       
    4949        // Traiter les <span class="spancrypt">chez</span>
    5050        $texte = preg_replace(',<span class=\'spancrypt\'>(.*)</span>,U','@',$texte);
     51        $texte = preg_replace(',<span class="spancrypt">(.*)</span>,U','@',$texte);
    5152       
    52         // Traiter les liens
     53        // Traiter les liens HTML
    5354        $texte = preg_replace(
    54                 ',href="#" title="(.+)'._MAILCRYPT_AROBASE_JSQ.'(.+)" onclick="location.href=' . _MAILCRYPT_FONCTION_JS_LANCER_LIEN. '(.+)",U',
    55                 'href="mailto:$1@$2"',
     55                ',href="#(.+)#mc#(.+)#" title="(.+)'._MAILCRYPT_AROBASE_JSQ.'(.+)" onclick="location.href=' . _MAILCRYPT_FONCTION_JS_LANCER_LIEN. '(.+)",U',
     56                'href="mailto:$3@$4"',
    5657                $texte
    5758        );
     59       
     60        // Traiter les liens texte
     61        $texte = preg_replace(',#(.+)#mc#(.+)#,U' , 'mailto:$1@$2' , $texte);
     62        $texte = preg_replace(',(\S+) '._T('mailcrypt:chez').' (\S+),U' , '$1@$2' , $texte);
     63       
     64        // Supprimer l'appel du javascript
     65        $texte = preg_replace(',<script type=\'text/javascript\'(.*)mailcrypt.js(.*)</script>,U','',$texte);
    5866       
    5967        return $texte;
  • _plugins_/mailcrypt/mailcrypt_pipelines.php

    r47090 r54565  
    77}
    88
    9 function mailcrypt_post_propre ($texte) {
     9function mailcrypt_post_propre($texte) {
    1010        include_spip('mailcrypt_fonctions');
    1111        return mailcrypt($texte);
    1212}
    1313
     14function mailcrypt_facteur_pre_envoi($facteur) {
     15        include_spip('mailcrypt_fonctions');
     16        $facteur->Body = maildecrypt($facteur->Body);
     17        $facteur->AltBody = maildecrypt($facteur->AltBody);
     18        return $facteur;
     19}
    1420
    1521?>
  • _plugins_/mailcrypt/paquet.xml

    r54523 r54565  
    22        prefix="mailcrypt"
    33        categorie="edition"
    4         version="2.1.0"
     4        version="2.1.1"
    55        etat="stable"
    66        compatibilite="[2.1.0;3.0.99]"
     
    1919        <pipeline nom="insert_head" inclure="mailcrypt_pipelines.php" />
    2020        <pipeline nom="post_propre" inclure="mailcrypt_pipelines.php" />
     21        <pipeline nom="facteur_pre_envoi" inclure="mailcrypt_pipelines.php" />
    2122</paquet>
  • _plugins_/mailcrypt/plugin.xml

    r54522 r54565  
    33        <slogan>Prot&#233;ger les liens de courriels</slogan>
    44        <auteur>Alexis Roussel, Paolo, Patrice Vanneufville, Joseph</auteur>
    5         <version>2.1.0</version>
     5        <version>2.1.1</version>
    66        <icon>images/mailcrypt-256.png</icon>
    77        <etat>stable</etat>
     
    2121                <inclure>mailcrypt_pipelines.php</inclure>
    2222        </pipeline>
     23        <pipeline>
     24                <nom>facteur_pre_envoi</nom>
     25                <inclure>mailcrypt_pipelines.php</inclure>
     26        </pipeline>
    2327        <necessite id="SPIP" version="[2.1.0;3.0.99]" />
    2428</plugin>
Note: See TracChangeset for help on using the changeset viewer.