Bildergalerie w3concepts.gallery.v1 :: neues Modul

kummer
Beiträge: 2423
Registriert: Do 6. Mai 2004, 09:17
Wohnort: Bern, Schweiz
Kontaktdaten:

Beitrag von kummer » Mo 21. Nov 2005, 08:09

hallo felix

du kannst ja mit einer normalen artikelliste arbeiten. diese nimmt ja in der regel das bild mit dem index cms_img[1].

für die galerie brauchst du ja auch einen artikel. du füllst also titel und beschreibung aus und gibst neben dem galeriemodul noch ein bildmodul an, welches nur im edit-modus ausgegeben wird. so kannst du ein bild einpflegen, die artikelliste verwenden und alles läuft so, wie du dir das vorstellst.

gruss,
andreas
aitsu.org :: schnell - flexibel - komfortabel :: Version 2.2.0 (since June 22, 2011) (jetzt mit dual license GPL/kommerziell)

media-konzept
Beiträge: 90
Registriert: So 20. Mär 2005, 13:24
Wohnort: CH-5430 Wettingen
Kontaktdaten:

Tolle Idee...

Beitrag von media-konzept » Di 22. Nov 2005, 10:02

Hallo Andreas, coole Idee...von dieser Seite habe ich es gar nicht beachtet...danke für den Tip.

Gruss aus Wettingen
Felix
two beers or not two beers

jenal
Beiträge: 10
Registriert: Di 19. Okt 2004, 08:35
Wohnort: Zürich
Kontaktdaten:

PHP Fehler

Beitrag von jenal » Fr 25. Nov 2005, 13:24

Ich habe jetzt nicht die ganzen Artikel durchgelesen, vielleicht ist das Problem schon einmal aufgetaucht. Ich bekomme bei der Ausgabe folgenden Fehler:
Warning: sort() expects parameter 1 to be array, null given in /usr/www/www.cms3.irdium.ch/wwwroot/cms/front_content.php(567) : eval()'d code on line 493

Warning: Division by zero in /usr/www/www.cms3.irdium.ch/wwwroot/cms/front_content.php(567) : eval()'d code on line 579
zu finden unter http://cms3.irdium.ch/cms/front_content ... catart=197

An was kann das liegen?

Dank für die Hilfe
Marcus

willy3
Beiträge: 125
Registriert: Fr 5. Mär 2004, 00:14
Wohnort: ehem. Kanzler-Stadt
Kontaktdaten:

Beitrag von willy3 » Di 6. Dez 2005, 00:46

Tach auch!
Nach vielem Probieren und dem Forum lesen bin ich dann schon auf dem Wege der Besserung ;-)
Leider habe ich noch ein Problem (hier in diesem Threat noch nicht gefunden):
Ich habe bisher zu Testzwecken 4 Bilder hochgeladen, diese werden auch angezeigt. Jedoch bei jeder Aktualisierung (IE-Taste F5) wird jedes Bild ein weiteres Mal hinzugefügt. Also 10x F5 gedrückt = +10x Bild1

Hier mal die Verlinkung und dessen Eigenschaften
javascript:window.open('http://www.blabla.de/cms/popupviewer.ph ... 00.100.100[/b].DS0289.jpg.jpg.jpg','bild','width=100,height=75,top=10,left=10,scrollbars=no,topmargin=0,leftmargin=0');bild.document.body.style.margin=0;
So, zudem wird dann immer wieder ein .jpg dahinter und eine 100. davor gesetzt.
Diese "Multiplizierten" Bilder sind allerdings auch nur als Thumb und nicht als großes Bild im popup zu sehen. Die "Vervielfältigung" der Bilder ist auch im Bereich Dateiverwaltung zu sehen.

Woran mag das wohl liegen ?
In der Backend-Konfig meine ich alles richtig gemacht zu haben.
Errorlog leer
Vielen Dank
Viele Grüße und Danke
willy3

---
Sys-Config:
Contenido-Version 4.6.15
Browser: Firefox2.0.0.3 // MSIE 6.0.2
Windows XP pro SP2 MSIE6.0.2900
Serverbetriebssystem Apache/1.3.27 (Linux/SuSE)
MySQL Serverversion 4.0.23-Max-log
Installierte PHP-Version 4.4.1

