Changeset 88918 in spip-zone


Ignore:
Timestamp:
Apr 30, 2015, 8:40:40 AM (5 years ago)
Author:
arno@…
Message:

Accepter les recadrage dans |image_responsive avec des pourcentages et des zéros:

|image_responsive{

588/840/1280/1920,
0,
0,
(max-width: 420px)/(min-width:421px) and (max-width: 700px)/(min-width:701px) and (max-width:1280px)/,
71%x0/83%x0/0x0/0x0

}

Location:
_plugins_/image_responsive
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/image_responsive/image_responsive_fonctions.php

    r88754 r88918  
    8282                                $i++;
    8383                                $prop = trim ($prop);
    84                                 if (preg_match(",^([0-9\.]+)(x([0-9\.]*))?(x([a-z]*))?(x([0-9\.]*))?$,", $prop, $regs)) {
     84                                $regs_l = false;
     85                                $regs_h = false;
     86                                if (preg_match(",^([0-9\.]+\%?)(x([0-9\.]+\%?))?(x([a-z]*))?(x([0-9\.]*))?$,", $prop, $regs)) {
     87                               
     88                                        if ($regs[1] == "0") $regs[1] = $l;
     89                                        if ($regs[3] == "0") $regs[3] = $h;
     90                               
    8591                                        $p[$i]["l"] = $regs[1];
    8692                                        $p[$i]["h"] = $regs[3];
    8793                                        $p[$i]["f"] = $regs[5];
    8894                                        $p[$i]["z"] = $regs[7];
     95
     96                                        // Gérer les dimensions en pourcentages
     97                                        preg_match(",([0-9\.]+)\%$,", $regs[1],$regs_l);
     98                                        preg_match(",([0-9\.]+)\%$,", $regs[3],$regs_h);
     99                                       
     100                                        if ($regs_l[1]>0 OR $regs_h[1]>0) {
     101                                                if ($regs_l[1] > 0) $p[$i]["l"] = $l * $regs_l[1] / 100;
     102                                                else $p[$i]["l"] = $l;
     103                                                if ($regs_h[1] > 0) $p[$i]["h"] = $h * $regs_h[1] / 100;
     104                                                else $p[$i]["h"] = $h;
     105                                        }
     106
    89107                                       
    90108                                        if (!$regs[5]) $p[$i]["f"] = "center";
     
    353371        $mode = $align;
    354372       
    355        
    356373        if (!$img) return;
    357374       
  • _plugins_/image_responsive/paquet.xml

    r88754 r88918  
    22        prefix="image_responsive"
    33        categorie="outil"
    4         version="5.6.0"
     4        version="5.7.0"
    55        etat="stable"
    66        compatibilite="[3.0.0;3.1.*]"
Note: See TracChangeset for help on using the changeset viewer.