Changeset 70351 in spip-zone


Ignore:
Timestamp:
Mar 3, 2013, 12:47:52 PM (6 years ago)
Author:
robert.sebille@…
Message:

Support des forums + divers (voir doc)

Location:
_plugins_/rspip_code_mail
Files:
16 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/rspip_code_mail/rspip2_code_mail/trunk/css/noscript.css

    r70156 r70351  
    55   padding: 5px;
    66   }
     7   
  • _plugins_/rspip_code_mail/rspip2_code_mail/trunk/lang/rspipcm_en.php

    r70156 r70351  
    44
    55   // PAS DE CHAINE VIDE. Laisser au moins un espace.
     6   
     7   //D
     8   "dans_le_domaine" => "in the domain",
    69
    710   //E
     
    1518   "erreur_entrez_resultat_addition" => "Mistake! How much is",
    1619   
    17    //J
    18    "javascript_est_desactive" => "Javascript is disabled in your browser. The email links of this page will not work.",
    19 
    2020   // final
    2121   "pour_les_distraits" => "Pas de virgule a la fin du tableau"
  • _plugins_/rspip_code_mail/rspip2_code_mail/trunk/lang/rspipcm_fr.php

    r70156 r70351  
    44
    55   // PAS DE CHAINE VIDE. Laisser au moins un espace.
     6
     7   //D
     8   "dans_le_domaine" => "dans le domaine",
    69
    710   //E
     
    1518   "erreur_entrez_resultat_addition" => "Erreur! Combien vaut",
    1619   
    17    //J
    18    "javascript_est_desactive" => "Javascript est désactivé dans votre navigateur. Les liens email de cette page ne fonctionneront pas.",
    19    
    2020   // final
    2121   "pour_les_distraits" => "Pas de virgule a la fin du tableau"
  • _plugins_/rspip_code_mail/rspip2_code_mail/trunk/lang/rspipcm_nl.php

    r70156 r70351  
    44
    55   // PAS DE CHAINE VIDE. Laisser au moins un espace.
     6
     7   //D
     8   "dans_le_domaine" => "in het domein",
    69
    710   //E
     
    1417   // Pour javascript: pas d'entites html.
    1518   "erreur_entrez_resultat_addition" => "Fout! Hoeveel is",
    16    
    17    //J (to translate)
    18    "javascript_est_desactive" => "Javascript is disabled in your browser. The email links of this page will not work.",
    1919
    2020   // final
  • _plugins_/rspip_code_mail/rspip2_code_mail/trunk/lib/rspipcm_decode_autres_fonctions.js

    r70330 r70351  
    33// By Robert Sebille 27/05/02
    44// Licence GNU GPL
    5 
    6 function empoisonne() {
    7 var poison="",i=0,u=0,d=0;
    8    tld = new Array(".be",".com",".net",".org",".eu",".fr",".it");
    9    u=Math.round(Math.random()*6)+6;
    10    d=Math.round(Math.random()*5)+4;
    11    for (i=1;i<=u;i++) {poison = poison.concat(String.fromCharCode(Math.round(Math.random()*25)+97));}
    12    poison = poison.concat("@");
    13    i=0;
    14    for (i=1;i<=d;i++) {poison = poison.concat(String.fromCharCode(Math.round(Math.random()*25)+97));}
    15    poison = poison.concat(tld[Math.round(Math.random()*(tld.length-1))]);
    16    return poison;
    17 }
    185
    196
     
    3724   return email;
    3825}
     26
     27function mdecode(adr){
     28// used by the browser
     29var check=100,r=101,i=0,r1,r2,email;
     30
     31   while (check != null && check != r) {
     32      r1=Math.round(Math.random()*4)+1;
     33      r2=Math.round(Math.random()*4)+1;
     34      r=r1+r2;
     35      if (i==0) {invite="$entrez_resultat_addition";}
     36         else {invite="$erreur_entrez_resultat_addition";}
     37      check = prompt(invite+" "+r1+" + "+r2+" ?","");
     38      i++;
     39      }
     40
     41   if(check == r) {
     42      email=decode(adr)
     43        document.location="mailto:"+email;
     44        }
     45
     46//    if (check == null) alert("   "+r1+" + "+r2+" = "+r+" ;-)");
     47}
     48
     49// Not used in this version.
     50function empoisonne() {
     51var poison="",i=0,u=0,d=0;
     52   tld = new Array(".be",".com",".net",".org",".eu",".fr",".it");
     53   u=Math.round(Math.random()*6)+6;
     54   d=Math.round(Math.random()*5)+4;
     55   for (i=1;i<=u;i++) {poison = poison.concat(String.fromCharCode(Math.round(Math.random()*25)+97));}
     56   poison = poison.concat("@");
     57   i=0;
     58   for (i=1;i<=d;i++) {poison = poison.concat(String.fromCharCode(Math.round(Math.random()*25)+97));}
     59   poison = poison.concat(tld[Math.round(Math.random()*(tld.length-1))]);
     60   return poison;
     61}
     62
  • _plugins_/rspip_code_mail/rspip2_code_mail/trunk/plugin.xml

    r70215 r70351  
    22<plugin>
    33 <nom>Codeur d'adresses email</nom>
    4  <version>1.0.0</version>
     4 <version>1.1.0</version>
    55 <auteur>
    66Robert Sebille
     
    1818
    1919 </description>
    20  <categorie>communication</categorie>
    2120 <necessite id="SPIP" version="[2.1.0;2.1.99]" />
    2221 <licence>GNU/GPL</licence>
     
    3938   <inclure>rspipcm_code_email.php</inclure>
    4039 </pipeline>
     40 <pipeline>
     41   <nom>affichage_final</nom>
     42   <inclure>rspipcm_code_email.php</inclure>
     43 </pipeline>
    4144</plugin>
  • _plugins_/rspip_code_mail/rspip2_code_mail/trunk/rspipcm_code_email.php

    r70215 r70351  
    2727   for ($i = (mb_strlen($adr) - 1); $i > -1; $i--) {
    2828      $ch = mb_substr($adr, $i, 1);
    29       if ($ch=="@") {$ch=":";}
    30       if ($ch=="?") {$ch="!";}
    31       if ($ch=="&") {$ch="#";}
     29      if ($ch=="@") {$ch="__@__";} //:
     30      if ($ch=="?") {$ch="__?__";} //!
     31      if ($ch=="&") {$ch="__&__";} //#
    3232      $email .= $ch;
    3333      }
     
    5151        $to_replace = array(); $val_code = "";
    5252        preg_match_all("/\[.*->.*@.*\]/i", $texte, $to_replace);
    53         // on regarde si il y a des matches pour l'affichage du <noscript>
    54         $noscript = count($to_replace[0]);
    5553
    5654        foreach ($to_replace[0] as $val) {
     
    6159                // On vire le mailto: eventuel
    6260                $val_adresse = str_replace("mailto:", "", $val_adresse);
     61
     62
     63                //on preserve le user originel pour un eventuel noscript
     64                $val_nom_nojs = substr($val_adresse, 0, strpos($val_adresse, "@"));
     65                $val_nom_nojs = _T('rspipcm:ecrire_a_pre')." : ".$val_nom_nojs." "._T('rspipcm:ecrire_a_post');
     66                // on recupere le domaine pour javascript desactive
     67                $val_domaine = strstr($val_adresse, '@');
     68                // on backes le @ et les eventuels param
     69                $val_domaine = substr($val_domaine, 1, strlen($val_domaine));
     70                if (strpos($val_domaine, "?")) {$val_domaine = substr($val_domaine, 0, strpos($val_domaine, "?"));}
     71
    6372                // On encode l'adresse (et ses param eventuels)
    6473                $val_adresse = rspipcm_encode($val_adresse);
     
    7281                        // On supprime un eventuel mailto:
    7382                        $val_nom = str_replace("mailto:", "", $val_nom);
     83                       
    7484                        // Si il y a des . dans user on l'eclate: par exple: nom.prenom > Nom Prenom
    7585                        if (preg_match("/\./", $val_nom)) {
     
    8090                        }
    8191                }
    82                 $text_to_replace = "[".$val_nom."->javascript:mdecode('".$val_adresse."')]";
    8392                // On prepare la mise à jour du texte
     93                // RSPIPCM_JS_MDECODE => javascript:mdecode dans affichage_final
     94                $text_to_replace = "[".$val_nom."->RSPIPCM_JS_MDECODE('".$val_adresse."')]\n<noscript>\n<div class=\"rspipcm_noscript\">".$val_nom_nojs."<br />"._T('rspipcm:dans_le_domaine')." : ".$val_domaine."</div>\n</noscript>";
    8495               
    8596                // On met le texte a jour
    8697                $texte = str_replace($val, $text_to_replace, $texte);
    87 
    8898        }
    8999
    90 if ($noscript) {
    91 $texte = "<noscript><div class=\"rspipcm_noscript\">"._T('rspipcm:javascript_est_desactive')."</div></noscript>".$texte;
     100   return $texte;
     101
     102} // function rspipcm_filtre_email($texte)
     103
     104
     105function rspipcm_affichage_final($texte_final) {
     106        if ($GLOBALS['html']) {
     107                $texte_final = str_replace("RSPIPCM_JS_MDECODE", "javascript:mdecode", $texte_final);
     108                $texte_final = str_replace("__@__", ":", $texte_final);
     109                $texte_final = str_replace("__?__", "!", $texte_final);
     110                $texte_final = str_replace("__&amp;__", "#", $texte_final);
     111        }
     112       
     113        return $texte_final;
    92114}
    93115
    94    return $texte;
    95 }
    96 
    97 
    98116?>
  • _plugins_/rspip_code_mail/rspip2_code_mail/trunk/rspipcm_decode_email.php

    r70330 r70351  
    3535<!-- feuille de style pour l'encodage sans javascript -->
    3636<link rel='stylesheet' type='text/css' href='$rspipcm_chemin_css' />
    37 <!-- Decodeur du plugin Codeur d adresse email - debut -->
     37<!-- Decodeur et captcha du plugin Codeur d adresse email - debut -->
    3838<script type='text/javascript' src='$rspipcm_chemin_js'></script>
    39 <script type="text/javascript">
    40 // code..js
    41 // decrypt mail address
    42 // By Robert Sebille 27/05/02
    43 // Licence GNU GPL
    44 
    45 function mdecode(adr){
    46 // used by the browser
    47 var check=100,r=101,i=0,r1,r2,email;
    48 
    49    while (check != null && check != r) {
    50       r1=Math.round(Math.random()*4)+1;
    51       r2=Math.round(Math.random()*4)+1;
    52       r=r1+r2;
    53       if (i==0) {invite="$entrez_resultat_addition";}
    54          else {invite="$erreur_entrez_resultat_addition";}
    55       check = prompt(invite+" "+r1+" + "+r2+" ?","");
    56       i++;
    57       }
    58 
    59    if(check == r) {
    60       email=decode(adr)
    61         document.location="mailto:"+email;
    62         }
    63 
    64 //    if (check == null) alert("   "+r1+" + "+r2+" = "+r+" ;-)");
    65 }
    66 </script>
    67 <!-- Decodeur du plugin Codeur d adresse email - fin -->
    68 <!--  -->
    6939EOD;
    7040
  • _plugins_/rspip_code_mail/rspip3_code_mail/trunk/css/noscript.css

    r70156 r70351  
    55   padding: 5px;
    66   }
     7   
  • _plugins_/rspip_code_mail/rspip3_code_mail/trunk/lang/rspipcm_en.php

    r70156 r70351  
    44
    55   // PAS DE CHAINE VIDE. Laisser au moins un espace.
     6   
     7   //D
     8   "dans_le_domaine" => "in the domain",
    69
    710   //E
     
    1518   "erreur_entrez_resultat_addition" => "Mistake! How much is",
    1619   
    17    //J
    18    "javascript_est_desactive" => "Javascript is disabled in your browser. The email links of this page will not work.",
    19 
    2020   // final
    2121   "pour_les_distraits" => "Pas de virgule a la fin du tableau"
  • _plugins_/rspip_code_mail/rspip3_code_mail/trunk/lang/rspipcm_fr.php

    r70156 r70351  
    44
    55   // PAS DE CHAINE VIDE. Laisser au moins un espace.
     6
     7   //D
     8   "dans_le_domaine" => "dans le domaine",
    69
    710   //E
     
    1518   "erreur_entrez_resultat_addition" => "Erreur! Combien vaut",
    1619   
    17    //J
    18    "javascript_est_desactive" => "Javascript est d&eacute;sactiv&eacute; dans votre navigateur. Les liens email de cette page ne fonctionneront pas.",
    19    
    2020   // final
    2121   "pour_les_distraits" => "Pas de virgule a la fin du tableau"
  • _plugins_/rspip_code_mail/rspip3_code_mail/trunk/lang/rspipcm_nl.php

    r70156 r70351  
    44
    55   // PAS DE CHAINE VIDE. Laisser au moins un espace.
     6
     7   //D
     8   "dans_le_domaine" => "in het domein",
    69
    710   //E
     
    1417   // Pour javascript: pas d'entites html.
    1518   "erreur_entrez_resultat_addition" => "Fout! Hoeveel is",
    16    
    17    //J (to translate)
    18    "javascript_est_desactive" => "Javascript is disabled in your browser. The email links of this page will not work.",
    1919
    2020   // final
  • _plugins_/rspip_code_mail/rspip3_code_mail/trunk/lib/rspipcm_decode_autres_fonctions.js

    r70330 r70351  
    33// By Robert Sebille 27/05/02
    44// Licence GNU GPL
    5 
    6 function empoisonne() {
    7 var poison="",i=0,u=0,d=0;
    8    tld = new Array(".be",".com",".net",".org",".eu",".fr",".it");
    9    u=Math.round(Math.random()*6)+6;
    10    d=Math.round(Math.random()*5)+4;
    11    for (i=1;i<=u;i++) {poison = poison.concat(String.fromCharCode(Math.round(Math.random()*25)+97));}
    12    poison = poison.concat("@");
    13    i=0;
    14    for (i=1;i<=d;i++) {poison = poison.concat(String.fromCharCode(Math.round(Math.random()*25)+97));}
    15    poison = poison.concat(tld[Math.round(Math.random()*(tld.length-1))]);
    16    return poison;
    17 }
    185
    196
     
    3724   return email;
    3825}
     26
     27function mdecode(adr){
     28// used by the browser
     29var check=100,r=101,i=0,r1,r2,email;
     30
     31   while (check != null && check != r) {
     32      r1=Math.round(Math.random()*4)+1;
     33      r2=Math.round(Math.random()*4)+1;
     34      r=r1+r2;
     35      if (i==0) {invite="$entrez_resultat_addition";}
     36         else {invite="$erreur_entrez_resultat_addition";}
     37      check = prompt(invite+" "+r1+" + "+r2+" ?","");
     38      i++;
     39      }
     40
     41   if(check == r) {
     42      email=decode(adr)
     43        document.location="mailto:"+email;
     44        }
     45
     46//    if (check == null) alert("   "+r1+" + "+r2+" = "+r+" ;-)");
     47}
     48
     49// Not used in this version.
     50function empoisonne() {
     51var poison="",i=0,u=0,d=0;
     52   tld = new Array(".be",".com",".net",".org",".eu",".fr",".it");
     53   u=Math.round(Math.random()*6)+6;
     54   d=Math.round(Math.random()*5)+4;
     55   for (i=1;i<=u;i++) {poison = poison.concat(String.fromCharCode(Math.round(Math.random()*25)+97));}
     56   poison = poison.concat("@");
     57   i=0;
     58   for (i=1;i<=d;i++) {poison = poison.concat(String.fromCharCode(Math.round(Math.random()*25)+97));}
     59   poison = poison.concat(tld[Math.round(Math.random()*(tld.length-1))]);
     60   return poison;
     61}
     62
  • _plugins_/rspip_code_mail/rspip3_code_mail/trunk/paquet.xml

    r70215 r70351  
    33        etat="stable"
    44        prefix="rspipcm"
    5         version="1.0.0"
     5        version="1.1.0"
    66        compatibilite="[3.0.0 ;3.0.*]"
    77        categorie="communication"
     
    1616        <pipeline nom="header_prive" action="ecris_entete" inclure="rspipcm_decode_email.php" />
    1717        <pipeline nom="pre_liens" action="filtre_email" inclure="rspipcm_code_email.php" />
     18        <pipeline nom="affichage_final" inclure="rspipcm_code_email.php" />
    1819</paquet>
  • _plugins_/rspip_code_mail/rspip3_code_mail/trunk/rspipcm_code_email.php

    r70215 r70351  
    2727   for ($i = (mb_strlen($adr) - 1); $i > -1; $i--) {
    2828      $ch = mb_substr($adr, $i, 1);
    29       if ($ch=="@") {$ch=":";}
    30       if ($ch=="?") {$ch="!";}
    31       if ($ch=="&") {$ch="#";}
     29      if ($ch=="@") {$ch="__@__";} //:
     30      if ($ch=="?") {$ch="__?__";} //!
     31      if ($ch=="&") {$ch="__&__";} //#
    3232      $email .= $ch;
    3333      }
     
    5151        $to_replace = array(); $val_code = "";
    5252        preg_match_all("/\[.*->.*@.*\]/i", $texte, $to_replace);
    53         // on regarde si il y a des matches pour l'affichage du <noscript>
    54         $noscript = count($to_replace[0]);
    5553
    5654        foreach ($to_replace[0] as $val) {
     
    6159                // On vire le mailto: eventuel
    6260                $val_adresse = str_replace("mailto:", "", $val_adresse);
     61
     62
     63                //on preserve le user originel pour un eventuel noscript
     64                $val_nom_nojs = substr($val_adresse, 0, strpos($val_adresse, "@"));
     65                $val_nom_nojs = _T('rspipcm:ecrire_a_pre')." : ".$val_nom_nojs." "._T('rspipcm:ecrire_a_post');
     66                // on recupere le domaine pour javascript desactive
     67                $val_domaine = strstr($val_adresse, '@');
     68                // on backes le @ et les eventuels param
     69                $val_domaine = substr($val_domaine, 1, strlen($val_domaine));
     70                if (strpos($val_domaine, "?")) {$val_domaine = substr($val_domaine, 0, strpos($val_domaine, "?"));}
     71
    6372                // On encode l'adresse (et ses param eventuels)
    6473                $val_adresse = rspipcm_encode($val_adresse);
     
    7281                        // On supprime un eventuel mailto:
    7382                        $val_nom = str_replace("mailto:", "", $val_nom);
     83                       
    7484                        // Si il y a des . dans user on l'eclate: par exple: nom.prenom > Nom Prenom
    7585                        if (preg_match("/\./", $val_nom)) {
     
    8090                        }
    8191                }
    82                 $text_to_replace = "[".$val_nom."->javascript:mdecode('".$val_adresse."')]";
    8392                // On prepare la mise à jour du texte
     93                // RSPIPCM_JS_MDECODE => javascript:mdecode dans affichage_final
     94                $text_to_replace = "[".$val_nom."->RSPIPCM_JS_MDECODE('".$val_adresse."')]\n<noscript>\n<div class=\"rspipcm_noscript\">".$val_nom_nojs."<br />"._T('rspipcm:dans_le_domaine')." : ".$val_domaine."</div>\n</noscript>";
    8495               
    8596                // On met le texte a jour
    8697                $texte = str_replace($val, $text_to_replace, $texte);
    87 
    8898        }
    8999
    90 if ($noscript) {
    91 $texte = "<noscript><div class=\"rspipcm_noscript\">"._T('rspipcm:javascript_est_desactive')."</div></noscript>".$texte;
     100   return $texte;
     101
     102} // function rspipcm_filtre_email($texte)
     103
     104
     105function rspipcm_affichage_final($texte_final) {
     106        if ($GLOBALS['html']) {
     107                $texte_final = str_replace("RSPIPCM_JS_MDECODE", "javascript:mdecode", $texte_final);
     108                $texte_final = str_replace("__@__", ":", $texte_final);
     109                $texte_final = str_replace("__?__", "!", $texte_final);
     110                $texte_final = str_replace("__&amp;__", "#", $texte_final);
     111        }
     112       
     113        return $texte_final;
    92114}
    93115
    94    return $texte;
    95 }
    96 
    97 
    98116?>
  • _plugins_/rspip_code_mail/rspip3_code_mail/trunk/rspipcm_decode_email.php

    r70330 r70351  
    3535<!-- feuille de style pour l'encodage sans javascript -->
    3636<link rel='stylesheet' type='text/css' href='$rspipcm_chemin_css' />
    37 <!-- Decodeur du plugin Codeur d adresse email - debut -->
     37<!-- Decodeur et captcha du plugin Codeur d adresse email - debut -->
    3838<script type='text/javascript' src='$rspipcm_chemin_js'></script>
    39 <script type="text/javascript">
    40 // code..js
    41 // decrypt mail address
    42 // By Robert Sebille 27/05/02
    43 // Licence GNU GPL
    44 
    45 function mdecode(adr){
    46 // used by the browser
    47 var check=100,r=101,i=0,r1,r2,email;
    48 
    49    while (check != null && check != r) {
    50       r1=Math.round(Math.random()*4)+1;
    51       r2=Math.round(Math.random()*4)+1;
    52       r=r1+r2;
    53       if (i==0) {invite="$entrez_resultat_addition";}
    54          else {invite="$erreur_entrez_resultat_addition";}
    55       check = prompt(invite+" "+r1+" + "+r2+" ?","");
    56       i++;
    57       }
    58 
    59    if(check == r) {
    60       email=decode(adr)
    61         document.location="mailto:"+email;
    62         }
    63 
    64 //    if (check == null) alert("   "+r1+" + "+r2+" = "+r+" ;-)");
    65 }
    66 </script>
    67 <!-- Decodeur du plugin Codeur d adresse email - fin -->
    68 <!--  -->
    6939EOD;
    7040
Note: See TracChangeset for help on using the changeset viewer.