Changeset 67152 in spip-zone


Ignore:
Timestamp:
Oct 26, 2012, 9:30:51 AM (7 years ago)
Author:
cedric@…
Message:

filtre typo_couleur :

  • l'appliquer automatiquement par pipeline post_propre plutot qu'explicitement dans le squelette.
  • utlisation de classes homonymes plutot que styles en dur, ce qui permet de les styler en prenant en compte les couleurs du theme
  • optimisation perfo (init statique, detection rapide qu'il n'y a rien a faire)
Location:
_squelettes_/sarkaspip/trunk
Files:
14 edited

Legend:

Unmodified
Added
Removed
  • _squelettes_/sarkaspip/trunk/css/sarkaspip.less

    r67149 r67152  
    77p, ul, ol {margin-bottom: @baseLineHeight;}
    88.liste-items {p, ul, ol {margin-bottom: @baseLineHeight/2;}}
     9
     10/* prise en charge de typo couleur */
     11.noir {color:@black}
     12.blanc {color:@white}
     13.rouge {color:@red}
     14.vert {color:@green}
     15.bleu {color:@blueDark}
     16.jaune {color:@yellow}
     17.gris {color:@gray}
     18.marron {color:@red / 4 + @orange / 4 + @black / 2}
     19.violet {color:@purple}
     20.rose {color:@pink}
     21.orange {color:@orange}
    922
    1023.secondary [class^="icon-"],
  • _squelettes_/sarkaspip/trunk/inc/sarkaspip_filtres.php

    r67151 r67152  
    9191//
    9292function typo_couleur($texte) {
     93        static $recherche = null;
     94        static $remplace = null;
     95
     96        // vite si rien a faire
     97        if (strpos($texte,"[/")===false)
     98                return $texte;
    9399
    94100        // Variables personnalisables par l'utilisateur
    95101        // --> Activation (oui) ou desactivation (non) de la fonction
    96102        $typo_couleur_active = 'oui';
    97         // --> Nuances personnalisables par l'utilisateur
    98         $couleur = array(
    99                 'noir' => "#000000",
    100                 'blanc' => "#FFFFFF",
    101             'rouge' => "#FF0000",
    102                 'vert' => "#00FF00",
    103                 'bleu' => "#0000FF",
    104                 'jaune' => "#FFFF00",
    105                 'gris' => "#808080",
    106                 'marron' => "#800000",
    107                 'violet' => "#800080",
    108                 'rose' => "#FFC0CB",
    109                 'orange' => "#FFA500"
    110         );
    111 
    112         $recherche = array(
    113                 'noir' => "/(\[noir\])(.*?)(\[\/noir\])/",
    114                 'blanc' => "/(\[blanc\])(.*?)(\[\/blanc\])/",
    115             'rouge' => "/(\[rouge\])(.*?)(\[\/rouge\])/",
    116                 'vert' => "/(\[vert\])(.*?)(\[\/vert\])/",
    117                 'bleu' => "/(\[bleu\])(.*?)(\[\/bleu\])/",
    118                 'jaune' => "/(\[jaune\])(.*?)(\[\/jaune\])/",
    119                 'gris' => "/(\[gris\])(.*?)(\[\/gris\])/",
    120                 'marron' => "/(\[marron\])(.*?)(\[\/marron\])/",
    121                 'violet' => "/(\[violet\])(.*?)(\[\/violet\])/",
    122                 'rose' => "/(\[rose\])(.*?)(\[\/rose\])/",
    123                 'orange' => "/(\[orange\])(.*?)(\[\/orange\])/"
    124         );
    125 
    126         $remplace = array(
    127                 'noir' => "<span style=\"color:".$couleur['noir'].";\">\\2</span>",
    128                 'blanc' => "<span style=\"color:".$couleur['blanc'].";\">\\2</span>",
    129             'rouge' => "<span style=\"color:".$couleur['rouge'].";\">\\2</span>",
    130                 'vert' => "<span style=\"color:".$couleur['vert'].";\">\\2</span>",
    131                 'bleu' => "<span style=\"color:".$couleur['bleu'].";\">\\2</span>",
    132                 'jaune' => "<span style=\"color:".$couleur['jaune'].";\">\\2</span>",
    133                 'gris' => "<span style=\"color:".$couleur['gris'].";\">\\2</span>",
    134                 'marron' => "<span style=\"color:".$couleur['marron'].";\">\\2</span>",
    135                 'violet' => "<span style=\"color:".$couleur['violet'].";\">\\2</span>",
    136                 'rose' => "<span style=\"color:".$couleur['rose'].";\">\\2</span>",
    137                 'orange' => "<span style=\"color:".$couleur['orange'].";\">\\2</span>"
    138         );
    139 
    140         $supprime = "\\2";
    141 
     103
     104        if (is_null($recherche)){
     105                // --> Couleurs transposees en classes CSS stylables
     106                $couleurs = array('noir','blanc','rouge','vert','bleu','jaune','gris','marron','violet','rose','orange');
     107                foreach ($couleurs as $c){
     108                        $recherche[$c] = "/(\[$c\])(.*?)(\[\/$c\])/";
     109                        $remplace[$c] = "<span class=\"$c\">\\2</span>";
     110                }
     111        }
    142112
    143113        if ($typo_couleur_active == 'non') {
     114                $supprime = "\\2";
    144115                $texte = preg_replace($recherche, $supprime, $texte);
    145116        }
  • _squelettes_/sarkaspip/trunk/noisettes/album/introduction.html

    r66731 r67152  
    5656                ]
    5757                </div> <!-- Fin complements -->
    58         [<div class="introduction">(#INTRODUCTION{#ENV{taille_introduction, 200}}|typo_couleur)</div>]
     58        [<div class="introduction">(#INTRODUCTION{#ENV{taille_introduction, 200}})</div>]
    5959        </li>
    6060</BOUCLE_galerie_intro>
  • _squelettes_/sarkaspip/trunk/noisettes/article/description.html

    r67098 r67152  
    4848
    4949                [<div class="#EDIT{chapo} chapo">(#CHAPO)</div>]
    50                 [<div class="#EDIT{texte} texte">(#TEXTE|typo_couleur)</div>]
     50                [<div class="#EDIT{texte} texte">(#TEXTE)</div>]
    5151
    5252                [<p class="#EDIT{hyperlien} hyperlien"><:voir_en_ligne:>&nbsp;: <a href="(#URL_SITE)">[(#NOM_SITE|sinon{[(#URL_SITE|couper{80})]})]</a></p>]
  • _squelettes_/sarkaspip/trunk/noisettes/article/introduction.html

    r66743 r67152  
    4545                </div> <!-- Fin complements -->
    4646                <div class="introduction">
    47                         [(#INTRODUCTION{#ENV{taille_introduction}}|typo_couleur|sinon{"&nbsp;"})]
     47                        [(#INTRODUCTION{#ENV{taille_introduction}}|sinon{"&nbsp;"})]
    4848                </div> <!-- Fin introduction -->
    4949                [(#ENV{avec_lire_suite}|=={oui}|oui)
  • _squelettes_/sarkaspip/trunk/noisettes/auteur/description.html

    r66771 r67152  
    1717
    1818                <div class="main">
    19                         [<div class="#EDIT{bio} chapo">(#BIO|typo_couleur)</div>]
     19                        [<div class="#EDIT{bio} chapo">(#BIO)</div>]
    2020                        [<p class="#EDIT{hyperlien} lien_site"><a class="url org" href="#URL_SITE" itemprop="url">(#NOM_SITE)</a></p>]
    2121                </div>
  • _squelettes_/sarkaspip/trunk/noisettes/breve/description.html

    r67069 r67152  
    2020        <div class="main">
    2121
    22                 [<div class="#EDIT{texte} texte">(#TEXTE|typo_couleur)</div>]
     22                [<div class="#EDIT{texte} texte">(#TEXTE)</div>]
    2323                [(#TEXTE*|non)
    24                         [<div class="#EDIT{descriptif} chapo">(#DESCRIPTIF|typo_couleur)</div>]
     24                        [<div class="#EDIT{descriptif} chapo">(#DESCRIPTIF)</div>]
    2525                ]
    2626               
  • _squelettes_/sarkaspip/trunk/noisettes/forum/liste-groupes.html

    r67149 r67152  
    4141                                                </a>
    4242                                        </strong>]
    43                                         [<div class="texte">(#INTRODUCTION|typo_couleur)</div>]
     43                                        [<div class="texte">(#INTRODUCTION)</div>]
    4444                                </td>
    4545
  • _squelettes_/sarkaspip/trunk/noisettes/herbier/site_description.html

    r66743 r67152  
    2626                ]
    2727                </div> <!-- Fin complements -->
    28         [<div class="introduction">(#DESCRIPTIF|textebrut|typo_couleur|sinon{<:sarkaspip:msg_site_sans_descriptif:>})</div>]
     28        [<div class="introduction">(#DESCRIPTIF|textebrut|sinon{<:sarkaspip:msg_site_sans_descriptif:>})</div>]
    2929        </li>
    3030</BOUCLE_herbier_intro>
  • _squelettes_/sarkaspip/trunk/noisettes/inc_annonce.html

    r66627 r67152  
    99                <li class="item"><article class="hentry article">
    1010                        <strong class="h2-like entry-title">[(#LOGO_ARTICLE|image_reduire{150,100})]#TITRE</strong>
    11                         <div class="texte entry-content">[(#TEXTE|typo_couleur|image_reduire{120,0})]</div>
     11                        <div class="texte entry-content">[(#TEXTE|image_reduire{120,0})]</div>
    1212                        [<div class="notes">(#NOTES)</div>]
    1313                </article></li>
  • _squelettes_/sarkaspip/trunk/noisettes/rubrique/description.html

    r67117 r67152  
    1212
    1313        <div class="main">
    14                 [<div class="#EDIT{texte} texte">(#TEXTE|typo_couleur)</div>]
     14                [<div class="#EDIT{texte} texte">(#TEXTE)</div>]
    1515                [(#TEXTE*|non)
    16                         [<div class="#EDIT{descriptif} chapo">(#DESCRIPTIF|typo_couleur)</div>]
     16                        [<div class="#EDIT{descriptif} chapo">(#DESCRIPTIF)</div>]
    1717                ]
    1818
  • _squelettes_/sarkaspip/trunk/noisettes/site/description.html

    r67116 r67152  
    1414        </header>
    1515        <div class="main">
    16                 [<div class="#EDIT{descriptif} chapo">(#DESCRIPTIF|typo_couleur)</div>]
     16                [<div class="#EDIT{descriptif} chapo">(#DESCRIPTIF)</div>]
    1717                [<p class="#EDIT{hyperlien} hyperlien"><:voir_en_ligne:> : <a href="(#URL_SITE)">[(#NOM_SITE|sinon{[(#URL_SITE|couper{80})]})]</a></p>]
    1818        </div>
  • _squelettes_/sarkaspip/trunk/paquet.xml

    r66569 r67152  
    2424        <licence lien="http://www.gnu.org/licenses/gpl-3.0.html">GPL 3</licence>
    2525
    26         <pipeline nom="mes_fichiers_a_sauver" inclure="sarkaspip_pipelines.php" />
     26        <pipeline nom="post_propre" inclure="sarkaspip_pipelines.php" />
    2727        <pipeline nom="mes_fichiers_a_sauver" inclure="sarkaspip_pipelines.php" />
    2828        <pipeline nom="zengarden_activer_theme" inclure="sarkaspip_pipelines.php" />
  • _squelettes_/sarkaspip/trunk/sarkaspip_pipelines.php

    r65804 r67152  
    66
    77if (!defined("_ECRIRE_INC_VERSION")) return;
     8
     9/**
     10 * Post-propre : appliquer le filtre des couleurs typo_couleur automatiquement
     11 * @param string $texte
     12 * @return mixed
     13 */
     14function sarkaspip_post_propre($texte){
     15        $texte = typo_couleur($texte);
     16        return $texte;
     17}
    818
    919/**
Note: See TracChangeset for help on using the changeset viewer.