Coppermin Gallery

benzomat
Beiträge: 42
Registriert: So 21. Aug 2005, 17:42
Wohnort: Ossiach / Österreich
Kontaktdaten:

Beitrag von benzomat » Mo 12. Jun 2006, 21:26

hallo,
@ rezeptionist
wie wäre es mit einer kleinen erweiterung der pixlie-galerie?
ich kann zwar nicht sagen, ob es viel aufwand oder machbar ist.
folgendes:
wenn man die übersichtsseite der galerie hat, kommt man von da zu der einzelnen galerie.
dort kann kann man dann das einzelne bild anklicken, es erscheint in größerer form im gleichen fenster.
- hier wäre es super links zu haben, mit denen man weiter oder zurück blättern kann.
- oder das große bild öffnet sich unter oder neben den vorschaubildern und darunter kann man weiter und zurück blättern
- oder auch als popup mit den links
so muss man nicht immer erst zurück zur übersicht und und.
die funktion vermisse ich generell in fast jeder galerie hier, eben grad auch in der galerie in 4.6.8, die der pixlie-galerie sehr ähnlich ist, in der anzeigeart.
ich hatte auch schon ne weile hier im forum nach so einer variante gesucht, aber bisher nicht gefunden, möglichst für 4.6.8.
ok, danke, gruss
Hans

mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf » Di 13. Jun 2006, 16:30

rezeptionist hat geschrieben:... werde Dienstag ne Verion veröffentlichen, ...
Sonntag, Dienstag, Donnerstag, ... logische reihen und folgen, aber die meute ist hungrig ;)
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams

Beleuchtfix
Beiträge: 1082
Registriert: Di 22. Jul 2003, 10:14
Wohnort: Hessen
Kontaktdaten:

Beitrag von Beleuchtfix » Mi 14. Jun 2006, 09:40

Er hat aber nicht geschrieben, welcher Dienstag. (Das macht natürlich auch nicht satter :wink: )

Florian

Matz82
Beiträge: 191
Registriert: Fr 26. Mai 2006, 13:10
Wohnort: Ilmenau
Kontaktdaten:

Beitrag von Matz82 » Fr 16. Jun 2006, 12:23

wird wohl doch nix oder? :?
Viele Grüße,
Mathias


======================
Der letzte macht das Netz aus ! ;)
======================

Da Maxl
Beiträge: 26
Registriert: Mo 4. Apr 2005, 12:41
Wohnort: München
Kontaktdaten:

Was gefällt euch an pixlie?

Beitrag von Da Maxl » Mo 19. Jun 2006, 23:50

Ich habe mal kurz ausprobiert, pixlie in contenido zu integrieren (quick'n'dirty) und es funktioniert soweit. Allerdings kann ich mich nicht dafür erwärmen. ich finde es ganz gut als einfache Galerie für eine einfache Website aber für Contenido nicht sonderlich geeignet. Am problematischten ist, dass die Erzeugung der Links in engine.inc hart codiert ist. Also muss man dort die Contenido-Variablem idart usw. noch mit in den href-String einfügen und das ist ein zu grüße Änderung gegenüber dem Standard. Sollte es dann mal eione neue version von Pixlie geben, muss man diese Datei wieder umbauen.

Wen es interessiert, hier meine 'Umbauten':

- pixlie heruntergeladen und in <contenido-installation>/cms/includes/pixlie entpackt
- index.php umbenannt in pixlie.inc.php, Programmteile am Ende entfernt und für das Contenido-Modul für den Output verwendet
- pixlie-Templates (uebersicht.html, gallerie.html, bildvorschau.html) in das Verzeichnis <contenido-installation>/cms/templates verschoben
- die Beispielbilder in <contenido-installation>/cms/upload/bildergalerie verschoben, damit man was zum testen hat
- <contenido-installation>/cms/includes/pixlie/system/engine.php angepasst

Modul: pixlie-Galerie, Output

Code: Alles auswählen

<?php
cInclude("frontend", "includes/pixlie/system/engine.inc");
cInclude("frontend", "includes/pixlie/pixlie.inc.php");

$contenidoqry = "";
if(isset($idart)) $contenidoqry .= "&idart=".$idart;
if(isset($idcat)) $contenidoqry .= "&idcat=".$idcat;
//
echo "<pre>".basename(__FILE__).": ".__LINE__." ".$contenidoqry."</pre>";

switch ($_GET['action']) {
   case "start":
     uebersicht();
     break;
   case "showgallery":
     showgallery($_GET['pfad']);
     break;
   case "showpic":
     showpic($_GET['pfad'],$_GET['bild']);
     break;
   case "originalbild":
     originalbild($_GET['bild']);
     break;
   case "download":
     download($_GET['pfad'],$_GET['bild']);
     break;
   default:
     uebersicht();
}
?>
geändertes pixlie-Modul pixlie.inc.php, abgeleitet von index.php. Hier habe ich den Programmteil am Ende entfernt und Variablen und defines für Contenido angepasst.

Code: Alles auswählen

<?
//********************************************************************************************************************************************
//*************************************   Konfiguration: Bitte passen Sie folgende Werte an   ************************************************
//********************************************************************************************************************************************

//--- Wichtig - Diese 2 Werte müssen Sie anpassen (Einfach die Angaben in den "" verändern.)---

