summaryrefslogtreecommitdiff
path: root/inc/template.php
diff options
context:
space:
mode:
Diffstat (limited to 'inc/template.php')
-rw-r--r--inc/template.php46
1 files changed, 31 insertions, 15 deletions
diff --git a/inc/template.php b/inc/template.php
index bbbf5bb6b..23123b452 100644
--- a/inc/template.php
+++ b/inc/template.php
@@ -629,30 +629,46 @@ function tpl_mediafilelist(){
}
if($item['isimg']){
- $w = $item['info'][0];
- $h = $item['info'][1];
+ $w = $item['meta']->getField('File.Width');
+ $h = $item['meta']->getField('File.Height');
ptln('('.$w.'×'.$h.' '.filesize_h($item['size']).')',6);
ptln($del.'<br />',6);
ptln('<div class="meta">',6);
- ptln('<a href="javascript:mediaSelect(\''.$item['id'].'\')">');
+
+ //build thumbnail
+ print '<a href="javascript:mediaSelect(\''.$item['id'].'\')">';
- if($w>120){
- print '<img src="'.DOKU_BASE.'lib/exe/fetch.php?w=120&amp;media='.urlencode($item['id']).'" width="120" class="thumb" />';
- }else{
- print '<img src="'.DOKU_BASE.'lib/exe/fetch.php?media='.urlencode($item['id']).'" width="'.$w.'" height="'.$h.'" class="thumb" />';
+ if($w>120 || $h>120){
+ $ratio = $item['meta']->getResizeRatio(120);
+ $w = floor($w * $ratio);
+ $h = floor($h * $ratio);
}
+
+ $p = array();
+ $p['w'] = $w;
+ $p['h'] = $h;
+ $p['media'] = $item['id'];
+ $src = DOKU_BASE.'lib/exe/fetch.php?'.buildURLParams($p);
+
+ $p = array();
+ $p['width'] = $w;
+ $p['height'] = $h;
+ $p['alt'] = $item['id'];
+ $p['class'] = 'thumb';
+ $att = buildAttributes($p);
+
+ print '<img src="'.$src.'" '.$att.' />';
print '</a>';
//read EXIF/IPTC data
- $meta = new JpegMeta(mediaFN($item['id']));
- $t = $meta->getField('IPTC.Headline');
+ $t = $item['meta']->getField('IPTC.Headline');
if($t) print '<b>'.$t.'</b><br />';
- $t = $meta->getField(array('IPTC.Caption','EXIF.UserComment','EXIF.TIFFImageDescription','EXIF.TIFFUserComment'));
+ $t = $item['meta']->getField(array('IPTC.Caption','EXIF.UserComment','EXIF.TIFFImageDescription','EXIF.TIFFUserComment'));
if($t) print $t.'<br />';
- $t = $meta->getField(array('IPTC.Keywords','IPTC.Category'));
+ $t = $item['meta']->getField(array('IPTC.Keywords','IPTC.Category'));
if($t) print '<i>'.$t.'</i><br />';
ptln('</div>',6);
@@ -781,15 +797,15 @@ function tpl_img($maxwidth=900,$maxheight=700){
$h = tpl_img_getTag('File.Height');
//resize to given max values
- $ratio = 0;
- if($w > $h){
- if($w > $maxwidth){
+ $ratio = 1;
+ if($w >= $h){
+ if($w >= $maxwidth){
$ratio = $maxwidth/$w;
}elseif($h > $maxheight){
$ratio = $maxheight/$h;
}
}else{
- if($h > $maxheight){
+ if($h >= $maxheight){
$ratio = $maxheight/$h;
}elseif($w > $maxwidth){
$ratio = $maxwidth/$w;