kummer
Beiträge: 2423
Registriert: Do 6. Mai 2004, 09:17
Wohnort: Bern, Schweiz
Kontaktdaten:

Beitrag von kummer » Di 6. Dez 2005, 12:56

du musst die thumbs in ein anderes verzeichnis legen als die quellbilder. was jetzt passiert ist, dass die thumbs zur galerie hinzu gefügt werden. dadurch werden es auch immer mehr (thumbs der quellbilder, thumbs der thumbs, thumbs der thumbs der thumbs, usw.).
aitsu.org :: schnell - flexibel - komfortabel :: Version 2.2.0 (since June 22, 2011) (jetzt mit dual license GPL/kommerziell)

willy3
Beiträge: 125
Registriert: Fr 5. Mär 2004, 00:14
Wohnort: ehem. Kanzler-Stadt
Kontaktdaten:

Beitrag von willy3 » Di 6. Dez 2005, 18:23

Ja. Jups. Funktioniert!
Super Danke :lol:
Viele Grüße und Danke
willy3

---
Sys-Config:
Contenido-Version 4.6.15
Browser: Firefox2.0.0.3 // MSIE 6.0.2
Windows XP pro SP2 MSIE6.0.2900
Serverbetriebssystem Apache/1.3.27 (Linux/SuSE)
MySQL Serverversion 4.0.23-Max-log
Installierte PHP-Version 4.4.1

DoroM
Beiträge: 116
Registriert: Mo 26. Jul 2004, 12:11
Wohnort: Saarland
Kontaktdaten:

Beitrag von DoroM » Do 8. Dez 2005, 13:54

Tolles Modul, leider klappt es bei mir nicht. Es werden keine Thumbs produziert, statt dessen:

Warning: imagejpeg(): Unable to access ....htdocs/cms/upload/galerie1/thumbnails/50.50.Kochen.jpg.jpg in .../htdocs/cms/front_content.php(567) : eval()'d code on line 626

Warning: imagejpeg(): Invalid filename ...htdocs/cms/upload/galerie1/thumbnails/50.50.Kochen.jpg.jpg' in ...htdocs/cms/front_content.php(567) : eval()'d code on line 626