//Config
$domaene = "http://".$_SERVER['SERVER_NAME'];   //Ihre Domain bis zum Wurzelverzeichnis (unterste Ebene) vom Internet aus gesehen.  (Voreinstellung = "http://".$_SERVER['SERVER_NAME']; Alternative = http://www.ihreDomain.de)
$root = $cfg['path']['frontend'];              //Ihr Pfad bis zum Wurzelverzeichnis (unterste Ebene) vom Server aus gesehn. Diesen Pfad erfahren Sie von Ihrem Webhoster. (Voreinstellung = $_SERVER['DOCUMENT_ROOT']; , Alternative= /home/www/IhrBenutzername/html)

//********************************************************************************************************************************************
//*************************************  Konfiguration: Diese Werte können Sie optional anpassen  ********************************************
//********************************************************************************************************************************************

//--- Optional---

//Kleine Vorschaubilder (Thumbnails)
$thumbnail_spalten = 3;             //Anzahl der Spalten der Vorschaubilder (Voreinstellung = 3)
$thumbnail_trennblock = "</tr><tr>";//Wird nach der 3. Spalte ausgegeben. (Voreinstellung = "</tr><tr>")
$thumbnail_breite = 137;            //Breite der Thumbnails bei der Gallerienübersicht (Höhe wird automatisch berechnet) (Voreinstellung = 137)
$thumbnail_modus = 1;               //Modus 0: Größe anpassen,Bildausschnitt berechnen,nicht vergrössern , Modus 1: Größe anpassen, Bildausschnitt berechnen, vergrössern, Modus 2:Größe anpassen,vergrössern (Voreinstellung =1 )
$thumbnail_beschriftung = " Bilder"; //Auf der Übersicht wird dieser Inhalt hinter die Anzahl der Bilder geschrieben.  (Voreinstellung = " - Bilder")
$thumbnails_dateiname_max = 20;      //Gibt an wie lange die maximale Länge des Dateinamens ist. Ist der Dateiname länger wird er mit ... abgekürzt (Voreinstellung = 30)

//Große Vorschaubilder
$vorschau_breite = 528;             //Breite des Vorschaubildes bei der Vorschauansicht (Höhe wird automatisch berechnet) (Voreinstellung = 528)
$vorschau_modus  = 2;               //Modus 0: Größe anpassen,Bildausschnitt berechnen,nicht vergrössern , Modus 1: Größe anpassen, Bildausschnitt berechnen, vergrössern, Modus 2:Größe anpassen,vergrössern (Voreinstellung = 2)
$vorschau_label  = "Pixlie.de";     //Wird in das Vorschaubild eingebrannt  //(Voreinstellung = Pixlie.de)

//--- Nur für erfahrene Benutzer ---

//Verzeichnisstrukturen (Nur ändern wenn Verzeichnisse umbenannt werden.)
$ordner_modul = "/cms";								//Verzeichnis in dem diese Datei liegt (Voreinstellung = /pixlie)
$ordner_gallerien = "/upload/bildergalerie";	//Verzeichnis in das die Gallerien hochgeladen werden (Muss in dem Modulverzeichnis liegen) (Voreinstellung = /upload)
$ordner_cache = "/cache";							//Verzeichnis mit dem Programm Cache (Inhalt kann jederzeit gelöscht werden) WICHTIG: MUSS CHMOD777 haben!!! (Voreinstellung = /cache)

//Dateinamen
$modul = basename($_SERVER[PHP_SELF]); 				//Name dieser Datei. Wenn nicht unbedingt nötig bitte nicht ändern. (Voreinstellung = index.php)
$engine = "cms/includes/pixlie/system/engine.inc";	//Name der AVE Engine (Voreinstellung = system/engine.inc)

//Originalbild
$seitentitel = "Originalgröße";     //(Voreinstellung = Originalgröße)
$footer = "&copy; copyright 2006 - Alle Rechte vorbehalten."; //(Voreinstellung = &copy; copyright 2006 - Alle Rechte vorbehalten.)



//********************************************************************************************************************************************
//*************************************  WICHTIG: Ab hier bitte nichts mehr verändern !!!  ***************************************************
//********************************************************************************************************************************************

/*
$root = $cfg['path']['frontend'];
$modul = basename($_SERVER[PHP_SELF]);
$engine = "cms/includes/pixlie/system/engine.inc";      //Name der AVE Engine (Voreinstellung = system/engine.inc)
$vorschau_label  = "contenido.org";
$ordner_modul = "/cms";	//Verzeichnis in dem diese Datei liegt (Voreinstellung = /pixlie)
$ordner_gallerien = "/upload/bildergalerie";      //Verzeichnis in das die Gallerien hochgeladen werden (Muss in dem Modulverzeichnis liegen) (Voreinstellung = /upload)
$ordner_cache = "/cache";           //Verzeichnis mit dem Programm Cache (Inhalt kann jederzeit gelöscht werden) WICHTIG: MUSS CHMOD777 haben!!! (Voreinstellung = /cache)

define("sys_tpl_uebersicht_file","templates/uebersicht.html");
define("sys_tpl_gallerie_file","templates/gallerie.html");
define("sys_tpl_bildvorschau_file","templates/bildvorschau.html");
*/


//Definition der Konstanten

//Root
define("sys_root",$root.$ordner_modul);
define("sys_rooturl",$domaene.$ordner_modul);

