Dotclear

Changeset 2304


Ignore:
Timestamp:
06/06/10 00:50:39 (13 years ago)
Author:
JcDenis
Message:

efiMetadatas 0.3

  • Switched to DC 2.2
Location:
plugins/efiMetadatas
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • plugins/efiMetadatas/_admin.php

    r1918 r2304  
    33# This file is part of efiMetadatas, a plugin for Dotclear 2. 
    44#  
    5 # Copyright (c) 2009 JC Denis and contributors 
     5# Copyright (c) 2009-2010 JC Denis and contributors 
    66# jcdenis@gdwd.com 
    77#  
  • plugins/efiMetadatas/_define.php

    r1989 r2304  
    33# This file is part of efiMetadatas, a plugin for Dotclear 2. 
    44#  
    5 # Copyright (c) 2009 JC Denis and contributors 
     5# Copyright (c) 2009-2010 JC Denis and contributors 
    66# jcdenis@gdwd.com 
    77#  
     
    1717     /* Description*/         "Show metadatas of first image of an entry", 
    1818     /* Author */             "JC Denis", 
    19      /* Version */            '0.2', 
     19     /* Version */            '0.3', 
    2020     /* Permissions */        'admin' 
    2121); 
    22      /* date */          #20091218 
     22     /* date */          #20100605 
    2323?> 
  • plugins/efiMetadatas/_prepend.php

    r1989 r2304  
    33# This file is part of efiMetadatas, a plugin for Dotclear 2. 
    44#  
    5 # Copyright (c) 2009 JC Denis and contributors 
     5# Copyright (c) 2009-2010 JC Denis and contributors 
    66# jcdenis@gdwd.com 
    77#  
  • plugins/efiMetadatas/_public.php

    r1918 r2304  
    33# This file is part of efiMetadatas, a plugin for Dotclear 2. 
    44#  
    5 # Copyright (c) 2009 JC Denis and contributors 
     5# Copyright (c) 2009-2010 JC Denis and contributors 
    66# jcdenis@gdwd.com 
    77#  
  • plugins/efiMetadatas/_widgets.php

    r1989 r2304  
    33# This file is part of efiMetadatas, a plugin for Dotclear 2. 
    44#  
    5 # Copyright (c) 2009 JC Denis and contributors 
     5# Copyright (c) 2009-2010 JC Denis and contributors 
    66# jcdenis@gdwd.com 
    77#  
     
    2020     { 
    2121          global $core; 
    22  
     22           
    2323          $categories_combo = array('-' => '', __('Uncategorized') => 'null'); 
    2424          $categories = $core->blog->getCategories(); 
     
    2828               $categories_combo[$cat_title] = $categories->cat_id; 
    2929          } 
    30  
     30           
    3131          $thumbnail_combo = array( 
    3232               '-' => '', 
     
    3636               __('medium') => 'm' 
    3737          ); 
    38  
     38           
    3939          $w->create('efim', 
    4040               __('Entry first image metadatas'),array('efiMetadatasWidget','publicEFIM') 
     
    5353          ); 
    5454     } 
    55  
     55      
    5656     public static function publicEFIM($w) 
    5757     { 
    5858          global $core, $_ctx;  
    59  
     59           
    6060          # Not in post context 
    6161          if (!$_ctx->exists('posts') || !$_ctx->posts->post_id) return; 
    62  
     62           
    6363          # Not supported post type 
    6464          if (!in_array($_ctx->posts->post_type,array('post','gal','galitem'))) return ''; 
    65  
     65           
    6666          # Category limit 
    6767          if ($w->category == 'null' && $_ctx->posts->cat_id !== null) return; 
    6868          if ($w->category != 'null' && $w->category != '' && $w->category != $_ctx->posts->cat_id) return; 
    69  
     69           
    7070          # Content lookup 
    7171          $text = $_ctx->posts->post_excerpt_xhtml.$_ctx->posts->post_content_xhtml; 
    72  
     72           
    7373          # Find source image 
    7474          $img = efiMetadatas::imgSource($core,$text,$w->thumbsize); 
    75  
     75           
    7676          # No image 
    7777          if (!$img['source']) return; 
    78  
     78           
    7979          # List metas 
    8080          $metas = efiMetadatas::imgMeta($core,$img['source']); 
    81  
     81           
    8282          $content = ''; 
    8383          foreach($metas as $k => $v) 
     
    8787               $content .= '<li class="efi-'.$k.'"><strong>'.$v[0].':</strong><br />'.$v[1].'</li>'; 
    8888          } 
    89  
     89           
    9090          # No meta 
    9191          if (empty($content)) return; 
    92  
     92           
    9393          # thumbnail 
    9494          if ($img['thumb']) 
     
    101101               "</div>\n"; 
    102102          } 
    103  
     103           
    104104          return  
    105105          '<div class="entryFirstImageMetas">'. 
  • plugins/efiMetadatas/inc/class.efimetadatas.php

    r1989 r2304  
    33# This file is part of efiMetadatas, a plugin for Dotclear 2. 
    44#  
    5 # Copyright (c) 2009 JC Denis and contributors 
     5# Copyright (c) 2009-2010 JC Denis and contributors 
    66# jcdenis@gdwd.com 
    77#  
     
    1111# -- END LICENSE BLOCK ------------------------------------ 
    1212 
    13  
    1413class efiMetadatas 
    1514{ 
     
    1716     { 
    1817          # Path and url 
    19           $p_url = $core->blog->settings->public_url; 
     18          $p_url = $core->blog->settings->system->public_url; 
    2019          $p_site = preg_replace('#^(.+?//.+?)/(.*)$#','$1',$core->blog->url); 
    2120          $p_root = $core->blog->public_path; 
    22  
     21           
    2322          # Image pattern 
    2423          $pattern = '(?:'.preg_quote($p_site,'/').')?'.preg_quote($p_url,'/'); 
    2524          $pattern = sprintf('/<img.+?src="%s(.*?\.(?:jpg|gif|png))"[^>]+/msu',$pattern); 
    26  
     25           
    2726          # No image 
    2827          if (!preg_match_all($pattern,$subject,$m)) return; 
    29  
     28           
    3029          $src = $thb = $alt = false; 
    3130          $alt = $metas = $thumb = ''; 
    3231          $allowed_ext = array('.jpg','.JPG','.png','.PNG','.gif','.GIF'); 
    33  
     32           
    3433          # Loop through images 
    3534          foreach ($m[1] as $i => $img) 
     
    3938               $base = $info['base']; 
    4039               $ext = $info['extension']; 
    41  
     40                
    4241               # Not original 
    4342               if (preg_match('/^\.(.+)_(sq|t|s|m)$/',$base,$mbase)) 
     
    4544                    $base = $mbase[1]; 
    4645               } 
    47  
     46                
    4847               # Full path 
    4948               $f = $p_root.'/'.$info['dirname'].'/'.$base; 
    50  
     49                
    5150               # Find extension 
    5251               foreach($allowed_ext as $end) 
     
    5857                    } 
    5958               } 
    60  
     59                
    6160               # No file 
    6261               if (!$src) continue; 
    63  
     62                
    6463               # Find thumbnail 
    6564               if (!empty($size)) 
     
    7170                    } 
    7271               } 
    73  
     72                
    7473               # Find image description 
    7574               if (preg_match('/alt="([^"]+)"/',$m[0][$i],$malt)) 
     
    8281          return array('source' => $src, 'thumb' => $thb, 'title' => $alt); 
    8382     } 
    84  
     83      
    8584     public static function imgMeta($core,$src) 
    8685     { 
     
    101100               'MeteringMode' => array(__('Metering mode'),'') 
    102101          ); 
    103  
     102           
    104103          $exp_prog = array( 
    105104               0 => __('Not defined'), 
     
    113112               8 => __('Landscape mode') 
    114113          ); 
    115  
     114           
    116115          $met_mod = array( 
    117116               0 => __('Unknow'), 
     
    124123               7 => __('Other') 
    125124          ); 
    126  
     125           
    127126          if (!$src || !file_exists($src)) return $metas; 
    128  
     127           
    129128          $m = imageMeta::readMeta($src); 
    130  
     129           
    131130          # Title 
    132131          if (!empty($m['Title'])) 
     
    134133               $metas['Title'][1] = html::escapeHTML($m['Title']); 
    135134          } 
    136  
     135           
    137136          # Description 
    138137          if (!empty($m['Description'])) 
     
    143142               } 
    144143          } 
    145  
     144           
    146145          # Location 
    147146          if (!empty($m['City'])) 
     
    161160          if (!empty($m['DateTimeOriginal'])) 
    162161          { 
    163                $dt_ft = $core->blog->settings->date_format.', '.$core->blog->settings->time_format; 
    164                $dt_tz = $core->blog->settings->blog_timezone; 
     162               $dt_ft = $core->blog->settings->system->date_format.', '.$core->blog->settings->system->time_format; 
     163               $dt_tz = $core->blog->settings->system->blog_timezone; 
    165164               $metas['DateTimeOriginal'][1] = dt::dt2str($dt_ft,$m['DateTimeOriginal'],$dt_tz); 
    166165          } 
    167  
     166           
    168167          # Make 
    169168          if (isset($m['Make'])) 
     
    171170               $metas['Make'][1] = html::escapeHTML($m['Make']); 
    172171          } 
    173  
     172           
    174173          # Model 
    175174          if (isset($m['Model'])) 
     
    177176               $metas['Model'][1] = html::escapeHTML($m['Model']); 
    178177          } 
    179  
     178           
    180179          # Lens 
    181180          if (isset($m['Lens'])) 
     
    190189               $exp_prog[$m['ExposureProgram']] : $m['ExposureProgram']; 
    191190          } 
    192  
     191           
    193192          # Exposure 
    194193          if (!empty($m['Exposure'])) 
     
    196195               $metas['Exposure'][1] = $m['Exposure'].'s'; 
    197196          } 
    198  
     197           
    199198          # FNumber 
    200199          if (!empty($m['FNumber'])) 
     
    203202               $metas['FNumber'][1] = $ap ? 'f/'.( $ap[0] / $ap[1]) : $m['FNumber']; 
    204203          } 
    205  
     204           
    206205          # ISOSpeedRatings 
    207206          if (!empty($m['ISOSpeedRatings'])) 
     
    209208               $metas['ISOSpeedRatings'][1] = $m['ISOSpeedRatings']; 
    210209          } 
    211  
     210           
    212211          # FocalLength 
    213212          if (!empty($m['FocalLength'])) 
     
    216215               $metas['FocalLength'][1] = $fl ? $fl[0]/$fl[1].'mm' : $m['FocalLength']; 
    217216          } 
    218  
     217           
    219218          # ExposureBiasValue 
    220219          if (isset($m['ExposureBiasValue'])) 
     
    222221               $metas['ExposureBiasValue'][1] = $m['ExposureBiasValue']; 
    223222          } 
    224  
     223           
    225224          # MeteringMode 
    226225          if (isset($m['MeteringMode'])) 
     
    229228               $exp_prog[$m['MeteringMode']] : $m['MeteringMode']; 
    230229          } 
    231  
     230           
    232231          return $metas; 
    233232     } 
  • plugins/efiMetadatas/release.txt

    r1989 r2304  
     10.3 20100605 
     2 * Switched to DC 2.2 
     3 
    140.2 20091218 
    25 * Added generic class to get readable meta 
Note: See TracChangeset for help on using the changeset viewer.

Sites map