Vermute, es liegt daran, daß beim Provider (Strato :-( hab ich mir nicht selbst ausgesucht) Safe Mode an ist. Deshalb gibt es bei mir im Dateiupload auch keine Vorschaubilder, die ja auch generierte Thumbs sind.

Seht Ihr irgendeine Möglichkeit, das zu umgehen?
Gruß
Doro

Highdel
Beiträge: 2
Registriert: Sa 10. Dez 2005, 11:51
Kontaktdaten:

Beitrag von Highdel » Sa 10. Dez 2005, 16:43

Hallo liebe Contenidogemeinschaft

Ich bin total begeistert von diesem Modul. Der Codingstyle ist ja wohl genial!

Es gibt (gab) eine sache, die mir nicht gefällt: Das verlinkte Bild öffnet sich in einem neuen (popup-)-Fenster

Ich schreibe "gab", weil ich dieses Modul etwas umgeschrieben habe. Die wichtigsten Änderungen, die ich vorgenommen habe:

- Das Bild "hinter" dem Thumbnail wird unter der Gallerie angezeigt (wer es darüber haben will, kann das ganz einfach im Quelltext ändern)

- Es wird jeweils das Bild "hinter" dem mittleren Thumbnail dargestellt (bei einer ungraden zahl an Thumbnails wird von den beiden mittleren das linke Benutzt)

- Die Größe des dargestellten Bildes ist genauso wie die Größe der Thumbnails anpassbar

- ein klick auf ein Thumbnail "verschiebt" die Thumbnails soweit, dass das angeklickte in der mitte steht (Außnahme: die ersten paar Thumbs (abhängig von der Anzahl der Thumbs) werden angezeit, ohne dass sie in die Mitte verschoben werden)

- zusätzlich wird ausgegeben, bei welchem Bild von Bildern/gesammt man sich grade befindtet (Bild x von y)

Zu beachten ist allerdings, dass jedes bild 3 mal auf dem Webspace liegt. (als Orginal, als Thumbnail, und als das "größenangepasstes" Bild - auch wenn es nicht angepasst werden musste)

Es gibt bestimmt schon ein Modul das ähnliches bietet, aber ich hatte halt grade mal lust PHP zu coden :D

wer sich das mal ansehen möchte:
http://highdel.de/contenido/cms/front_c ... p?idcat=13


hier der Input:

Code: Alles auswählen

/***********************************************
* CONTENIDO MODUL - INPUT
*
* Modulname   :       w3concepts.gallery.v1
* Author      :     Andreas Kummer
* Copyright   :     mumprecht & kummer w3concepts
* Created     :     30-08-2004
* Modified    :     30-08-2004
************************************************/

class pfad {

   function pfad($pfad) {
      $this->pfad = $pfad;
      $this->pathlen = strlen($this->pfad);
   }

   function getPath($root,$level = 0) {
      $content = $this->readDir($root);

      foreach ($content as $file) {
         if (is_dir($root.$file)) {
            $verzeichnis = substr($root,$this->pathlen);
            $returnvalue["{$verzeichnis}{$file}/"] = str_repeat(" ",$level * 5).$file;
            $returnvalue = array_merge($returnvalue,$this->getPath($root.$file."/",$level+1));
         }
      }

      return $returnvalue;
   }

   function readDir($path) {
      $handle = opendir($path);

      while ($file = readdir ($handle)) {
         if ($file != "." && $file != "..") $returnvalue[] = $file;
      }
      closedir($handle);

      return $returnvalue;
   }

   function makeSelect($preselection) {
      $pfad = $this->getPath($this->pfad);

      foreach ($pfad as $key => $value) {
         if ($preselection == $key) {
            echo "<option value=\"$key\" selected=\"selected\">$value</option>";
         } else {
            echo "<option value=\"$key\">$value</option>";
         }
      }
   }
}

$pfad = new pfad($cfgClient[$client]['path']['frontend'].$cfgClient[$client]['upload']);

echo "<table cellspacing=\"0\" cellpadding=\"10\" border=\"0\">";

echo "<tr><td>Bilderpfad:</td>";
echo "<td><select size=\"1\" name=\"CMS_VAR[0]\" />";
$pfad->makeSelect("CMS_VALUE[0]");
echo "</td>";

echo "<tr><td>Thumbnailpfad (auch für angepasste Großbilder):</td>";
echo "<td><select size=\"1\" name=\"CMS_VAR[1]\" />";
$pfad->makeSelect("CMS_VALUE[1]");
echo "</td>";

echo "<tr><td>Thumbnailbreite (Max.):</td>";
echo "<td><input type=\"text\" name=\"CMS_VAR[2]\" value=\"CMS_VALUE[2]\" size=\"5\" /></td>";

echo "<tr><td>Thumbnailhöhe (Max.):</td>";
echo "<td><input type=\"text\" name=\"CMS_VAR[3]\" value=\"CMS_VALUE[3]\" size=\"5\" /></td>";

echo "<tr><td>Anzahl Spalten:</td>";
echo "<td><input type=\"text\" name=\"CMS_VAR[4]\" value=\"CMS_VALUE[4]\" size=\"5\" /></td>";

echo "<tr><td>Anzahl Zeilen:</td>";
echo "<td><input type=\"text\" name=\"CMS_VAR[5]\" value=\"CMS_VALUE[5]\" size=\"5\" /></td>";

// echo "<tr><td>Text für Previous-Link:</td>";
// echo "<td><input type=\"text\" name=\"CMS_VAR[6]\" value=\"CMS_VALUE[6]\" size=\"15\" /></td>";

// echo "<tr><td>Text für Next-Link:</td>";
// echo "<td><input type=\"text\" name=\"CMS_VAR[7]\" value=\"CMS_VALUE[7]\" size=\"15\" /></td>";

echo "<tr><td>Großbildbreite (Max.):</td>";
echo "<td><input type=\"text\" name=\"CMS_VAR[8]\" value=\"CMS_VALUE[8]\" size=\"5\" /></td>";

echo "<tr><td>Großbildhöhe (Max.):</td>";
echo "<td><input type=\"text\" name=\"CMS_VAR[9]\" value=\"CMS_VALUE[9]\" size=\"5\" /></td>";

echo "</table>";
Und hier der Output:

Code: Alles auswählen

<?
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname   :       w3concepts.gallery.v1
* Author      :     Andreas Kummer
* Copyright   :     mumprecht & kummer w3concepts
* Created     :     30-08-2004
* Modified    :     30-08-2004
************************************************/

class gallery {

   function gallery() {
      // initialwerte setzen
      $this->setInitValues();

      // aussteigen, falls initialwerte nicht sinnvoll
      if (!$this->checkInitValues()) return false;

      // quellverzeichnis auslesen
      $this->readDir();
      
      // verhindern, dass mit negativen  " $_REQUEST['pos'] "  Werten gearbeitet wird
      if ($_REQUEST['pos'] < 0) {
      	 $this->Position = 0;
      }	 
      else {
      	 $this->Position = $_REQUEST['pos'];
      }
      
      // Galleriemitte zum anzeigen des mittleren Bildes und der richtigen Verlinkung ermitteln      
      $this->getGalerieMiddle();
      
      // zeiger für showNextPicture setzen 
      if (empty($_REQUEST['pos'])) {
         $this->showNextPictureSeq = -1;
      } 
      else {
      	$this->showNextPictureSeq = $this->Position - 1;
      }
      
      // datenbankzugriff initialisieren
      $this->db = new DB_Contenido;


      // galerie ausgeben (galerie ist zugleich die Navigation)
      $this->showGallery();
      
      // Das Orginalbild des mittleren Thumbs ausgeben
      $this->showLargeImage();
      
      
   }

   function setInitValues() {
      // konfigurationswerte aus dem input-script
      // übernehmen
      $this->path['pictures'] = "CMS_VALUE[0]";
      $this->path['thumbs'] = "CMS_VALUE[1]";
      $this->path['upload'] = $GLOBALS['cfgClient']["{$GLOBALS['client']}"]['upload'];
      $this->path['html'] = $GLOBALS['cfgClient']["{$GLOBALS['client']}"]['path']['htmlpath'];
      $this->abspath['pictures'] = $GLOBALS['cfgClient']["{$GLOBALS['client']}"]['path']['frontend'].$GLOBALS['cfgClient']["{$GLOBALS['client']}"]['upload'].$this->path['pictures'];
      $this->abspath['thumbs'] = $GLOBALS['cfgClient']["{$GLOBALS['client']}"]['path']['frontend'].$GLOBALS['cfgClient']["{$GLOBALS['client']}"]['upload'].$this->path['thumbs'];
      $this->htmlpath = $GLOBALS['cfgClient']["{$GLOBALS['client']}"]['path']['htmlpath'].$GLOBALS['cfgClient']["{$GLOBALS['client']}"]['upload'];
      $this->thumbnailSize['width'] = "CMS_VALUE[2]";
      $this->thumbnailSize['height'] = "CMS_VALUE[3]";
      $this->tableSize['cols'] = "CMS_VALUE[4]";
      $this->tableSize['rows'] = "CMS_VALUE[5]";
      $this->link['previous'] = "CMS_VALUE[6]";
      $this->link['next'] = "CMS_VALUE[7]";
      $this->largeImageSize['width'] = "CMS_VALUE[8]";
      $this->largeImageSize['height'] = "CMS_VALUE[9]";
   }

   function checkInitValues() {
      // prüfen, ob es sich bei den übergebenen pfaden
      // um tatsächlich vorhandene pfade im dateisystem
      // handelt. gegebenenfalls wird eine ausgabe
      // an den browser vorgenommen und false zurückgegeben.
      if (!chdir($this->abspath['pictures'])) {
         echo "<p>Das Verzeichnis '{$this->abspath['pictures']}' existiert im Dateisystem
            des Servers nicht. Entweder müssen Sie es noch anlegen oder die
            Konfiguration Ihres Modules anpassen.</p>";
         return false;
      }
      if (!chdir($this->abspath['thumbs'])) {
         echo "<p>Das Verzeichnis '{$this->abspath['thumbs']}' existiert im Dateisystem
            des Servers nicht. Entweder müssen Sie es noch anlegen oder die
            Konfiguration Ihres Modules anpassen.</p>";
         return false;         
      }

      if ($this->thumbnailSize['width'] == '') $this->thumbnailSize['width'] = 100;
      if ($this->thumbnailSize['height'] == '') $this->thumbnailSize['height'] = 100;
      
      if ($this->largeImageSize['width'] == '') $this->largeImageSize['width'] = 320;
      if ($this->largeImageSize['height'] == '') $this->largeImageSize['height'] = 240;

      if ($this->tableSize['cols'] == '') $this->tableSize['cols'] = 3;
      if ($this->tableSize['rows'] == '') $this->tableSize['rows'] = 3;

      if ($this->link['previous'] == '') $this->link['previous'] = '[:: rückwärts ]';
      if ($this->link['next'] == '') $this->link['next'] = '[ vorwärts ::]';


      // rückgabe im erfolgsfall
      return true;
   }

   function readDir() {
      $dir = opendir($this->abspath['pictures']);
      while ($file = readdir($dir)) {
         $bildinfo = @getimagesize($this->abspath['pictures'].$file);
         if (!empty($bildinfo)) {
            $picture[] = $file;
         }
      }
      natsort($picture);
      closedir($dir);

      foreach ($picture as $picture2) {
         if (!empty($picture2)) $this->picture[] = $picture2;
      }
   }

   function showNextPicture() {
   
   	// wenn seite frisch aufgerufen wird, das erste Bild anzeigen
   	if (empty($_REQUEST['lang'])) {
   		if ($this->showNextPictureSeq == 0) {
			$this->currentPicture = $this->picture[$this->showNextPictureSeq];
			$this->currentPictureNr = $this->showNextPictureSeq;
		}
	// sonst das mittlere anzeigen
	} elseif ($this->showNextPictureSeq == $_REQUEST['pos'] + $this->$middleOfTable) {
    			
		$this->currentPicture = $this->picture[$this->showNextPictureSeq];
		$this->currentPictureNr = $this->showNextPictureSeq;
        }
        
        
      // zeiger um eins erhöhen
       $this->showNextPictureSeq++;

      // wenn keine bild mehr vorhanden ist, false zurück geben
      if ($this->showNextPictureSeq >= count($this->picture)) return '';

      // thumbnail generieren falls erforderlich
      $size = $this->generateThumb($this->picture["{$this->showNextPictureSeq}"]);
      
      // originalgrösse des bildes ermitteln
      $originalsize = getimagesize($this->abspath['pictures'].$this->picture["{$this->showNextPictureSeq}"]);
            
      // referenz zurück geben
      // Link in Form des Thumbnail´s mit der entsprechenden Verschiebung der Tabelle, um das angeklickte bild anzeigen zu können
      $pos = $this->showNextPictureSeq - $this->$middleOfTable;
      $link = $GLOBALS['sess']->url("front_content.php?client={$GLOBALS['client']}&lang={$GLOBALS['lang']}&idcat={$GLOBALS['idcat']}&idart={$GLOBALS['idart']}&pos=$pos");
      return "<a href=\"{$link}\" ><img src=\"{$this->htmlpath}{$size['filename']}\" width=\"{$size['width']}\" height=\"{$size['height']}\" /></a>";
   
   }

   function generateThumb($filename) {

      $src_image_size = getimagesize($this->abspath['pictures'].$filename);

      // prüfen, ob thumbnail bereits vorhanden ist
      if (!file_exists("{$this->abspath['thumbs']}{$this->thumbnailSize['width']}.{$this->thumbnailSize['height']}.$filename.jpg")) {

         // ermitteln ob das bild auf bestimmte höhe oder bestimmte breite zu reduzieren ist
         // sowie ermitteln, um welchen faktor das bild zu verkleinern ist
         if ($src_image_size[0]/$src_image_size[1] > $this->thumbnailSize['width']/$this->thumbnailSize['height']) {
            $verkleinerungsfaktor = $this->thumbnailSize['width']/$src_image_size[0];
         } else {
            $verkleinerungsfaktor = $this->thumbnailSize['height']/$src_image_size[1];
         }

         // berechnen der thumbnailgrösse
         $bildhoehe = round($src_image_size[1] * $verkleinerungsfaktor);
         $bildbreite = round($src_image_size[0] * $verkleinerungsfaktor);

         // thumbnail erstellen
         $dst_im = imagecreatetruecolor($bildbreite,$bildhoehe);
         if ($src_image_size[2] == 1) {
            $src_im = imagecreatefromGIF("{$this->abspath['pictures']}$filename");
         } elseif ($src_image_size[2] == 2) {
            $src_im = @ImageCreateFromJPEG("{$this->abspath['pictures']}$filename");
         } else {
            $src_im = @imagecreatefromgd("{$this->abspath['pictures']}$filename");
         }
         imagecopyresampled ($dst_im,$src_im,0,0,0,0,$bildbreite,$bildhoehe,$src_image_size[0],$src_image_size[1]);
         imagejpeg ($dst_im,"{$this->abspath['thumbs']}{$this->thumbnailSize['width']}.{$this->thumbnailSize['height']}.$filename.jpg",100);
         
         $size['width'] = $bildbreite;
         $size['height'] = $bildhoehe;
      } else {
         $thumbnailsize = getimagesize("{$this->abspath['thumbs']}{$this->thumbnailSize['width']}.{$this->thumbnailSize['height']}.$filename.jpg");
         $size['width'] = $thumbnailsize[0];
         $size['height'] = $thumbnailsize[1];
      }

      $size['filename'] = "{$this->path['thumbs']}{$this->thumbnailSize['width']}.{$this->thumbnailSize['height']}.$filename.jpg";
      return $size;
 
   }


   function generateLargeImage($filename) {

      $src_image_size = getimagesize($this->abspath['pictures'].$filename);

      // prüfen, ob Bild bereits vorhanden ist
      if (!file_exists("{$this->abspath['thumbs']}{$this->largeImageSize['width']}.{$this->largeImageSize['height']}.$filename.jpg.JPG")) {

         // ermitteln ob das bild auf bestimmte höhe oder bestimmte breite zu reduzieren ist
         // sowie ermitteln, um welchen faktor das bild zu verkleinern ist
         if ($src_image_size[0]/$src_image_size[1] > $this->largeImageSize['width']/$this->largeImageSize['height']) {
            $verkleinerungsfaktor = $this->largeImageSize['width']/$src_image_size[0];
         } else {
            $verkleinerungsfaktor = $this->largeImageSize['height']/$src_image_size[1];
         }

         // berechnen der thumbnailgrösse
         $bildhoehe = round($src_image_size[1] * $verkleinerungsfaktor);
         $bildbreite = round($src_image_size[0] * $verkleinerungsfaktor);

         // Bild erstellen
         $dst_im = imagecreatetruecolor($bildbreite,$bildhoehe);
         if ($src_image_size[2] == 1) {
            $src_im = imagecreatefromGIF("{$this->abspath['pictures']}$filename");
         } elseif ($src_image_size[2] == 2) {
            $src_im = @ImageCreateFromJPEG("{$this->abspath['pictures']}$filename");
         } else {
            $src_im = @imagecreatefromgd("{$this->abspath['pictures']}$filename");
         }
         imagecopyresampled ($dst_im,$src_im,0,0,0,0,$bildbreite,$bildhoehe,$src_image_size[0],$src_image_size[1]);
         imagejpeg ($dst_im,"{$this->abspath['thumbs']}{$this->largeImageSize['width']}.{$this->largeImageSize['height']}.$filename.jpg.JPG",100);
         
         $size['width'] = $bildbreite;
         $size['height'] = $bildhoehe;
      } else {
         $largeImageSize = getimagesize("{$this->abspath['thumbs']}{$this->largeImageSize['width']}.{$this->largeImageSize['height']}.$filename.jpg.JPG");
         $size['width'] = $largeImageSize[0];
         $size['height'] = $largeImageSize[1];
      }

      $size['filename'] = "{$this->path['thumbs']}{$this->largeImageSize['width']}.{$this->largeImageSize['height']}.$filename.jpg.JPG";
      return $size;
 
   }


	
   function getDescription() {
      
      $sql = "SELECT description FROM {$GLOBALS['cfg']['tab']['upl']}
         WHERE
            filename = '{$this->picture[$this->showNextPictureSeq]}'
            AND dirname = '{$this->path['pictures']}'
         ";

      $this->db->query($sql);
      $this->db->next_record();

      return $this->db->f("description");;
   }

   function showGallery() {

      $cellwidth = floor(100/$this->tableSize['cols']);
      echo "<table width=\"100%\">\n";
      for ($i = 0;$i < $this->tableSize['rows'];$i++) {
         $beschreibung = null;
	 
         echo "<tr>\n";         
         for ($j = 0;$j < $this->tableSize['cols'];$j++) {
            echo "<td align=\"left\" valign=\"top\" width=\"$cellwidth%\">\n".$this->showNextPicture()."\n</td>\n";
            $beschreibung[] = $this->getDescription();
         }
         echo "</tr>\n";

         echo "<tr>\n";
         for ($j = 0;$j < $this->tableSize['cols'];$j++) {
            echo "<td align=\"left\" valign=\"top\" width=\"$cellwidth%\" style=\"padding-bottom:10px; font-style: italic;\">\n{$beschreibung[$j]}\n</td>\n";
         }
         echo "</tr>\n";
      }
      echo "</table>\n";
      
 
      
   }
   
   function getGalerieMiddle() {
   
         $this->$middleOfTable = ($this->tableSize['cols'] * $this->tableSize['rows'] / 2);
   
         // bei grader Thumbnailanzahl das "linke" Bild aus der Mitte auswählen
         if ($this->$middleOfTable == (int) $this->$middleOfTable) {
   		$this->$middleOfTable = $this->$middleOfTable - 1;   	
         }
         // bei ungrader Thumbnailanzahl abrunden
         else {
         	$this->$middleOfTable = floor($this->$middleOfTable);
   	 }
   }
  
   function showLargeImage() {
   
   	 // darzustellendes Bild ggf. resizen
   	 $size = $this->generateLargeImage($this->picture["{$this->currentPictureNr}"]);
   	
   	// resized Bild ausgeben
   	echo "<center><img src=\"{$this->htmlpath}{$size['filename']}\" width=\"{$size['width']}\" height=\"{$size['height']}\" /></center>\n";
   	
   	// "Bild x von y" ausgeben
   	$this->currentPictureNr = $this->currentPictureNr + 1;
   	echo "<p align=\"right\">Bild {$this->currentPictureNr} von ".count($this->picture)." </p>";   
   }
   
   
}


$gallery = new gallery();

?>
Zuletzt geändert von Highdel am So 11. Dez 2005, 17:21, insgesamt 2-mal geändert.

DoroM
Beiträge: 116
Registriert: Mo 26. Jul 2004, 12:11
Wohnort: Saarland
Kontaktdaten:

Beitrag von DoroM » Sa 10. Dez 2005, 19:21

Super, sowas finde ich eigentlich auch besser, da man nur einmal klicken muss. Allerdings - wenn Du z.B. 30 Bilder hast, mußt Du mehr scrollen.
Bei einer Auflösung von 800x600 noch umständlicher.
Aber bei ein paar Bildern: optimal.

Hat niemand eine Idee zu meinem Problem, daß keine thumbs generiert werden, sondern nur diese 2 Meldungen pro Bild:
Warning: imagejpeg(): Unable to access ....htdocs/cms/upload/galerie1/thumbnails/50.50.Bild1.jpg.jpg in .../htdocs/cms/front_content.php(567) : eval()'d code on line 626

Warning: imagejpeg(): Invalid filename ...htdocs/cms/upload/galerie1/thumbnails/50.50.Bild1.jpg.jpg' in ...htdocs/cms/front_content.php(567) : eval()'d code on line 626

Gruß
Doro

Highdel
Beiträge: 2
Registriert: Sa 10. Dez 2005, 11:51
Kontaktdaten:

Beitrag von Highdel » So 11. Dez 2005, 16:58

@ DoroM
zu deinem Problem fällt mir so keine Lösung ein :?

allerdings ist das mit den vielen Bildern ein guter hinweis.
Da werde ich warscheinlich noch was machen. Ich denke an eine "gehe zu Bild Nr.[x]" Funktion. Denn wenn die Bilder neu sind, will man ja warscheinlich alle einmal sehen. wenn man jedoch ein bestimmtes Bild später nochmal sehen möchte kann man es dann über die nummer aufrufen (wenn man sie sich gemerkt hat )

Karlchen
Beiträge: 40
Registriert: Sa 4. Feb 2006, 02:02
Kontaktdaten:

Beitrag von Karlchen » Fr 10. Feb 2006, 19:15

Ist es nicht möglich die Steuerung von dem ( http://www.contenido.de/forum/viewtopic ... 2305da4078 ) Album zu übernehmen?
Gruss
Karlchen

Sundriver
Beiträge: 41
Registriert: Mo 21. Nov 2005, 17:06
Wohnort: BB
Kontaktdaten:

Beitrag von Sundriver » So 5. Mär 2006, 20:39

Hallo @ all,

ich hab mir dieser Tage auch das Modul von kummer eingebaut und ich muss sagen ist total Klasse und gefällt sehr gut!
Ich hab aber dennoch ein Problem mit den Bilbeschreibungen was ich noch nicht lösen konnte. Vielleicht kennt jemand von Euch die Lösung für folgendes Problem: ich verwende C 4.6.4 , wenn ich im Backend zu den jeweiligen Bildern die Beschreibung angebe erscheint diese in ziemlich wirrer Struktur unter den Thumbs, so zum Beispiel wird aus
A Brachmanski
stellv. Vorsitzende / Abt.-Ltr. Gerätturnen
dieses hier
A.Brachmanski%0D%0A
stellv.+Vorsitzende+%2F+Abt.-Ltr.+Gerätturnen
Irgendwas stimmt mit dem Zeichensatz oder dessen Prüfung nicht... Kann eventuell jemand von den Cracks hier im Forum einen Lösungsansatz geben?
Bin für alle Vorschläge äusserst Dankbar :)

bye
Sundriver

Sundriver
Beiträge: 41
Registriert: Mo 21. Nov 2005, 17:06
Wohnort: BB
Kontaktdaten:

Beitrag von Sundriver » Mo 6. Mär 2006, 21:12

.. Lösung gefunden, so wie es DEDE weiter vorn schon geschrieben hat. Gefehlt hat der urldecode

$beschreibung[] = urldecode($this->getDescription());


bye
Sundriver

Dinkel
Beiträge: 565
Registriert: Di 22. Mär 2005, 14:52
Kontaktdaten:

Beitrag von Dinkel » Di 4. Apr 2006, 13:43

Ja ich weiß, dieses Modul ist schon recht alt... Aber ich verwende es auch in der Contenido Version 4.6.4 und habe ein Problem. Wenn ich in der Bildergalerie bin, dann wird der Login, der sich unter dem Content befindet, nicht angezeigt, sondern es steht da:

templates/login.html

was kann man da machen? Liegt es evtl. an meinem Layout? Auf allen nicht Bildergalerie-Seite wird der Login angezeigt.
selbstentwickelte Module:
Downloads und Infos zu den Modulen: gibt es hier.
Modul: Forum | Version 0.9 | getestet: 4.6.24 MR, 4.8.11, 4.8.11 AMR
Modul: Galleriffic | Version: 0.3.4 BETA | getestet: 4.8.11, 4.8.11 AMR, 4.8.12, 4.8.12 AMR
Modul: Metadata | Version: 2.0 | getestet: 4.9.7, 4.9.7 AMR
Modul: Slider Gallery | Version: 1.0 | getestet: 4.9.12 AMR
Modul: Up- & Download | Version: 4.1 | getestet: 4.9.12 AMR

Dinkel
Beiträge: 565
Registriert: Di 22. Mär 2005, 14:52
Kontaktdaten:

Beitrag von Dinkel » Do 20. Apr 2006, 18:19

keiner eine Idee? Oder gibt es ein Modul für eine Bildergalerie für die Version 4.6.x die auch wirklich geht?
selbstentwickelte Module:
Downloads und Infos zu den Modulen: gibt es hier.
Modul: Forum | Version 0.9 | getestet: 4.6.24 MR, 4.8.11, 4.8.11 AMR
Modul: Galleriffic | Version: 0.3.4 BETA | getestet: 4.8.11, 4.8.11 AMR, 4.8.12, 4.8.12 AMR
Modul: Metadata | Version: 2.0 | getestet: 4.9.7, 4.9.7 AMR
Modul: Slider Gallery | Version: 1.0 | getestet: 4.9.12 AMR
Modul: Up- & Download | Version: 4.1 | getestet: 4.9.12 AMR

Gesperrt