//Gallery
define("sys_gallery",$root.$ordner_modul.$ordner_gallerien);
define("sys_galleryurl",$domaene.$ordner_gallerien);

//Cache
define("sys_cache",$root.$ordner_modul.$ordner_cache);
define("sys_cacheurl",$domaene.$ordner_modul.$ordner_cache);

//Thumbnails
define("sys_thumbnail_breite",$thumbnail_breite);
define("sys_thumbnail_modus",$thumbnail_vergreossern);
define("sys_thumbnail_trennblock",$thumbnail_trennblock);
define("sys_thumbnail_spalten",$thumbnail_spalten);
define("sys_thumbnail_beschriftung",$thumbnail_beschriftung);
define("sys_thumbnails_dateiname_max",$thumbnails_dateiname_max);

//Vorschaubilder
define("sys_vorschau_breite",$vorschau_breite);
define("sys_vorschau_modus",$vorschau_modus);

//Filenamen
define("sys_file_modul",$modul);
define("sys_file_engine",$engine);

//Beschriftung der Vorschaubilder
define("sys_bildbeschriftung",$vorschau_label);

//Template für die Übersicht:
define("sys_tpl_uebersicht_file","templates/uebersicht.html");
define("sys_tpl_uebersicht_ph_wiederholung","#wiederholung#");
define("sys_tpl_uebersicht_ph_pfad","#pfad#");
define("sys_tpl_uebersicht_ph_titel","#titel#");
define("sys_tpl_uebersicht_ph_bild","#bild#");
define("sys_tpl_uebersicht_ph_anzahl","#anzahl#");
define("sys_tpl_uebersicht_ph_gallerien","#gallerien#");

//Template  für die Gallerie
define("sys_tpl_gallerie_file","templates/gallerie.html");
define("sys_tpl_gallerie_ph_wiederholung","#wiederholung#");
define("sys_tpl_gallerie_ph_pfad","#pfad#");
define("sys_tpl_gallerie_ph_titel","#titel#");
define("sys_tpl_gallerie_ph_bild","#bild#");
define("sys_tpl_gallerie_ph_menu","#menu#");
define("sys_tpl_gallerie_ph_gallerien","#gallerien#");

//Template  für die Bildvorschau
define("sys_tpl_bildvorschau_file","templates/bildvorschau.html");
define("sys_tpl_bildvorschau_ph_wiederholung","#wiederholung#");
define("sys_tpl_bildvorschau_ph_pfad","#pfad#");
define("sys_tpl_bildvorschau_ph_bild","#bild#");
define("sys_tpl_bildvorschau_ph_menu","#menu#");
define("sys_tpl_bildvorschau_ph_gallerien","#gallerien#");

//Cachefunktion
define("sys_cache_thumbnails","/tn_");
define("sys_cache_vorschau","/vs_");

//Originalgröße
define("sys_ori_footer",$footer);
define("sys_ori_titel",$seitentitel);

//Textausgaben
define("sys_pfad_home","Übersicht");
define("sys_gallerien_ueberschrift","<b>Weitere Gallerien:</b><br>");

//Fehlermeldungen
define("sys_fehlermeldung01","<br><br><center><img src='system/chmod.gif'></center>");
define("sys_fehlermeldung02","<h2>Der Download konnte nicht gestartet werden, bitte speichern Sie die Datei manuell.: </h2>");
define("sys_fehlermeldung03","<br><br><center><img src='system/jpg.gif'></center>");
define("sys_fehlermeldung04","<br><br><center><img src='system/sonderzeichen.gif'></center>");

?>

Und jetzt der größte Brocken engine.inc. Hier wurde wie schon gesagt bei allen Erzeugungen von hrefs die Erweiterung um die Contenido-Variablen eingebaut.

Code: Alles auswählen

<?
//********************************************************************************************************************************************
//***************************************************   Grafikberechnungen   *****************************************************************
//********************************************************************************************************************************************

