Changeset 116192 in spip-zone for _squelettes_/soyezcreateurs_net


Ignore:
Timestamp:
Aug 1, 2019, 8:58:13 AM (5 months ago)
Author:
real3t@…
Message:

[SoyezCréateurs?] Sécurité sur les tuiles et correction erreur sur le redimensionnement avant traitement du focus

Location:
_squelettes_/soyezcreateurs_net/trunk/plugins/soyezcreateurs
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _squelettes_/soyezcreateurs_net/trunk/plugins/soyezcreateurs/filtres/images_soyezcreateurs.php

    r116191 r116192  
    2323                $img = filtrer('image_recadre', $img, $largeur, $hauteur, $position, 'transparent');
    2424        } else  {
    25                 // On commence par réduire à 2 fois la taille finale pour travailler sur de plus petites images
    26                 $img = filtrer('image_reduire', $img, $largeur*2, $hauteur*2, $position, 'transparent');
     25                // On commence par réduire pour travailler sur de plus petites images
     26                $img = filtrer('image_reduire', $img, 3840, 0);
    2727                $img = filtrer('image_graver', $img);
    2828                $img = filtrer('image_recadre', $img, "$largeur:$hauteur", '-', 'focus', 'transparent');
  • _squelettes_/soyezcreateurs_net/trunk/plugins/soyezcreateurs/tuile.html

    r116191 r116192  
    1 <?php
    2 $filename="[(#ENV{logo}|image_focus{#ENV{width},#ENV{height}}|extraire_attribut{src}|supprimer_timestamp)]";
    3 $filename=preg_replace(',[?].*$,','',$filename);
    4 if (exif_imagetype($filename) > 0) {
    5         $size = getimagesize($filename);
    6         $fp = fopen($filename, "rb");
    7         if ($size && $fp) {
    8                 header("Content-type: {$size['mime']}");
    9                 fpassthru($fp);
    10                 exit;
    11         } else {
    12                 exit;
    13         }
     1<BOUCLE_Securite(CONDITION)
     2        {si #ENV{width}|>{0}}
     3        {si #ENV{height}|>{0}}
     4        {si #ENV{logo}|mb_strtolower|strncmp{'http',4}|!={0}}
     5        {si #ENV{logo}|exif_imagetype|>{0}}
     6><?php
     7/* Sécurité
     8On a vérifié :
     9- que largeur et hauteur sont > 0
     10- que l'image est locale et pas distante
     11- que c'est bien une image
     12On  peut faire le traitement
     13*/
     14$filename='[(#ENV{logo}|image_focus{[(#ENV{width}|intval)],[(#ENV{height}|intval)]}|extraire_attribut{src}|supprimer_timestamp|texte_script)]';
     15$size = filesize($filename);
     16$type= image_type_to_mime_type(exif_imagetype($filename));
     17$fp = fopen($filename, "rb");
     18if ($size && $type && $fp) {
     19        header('Content-type: ' . $type);
     20        header('Content-Length: ' . $size);
     21        fpassthru($fp);
     22        exit;
    1423}
     24echo 'Alert!';
     25?></BOUCLE_Securite>#HTTP_HEADER{Content-Type: image/gif}[(#INCLURE{images/1.gif})]<//B_Securite>
Note: See TracChangeset for help on using the changeset viewer.