Schau doch einfach rein, was da drin steht, dann wirst du feststellen, dass dort nicht der Pfad, sondern eine URL zu der Seite mit einem Paramter drin steht :rolleyes:
Druckbare Version
Okay... das scheint das Problem zu sein. Mir ist nur nicht ganz klar, was ich statt $file['href'] eintragen kann, um den richrtigen Dateipfad zu kriegen :o
Schau doch einfach mit einem var_dump($file) nach, was so in der Variable drin steckt ;-)
hmm, demnach wäre es eine Kombi zwischen der Variable 'path' (welche den Dateipfad enthält) und 'link' (welche den Dateinamen enthält). Nur... wie bringe ich das zusammen?
Ich bin leider in der Programmierung nicht so Firm :-(
was gibt das var_dump denn aus? Kannste mal ein Beispiel posten, dann fällt es mir leicht ;)
Klar ;-)
Folgendes wird ausgegeben:
Code:array(10) {
["link"]=>
string(21) "xxx_Logo_mS_RGB.tif"
["title"]=>
string(21) "xxx_Logo_mS_RGB.tif"
["href"]=>
string(66) "downloads.html?file=tl_files/theme/downloads/xxx_Logo_mS_RGB.tif"
["caption"]=>
NULL
["filesize"]=>
string(8) "79,4 KiB"
["icon"]=>
string(40) "system/themes/default/images/iconTIF.gif"
["mime"]=>
string(10) "image/tiff"
["meta"]=>
array(1) {
[0]=>
string(21) "xxx_Logo_mS_RGB.tif"
}
["extension"]=>
string(3) "tif"
["path"]=>
string(82) "/www/htdocs/w00affec/xxx.com/xxx/tl_files/theme/downloads"
}
Na auch toll, die einfachste Lösung ist wohl die:
Dann kannst du $path mit Thumbnify verwenden.PHP-Code:
<?php
list($url, $path) = explode('=', rawurldecode($file['href']), 2);
Ah gut, jetzt ist die Lösung ganz nah. Was ich noch nicht verstehe ist, wo trage ich diesen Code ein?
Das ist ja der Orginal Template Code:Im img Tag kommt dann dies hier rein:Code:<?php foreach ($this->files as $file): ?>
<p><img src="<?php echo $file['icon']; ?>" width="18" height="18" alt="<?php echo $file['mime']; ?>" class="mime_icon"> <a href="<?php echo $file['href']; ?>" title="<?php echo $file['title']; ?>"><?php echo $file['link']; ?> <span class="size">(<?php echo $file['filesize']; ?>)</span></a></p>
<?php endforeach; ?>
Wo kann ich dannCode:<img src="<?php echo $this->urlEncode(
$this->Thumbnify->getThumb(
rawurldecode(
$file['href']
),
96,
65
)
); ?>" alt="Thumbnail" />
einbauen?Code:<?php
list($url, $path) = explode('=', rawurldecode($file['href']), 2);
Code:<?php foreach ($this->files as $file): ?>
<?php
list($url, $path) = explode('=', rawurldecode($file['href']), 2);
// rewrite the icon to preview image
$file['icon'] = $this->urlEncode(
$this->Thumbnify->getThumb(
rawurldecode(
$file['href']
),
96,
65
)
);
?>
<p><?php echo $this->generateImage($file['icon'], $file['mime'], ' class="mime_icon"'); ?> <a href="<?php echo $file['href']; ?>" title="<?php echo $file['title']; ?>"><?php echo $file['link']; ?> <span class="size">(<?php echo $file['filesize']; ?>)</span></a></p>
<?php endforeach; ?>
Ich danke Dir schon mal recht herzlich für Deine Mühe. Leider scheint es so nicht zu funktionieren. Ich erhalte nun einfach eine leere Seite :-(
So sieht das angepasste ce_downloads.html5 Template nun aus:
Code:<!-- indexer::stop -->
<div class="<?php echo $this->class; ?> block"<?php echo $this->cssID; ?><?php if ($this->style): ?> style="<?php echo $this->style; ?>"<?php endif; ?>>
<?php if ($this->headline): ?>
<<?php echo $this->hl; ?>><?php echo $this->headline; ?></<?php echo $this->hl; ?>>
<?php endif; ?>
<?php foreach ($this->files as $file): ?>
<?php
list($url, $path) = explode('=', rawurldecode($file['href']), 2);
// rewrite the icon to preview image
$file['icon'] = $this->urlEncode(
$this->Thumbnify->getThumb(
rawurldecode(
$file['href']
),
96,
65
)
);
?>
<p><?php echo $this->generateImage($file['icon'], $file['mime'], ' class="mime_icon"'); ?> <a href="<?php echo $file['href']; ?>" title="<?php echo $file['title']; ?>"><?php echo $file['link']; ?> <span class="size">(<?php echo $file['filesize']; ?>)</span></a></p>
<?php endforeach; ?>
</div>
<!-- indexer::continue -->
Leere Seite => Fehler ist aufgetreten
Aktiviere mal in den Systemeinstellungen -> Sicherheitseinstellungen -> Fehlermeldungen anzeigen
Folgende Fehlermeldung spuckt er aus:
Diese Zeile hat wohl gefehlt:Zitat:
Fatal error: Call to a member function getThumb() on a non-object in /www/htdocs/w00affec/xxx.com/xxx/templates/ce_downloads.html5 on line 13
Nun wird die Seite wieder angezeigt, doch der Pfad für die Thumbnails scheint noch nicht zu stimmen. Er springt in den Ordner system/themes/default/images/ wo die Mime Icons liegen.Code:<?php $this->import('Thumbnify'); ?>
Hi Tril,
muss nochmal nachbohren ;-)
Das Template scheint soweit zu funktionieren doch leider stimmt der Pfad noch nicht ganz:-(
Wenn ich mit den HTML Quelltext ansehe, hat das IMG folgenden Pfad:PHP-Code:
<!-- indexer::stop -->
<div class="<?php echo $this->class; ?> block"<?php echo $this->cssID; ?><?php if ($this->style): ?> style="<?php echo $this->style; ?>"<?php endif; ?>>
<?php if ($this->headline): ?>
<<?php echo $this->hl; ?>><?php echo $this->headline; ?></<?php echo $this->hl; ?>>
<?php endif; ?>
<?php foreach ($this->files as $file): ?>
<?php $this->import('Thumbnify'); ?>
<?php
list($url, $path) = explode('=', rawurldecode($file['href']), 2);
// rewrite the icon to preview image
$file['icon'] = $this->urlEncode(
$this->Thumbnify->getThumb(
rawurldecode(
$file['href']
),
96,
65
)
);
?>
<p><?php echo $this->generateImage($file['icon'], $file['mime'], ' class="mime_icon"'); ?> <a href="<?php echo $file['href']; ?>" title="<?php echo $file['title']; ?>"><?php echo $file['link']; ?> <span class="size">(<?php echo $file['filesize']; ?>)</span></a></p>
<?php endforeach; ?>
</div>
<!-- indexer::continue -->
Das ist ja leider nicht richtig. Die Datei liegt ja in meinem Fall unter diesem Pfad:HTML-Code:<img src="system/themes/default/images/" alt="application/pdf" class="mime_icon">
Hast Du einen Vorschlag, wie ich diese letzte Hürde noch schaffen könnte?HTML-Code:/www/htdocs/w00affec/xxx.com/xxx/tl_files/theme/downloads
Liebe Grüße,
Dirk
Dort wird immer noch $file['href'] verwendet, es müsste aber $path verwendet werden?!PHP-Code:
// rewrite the icon to preview image
$file['icon'] = $this->urlEncode(
$this->Thumbnify->getThumb(
rawurldecode(
$file['href']
),
96,
65
)
);
Perfekt ! :-)
Ich habe nun das $file['href'] gegen $path getauscht und nun werden die Thumbs auch angezeigt.
Vielen vielen lieben Dank für eine Hilfe :-)