function sys_resize_breite($src_img,$max_breite,$vergroessern)
{
	global $contenidoqry;
	
  //Seiteverhältinsse auslesen
  $hoehe = imagesy($src_img);  # original height
  $breite = imagesx($src_img);  # original width
  $hoehe_neu = $hoehe;
  $breite_neu = $breite;
  switch ($vergroessern)
  {
      case 0:
      if($breite>$max_breite)
      {
        $hoehe_neu = $max_breite / 4 * 3;
        $hoehe_resize = $max_breite / $breite * $hoehe;
        $breite_neu = $max_breite;
        if($hoehe_resize<$hoehe_neu)
        {
          $faktor = 100 / $hoehe_resize * $hoehe_neu;
          $hoehe_resize = $hoehe_neu;
          $breite_neu = $max_breite * $faktor / 100;
        }
        $dst_img = ImageCreateTrueColor($max_breite,$hoehe_neu);
        $resize_img = ImageCreateTrueColor($breite_neu,$hoehe_resize);
        ImageCopyResized($resize_img, $src_img , 0,0,0,0, $breite_neu, $hoehe_resize, ImageSX($src_img), ImageSY($src_img));
        $y=($hoehe_resize - $hoehe_neu) / 4;
        ImageCopy ( $dst_img, $resize_img, 0, 0, 0, $y, $breite_neu, $hoehe_neu );
        return($dst_img);
        imageDestroy($dst_img);
      }
      else
      {
        return($src_img);
      }
      break;

      case 1:
        $hoehe_neu = $max_breite / 4 * 3;
        $hoehe_resize = $max_breite / $breite * $hoehe;
        $breite_neu = $max_breite;
        if($hoehe_resize<$hoehe_neu)
        {
          $faktor = 100 / $hoehe_resize * $hoehe_neu;
          $hoehe_resize = $hoehe_neu;
          $breite_neu = $max_breite * $faktor / 100;
        }
        $dst_img = ImageCreateTrueColor($max_breite,$hoehe_neu);
        $resize_img = ImageCreateTrueColor($breite_neu,$hoehe_resize);
        ImageCopyResized($resize_img, $src_img , 0,0,0,0, $breite_neu, $hoehe_resize, ImageSX($src_img), ImageSY($src_img));
        $y=($hoehe_resize - $hoehe_neu) / 4;
        ImageCopy ( $dst_img, $resize_img, 0, 0, 0, $y, $breite_neu, $hoehe_neu );
        return($dst_img);
        imageDestroy($dst_img);
      break;

      case 2:
        if($breite>$max_breite)
        {
          $hoehe_neu = $max_breite / $breite * $hoehe;
          $breite_neu = $max_breite;
          $dst_img = ImageCreateTrueColor($breite_neu,$hoehe_neu);
          ImageCopyResized($dst_img, $src_img, 0,0,0,0, $breite_neu, $hoehe_neu, ImageSX($src_img), ImageSY($src_img));
          $schwarz = imageColorAllocate($dst_img, 255, 255, 255);
          imageStringup($dst_img, 2, 10,100, sys_bildbeschriftung, $schwarz);
          return($dst_img);
          imageDestroy($dst_img);
        }
        else
        {
          return($src_img);
        }
      break;
    }
}

//********************************************************************************************************************************************
//***************************************************   Übersicht der Gallerien***************************************************************
//********************************************************************************************************************************************

function uebersicht()
{
	global $contenidoqry;
	
   //Template einlesen
  $template=explode(sys_tpl_uebersicht_ph_wiederholung,implode('', file(sys_tpl_uebersicht_file)));
  //Template vor der Wiederholung
  $tpl_anfang = $template[0];
  $tpl_anfang = str_replace(sys_tpl_uebersicht_ph_pfad,sys_pfad_home,$tpl_anfang);
  //Template Wiederholung
  $tpl_mitte = "";
  $gallerien_root = opendir(sys_gallery);
  $i==0;
  while($gallerien_ordner = readdir($gallerien_root))
   {
      if($gallerien_ordner != "." && $gallerien_ordner != ".." && $gallerien_ordner[0] != '.')
      {
         if(is_dir(sys_gallery."/".$gallerien_ordner))
         {
           if((eregi("ä",$gallerien_ordner)==TRUE)||(eregi("ö",$gallerien_ordner)==TRUE)||(eregi("ü",$gallerien_ordner)==TRUE)||(eregi("ß",$gallerien_ordner)==TRUE)||(eregi("&",$gallerien_ordner)==TRUE)||(eregi("%",$gallerien_ordner)==TRUE)||(eregi("§",$gallerien_ordner)==TRUE))
           {
             die(sys_fehlermeldung04);
           }
           if($i==sys_thumbnail_spalten)
           {
             $tpl_mitte .= sys_thumbnail_trennblock;
             $i=0;
           };
           $i++;
           //Vorschaubild und Anzahl
           $bilder_verzeichnis = opendir(sys_gallery."/".$gallerien_ordner);
           $anzahl=0;
           while($bilder_datei = readdir($bilder_verzeichnis))
           {
              if($bilder_datei != "." && $bilder_datei != ".." && $bilder_datei[0] != '.')
              {
                if(eregi("jpg",$bilder_datei)==FALSE)
                {
                  die(sys_fehlermeldung03);
                }
                if((eregi("ä",$bilder_datei)==TRUE)||(eregi("ö",$bilder_datei)==TRUE)||(eregi("ü",$bilder_datei)==TRUE)||(eregi("ß",$bilder_datei)==TRUE)||(eregi("&",$bilder_datei)==TRUE)||(eregi("%",$bilder_datei)==TRUE)||(eregi("§",$bilder_datei)==TRUE))
                {
                  die(sys_fehlermeldung04);
                }
                if(!is_dir(sys_gallery."/".$gallerien_ordner."/". $bilder_datei))
                {
                  if(!file_exists(sys_cache.sys_cache_thumbnails.$bilder_datei))
                  {
                    $bilder_original = sys_gallery."/".$gallerien_ordner."/".$bilder_datei;
                    $bilder_thumbnail= @ImagecreateFromJpeg($bilder_original);
                    if(!@ImageJpeg(sys_resize_breite($bilder_thumbnail,sys_thumbnail_breite,sys_thumbnail_modus),sys_cache.sys_cache_thumbnails.$bilder_datei))
                    {die(sys_fehlermeldung01);}
                    imageDestroy($bilder_thumbnail);
                  }
                  $anzahl++;
                  if($anzahl==1)
                  {
                    $bildurl = sys_cacheurl.sys_cache_thumbnails.$bilder_datei;
                  }
                }
              }

           }

         /*
         //Test: Ausgabe des Bildes per Formular:
         $input_bild = '<form action="'.sys_file_modul.'" method="post" name="pixlie" id="pixlie">
         <input name="imageField" type="image" src="'.$bildurl.'" alt="Galerie '.$gallerien_ordner.'anzeigen." border="0">
         <input name="action" type="hidden" id="showgallery">
         <input name="pfad" type="hidden" id="'.$gallerien_ordner.'">
         </form>';
         */

           $input_bild = '<a href="'.sys_rooturl.'/'.sys_file_modul.'?action=showgallery&pfad='.$gallerien_ordner.$contenidoqry.'"><img src="'.$bildurl.'" alt="Galerie '.$gallerien_ordner.'anzeigen." border="0"></a>';
           $tpl_mitte .= str_replace(sys_tpl_uebersicht_ph_titel, $gallerien_ordner, $template[1]);
           $tpl_mitte = str_replace(sys_tpl_uebersicht_ph_bild, $input_bild, $tpl_mitte);
           $tpl_mitte = str_replace(sys_tpl_uebersicht_ph_anzahl, $anzahl.sys_thumbnail_beschriftung, $tpl_mitte);
         }
      }
   }
   $rest = sys_thumbnail_spalten - $i;
   for($i=0;$i<$rest;$i++
   ){
      $input_bild = '<table width="'.sys_thumbnail_breite.'" border="0" cellspacing="0" cellpadding="0"><tr><td>&nbsp;</td></tr></table>';
      $tpl_mitte .= str_replace(sys_tpl_uebersicht_ph_titel, '&nbsp;', $template[1]);
      $tpl_mitte = str_replace(sys_tpl_uebersicht_ph_bild, $input_bild, $tpl_mitte);
      $tpl_mitte = str_replace(sys_tpl_uebersicht_ph_anzahl, '&nbsp;', $tpl_mitte);
   }
//Keine Auflistung der Gallerien in der Übersicht
   $tpl_ende = $template[2];

   /*
//Auflistung der Gallerien auch in der Übersicht

   //Template nach der Wiederholung
   $tpl_ende = str_replace(sys_tpl_uebersicht_ph_gallerien,sys_gallerien_ueberschrift,$template[2]);

   $gallerien_root = opendir (sys_gallery);
   while($gallerien_ordner = readdir($gallerien_root))
   {
     if($gallerien_ordner != "." && $gallerien_ordner != ".." && $gallerien_ordner[0] != '.')
     {
       if(is_dir(sys_gallery."/". $gallerien_ordner))
       {
         $input_gallerien = '<a href="'.sys_rooturl.'/'.sys_file_modul.'?action=showgallery&pfad='.$gallerien_ordner.$contenidoqry.'">• '.$gallerien_ordner.'</a><br>';
         $tpl_ende .= str_replace(sys_tpl_uebersicht_ph_gallerien,$input_gallerien,$template[2]);
       }
     }
   }
   */
   //Ausgabe des Templates
   echo $tpl_anfang.$tpl_mitte.$tpl_ende;
}

