Damit lässt sich eine Übersicht erzeugen und an anderer Stelle ein Bild groß anzeigen.
Beschreibung:
Code: Alles auswählen
soll thunbnails genrieren und ne Liste darstellen.. habs gefunden unter:
http://www.clearcreative.de/module.html
Achtung:
Dateierweiterung ist Case-sensitive, Eingabe des verzeichnisses erfolgt relative zum startfoldr (frontend.php),
ohne führenden "/", aber mit end "/" Bsp: "upload/bilder/"
Für die "thumbs" muss ein eigenes Unterverzeichnis gewählt werden, da sonst bei jedem Aufruf die Bilder dupliziert werden.
Code: Alles auswählen
$selected = "CMS_VALUE[0]";
echo "<table cellspacing=\"0\" cellpadding=\"5\" border=\"0\">
<tr valign=\"top\">
<td>Einzelbild-Seite</td>
<td>
<select name=\"CMS_VAR[0]\">";
echo "<option value=1 ";
if ($selected == 1){
echo " selected ";
}
echo ">PopUp-Fenster</option>";
echo "<option value=0 ";
if ($selected == 0){
echo " selected ";
}
echo ">diese Seite</option>";
echo "</select>";
echo " </td>
</tr>
<tr>
<td>
Image-Directory:
</td>
<td>
<input size=20 type=\"text\" name=\"CMS_VAR[2]\" value=\"CMS_VALUE[2]\">
</td>
</tr>
<tr>
<td>
Thumbnail-Directory:
</td>
<td>
<input size=20 type=\"text\" name=\"CMS_VAR[3]\" value=\"CMS_VALUE[3]\">
</td>
</tr>
<tr>
<td>
Image-Dateieendung (z.B. .jpg;.gif):
</td>
<td>
<input size=20 type=\"text\" name=\"CMS_VAR[4]\" value=\"CMS_VALUE[4]\">
</td>
</tr>
<tr>
<td>
Thumbnailtabelle in Spalten x Zeilen:
</td>
<td>
<input size=3 maxlength=2 type=\"text\" name=\"CMS_VAR[5]\" value=\"CMS_VALUE[5]\">x<input size=3 maxlength=2 type=\"text\" name=\"CMS_VAR[6]\" value=\"CMS_VALUE[6]\">
</td>
</tr>
<tr>
<td>
Thumbnailgrösse in XxY:
</td>
<td>
<input size=3 maxlength=3 type=\"text\" name=\"CMS_VAR[7]\" value=\"CMS_VALUE[7]\">x<input size=3 maxlength=3 type=\"text\" name=\"CMS_VAR[8]\" value=\"CMS_VALUE[8]\">
</td>
</tr>
<tr>
<td>
Pfad zum ImageMagick (optional):
</td>
<td>
<input size=20 type=\"text\" name=\"CMS_VAR[9]\" value=\"CMS_VALUE[9]\">
</td>
</tr>
</table>";
// ENDE INPUT
Code: Alles auswählen
<script language="JavaScript">
function boo(){
}
</script>
<div class="htmltext">
<?
// Bildergalerie
// Imageresize über ImageMagick *ODER* GD
// Version: 15.01.2004
//
// Author: ??
// Modified by: Robert Strouhal www.clearcreative.de
// Modified by: Florian Behrendt 08.06.2005
// es wird immer nur die Galerie angezeigt, die Ausgabe erfolgt in einem eignem Modul
echo "<p>\n";
// ANFANG OUTPUT
$imagedir="CMS_VALUE[2]";
$thumbnails="CMS_VALUE[3]";
$imagetypes=explode(";","CMS_VALUE[4]");
$rows="CMS_VALUE[6]";
$cols="CMS_VALUE[5]";
$thb_x_size="CMS_VALUE[7]";
$thb_y_size="CMS_VALUE[8]";
$image_idcat="CMS_VALUE[0]";
$image_idside="CMS_VALUE[1]";
$im_path="CMS_VALUE[9]";
//-- config ende -------------------------------------
function is_image($filename,$typearray) {
reset($typearray);
while($val=each($typearray)) {
if (strstr($filename,$val[value])!==false) {
return true;
}
}
}
// verkleinert ein Bild auf die angegebene Breite (bei Querformat) oder Höhe (bei Hochformat)
// Seitenverhältnisse werden beibehalten
function resizeImageGD($sourceFile, $targetFile, $newwidth=50, $newheight=50){
$source = ImageCreateFromJpeg($sourceFile);
$width = ImageSx($source);
$height = ImageSy($source);
if ($width > $height){ // Querformat
$newheight = $height*($newwidth/$width);
}else{ // Hochformat
$newwidth = $width*($newheight/$height);
}
$target = ImageCreateTrueColor($newwidth,$newheight);
imagecopyresampled ($target, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
ImageJPEG($target,$targetFile,100);
}
//-- functions ende ----------------------------------
if (!isset($mmstart)) {
$mmstart=0;
}
// Anzeige eines Bildes oder Übersicht?
// orginal ist die nächste Zeile!
// if ($subfile!="") {
// if ($subfile!="never_print_always_gallery") {
// Bild anzeigen
/* echo "<center><a href=\"javascript:history.back()\">back / zurück</a></center>";
echo "<br>";
echo "<img src=\"$subfile\">";
echo "<br>";
echo "<center><a href=\"javascript:history.back()\">back / zurück</a></center>";
} else { */
// Gallery anzeigen
$handle=opendir($imagedir);
echo "<table>";
$n=0;
$filearray=Array();
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != ".." && is_image($file,$imagetypes)) {
$filearray[]=$file;
}
}
reset($filearray);
// skip images...
for ($n=0;$n<$mmstart;$n++)
$ffile=each($filearray);
$n=0;
while ($ffile=each($filearray)) {
$file=$ffile[value];
// generate thumbnail, if nessesairy. Now THIS is fun :)
// natuerlich nur, wenn imagemagick vorhanden ist...
if (!file_exists($thumbnails."/thb_".$file) ) {
if ($im_path!="") {
$cmd=$im_path."/convert -scale ".$thb_x_size."x".$thb_y_size." ".$imagedir."/".$file." ".$thumbnails."/thb_".$file;
exec($cmd);
// nochmal prüfen!
$thumbnail=file_exists($thumbnails."/thb_".$file);
} else{
// Bilder mit GD verkleinern
@ini_set("max_execution_time", 120);
@resizeImageGD($imagedir."/".$file, $thumbnails."/thb_".$file, $thb_x_size,$thb_y_size);
$thumbnail=file_exists($thumbnails."/thb_".$file);
}
} else
$thumbnail=true;
if ($n%$cols==0)
echo "<tr>\n";
if ($image_idcat!=0){
// Bilder in PopUp anzeigen
$imageSize = getimagesize($imagedir."/".$file);
$js = " onClick=\"javascript:window.open('".$imagedir."/".$file."','','height=".($imageSize[1]+30).",width=".($imageSize[0]+30)."')\" ";
$url = "javascript:boo();";
}else{
$url=$sess->url("front_content.php?client=$client&lang=$lang&subid=$subid&idcat=$idcat&idart=$idart&idside=$idside&subfile=".rawurlencode($imagedir."/".$file));
$js = "";
}
echo "<td valign=\"middle\" align=\"center\" width=\"$thb_x_size\" height=\"$thb_y_size\"><a href=\"$url\" $js>".($thumbnail ? "<img src=\"$thumbnails/thb_$file\" border=\"0\">":"$file")."</a></td>\n";
$n++;
if ($n%$cols==0)
echo "</tr>\n";
// nur solange wie's not tut...
if ($n>=$rows*$cols)
break;
}
echo "<tr> <td colspan=\"$cols\" align=\"center\">";
if ($mmstart>0) {
$url=$sess->url("front_content.php?client=$client&lang=$lang&idcat=$idcat&idart=$idart&subid=$subid&idside=$idside&mmstart=".($mmstart-$rows*$cols));
echo "<a href=\"$url\">«</a>";
}
echo "<span style=\"font-size: 9pt;\">| Images".($mmstart+1)." - ".($mmstart+$n)." |</span>";
if ($n+$mmstart<count($filearray)) {
$url=$sess->url("front_content.php?client=$client&lang=$lang&idcat=$idcat&idart=$idart&subid=$subid&idside=$idside&mmstart=".($mmstart+$rows*$cols));
echo "<a href=\"$url\">»</a>";
}
echo "</tr>\n";
echo "</table>";
// Ende Gallery anzeigen
echo "</p>";
?>
</div>
Nur Output:
Code: Alles auswählen
<script language="JavaScript">
function boo(){
}
</script>
<?php
// Bildergalerie Anzeige in einem fremden Modul!
// Imageresize über ImageMagick *ODER* GD
// Version: 15.01.2004
//
// Author: ??
// Modified by: Robert Strouhal www.clearcreative.de
// Modified by: Florian Behrendt 08.06.2005
if ($subfile!="") {
// Bild anzeigen
//echo "<center><a href=\"javascript:history.back()\">back / zurück</a></center>";
echo "<br>";
echo "<img src=\"$subfile\">";
echo "<br>";
// echo "<center><a href=\"javascript:history.back()\">back / zurück</a></center>";
}
?>
Florian