Changeset 118220 in spip-zone


Ignore:
Timestamp:
Oct 19, 2019, 9:32:39 AM (4 months ago)
Author:
jluc@…
Message:

ne pas ajouter des images déjà présentes dans le sprite, mais les réutiliser - pour https://git.spip.net/plugin/creer_sprites_css/issues/2

Location:
_plugins_/creer_sprites_css/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/creer_sprites_css/trunk/creer_sprites_fonctions.php

    r118217 r118220  
    2424        }
    2525
    26         $GLOBALS['sprites'][$nom]['fichiers'][] = $src;
    27        
    28         $largeur = largeur($img);
    29         $hauteur = hauteur($img);
    30         if ($largeur > $GLOBALS['sprites'][$nom]['largeur']) {
    31                 $GLOBALS['sprites'][$nom]['largeur'] = $largeur;
    32         }
    33         $hauteur_old = max(0, $GLOBALS['sprites'][$nom]['hauteur']);
    34         $GLOBALS['sprites'][$nom]['hauteur'] += $hauteur;
     26        if (!in_array($src, $GLOBALS['sprites'][$nom]['fichiers'])) {
     27                $GLOBALS['sprites'][$nom]['fichiers'][] = $src;
    3528
    36         $alt = extraire_attribut($img, 'alt');
    37         $class = extraire_attribut($img, 'class');
    38         $fichier = sous_repertoire(_DIR_VAR, 'cache-sprites').$nom;
     29                $largeur = largeur($img);
     30                $hauteur = hauteur($img);
     31                if ($largeur > $GLOBALS['sprites'][$nom]['largeur']) {
     32                        $GLOBALS['sprites'][$nom]['largeur'] = $largeur;
     33                }
     34                $hauteur_old = max(0, $GLOBALS['sprites'][$nom]['hauteur']);
     35                $GLOBALS['sprites'][$nom]['hauteur'] += $hauteur;
    3936
    40         // On pose un marqueur pour le timestamp du futur fichier sprite
    41         // qui garantira le raffraîchissement de l'affichage en cas de mise à jour du sprite
    42         $fichier .= "?m=spiprempdate[$fichier]";
    43        
    44         $date_src = @filemtime($src);
    45         if ($date_src > $GLOBALS['sprites'][$nom]['date']) {
    46                 $GLOBALS['sprites'][$nom]['date'] = $date_src;
     37                $alt = extraire_attribut($img, 'alt');
     38                $class = extraire_attribut($img, 'class');
     39                $fichier = sous_repertoire(_DIR_VAR, 'cache-sprites') . $nom;
     40
     41                // On pose un marqueur pour le timestamp du futur fichier sprite
     42                // qui garantira le raffraîchissement de l'affichage en cas de mise à jour du sprite
     43                $fichier .= "?m=spiprempdate[$fichier]";
     44
     45                $date_src = @filemtime($src);
     46                if ($date_src > $GLOBALS['sprites'][$nom]['date']) {
     47                        $GLOBALS['sprites'][$nom]['date'] = $date_src;
     48                }
     49
     50                $GLOBALS['sprites'][$nom]['tags'][$src] = "<img src='" . find_in_path('rien.gif') . "' width='" . $largeur . "px' height='" . $hauteur . "px' style='width: " . $largeur . 'px; height: ' . $hauteur . "px; background: url($fichier) 0px -" . $hauteur_old . "px;' alt='$alt' class='$class' />";
    4751        }
    4852
    49         return "<img src='".find_in_path('rien.gif')."' width='".$largeur."px' height='".$hauteur."px' style='width: ".$largeur.'px; height: '.$hauteur."px; background: url($fichier) 0px -".$hauteur_old."px;' alt='$alt' class='$class' />";
     53        return $GLOBALS['sprites'][$nom]['tags'][$src];
    5054}
    5155
  • _plugins_/creer_sprites_css/trunk/paquet.xml

    r118217 r118220  
    22        prefix="creer_sprites"
    33        categorie="multimedia"
    4         version="2.0.0"
     4        version="2.1.0"
    55        etat="test"
    66        compatibilite="[3.2.0;3.3.*]"
Note: See TracChangeset for help on using the changeset viewer.