//********************************************************************************************************************************************
//***************************************************   Anzeigen einer Bildergallerie  *******************************************************
//********************************************************************************************************************************************

function showgallery($pfad)
{
	global $contenidoqry;
	
   //Template einlesen
  $template=explode(sys_tpl_gallerie_ph_wiederholung,implode('', file(sys_tpl_gallerie_file)));
  //Template vor der Wiederholung
  $tpl_anfang = $template[0];
  if(strlen($pfad)>sys_thumbnails_dateiname_max)
  {
    $pfad_gekuerzt = substr($pfad,0,sys_thumbnails_dateiname_max)."...";
  }else{$pfad_gekuerzt=$pfad;}
  $tpl_anfang = str_replace(sys_tpl_gallerie_ph_pfad,'<a href="'.sys_rooturl.'/'.sys_file_modul.'?action=start'.$contenidoqry.'">'.sys_pfad_home.'</a> / '.$pfad_gekuerzt ,$tpl_anfang);
  //Template Wiederholung
  $tpl_mitte = "";
  $dir = opendir (sys_gallery."/".$pfad);
  $i==0;
  while($file = readdir($dir))
  {
    if($file != "." && $file != ".." && $file[0] != '.')
    {
      if(!is_dir(sys_gallery."/".$pfad."/". $file))
      {
        if(eregi("jpg",$file)==FALSE)
        {
          die(sys_fehlermeldung03);
        }
        if((eregi("ä",$file)==TRUE)||(eregi("ö",$file)==TRUE)||(eregi("ü",$file)==TRUE)||(eregi("ß",$file)==TRUE)||(eregi("&",$file)==TRUE)||(eregi("%",$file)==TRUE)||(eregi("§",$file)==TRUE))
        {
          die(sys_fehlermeldung04);
        }
        if(!file_exists(sys_cache.sys_cache_thumbnails.$file))
        {
          $picture = sys_gallery."/".$pfad."/".$file;
          $src_img=@ImagecreateFromJpeg($picture);
          ImageJpeg(sys_resize_breite( $src_img,sys_thumbnail_breite,sys_thumbnail_modus),sys_cache.sys_cache_thumbnails.$file);
          imageDestroy($src_img);
        }
        if($i==sys_thumbnail_spalten)
        {
          $tpl_mitte .= sys_thumbnail_trennblock;
          $i=0;
        };
        $i++;
        $input_bild = '<a href="'.sys_rooturl.'/'.sys_file_modul.'?action=showpic&pfad='.$pfad.'&bild='.$file.$contenidoqry.'"><img src="'.sys_cacheurl.sys_cache_thumbnails.$file.'" alt="Bild '.$file.'anzeigen." border="0"></a>';
        $tpl_mitte .= str_replace(sys_tpl_gallerie_ph_bild, $input_bild, $template[1]);

        if(strlen($file)>sys_thumbnails_dateiname_max)
        {
          $file_gekuerzt = substr($file,0,sys_thumbnails_dateiname_max)."...";
        }else{$file_gekuerzt=$file;}
        $tpl_mitte = str_replace(sys_tpl_gallerie_ph_titel, $file_gekuerzt, $tpl_mitte);
      }
    }
  }
  $rest = sys_thumbnail_spalten - $i;
  for($i=0;$i<$rest;$i++)
  {
    $input_bild = '<table width="'.sys_thumbnail_breite.'" border="0" cellspacing="0" cellpadding="0"><tr><td>&nbsp;</td></tr></table>';
    $tpl_mitte .= str_replace(sys_tpl_gallerie_ph_bild, $input_bild, $template[1]);
    $tpl_mitte = str_replace(sys_tpl_gallerie_ph_titel, '&nbsp;', $tpl_mitte);
   }
  $gallerien_root = opendir (sys_gallery);
  $input_gallerien = sys_gallerien_ueberschrift;
  while($gallerien_ordner = readdir($gallerien_root))
  {
    if($gallerien_ordner != "." && $gallerien_ordner != ".." && $gallerien_ordner[0] != '.')
    {
      if(is_dir(sys_gallery."/". $gallerien_ordner))
      {
        if($gallerien_ordner!=$pfad)
        {
          $input_gallerien .= '<a href="'.sys_rooturl.'/'.sys_file_modul.'?action=showgallery&pfad='.$gallerien_ordner.$contenidoqry.'">• '.$gallerien_ordner.'</a><br>';
        }
      }
    }
  }
  //Template nach der Wiederholung
  $tpl_ende = str_replace(sys_tpl_gallerie_ph_menu,"<a href='javascript:history.back();'>zurück</a>",$template[2]);
  $tpl_ende = str_replace(sys_tpl_gallerie_ph_gallerien,$input_gallerien,$tpl_ende);
  //Ausgabe des Templates
  echo $tpl_anfang.$tpl_mitte.$tpl_ende;
}

