Changeset 106735 in spip-zone for _plugins_/metadonnees_photo


Ignore:
Timestamp:
Oct 10, 2017, 7:21:21 PM (2 years ago)
Author:
marcimat@…
Message:

Compatibilité (minimale) avec SPIP 3.2
+ Compatibilité PHP 7
+ Notices PHP en moins

Location:
_plugins_/metadonnees_photo/trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/metadonnees_photo/trunk/inc/exifReader.php

    r77574 r106735  
    367367     *
    368368     */
    369     function phpExifReader($file = "") {
     369    function __construct($file = "") {
    370370      $this->timeStart = $this->getmicrotime();
    371371      if(!empty($file)) {
  • _plugins_/metadonnees_photo/trunk/inc/exifWriter.php

    r52806 r106735  
    3838    *  Constructor
    3939    */
    40     function phpExifWriter($image) {
     40    function __construct($image) {
    4141         $this->phpExifReader($image);
    4242         $this->processFile();
  • _plugins_/metadonnees_photo/trunk/inc/iptc.php

    r52806 r106735  
    7474
    7575
    76 function class_IPTC($cheminImg)
     76function __construct($cheminImg)
    7777{
    7878
     
    121121// getimagesize($this -> h_cheminImg, &$info); //avant,marche pas sinon
    122122getimagesize($this -> h_cheminImg, $info); //marche sans le &
    123 $this -> h_iptcData = $info["APP13"];
     123$this -> h_iptcData = isset($info["APP13"]) ? $info["APP13"] : null;
    124124
    125125}
     
    171171        }
    172172       
    173         if(is_array($lesIptc)) return $lesIptc;
    174         else return false;
     173        if (isset($lesIptc) and is_array($lesIptc)) {
     174                return $lesIptc;
     175        } else {
     176                return false;
     177        }
    175178}
    176179
  • _plugins_/metadonnees_photo/trunk/paquet.xml

    r103720 r106735  
    22        prefix="photo_infos"
    33        categorie="multimedia"
    4         version="2.0.3"
     4        version="2.0.4"
    55        etat="stable"
    6         compatibilite="[3.0.0;3.1.*]"
     6        compatibilite="[3.0.0;3.2.*]"
    77        logo="imgs_photo/logo-pb_plugin.png"
    88        documentation="https://contrib.spip.net/Metadonnees-Photo"
    99>       
    1010
    11         <nom>Metadonn&#233;es photo</nom>
     11        <nom>Metadonnées photo</nom>
    1212        <!-- Afficher les infos EXIF, GPS et IPTC d'un fichier JPEG -->
    1313
  • _plugins_/metadonnees_photo/trunk/photo_infos_fonctions.php

    r94832 r106735  
    1010function photo_infos_afficher_metas_document($flux){
    1111        if ($id_document = $flux['args']['id_document']){
    12                 $flux["data"] .= recuperer_fond("prive/squelettes/inclure/image_pave_exif",array('id_document' => $id_document,'quoi'=>$flux['args']['quoi']));
     12                $flux["data"] .= recuperer_fond("prive/squelettes/inclure/image_pave_exif",array(
     13                        'id_document' => $id_document,
     14                        'quoi'=>$flux['args']['quoi']
     15                ));
    1316        }
    1417        return $flux;
     
    8184                // Si Latitude deja fixee, la traiter
    8285                // Si la ref n'est ni N ni S, c'est une erreur (j'en trouve sur Flickr)
    83                 if (!($exif_direc["GPSLatitudeRef"] == "N" || $exif_direc["GPSLatitudeRef"] == "S")) {
     86                if (empty($exif_direc["GPSLatitudeRef"]) or !($exif_direc["GPSLatitudeRef"] == "N" || $exif_direc["GPSLatitudeRef"] == "S")) {
    8487                        unset($mem_exif[$fichier]["GPSLatitude"]);
    8588                }
    86                 if ($mem_exif[$fichier]["GPSLatitude"]) {
     89                if (!empty($mem_exif[$fichier]["GPSLatitude"])) {
    8790                        $exif_direc["GPSLatitude"][0] = $mem_exif[$fichier]["GPSLatitude"]["Degrees"];
    8891                        $exif_direc["GPSLatitude"][1] = ($mem_exif[$fichier]["GPSLatitude"]["Minutes"] * 100 + round($mem_exif[$fichier]["GPSLatitude"]["Seconds"] / 60 * 100)) . "/100";
     
    115118
    116119                        // Retourne aussi une valeur entiere pour Google Maps
    117                         $GPSLatitudeInt = $deg + ($min / 6000) ;
     120                        $GPSLatitudeInt = floatval($deg) + (floatval($min) / 6000) ;
    118121                        if ($N_S == "S") $GPSLatitudeInt = -1 * $GPSLatitudeInt;
    119122                        $mem_exif[$fichier]["GPSLatitudeInt"] = $GPSLatitudeInt ;
     
    121124
    122125                // Verifier que la precedente ref est E/W, sinon ne pas traiter
    123                 if (!($exif_direc["GPSLongitudeRef"] == "E" || $exif_direc["GPSLongitudeRef"] == "W")) {
     126                if (empty($exif_direc["GPSLongitudeRef"]) or !($exif_direc["GPSLongitudeRef"] == "E" || $exif_direc["GPSLongitudeRef"] == "W")) {
    124127                        unset($mem_exif[$fichier]["GPSLongitude"]);
    125128                }
    126                 if ($mem_exif[$fichier]["GPSLongitude"]) {
     129                if (!empty($mem_exif[$fichier]["GPSLongitude"])) {
    127130                        $exif_direc["GPSLongitude"][0] = $mem_exif[$fichier]["GPSLongitude"]["Degrees"];
    128131                        $exif_direc["GPSLongitude"][1] = ($mem_exif[$fichier]["GPSLongitude"]["Minutes"] * 100 + round($mem_exif[$fichier]["GPSLongitude"]["Seconds"] / 60 * 100)) . "/100";
     
    152155
    153156                        // Retourne aussi une valeur entiere pour Google Maps
    154                         $GPSLongitudeInt = $deg + ($min / 6000) ;
     157                        $GPSLongitudeInt = floatval($deg) + (floatval($min) / 6000) ;
    155158                        if ($W_E == "W") $GPSLongitudeInt = -1 * $GPSLongitudeInt;
    156159                        $mem_exif[$fichier]["GPSLongitudeInt"] = $GPSLongitudeInt ;
     
    171174 */
    172175function lire_exif($fichier, $type=null) {
    173        
    174176        $exif = extraire_exif($fichier);
    175 
    176         if (!$type)
     177        if (!$type) {
    177178                return $exif;
    178         else
    179                 return $exif["$type"];
     179        } else {
     180                return isset($exif[$type]) ? $exif[$type] : null;
     181        }
    180182}
    181183
     
    184186        global $pb_iptc;
    185187       
    186         if ($pb_iptc["$fichier"]) return $pb_iptc["$fichier"];
     188        if (!empty($pb_iptc["$fichier"])) {
     189                return $pb_iptc["$fichier"];
     190        }
    187191
    188192
     
    222226
    223227        $iptc = extraire_iptc($fichier);
    224        
    225 
    226         if ($iptc["copyright"]) $iptc["copyright"] = mb_eregi_replace("\(c\)", "©", $iptc["copyright"]);
    227        
    228         if ($type) return $iptc["$type"];
    229         else return $iptc;
    230        
     228
     229        if ($iptc["copyright"]) {
     230                $iptc["copyright"] = mb_eregi_replace("\(c\)", "©", $iptc["copyright"]);
     231        }
     232
     233        if ($type) {
     234                return isset($iptc[$type]) ? $iptc[$type] : null;
     235        } else {
     236                return $iptc;
     237        }
    231238}
    232239
     
    256263 */
    257264function image_histogramme($im) {
    258         include_spip("inc/filtres_images");
    259        
     265        include_spip("inc/filtres_images_lib_mini");
     266
    260267        $fonction = array('image_histo', func_get_args());
    261         $image = image_valeurs_trans($im, "histo","png",$fonction);
     268        $image = _image_valeurs_trans($im, "histo","png",$fonction);
    262269
    263270        if (!$image) return("");
    264        
     271
    265272        $x_i = $image["largeur"];
    266273        $y_i = $image["hauteur"];
     
    268275
    269276        if (!test_traiter_image($image["fichier"], $x_i, $y_i) ) return;
    270        
    271        
     277
    272278        $im = $image["fichier"];
    273        
     279
    274280        $dest = $image["fichier_dest"];
    275281        $creer = $image["creer"];
     
    297303                                $a = (127-$a) / 127;
    298304                                $a=1;
    299                                
     305
    300306                                $gris = round($a*($r+$g+$b) / 3);
    301307                                $r = round($a*$r);
    302308                                $g = round($a*$g);
    303309                                $b = round($a*$b);
    304                                
     310
     311                                if (!isset($val_gris[$gris])) {
     312                                        $val_gris[$gris] = 0;
     313                                }
     314                                if (!isset($val_r[$r])) {
     315                                        $val_r[$r] = 0;
     316                                }
     317                                if (!isset($val_g[$g])) {
     318                                        $val_g[$g] = 0;
     319                                }
     320                                if (!isset($val_b[$b])) {
     321                                        $val_b[$b] = 0;
     322                                }
    305323                                $val_gris[$gris] ++;
    306324                                $val_r[$r] ++;
     
    319337                $gris_70 = imagecolorallocate($im_, 60,60,60);
    320338                for ($i = 0; $i < 256; $i++) {
     339                        if (!isset($val_gris[$i])) {
     340                                $val_gris[$i] = 0;
     341                        }
    321342                        $val = 127 - round(max(0,$val_gris[$i]) * $rapport);
    322343                        imageline ($im_, $i+1, 128, $i+1, $val+1, $gris_50);
     
    325346                $bleu = imagecolorallocate($im_, 0, 0, 255);
    326347                for ($i = 0; $i < 256; $i++) {
     348                        if (!isset($val_b[$i])) {
     349                                $val_b[$i] = 0;
     350                        }
    327351                        $val = 127 - round(max(0,$val_b[$i]) * $rapport);
    328352                        if ($i==0) imagesetpixel ($im_, $i+1, $val+1, $bleu);
     
    333357                $green = imagecolorallocate($im_, 0, 255, 0);
    334358                for ($i = 0; $i < 256; $i++) {
     359                        if (!isset($val_g[$i])) {
     360                                $val_g[$i] = 0;
     361                        }
    335362                        $val = 127 - round(max(0,$val_g[$i]) * $rapport);
    336363                        if ($i==0) imagesetpixel ($im_, $i+1, $val+1, $green);
     
    340367                $rouge = imagecolorallocate($im_, 255, 0, 0);
    341368                for ($i = 0; $i < 256; $i++) {
     369                        if (!isset($val_r[$i])) {
     370                                $val_r[$i] = 0;
     371                        }
    342372                        $val = 127 - round(max(0,$val_r[$i]) * $rapport);
    343373                        if ($i==0) imagesetpixel ($im_, $i+1, $val+1, $rouge);
Note: See TracChangeset for help on using the changeset viewer.