//********************************************************************************************************************************************
//***************************************************   Anzeigen eines Bildes  ***************************************************************
//********************************************************************************************************************************************

function showpic($pfad,$bild)
{
	global $contenidoqry;
	
   //Template einlesen
  $template=explode(sys_tpl_bildvorschau_ph_wiederholung,implode('', file(sys_tpl_bildvorschau_file)));
  //Template vor der Wiederholung
  $tpl_anfang = $template[0];
  if(strlen($pfad)>sys_thumbnails_dateiname_max)
  {
  $pfad_gekuerzt = substr($pfad,0,sys_thumbnails_dateiname_max)."...";
  }else{$pfad_gekuerzt=$pfad;}
  if(strlen($bild)>sys_thumbnails_dateiname_max)
  {
  $bild_gekuerzt = substr($bild,0,sys_thumbnails_dateiname_max)."...";
  }else{$bild_gekuerzt=$bild;}
  $tpl_anfang = str_replace(sys_tpl_bildvorschau_ph_pfad,'<a href="'.sys_rooturl.'/'.sys_file_modul.'?action=start'.$contenidoqry.'">'.sys_pfad_home.'</a> / <a href="'.sys_rooturl.'/'.sys_file_modul.'?action=showgallery&pfad='.$pfad.$contenidoqry.'"> '.$pfad_gekuerzt.'</a> / '.$bild_gekuerzt ,$tpl_anfang);
  //Template Wiederholung
  $tpl_mitte = "";
  if(!file_exists(sys_cache.sys_cache_vorschau.$bild))
  {
    $picture = sys_gallery."/".$pfad."/".$bild;
    if(eregi("jpg",$bild)==FALSE)
    {
      die(sys_fehlermeldung03);
    }
    if((eregi("ä",$bild)==TRUE)||(eregi("ö",$bild)==TRUE)||(eregi("ü",$bild)==TRUE)||(eregi("ß",$bild)==TRUE)||(eregi("&",$bild)==TRUE)||(eregi("%",$bild)==TRUE)||(eregi("§",$bild)==TRUE))
    {
      die(sys_fehlermeldung04);
    }
    $src_img=@ImagecreateFromJpeg($picture);
    ImageJpeg(sys_resize_breite( $src_img,sys_vorschau_breite,sys_vorschau_modus),sys_cache.sys_cache_vorschau.$bild);
    imageDestroy($src_img);
  }
  $input_bild = "<a href='javascript:history.back();'><img src='".sys_cacheurl.sys_cache_vorschau.$bild."' border='0' ></a><br>";
  $tpl_mitte .= str_replace(sys_tpl_bildvorschau_ph_bild, $input_bild, $template[1]);
  $picture = sys_gallery."/".$pfad."/".$bild;
  $src_img=ImagecreateFromJpeg($picture);
  $hoehe = imagesy($src_img);  # original height
  $breite = imagesx($src_img);  # original width
  $hoehe = $hoehe+50;
  if(($hoehe>600)||($breite>800)){
  $scrollbar = "yes";
  }else{
  $scrollbar = "no";
  }
  if(($hoehe>600)||($breite>800)){
  $hoehe = 600;
  $breite = 800;
  }
  $menu_back = "<a href='javascript:history.back();'>zurück</a>&nbsp;|&nbsp;";
  $menu_download = "<a href='".sys_rooturl."/".sys_file_modul."?action=download&pfad=".$pfad."&bild=".$bild.$contenidoqry."'>speichern</a>&nbsp;|&nbsp;";
  $menu_original = '<a href="#" onClick="Gallery=window.open(\''.sys_rooturl.'/'.sys_file_modul.'?action=originalbild&bild='.sys_galleryurl.'/'.$pfad.'/'.$bild.'\',\'gallery_popup\',\'directories=no,location=no,resizable=yes,scrollbars='.$scrollbar.',toolbar=no,status=yes,menubar=no,width='.$breite.',height='.$hoehe.'\')">originalgrösse</a>';
  //Template nach der Wiederholung
  $tpl_ende = str_replace(sys_tpl_bildvorschau_ph_menu,$menu_back.$menu_download.$menu_original,$template[2]);
  $gallerien_root = opendir (sys_gallery);
  $input_gallerien = sys_gallerien_ueberschrift;
  while($gallerien_ordner = readdir($gallerien_root))
  {
    if($gallerien_ordner != "." && $gallerien_ordner != ".." && $gallerien_ordner[0] != '.')
    {
      if(is_dir(sys_gallery."/". $gallerien_ordner))
      {
        if($gallerien_ordner!=$pfad)
        {
          $input_gallerien .= '<a href="'.sys_rooturl.'/'.sys_file_modul.'?action=showgallery&pfad='.$gallerien_ordner.$contenidoqry.'">• '.$gallerien_ordner.'</a><br>';
        }
      }
    }
  }
  $tpl_ende = str_replace(sys_tpl_bildvorschau_ph_gallerien,$input_gallerien,$tpl_ende);
  //Ausgabe des Templates
  echo $tpl_anfang.$tpl_mitte.$tpl_ende;
}

//********************************************************************************************************************************************
//***************************************************  Anzeigen des Bildes in Originalgröße  *************************************************
//********************************************************************************************************************************************

function originalbild($bild)
{
	global $contenidoqry;
	
   ?>
  <title><? echo sys_ori_titel; ?></title>
  <style type="text/css"><!--
  body {
          margin-left: 0px;
          margin-top: 0px;
          margin-right: 0px;
          margin-bottom: 0px;
  }
  body,td,th {
          font-family: Verdana, Arial, Helvetica, sans-serif;
          font-size: 10px;
          color: #666666
  }
  --></style>
  <?
  echo '<a href="#" onClick="Gallery=window.close()"><img src="'.$bild.'" border="0" alt="Original"></a>';
  ?>
  <div align="center"><br><? echo sys_ori_footer; ?></div>
  <?
}

//********************************************************************************************************************************************
//***************************************************  Downloaden eines Bildes  **************************************************************
//********************************************************************************************************************************************

function download($pfad,$bild)
{
	global $contenidoqry;
	
   $file= sys_gallery."/".$pfad."/".$bild;
  if (empty($file) || !file_exists($file))
  {
    echo sys_fehlermeldung02." <a href='".sys_galleryurl."/".$pfad."/".$bild."'>".sys_galleryurl."/".$pfad."/".$bild.$contenidoqry."</a>.";
  }
  else
  {
    $saveasname = basename($file);
    header('Content-Type: application/octet-stream');
    header('Content-Length: '.filesize($file));
    header('Content-Disposition: attachment; filename="'.$saveasname.'"');
    header('Content-Transfer-Encoding: binary');
    readfile($file);
    Echo sys_fehlermeldung02." <a href='".sys_galleryurl."/".$pfad."/".$bild."'>".sys_galleryurl."/".$pfad."/".$bild.$contenidoqry."</a>.";
  }
}
?>
... denn sie wissen nicht was sie tun ...

bladi
Beiträge: 192
Registriert: Sa 27. Dez 2003, 11:21
Kontaktdaten:

mir würde dieses fotomodul aber reichen....

Beitrag von bladi » Di 20. Jun 2006, 15:48

hallo

thx für den quick and dirty code...

habe das mal versucht und es klappt ..
da scheint noch was zu klemmen denn es wird immer nur die hauptseite meines projekts angezeigt... hat jemand eine ahnung was ich da noch drehen muss?

Code: Alles auswählen

//******************************************************************************************************************************************** 
//***************************************************  Anzeigen des Bildes in Originalgröße  ************************************************* 
//******************************************************************************************************************************************** 

function originalbild($bild) 
{ 
   global $contenidoqry; 
    
   ?> 
  <title><? echo sys_ori_titel; ?></title> 
  <style type="text/css"><!-- 
  body { 
          margin-left: 0px; 
          margin-top: 0px; 
          margin-right: 0px; 
          margin-bottom: 0px; 
  } 
  body,td,th { 
          font-family: Verdana, Arial, Helvetica, sans-serif; 
          font-size: 10px; 
          color: #666666 
  } 
  --></style> 
  <? 
  echo '<a href="#" onClick="Gallery=window.close()"><img src="'.$bild.'" border="0" alt="Original"></a>'; 
  ?> 
  <div align="center"><br><? echo sys_ori_footer; ?></div> 
  <? 
} 
Wenn ich das teil noch so umbauen könnte das das originalgrössen popup gleich mit einem klick aus der galerie satrten würde hätte ich ziemlich gewonnen mit diesem modul....

danke für feedback

grüsse
bladi

benzomat
Beiträge: 42
Registriert: So 21. Aug 2005, 17:42
Wohnort: Ossiach / Österreich
Kontaktdaten:

Beitrag von benzomat » Mo 3. Jul 2006, 20:10

hallo,
@ rezeptionist
ne info, falls das mit dem modul noch in arbeit ist bei dir - pixlie version 1.5 ist online.
mit vielen guten neuen funktionen, http://www.pixlie.de/news.html
danke, gruss
Hans

Noob
Beiträge: 55
Registriert: Mo 26. Jun 2006, 23:48
Kontaktdaten:

Beitrag von Noob » Do 14. Dez 2006, 20:43

moin,

ich habe heute mal versucht, die pixlie galerie v1.6 in contenido einzubinden.

habe es auf die gleiche art und weise versucht, wie da maxl es beschrieben hat.

leider funktioniert das nicht.

des weiteren ist mir aufgefallen, dass der gesamte php code von der pixlie galerie in der pixlie.php zusammengefasst ist.

wie muss ich diesen code jetzt trennen?

kann mir vllt jemand weiter helfe?

danke schon mal

Darth-Vader
Beiträge: 661
Registriert: So 25. Jan 2004, 19:06
Wohnort: Stuttgart-Bad Cannstatt
Kontaktdaten:

Beitrag von Darth-Vader » Do 3. Mai 2007, 19:57

@Da Maxl: Danke für deine Umsetzung. Sie hat mich teilweise inspiriert, wie ich es anpacke die Open Source Bildergalerie Qdig in Contenido einzubinden! :)

Ergebnis ist hier zu finden...


so long,
Darth.

Nakoda
Beiträge: 219
Registriert: Fr 2. Jul 2004, 23:50
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Nakoda » So 9. Mär 2008, 11:31

Hallo zusammen,

habe mich mal daran versucht aus diesem ganzen Fachchinesisch hier
schlau zu werden. Leider bin ich dabei auf der Strecke geblieben.
Denn was php angeht so habe ich abdolut keinen Schimmer davon.
Meine Frage ist nun gibt es eine (auch für DAUs geeingnete)
Möglichkeit eine Bildergallerie einzubinden außer die mitgelieferte?
Denn die zeigt ja wohl nur das Verzeichnis an in dem die Bilder liegen
und das wars.
Zwar gibt es ein Modul auf der Contenido Seite aber das ist wohl
dermaßen veraltet das die 4.6.x Version da nicht mehr mit um kann.
Hab keine großen Ansprüche was die Gallerie angeht.
Blättern, vergrößern, usw...
Kann mir vielleicht jemand von Euch helfen :?:
Gruß aus HH

Armin
http://sig.sysprofile.de/quicksys/sysp-102592.png
Contenido 4.8.18

gruhle
Beiträge: 18
Registriert: Di 21. Jun 2005, 19:45
Wohnort: Riedstadt
Kontaktdaten:

Beitrag von gruhle » Mo 10. Mär 2008, 09:38

Hallo Nakoda,
Nakoda hat geschrieben:Hallo zusammen,

habe mich mal daran versucht aus diesem ganzen Fachchinesisch hier
schlau zu werden. Leider bin ich dabei auf der Strecke geblieben.
Denn was php angeht so habe ich abdolut keinen Schimmer davon.
Meine Frage ist nun gibt es eine (auch für DAUs geeingnete)
Möglichkeit eine Bildergallerie einzubinden außer die mitgelieferte?
Denn die zeigt ja wohl nur das Verzeichnis an in dem die Bilder liegen
und das wars.
Zwar gibt es ein Modul auf der Contenido Seite aber das ist wohl
dermaßen veraltet das die 4.6.x Version da nicht mehr mit um kann.
Hab keine großen Ansprüche was die Gallerie angeht.
Blättern, vergrößern, usw...
Kann mir vielleicht jemand von Euch helfen :?:

Mit gründlicher Suche im Forum solltest du eigentlich fündig werden. :wink:

Coppermine lässt sich ja begrenzt einbinden (siehe hier), aber es ist eben eine zusätzliche Anwendung. Ich bin aktuell gerade dran, JAG von _Marc in meine private Seite einzubinden. Schau mal hier.... Lässt sich recht gut einbinden und in PHP musst Du nicht herumfummeln. :)
Viel Erfolg

Reiner

Nakoda
Beiträge: 219
Registriert: Fr 2. Jul 2004, 23:50
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Nakoda » Mo 10. Mär 2008, 11:42

Hallo gruhle,

danke für den Tipp.
Habe bei mir jett das JAG eingebunden.
Klappt soweit prima.
Über eine "schickere" Lösung kann man ja nachdenken wenn
ich mal etwas mehr Ahnung von der Materie habe.
Im Moment ist das doch noch recht viel böhmische Dörfer für
mich. :oops:
Gruß aus HH

Armin
http://sig.sysprofile.de/quicksys/sysp-102592.png
Contenido 4.8.18

Gesperrt