JOOM::GALLERY::FORUM

Archiv => Mambots / Plugins => Thema gestartet von: gabi_ix am 23-02-2009 16:30:22



Titel: Warenkorblink unter Thumbnails und Detailansicht einfügen
Beitrag von: gabi_ix am 23-02-2009 16:30:22
Hallo zusammen,

ich möchte eine Bestellfunktion an die Joomgallery Version 1.5 RC anbinden. Ohne tief in den Code einzugreifen, soll unter den Thumbnails und in der Detailsansicht ein Link integriert werden, der mit einem Warenkorbscript verknüft ist. Warenkorb und den Bestellablauf werden in anderen Komponenten verarbeitet.
Bei Klick auf den Link soll die BildID an den Warenkorb gesendet werden. Ein PHP-Script, dass den Link erzeugt wird separat erstellt. Im Quellcode der Joomgallery würde lediglich an den entsprechenden Stellen eine Funktion aufgerufen, die den Link unter jedem Bild generiert und anzeigt.

Auf welche Scripte muss ich zugreifen um diese Link-Funktion zu hinterlegen?

Habe mich schon ein wenig mit dem Quellcode befasst und einige Scripte entdeckt. Weis aber nicht, ob das die richtigen sind bzw. ob ich welche übersehen habe:
Thumbnailausgabe: classes/interface.class.php Zeile 229
Detailbild: includes/html/viewdetails.html.php Zeile 255
Weitere Ansichten: includes/html/joomviewspecial.html.php Zeile 58
                   includes/html/joomviewfavorites.html.php Zeile 66

Freue mich über jeden Hinweis.

Gruß Gabi



Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
Beitrag von: siocone am 03-03-2009 16:17:39
wenn du das hinbekommen hast wäre es super wenn du das einstellen könntest... habe das hier im forum schon mehrfach gesehen. Würde bestimmt vielen intressieren.


Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
Beitrag von: gabi_ix am 03-03-2009 17:05:36
Hallo siocone,

hatte zunächst versucht einen eigenes Warenkorbmodul für die Joomgallery zu erstellen. Es gibt aber eine viel einfacherer Lösung:  Seht dazu die Antwort von Chraneco weiter unten.
Inzwischen hat sich dadurch ein recht einfacher Lösungsweg ergeben.

Gruß Gabi







Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
Beitrag von: Chraneco am 03-03-2009 18:23:20
Hi,

eine Möglichkeit wäre, einfach die Favoriten-Funktion der JoomGallery zu verwenden.
Je nach Einstellung speichert diese schon die Bilder, die ein User auf der Seite "gesammelt" hat in einer Session oder in der Datenbank. Ihr müsstet dann nur die Icons der Favoriten-Funktion mit euren gewünschten Icons ersetzen und die Texte in der Sprachdatei dazu anpassen.

Falls ihr die Favoriten (also Zip-Download-Funktion in der Galerie) in der Session speichert, bekommt ihr mit

$piclist = $mainframe->getUserState('joom.favourites.pictures');

die Bild-IDs, die der im Moment aktive User ausgewählt hat und die ihr dann in eurer Bestellkomponente einfach weiterverarbeiten könnt. Dann müsst ihr die "Bildsammelfunktion" nicht selbst schreiben.

Gruß
Chraneco


Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
Beitrag von: gabi_ix am 05-03-2009 13:42:01
Hallo Chraneco,

vielen Dank für Deine Antwort. Die Nutzung der Favoriten als Zwischenspeicher scheint eine gute Idee. Ich werde das auf jeden Fall mal durchtesten.

Gruß Gabi


Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
Beitrag von: gabi_ix am 12-03-2009 13:12:30
Hallo Chraneco,

eine Möglichkeit wäre, einfach die Favoriten-Funktion der JoomGallery zu verwenden.
Je nach Einstellung speichert diese schon die Bilder, die ein User auf der Seite "gesammelt" hat in einer Session oder in der Datenbank. Ihr müsstet dann nur die Icons der Favoriten-Funktion mit euren gewünschten Icons ersetzen und die Texte in der Sprachdatei dazu anpassen.

Falls ihr die Favoriten (also Zip-Download-Funktion in der Galerie) in der Session speichert, bekommt ihr mit

$piclist = $mainframe->getUserState('joom.favourites.pictures');

die Bild-IDs, die der im Moment aktive User ausgewählt hat und die ihr dann in eurer Bestellkomponente einfach weiterverarbeiten könnt. Dann müsst ihr die "Bildsammelfunktion" nicht selbst schreiben.

Ist der Zugriff auf die Favoritenfunktion auch für nicht registrierte User möglich? Das ist ein wichtiges Kriterium bei der Bestellung. Diese soll ohne Registrierungszwang möglich sein.
Gruß Gabi


Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
Beitrag von: Chraneco am 12-03-2009 13:59:19
Hi,

jep, das ist möglich. Stelle dazu bitte im Tab 'Favoriten' des Konfigurationsmanagers einfach die Optionen 'Favoriten verwenden' und 'Öffentlicher Zip-Download' auf 'Ja'.

Damit auch die ausgewählten Bilder der registrierten Benutzer in der Session gespeichert werden, musst du 'Nur Zip-Download anbieten' ebenfalls auf 'Ja' stellen.

Dann benötigst du in deiner Bestellkomponente nur noch die in meinem letzten Beitrag gepostete Zeile, um die IDs aller ausgewählten Bilder des gerade aktiven Benutzers zu erhalten.

Gruß
Chraneco


Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
Beitrag von: gabi_ix am 12-03-2009 16:20:08
Hallo Chraneco,

vielen Dank für deine Antwort. Das klappt schon mal prima. Werde den Favoritenlink beibehalten und nur die Hinweise aus der Sprachdatei in languages/de-DE.com_joomgallery.ini in Warenkorbhiweise umformulieren.

Dann muss nur noch der Link "Zip-Archiv downloaden" gegen einen Link zu dem Bestellformular(Komponente ChronoForms) ersetzt werden. Wo, in den Scripten wird dieser Link ausgegeben?

Gruß Gabi 


Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
Beitrag von: Chraneco am 12-03-2009 16:31:41
Hi gabi_ix,

diesen Link findest du in der Datei 'components/com_joomgallery/joomgallery.html.php' am Ende der Funktion 'Joom_ShowFavouritesLink':

Code
<a href="<?php echo JRoute::_('index.php?option=com_joomgallery&func=createzip'._JOOM_ITEMID); ?>"

Gruß
Chraneco


Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
Beitrag von: gabi_ix am 12-03-2009 16:46:27
Hallo Chraneco,

super danke :-). Werde das in den nächsten Tagen ausprobieren und meine Ergebnisse dann hier einstellen.

Falls von Euch Lesern jemand Erfahrungen mit der Komponente ChronoForms hat und weis, ob damit Bestellformular, wo die BildID's aus JoomgallerySession einglesen werden können, machbar ist, würde ich mich freuen.

Gruß Gabi


Titel: Lösungsansatz: Joomgallery-Warenkorbfunktion und Bestellformular für Bilder
Beitrag von: gabi_ix am 25-03-2009 12:00:54
Hallo zusammen,

ich will Euch den Lösungsansatz für die Verknüpfung von Joomgallery mit einem Bestellformular (Komponente Chronoforms) mitteilen:

Hintergrund ist, Bilder auswählen zu können und in einem Warenkorb zwischenzuspeichern. Die gespeicherten Bilder sollten dann an ein Bestellformular übermittelt werden, wo der Käufer seine Daten eingibt und die Bildbestellung an den Fotografen sendet. Das ganze soll ohne Nutzerregistrierung möglich sein.

1. Anpassung an der Joomgallery:
An der Joomgallery (verwendete Version JOOMGALLERY_1_5_RC2_BUILD_20090222.zip) selber sind nur wenige Anpassungen  notwendig, da die Favoriten-Funktion mit dem ZipDownload zum Warenkorb umfunktioniert werden kann.
Damit diese auch für nicht registrierte Nutzer verfügbar sind, müssen die Favoriten im Konfigurationsmanager der Joomgallery wie folgt gesetzt werden:

'Favoriten verwenden', 'Öffentlicher Zip-Download' und 'Nur Zip-Download anbieten' auf 'Ja'  sowie 'Wer darf die Favoriten verwenden?' auf registrierte und spezielle

Dann sollten noch die Links ZIP-Download auskommentiert und die Hinweise und Linktexte zum Zipdownload in den JoomGallery-Sprachdateien in folgenden Dateien angepasst werden:

  • Links Zip Download auskommentieren in
    • components/com_joomgallery/joomgallery.html.php
      Zeilen 499 bis 505 am Ende der Funktion Joom_ShowFavouritesLink() diesen Code
Code:
<div class="jg_my_favourites">
    <a href="<?php echo JRoute::_('index.php?option=com_joomgallery&func=createzip'._JOOM_ITEMID); ?>"
        onMouseOver="return overlib('<?php echo JText::_('JGS_ZIP_CREATE_TOOLTIP_TEXT',true); ?>', CAPTION, '<?php echo JText::_('JGS_ZIP_DOWNLOAD',true); ?>', BELOW, RIGHT);" onmouseout="return nd();"><?php echo JText::_('JGS_ZIP_DOWNLOAD'); ?>
      <img src="<?php echo _JOOM_LIVE_SITE.'components/com_joomgallery/assets/images/package_go.png' ;?>" alt="<?php echo JText::_('JGS_ZIP_DOWNLOAD'); ?>" class="pngfile jg_icon" />
    </a>
  </div>
[/li]
[li]components/com_joomgallery/includes/html/joom.favourites.html.php
Zeilen 154 bis 157 innerhalb der Funktion Joom_ShowFavourites_HTML1 und 304 bis 307 innerhalb der Funktion Joom_ShowFavourites_HTML2
Code:
<div class="jg_up_esub1">
          <a href="<?php echo JRoute::_('index.php?option=com_joomgallery&func=download&catid='.$row->catid.'&id='.$row->id._JOOM_ITEMID); ?>"
            onMouseOver="return overlib('<?php echo JText::_('JGS_DOWNLOAD_TOOLTIP_TEXT',true); ?>', CAPTION, '<?php echo JText::_('JGS_DOWNLOAD_TOOLTIP_CAPTION',true); ?>', BELOW, RIGHT);" onmouseout="return nd();">
          <img src="<?php echo _JOOM_LIVE_SITE.'components/com_joomgallery/assets/images/download.png' ;?>" border="0" width="16" height="16" alt="<?php echo JText::_('JGS_DOWNLOAD_TOOLTIP_CAPTION'); ?>" class="pngfile jg_icon" /></a>
        </div>
      [/li]
    [/li]
    [li]Achtung: bei der Anpassung der Sprachdateien Variablennamen nicht verändern!!
    language/de-DE/de-DE.com_joomgallery.ini bzw. language/en-GB/en-GB.com_joomgallery.ini die Tooltipps und Linktexte zu Favoriten durch Warenkorbhinweise ersetzen
    Angepasste Sprachvariablen:
    • Zeilen 65 - 74
      JGS_FAV_HEADING=Warenkorb
      JGS_ZIP_HEADING=Bilder im Warenkorb
      JGS_FAV_SWITCH_LAYOUT=Ansicht ändern
      JGS_FAV_REMOVE_ALL=Liste leeren
      JGS_ZIP_CREATE_TOOLTIP_TEXT=
      JGS_FAV_REMOVE_TOOLTIP_CAPTION=Bild aus dem Warenkorb entfernen
      JGS_ZIP_REMOVE_TOOLTIP_CAPTION=Bild aus der Warenkorbliste entfernen
      JGS_FAV_REMOVE_TOOLTIP_TEXT=Hier klicken, um das Bild wieder aus dem Warenkorb zu entfernen.
      JGS_ZIP_REMOVE_TOOLTIP_TEXT=Hier klicken, um das Bild wieder aus der Warenkorbliste zu entfernen.
      JGS_FAV_REMOVE_TOOLTIP_CAPTION=Bild aus dem Warenkorb entfernen
      JGS_ZIP_REMOVE_TOOLTIP_CAPTION=Bild aus der Warenkorbliste entfernen
      JGS_FAV_REMOVE_TOOLTIP_TEXT=Hier klicken, um das Bild wieder aus dem Warenkorb zu entfernen
      JGS_ZIP_REMOVE_TOOLTIP_TEXT=Hier klicken, um das Bild wieder aus der Warenkorbliste zu entfernen
    • Zeilen 219 - 222
      JGS_FAV_ADD_PICTURE_TOOLTIP_CAPTION=Bild in den Warenkorb legen
      JGS_ZIP_ADD_PICTURE_TOOLTIP_CAPTION=Bild der Warenkorb-Liste hinzufügen
      JGS_FAV_ADD_PICTURE_TOOLTIP_TEXT=Hier Bild dem Warenkorb hinzufügen, welcher  mit einem Klick auf <i>Warenkorb</i> aufgerufen werden kann.
      JGS_ZIP_ADD_PICTURE_TOOLTIP_TEXT=Hier Bild dem Warenkorb hinzufügen, um die Lizenzen dann mit anderen ausgewählten Bildern bestellen zu können.
    • Zeilen 368 - 372
      JGS_FAV_MY=Warenkorb
      JGS_ZIP_MY=Warenkorb
      JGS_FAV_DOWNLOAD_TOOLTIP_TEXT=Bilder im Warenkorb anzeigen.
      JGS_ZIP_DOWNLOAD_ALLOWED_TOOLTIP_TEXT=Mit Klick auf den Bestellbutton können die Lizenzen für die gespeicherten Bilder geordert werden.
      JGS_ZIP_DOWNLOAD_TOOLTIP_TEXT=Mit Hilfe des Korb-Symbols können Bilder in dieser Galerie im Warenkorb gesammelt werden.

    [/li]
    [/list]

    Über das Warenkorbsymbol unter den Bildern der Detailansicht können die Nutzer die BildID's in der Joomla-Session ablegen, was auch ohne Login funktioniert.
    Zugriff auf die  gespeicherten BildID's bekommt man mit dieser Funktion: $piclist = $mainframe->getUserState('joom.favourites.pictures');

    Das waren im wesentlichen die Anpassungen an der Joomgallery (falls ich was übersehen habe - Tipps sind willkommen :-)).


    2. Übertragung der gespeicherte BildID's in ein Formular der Komponente Chronoforms

    Zur Übermittlung der gespeicherte Bilddaten an den Fotografen nutze ich die Komponente Chronoforms (Version: Chronoforms_3.1_RC3, Download unter www.chronoengine.com ). Hiermit lassen sich E-Mail-Formulare für Joomla 1.5 flexibel gestalten (auch mit PHP-Code) und die Daten in der Datenbank abspeichern.
    Nach dem Installieren von Chronoforms kann nach Anleitung ein Formular angelegt werden, Tutorials dazu gibt es unter http://www.chronoengine.com/downloads/folder/43-ChronoForms%20Tutorials.html und http://openbook.galileocomputing.de/joomla15/joomla_18_formulare_neu_002.htm:

    Beispielcode, mit dem die gespeicherten Bilddaten der Joomgallery-Favoriten anzeigt und in ein Formular geschrieben werden. Der Code muss ggf. noch angepasst werden - betrachtet ihn als Beta-Version. Mit dem Formular aus dem nachfolgenden Beispielcode werden 20 gespeicherte Bilder ausgelesen (man kann die Schleife auch hochsetzen auf mehr Bilder- meist reichen aber 20)und deren Daten in dynamische Formularfelder geschrieben. Es kann zu jedem Bild noch das Format und das Nutzungsrecht ausgewählt werden. Die Daten werden dann über Chronforms an die Dort hinterlegten Empfänger gesendet.

    Code:
    <?php
    $piclist = $mainframe->getUserState('joom.favourites.pictures');
    $piclist_array = explode(',',$piclist);
    $database = & JFactory::getDBO();
    if(sizeof($piclist_array)>0)
    {
    $imgsize_1="<= 320 cm&sup2";
    $imgsize_2="> 320 cm&sup2";
    ?>
    <table width="100%"  border="0" cellspacing="0" cellpadding="0" class="table_form">
      <tr>
    <th>Bild<br>Image</th>
    <th>ID</th>
    <th>Titel<br>Title</th>
    <th>Druckgröße<br>Size to print</th>
    <th>Ständiges Nutzungsrecht<br>Positive covenant</th>
      </tr>
      <?php
    for ($x = 0; $x < sizeof($piclist_array); ++$x)
    {
    $sql = "SELECT  * FROM #__joomgallery
    WHERE id='".current($piclist_array)."'";
    $database->setQuery( $sql );
    $output_img=$database->loadObject();
    if($output_img){
    $sql_cat = "SELECT  * FROM #__joomgallery_catg 
    WHERE cid='".$output_img->catid."'";
    $database->setQuery( $sql_cat );
    $output_cat=$database->loadObject();
    if($output_cat){
    ?>
      <tr>
    <td><a href="<?php echo JRoute::_('index.php?option=com_joomgallery&amp;func=detail&amp;id='.$output_img->id._JOOM_ITEMID); ?>"><img src="<?php echo 'components/com_joomgallery/img_thumbnails/'.$output_cat->catpath.'/'.$output_img->imgthumbname;?>" alt="<?php echo $output_img->imgtitle; ?>" border="0"></a></td>
    <td><?php echo $output_img->imgauthor; ?>
    <input id="hidden_<?php echo $x;?>_1" name="BildID_<?php echo $x;?>" type="hidden" readonly="readonly"  value="<?php echo $output_img->imgauthor; ?>"></td>
    <td><?php echo $output_img->imgtitle; ?>
    <input id="hidden_<?php echo $x;?>_2" name="Bildtitel_<?php echo $x;?>" type="hidden" readonly="readonly"  value="<?php echo $output_img->imgtitle; ?>"></td>
    <td>
    <select name="Groesse_<?php echo $x;?>">
    <option value="<?php echo $imgsize_1;?>"><?php echo $imgsize_1;?></option>
    <option value="<?php echo $imgsize_2;?>"><?php echo $imgsize_2;?></option>
    </select>
    </td>
    <td>
    <select name="Nutzungsrecht_<?php echo $x;?>">
    <option value="nein">nein/ no</option>
    <option value="ja">ja / yes</option>
    </select>
    </td>
      </tr>
      <? }
    }
      next($piclist_array);
    }
    ?>
    <tr>
    <td colspan="5"></td>
    <?php
    $no_of_fields="20";
    if(sizeof($piclist_array)<$no_of_fields)
    {
    for ($i = sizeof($piclist_array); $i <= $no_of_fields; ++$i)
    {
    ?>     
    <input id="hidden_<?php echo $i;?>_1" name="BildID_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
    <input id="hidden_<?php echo $i;?>_2" name="Bildtitel_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
    <input id="hidden_<?php echo $i;?>_3" name="Groesse_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
    <input id="hidden_<?php echo $i;?>_4" name="Nutzungsrecht_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
    <?php
    }
    }
    ?>
    </td>
    </tr>
    <tr><th colspan="5">Ihre Daten / Your data</th></tr>
    <tr>
    <td colspan="3"><label class="cf_label">Vor- und Zuname / Name</label></td>
    <td colspan="2"><input  id="text_0" name="vor-und-zuname" type="text" /></td>
    </tr>
    <tr>
    <td colspan="3"><label class="cf_label">Strasse + Hausnr. / street</label></td>
    <td colspan="2"><input  id="text_1" name="strasse" type="text" /></td>
    </tr>
    <tr>
    <td colspan="3"><label class="cf_label">PLZ / postel code</label></td>
    <td colspan="2"><input  id="text_3" name="plz" type="text" /></td>
      </tr>
    <tr>
    <td colspan="3"><label class="cf_label">Ort / town</label></td>
    <td colspan="2"><input  id="text_4" name="ort" type="text" /></td>
      </tr>
    <tr>
    <td colspan="3"><label class="cf_label">E-Mail / email</label></td>
    <td colspan="2"><input class="cf_inputbox required validate-email"  id="text_2" name="email" type="text" /></td>
    </tr>
    <tr>
    <td colspan="3"><label class="cf_label">Bemerkungen / message</label></td>
    <td colspan="2"><textarea class="cf_inputbox" rows="3" id="text_5" cols="30" name="bemerkungen"></textarea></td>
    </tr>
    <tr>
    <td colspan="3">
    <label class="cf_label">Spamschutz / anti spam<br>Bitte tragen Sie den angezeigten Code in das Feld ein!<br>Insert this code, please!</label></td>
    <td colspan="2"><span>{imageverification}</span>

      </td>
    </tr>
    <tr>
    <td colspan="5"><div class="formbutton" align="center"><input value="Bestellung senden / send" type="submit" /></div></td>
    </tr>
    </table>
    <?php }
    else
    {
    echo " Bitte wählen Sie zunächst Fotos aus.<br>Please choose any Photos.";
    } ?>


    Hinweise: Es empfielt sich die Daten neben dem E-Mail-Versand  von Chronoforms in der Datenbank speichern zu lassen. So geht nichts verloren. Auch die Möglichkeiten der Eingabeüberprüfung und des Spamschutzes nutzen. Wer vermeiden möchte, dass sein Formular Fehler enthält, sollte das Formular mit dem Chronoforms Form Wizard anlegen. Der individuelle PHP-Code muss dann nachträglich im "Forms Management" Reiter "Form Code" ergänzt werden. Aber Vorsicht, wenn Ihr das Formular erneut mit dem Form-Wizard bearbeitet, wird der PHP-Code beim Specihern wieder überschrieben und Ihr habt nur das blanke Formular. 
    Ist das Formular richtig konfiguriert, muss nun nur noch ein Bestelllink in der Seitennavigation platziert werden, der auf ein Formular der Componente Chronoforms und das entsprechende Formular weißt.

    Durch das Kombinieren von Joomgallery und Chronoforms kann auf recht einfache Weise die Bestellung von Fotos ermöglicht werden. Auch wenn die Funktionalitäten bezüglich der Bestellverwaltung nicht so komfortabel wie in einem Onlienshop sind und das Versenden von Rechnungen und der Fotos vom Fotografen in Handarbeit abwickelt werden muss, ist es für kleine Fotoportale  sicher eine Überlegung wert.

    Gruß Gabi

    PS. Nochmals vielen Dank an chraneco. Du hast mich mit Deinen Hinweisen auf einen einfachen Lösungsweg gebracht.





    Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
    Beitrag von: bogi24 am 03-12-2009 11:45:04
    Hallo Zusammen,

    ich bastel mir auch gerade eine Fotoseite mit Shopfunktion.

    Die Änderungen oben hab ich auch angewandt, nur möchte ich das Chronformular etwas geändert.

    Hier meine Bastelei:
    Code:
    <?php
    $piclist = $mainframe->getUserState('joom.favourites.pictures');
    $piclist_array = explode(',',$piclist);
    $database = & JFactory::getDBO();
    if(sizeof($piclist_array)>0)
    {
    $imgsize_1="<= 320 cm&sup2";
    $imgsize_2="> 320 cm&sup2";
    ?>
    <table width="100%"  border="0" cellspacing="0" cellpadding="0" class="table_form">
      <tr>
    <th>Bild<br></th>
    <th>ID</th>
    <th>Titel<br></th>
    <th>Preis<br></th>
      </tr>
      <?php
    for ($x = 0; $x < sizeof($piclist_array); ++$x)
    {
    $sql = "SELECT  * FROM #__joomgallery
    WHERE id='".current($piclist_array)."'";
    $database->setQuery( $sql );
    $output_img=$database->loadObject();
    if($output_img){
    $sql_cat = "SELECT  * FROM #__joomgallery_catg
    WHERE cid='".$output_img->catid."'";
    $database->setQuery( $sql_cat );
    $output_cat=$database->loadObject();
    if($output_cat){
    ?>
      <tr>
    <td><a href="<?php echo JRoute::_('index.php?option=com_joomgallery&amp;func=detail&amp;id='.$output_img->id._JOOM_ITEMID); ?>"><img src="<?php echo 'components/com_joomgallery/img_thumbnails/'.$output_cat->catpath.'/'.$output_img->imgthumbname;?>" alt="<?php echo $output_img->imgtitle; ?>" border="0"></a></td>
    <td><?php echo $output_img->imgauthor; ?>
    <input id="hidden_<?php echo $x;?>_1" name="BildID_<?php echo $x;?>" type="hidden" readonly="readonly"  value="<?php echo $output_img->imgauthor; ?>"></td>
    <td><?php echo $output_img->imgtitle; ?>
    <input id="hidden_<?php echo $x;?>_2" name="Bildtitel_<?php echo $x;?>" type="hidden" readonly="readonly"  value="<?php echo $output_img->imgtitle; ?>"></td>
    <td>
    <select name="Preis<?php echo $x;?>">
    <option value="1">1 Euro bei Download für Einzellizenz</option>
    <option value="2">2 Euro bei Abzugsdruck 13 mal 18</option>
    </select>
    </td>
      </tr>
      <? }
    }
      next($piclist_array);
    }
    ?>
    <tr>
    <td colspan="5"></td>
    <?php
    $no_of_fields="20";
    if(sizeof($piclist_array)<$no_of_fields)
    {
    for ($i = sizeof($piclist_array); $i <= $no_of_fields; ++$i)
    {
    ?>
    <input id="hidden_<?php echo $i;?>_1" name="BildID_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
    <input id="hidden_<?php echo $i;?>_2" name="Bildtitel_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
    <input id="hidden_<?php echo $i;?>_4" name="Preis_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
    <?php
    }
    }
    ?>
    </td>
    </tr>
    <tr>
    <td colspan="3"><label class="cf_label">Versandkosten (Nur bei Abzugsbestellung)</label></td>
    <td colspan="2"><label class="cf_label" style="width: 150px;"></label>
        <input class="cf_inputbox required" maxlength="150" size="30" title="Bitte geben Sie ihren Vornamen an" id="text_1" name="vorname" type="text" /></td>
    </tr>
    <tr>
    <td colspan="3"><label class="cf_label">Gesamtpreis im Warenkorb</label></td>
    <td colspan="2"><label class="cf_label" style="width: 150px;"></label>
        <input class="cf_inputbox required" maxlength="150" size="30" title="Bitte geben Sie ihren Vornamen an" id="text_1" name="vorname" type="text" /></td>
    </tr>
    <tr>
    <td colspan="3"><label class="cf_label">Bezahlung per</label></td>
    <td colspan="2"><input value="Vorkasse" title="" class="radio" id="check00" name="check0[]" type="checkbox" />
    <label for="check00" class="check_label">Vorkasse</label>
          <br />
        <input value="Rechnung" title="" class="radio" id="check01" name="check0[]" type="checkbox" />
          <label for="check01" class="check_label">Rechnung</label>
          <br />
    <input value="Paypal" title="" class="radio" id="check01" name="check0[]" type="checkbox" />
          <label for="check01" class="check_label">Paypal</label>
          <br /></td>
    </tr>
    <tr><th colspan="5"><b>Ihre Daten</b></th></tr>
    <tr>
    <td colspan="3"><label class="cf_label">Vorname</label></td>
    <td colspan="2"><label class="cf_label" style="width: 150px;"></label>
        <input class="cf_inputbox required" maxlength="150" size="30" title="Bitte geben Sie ihren Vornamen an" id="text_1" name="vorname" type="text" /></td>
    </tr>
    <td colspan="3"><label class="cf_label">Nachname</label></td>
    <td colspan="2"><label class="cf_label" style="width: 150px;"></label>
        <input class="cf_inputbox required" maxlength="150" size="30" title="Bitte geben Sie ihren Nachnamen an" id="text_1" name="nachname" type="text" /></td>
    </tr>
    <tr>
    <td colspan="3"><label class="cf_label">Strasse + Hausnr.</label></td>
    <td colspan="2"><input  id="text_1" name="strasse" type="text" /></td>
    </tr>
    <tr>
    <td colspan="3"><label class="cf_label">PLZ</label></td>
    <td colspan="2"><input  id="text_3" name="plz" type="text" /></td>
      </tr>
    <tr>
    <td colspan="3"><label class="cf_label">Ort</label></td>
    <td colspan="2"><input  id="text_4" name="ort" type="text" /></td>
      </tr>
    <tr>
    <td colspan="3"><label class="cf_label">E-Mail</label></td>
    <td colspan="2"><label class="cf_label" style="width: 150px;"></label>
        <input class="cf_inputbox required validate-email" maxlength="150" size="30" title="Bitte geben Sie ihre Emailadresse an" id="text_2" name="email" type="text" />
    </td>
    </tr>
    <tr>
    <td colspan="3"><label class="cf_label">Bemerkungen</label></td>
    <td colspan="2"><textarea class="cf_inputbox" rows="3" id="text_5" cols="30" name="bemerkungen"></textarea></td>
    </tr>
    <tr>
    <td colspan="3">
    <label class="cf_label">Spamschutz<br>Bitte tragen Sie den angezeigten Code in das Feld ein!<br>Insert this code, please!</label></td>
    <td colspan="2"><span>{imageverification}</span>

      </td>
    </tr>
    <tr>
    <td colspan="5"><div class="formbutton" align="center"><input value="Bestellung senden" type="submit" /></div></td>
    </tr>
    </table>
    <?php }
    else
    {
    echo " Bitte wählen Sie zunächst Fotos aus.<br>Please choose any Photos.";
    } ?>

    Wie mach ich die Chronoformsänderungen jetzt, wenn in der Zeile Versandkosten nur der Betrag 3,90 erscheinen soll, wenn in der oberen Selectauswahl bei einem der 20 Bilder die Auswahl "2 Euro bei Abzugsdruck 13 mal 18" gewählt wurde?

    Wie kann ich den Warenkorbgesamtpreis berechnen?

    Und wie kann ich bei der Auswahl "Paypal" nach dem "Bestellung senden" nach Paypal zu gelangen. Ansonsten ganz normaler Emailversand?

    Vielen vielen Dank für Eure Hilfe!


    Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
    Beitrag von: gabi_ix am 03-12-2009 15:38:24
    Die Berechnung des Warenkorbes mache ich über JavaScript.

    Hier mal der Code aus meinem Formular oben:

    Code:
    <h1>Bilder bestellen / Order Images</h1>

    <?php
    /* ############ Preise und Aufschläge für Fotos hier eintragen ########################## */
    $photo_use_addition=50; //in %
    $photo_price=50; // in Euro
    $photo_price_large=90; // in Euro
    $photo_price_addition=($photo_price*$photo_use_addition/100)+$photo_price; // in Euro
    $photo_price_large_addition=($photo_price_large*$photo_use_addition/100)+$photo_price_large; //in Euro
    /* ############ Ende Preise und Aufschläge für Fotos hier eintragen ##################### */
    /* ############ Fotogröße ########################## */
    $imgsize_1="<= DIN A5";
    $imgsize_2="> DIN A5"; 
    /* ############ Ende Fotogröße ##################### */
    /* ############ Nutzungsrecht ###################### */
    $covenant_yes="ja";
    $covenant_no="nein";
    /* ############ Anzahl der Bilder die insgesamt bestellt werden können #########*/
    $no_of_fields="20";
    /* ############ Ende Anzahl der Bilder die insgesamt bestellt werden können ###*/

    $piclist = $mainframe->getUserState('joom.favourites.pictures');
    $piclist_array = explode(',',$piclist);
    $database = & JFactory::getDBO();
    if(sizeof($piclist_array)>0)
    {

    echo("<script type=\"text/javascript\">");
    //Funktion Preis
    echo ("var a = document.ChronoContact_Bildbestellung;");
    for ($a = 0; $a < sizeof($piclist_array); ++$a)
    {
    echo("function rechne_preis_".$a."() {");
    echo("var feld_groesse_".$a." = a.Groesse_".$a.".options[a.Groesse_".$a.".selectedIndex].value;");
    echo("var feld_nutzung_".$a." = a.Nutzungsrecht_".$a.".options[a.Nutzungsrecht_".$a.".selectedIndex].value;");
    echo("if (feld_groesse_".$a." ==\"".$imgsize_1."\" && feld_nutzung_".$a." ==\"".$Repeated Use_no."\"){a.Preis_".$a.".value=".$photo_price.";}");
    echo("if (feld_groesse_".$a." ==\"".$imgsize_1."\" && feld_nutzung_".$a." ==\"".$Repeated Use_yes."\"){a.Preis_".$a.".value=".$Photo_price_addition.";}");
    echo("if (feld_groesse_".$a." ==\"".$imgsize_2."\" && feld_nutzung_".$a." ==\"".$covenant_no."\"){a.Preis_".$a.".value=".$photo_price_large.";}");
    echo("if (feld_groesse_".$a." ==\"".$imgsize_2."\" && feld_nutzung_".$a." ==\"".$covenant_yes."\"){a.Preis_".$a.".value=".$photo_price_large_addition.";}");
    echo("}");
    }
    // Addition der Preisfelder mit JavaScript
    echo("function preissumme () {");
    echo("var summe = 0");
    for ($b = 0; $b < sizeof($piclist_array); ++$b)
    {
    echo(" + Number(a.Preis_".$b.".value)");
    }
    echo("; a.Gesamtsumme.value=summe;");
    echo("}");

    echo("</script>");

    ?>
    <noscript>
    Ihr Browser unterstützt kein JavaScript, daher kann der Preis für Ihre Bestellung nicht berechnet werden.<br>
    No JavaScript. Without JavaScript don't calculate the prices.
    </noscript>
    <p>Pro Bestellung können bis zu <? echo($no_of_fields);?> Fotos bestellt werden. Möchten Sie mehr als 20 Fotos bestellen, bitte kontaktieren Sie uns.<br>You can order till up to <? echo($no_of_fields);?> Images. If you would like to order more than  <? echo($no_of_fields);?>, please contact us.</p>
    <table width="100%"  border="0" cellspacing="0" cellpadding="0" class="table_form">
          <tr>
            <th>Bild<br>
              Image</th>
            <th>ID</th>
            <th>Titel<br>
              Title</th>
            <th>Druckgröße<br>
              Size to Print</th>
            <th>Ständiges Nutzungsrecht<br>
              Right to Repeated Use</th>
            <th>Preis (&euro;, inkl. MwSt)<br>
              price(Euros VAT included)
             </th>
    <th>Löschen<br>delete</th>
          </tr>
          <?php
    for ($x = 0; $x < sizeof($piclist_array); ++$x)
    {
    $sql = "SELECT  * FROM #__joomgallery
    WHERE id='".current($piclist_array)."'";
    $database->setQuery( $sql );
    $output_img=$database->loadObject();
    if($output_img){
    $sql_cat = "SELECT  * FROM #__joomgallery_catg 
    WHERE cid='".$output_img->catid."'";
    $database->setQuery( $sql_cat );
    $output_cat=$database->loadObject();
    if($output_cat){
    ?>
          <tr>
            <td><div class="mod_ji_img"><a href="<?php echo JRoute::_('index.php?option=com_joomgallery&amp;func=detail&amp;id='.$output_img->id._JOOM_ITEMID); ?>"><img src="<?php echo 'components/com_joomgallery/img_thumbnails/'.$output_cat->catpath.'/'.$output_img->imgthumbname;?>" alt="<?php echo $output_img->imgtitle; ?>" border="0"></a></div></td>
            <td><?php echo $output_img->imgauthor; ?>
                <input id="hidden_<?php echo $x;?>_1" name="BildID_<?php echo $x;?>" type="hidden" readonly="readonly"  value="<?php echo $output_img->imgauthor; ?>"></td>
            <td><?php echo $output_img->imgtitle; ?>
                <input id="hidden_<?php echo $x;?>_2" name="Bildtitel_<?php echo $x;?>" type="hidden" readonly="readonly"  value="<?php echo $output_img->imgtitle; ?>"></td>
            <td><select name="Groesse_<?php echo $x;?>" onchange="rechne_preis_<?php echo $x;?>(); preissumme ()">
                <option value="<?php echo $imgsize_1;?>"><?php echo $imgsize_1;?></option>
                <option value="<?php echo $imgsize_2;?>"><?php echo $imgsize_2;?></option>
              </select>
            </td>
            <td><select name="Nutzungsrecht_<?php echo $x;?>" onchange="rechne_preis_<?php echo $x;?>(); preissumme ()">
                <option value="<? echo($covenant_no);?>">nein / no</option>
                <option value="<? echo($covenant_yes);?>">ja / yes</option>
              </select>
            </td>
            <td><input name="Preis_<?php echo $x;?>" type="text" readonly="readonly" class="show_photo_price" value="<?php echo $photo_price;?>"></td>
    <td>
    <a href="<?php echo JRoute::_('index.php?option=com_joomgallery&func=removepicture&id='.$output_img->id); ?>">
                    <img src="components/com_joomgallery/assets/images/basket_remove.png" alt="Bild l&ouml;schen / delete image"/>
                  </a>
    </td>
          </tr>
          <? }
    }
      next($piclist_array);
    }
    ?>
    <tr>
            <td colspan="5">Summe / sum</td><td><input name="Gesamtsumme" type="text" readonly="readonly" class="show_photo_price"  value="<? echo($photo_price*sizeof($piclist_array));?>"></td>
    <td>&nbsp;</td>
    </tr>
          <tr>
            <td colspan="7"><?php
    if(sizeof($piclist_array)<$no_of_fields)
    {
    for ($i = sizeof($piclist_array); $i <= $no_of_fields; ++$i)
    {
    ?>
                <input id="hidden_<?php echo $i;?>_1" name="BildID_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
                <input id="hidden_<?php echo $i;?>_2" name="Bildtitel_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
                <input id="hidden_<?php echo $i;?>_3" name="Groesse_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
                <input id="hidden_<?php echo $i;?>_4" name="Nutzungsrecht_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
    <input id="hidden_<?php echo $i;?>_5" name="Preis_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
                <?php
    }
    }
    ?>
            </td>
          </tr>
          <tr>
            <th colspan="7">Ihre Daten / Your data</th>
          </tr>
          <tr>
            <td colspan="3"><label class="cf_label">Vor- und Zuname / First Name and Surname</label></td>
            <td colspan="4"><input  id="text_0" name="vor-und-zuname" type="text" /></td>
          </tr>
          <tr>
            <td colspan="3"><label class="cf_label">Strasse + Hausnr. / Street Address</label></td>
            <td colspan="4"><input  id="text_1" name="strasse" type="text" /></td>
          </tr>
          <tr>
            <td colspan="3"><label class="cf_label">PLZ / Postel ZIP Code</label></td>
            <td colspan="4"><input  id="text_3" name="plz" type="text" /></td>
          </tr>
          <tr>
            <td colspan="3"><label class="cf_label">Ort / City - Town</label></td>
            <td colspan="4"><input  id="text_4" name="ort" type="text" /></td>
          </tr>
          <tr>
            <td colspan="3"><label class="cf_label">E-Mail / E-mail address</label></td>
            <td colspan="4"><input class="cf_inputbox required validate-email"  id="text_2" name="email" type="text" /></td>
          </tr>
          <tr>
            <td colspan="3"><label class="cf_label">Bemerkungen / Comment</label></td>
            <td colspan="4"><textarea class="cf_inputbox" rows="3" id="text_5" cols="30" name="Bemerkungen"></textarea></td>
          </tr>
          <tr>
            <td colspan="3"><label class="cf_label">Spamschutz / Anti Spam<br>
              Bitte tragen Sie den angezeigten Code in das Feld ein!<br>
              Please fil in the code shown.</label></td>
            <td colspan="4"><span>{imageverification}</span> </td>
          </tr>
          <tr>
            <td colspan="7"><div class="formbutton" align="center">
                <input value="Bestellung senden / Send" type="submit" />
            </div></td>
          </tr>
        </table>
    <?php }
    else
    {
    echo " Bitte wählen Sie zunächst Fotos aus.<br>Please choose any Photos.";
    } ?>


    Eine Weiterleitung zu Paypal müsste bei Chronoforms auch gehen. Es gibt bei den Code-Feldern ein Feld, wo man Code hinterlegen kann, der nach dem Absenden des Formulars ausgeführt wird. Hier müsstest Du den Paypalcode hinterlegen und von Paypal aus dann über einen Link wieder zu Deinem Webauftritt zurückleiten.


    Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
    Beitrag von: bogi24 am 04-12-2009 19:02:37
    Hi,

    danke gabi_ix

    Wenn ich Dein Formular als Grundlage nehme, kommt auf der Frontpage die Fehlermeldung:

    Code:
    Parse error: syntax error, unexpected T_STRING in /www/htdocs/w009ffc1/fotoshop_hauptordner/fotoshop/components/com_chronocontact/chronocontact.html.php(180) : eval()'d code on line 36

    Weißt was da los ist.

    Sorry, meine php Kenntnisse usw. sind ned gerade die besten ;-)


    Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
    Beitrag von: Claudia E. am 04-12-2009 20:04:50
    Evtl. hast du nicht wirklich den kompletten Code kopiert und in dein Formular eingefügt.


    Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
    Beitrag von: bogi24 am 05-12-2009 08:14:55
    Doch... des Trau ich mir noch zu  :sm_yes:


    Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
    Beitrag von: gabi_ix am 07-12-2009 09:09:50
    Hallo bogi,

    er meckert einen Syntaxfehler in der Zeile 36 an. Kannst Du mir die Zeilen 35 bis 37 aus Deinem Dokument mal hier rein kopieren?
    Da muss am Ende einer Anweisung ein Semikolon fehlen.

    Gruß Gabi


    Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
    Beitrag von: bogi24 am 07-12-2009 15:29:42
    Hi gabi_ix

    der selbe wie oben..

    Hier die Zeilen 33 bis 40

    Code:
    echo("function rechne_preis_".$a."() {");
    echo("var feld_groesse_".$a." = a.Groesse_".$a.".options[a.Groesse_".$a.".selectedIndex].value;");
    echo("var feld_nutzung_".$a." = a.Nutzungsrecht_".$a.".options[a.Nutzungsrecht_".$a.".selectedIndex].value;");
    echo("if (feld_groesse_".$a." ==\"".$imgsize_1."\" && feld_nutzung_".$a." ==\"".$Repeated Use_no."\"){a.Preis_".$a.".value=".$photo_price.";}");
    echo("if (feld_groesse_".$a." ==\"".$imgsize_1."\" && feld_nutzung_".$a." ==\"".$Repeated Use_yes."\"){a.Preis_".$a.".value=".$Photo_price_addition.";}");
    echo("if (feld_groesse_".$a." ==\"".$imgsize_2."\" && feld_nutzung_".$a." ==\"".$covenant_no."\"){a.Preis_".$a.".value=".$photo_price_large.";}");
    echo("if (feld_groesse_".$a." ==\"".$imgsize_2."\" && feld_nutzung_".$a." ==\"".$covenant_yes."\"){a.Preis_".$a.".value=".$photo_price_large_addition.";}");
    echo("}");

    LG Helmut


    Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
    Beitrag von: gabi_ix am 07-12-2009 15:58:55
    Kann da keinen Syntaxfehler erkennen. Kommentier den Code von den Zeilen 33 bis 40 mal aus und sehe ob die Fehlermeldung bleibt.
    Wenn ja, dann muss das Problem anderswo liegen. Wenn die Fehlermeldung weg ist, dann mal Zeile für Zeile wieder reinnehmen und testen. Dann kann man die Fehlerstelle ausmachen.

    Bei mir läuft das Script daher kann ich den Fehle bei hier nicht testen.

    Gruß Gabi


    Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
    Beitrag von: bogi24 am 07-12-2009 18:02:50
    Hi..

    wir haben den Fehler gefunden...

    Zeile 36:
    $Repeated Use_no

    Da ist ein Leerzeichen drn, damit kommt er ned klar!


    Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
    Beitrag von: Picture am 19-12-2009 16:43:15
    Hallo Gabi,
    die Idee Bilder zum Kauf anzubieten finde ich Super und möchte sie gerne umsetzen.

    Kannst du bitte mal die vier gänderten Dateien:
    joomgallery.html.php
    joom.favourites.html.php
    de-DE.com_joomgallery.ini
    und en-GB.com_joomgallery.ini

    zum Douwnload anbieten. Ich brauche sie doch dann nacher nur über die Original zu kopieren.

    Irgendwie klappt der Code nicht richtig.
    Vielleicht kopiere ich ihn auch in die falschen Zeilen.

    Vorab besten Dank.


    Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
    Beitrag von: Picture am 25-02-2010 22:16:09
    Hallo,

    ich habe mal eine Frage:

    Ich nutze CB 1.2.1 Germany für die Community auf einem Fotoportal und

    habe folgendes Plugin gefunden

    CB Image Store
    http://angryninjas.com/index.php?option=com_p2dxt&Itemid=17

    genau das was für ein Fotoportal wichtig wäre. So kann man alle seine Fotos auf dem Foto-TAB zum Verkauf anbieten.

    Hat das schon mal jemand genutzt und kann ich das auch mit CB 1.2.1 nutzen.

    Man muss natürlich 15 USD investieren. Wenn dies in CB 1.2.1 genutzt werden kann, sind es die 15 USD wert.


    LG
    picture


    Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
    Beitrag von: Claudia E. am 26-02-2010 07:40:04
    Dürfte funktionieren, siehe hier (http://angryninjas.com/index.php?option=com_content&view=article&id=14&Itemid=4):
    "CB Store is compatible with Joomla 1.5x and all versions of Community Builder."

    Edit: Scheint den Legacy zu benötigen.


    Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
    Beitrag von: Picture am 01-03-2010 14:46:01
    Hallo Claudia,

    ich habe mir das Plugin mal erworben.
    Es ist soweit recht gut. Ein User kann für jedes Foto einen bestimmten Preis, Überschrift etc. anlegen und hochladen. Bei dem User wird auch der Zoomfaktor sichtbar. Ja Legacy Modus wird benötigt.

    Jetzt das kleine Problemchen.
    Wenn ein andere User auf das Profil des fotoeinstellenden Users geht, bekommt er zwar die Überschrift, den Preis und der Button zum Kauf angezeigt, nur wird kein Thumbnail angezeigt worauf ich klicken an um es zu vergrößern.
    Anfragen beim Programmieren schlugen fehl.
    (http://home.vrweb.de/pad/picture/image-store.png)
    Woran kann dies liegen? Kannst du mir hierbei einen Tip geben?

    LG Picture


    Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
    Beitrag von: Claudia E. am 01-03-2010 20:06:21
    Tut mir leid, aber ich kann dir nicht helfen.
    Ich hatte lediglich nach deiner Anfrage nachgesehen, ob es mit dem CB 1.2.1 zusammen arbeitet.
    Du wirst hier wahrscheinlich auch eher wenig Hilfe bekommen können - mit der JoomGallery hat das ja nun nichts mehr zu tun. :-)


    Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
    Beitrag von: volleyballalbum am 26-03-2010 20:15:31
    Hi

    Ich versuch das mit dem verkauf gerade mal in die Version 1.5.5 einzubauen. Immoment noch zu Testzwecken.
    Aber ich komme da in der Datei components/com_joomgallery/includes/html/joom.favourites.html.php nicht ganz zurecht. Finde da aber die Zeilen zum Auskommentieren nicht.
    LG
    Daniel


    Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
    Beitrag von: gabi_ix am 31-03-2010 15:12:15
    Hallo volleyballalbum,

    möglicherweise haben sich die Zeilennummern in der neueren Version der Joomgallery  verschoben. Wenn Du einen Editor mit einer Suchfunktion hast, suche nach Links mit dem Begriff "download" drin. Es müssten 2 Downloadlinks in der components/com_joomgallery/includes/html/joom.favourites.html.php vorkommen. Einer innerhalb der Funktion Joom_ShowFavourites_HTML1 und der zweite innerhalb der Funktion Joom_ShowFavourites_HTML2.  
    Die beiden Downloadlinks inkl. des umgebenden  DIV-Containers "jg_up_esub1" müssen auskommentiert werden.
    Hier nochmal der Code aus der Vorgängerversion:


    Code:
    <div class="jg_up_esub1">
              <a href="<?php echo JRoute::_('index.php?option=com_joomgallery&func=download&catid='.$row->catid.'&id='.$row->id._JOOM_ITEMID); ?>"
                onMouseOver="return overlib('<?php echo JText::_('JGS_DOWNLOAD_TOOLTIP_TEXT',true); ?>', CAPTION, '<?php echo JText::_('JGS_DOWNLOAD_TOOLTIP_CAPTION',true); ?>', BELOW, RIGHT);" onmouseout="return nd();">
              <img src="<?php echo _JOOM_LIVE_SITE.'components/com_joomgallery/assets/images/download.png' ;?>" border="0" width="16" height="16" alt="<?php echo JText::_('JGS_DOWNLOAD_TOOLTIP_CAPTION'); ?>" class="pngfile jg_icon" /></a>
            </div>

    Gruß Gabi



    Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
    Beitrag von: volleyballalbum am 02-04-2010 14:23:32
    Hi Gabi
    Ja die Zeilen haben sich geändert!
    Hatte es mittlerweile schon gefunden und bin dabei das Formular zu gestalten bzw. die Berechnung einzubauen.


    Titel: Re: Lösungsansatz: Joomgallery-Warenkorbfunktion und Bestellformular für Bilder
    Beitrag von: neumagg.net am 06-01-2011 21:27:38
    Hallo!

    Wie lauten denn die Dateien in der aktuellen Version von Joomgallery? Denn die genannte Datei "components/com_joomgallery/joomgallery.html.php" kann ich in meiner Installation nicht finden.

    Ich habe JoomGallery in der Version 1.5.6.2.

    Bitte um Hilfe :)
    Danke :)

    MfG
    Nicolas

    Hallo zusammen,

    ich will Euch den Lösungsansatz für die Verknüpfung von Joomgallery mit einem Bestellformular (Komponente Chronoforms) mitteilen:

    Hintergrund ist, Bilder auswählen zu können und in einem Warenkorb zwischenzuspeichern. Die gespeicherten Bilder sollten dann an ein Bestellformular übermittelt werden, wo der Käufer seine Daten eingibt und die Bildbestellung an den Fotografen sendet. Das ganze soll ohne Nutzerregistrierung möglich sein.

    1. Anpassung an der Joomgallery:
    An der Joomgallery (verwendete Version JOOMGALLERY_1_5_RC2_BUILD_20090222.zip) selber sind nur wenige Anpassungen  notwendig, da die Favoriten-Funktion mit dem ZipDownload zum Warenkorb umfunktioniert werden kann.
    Damit diese auch für nicht registrierte Nutzer verfügbar sind, müssen die Favoriten im Konfigurationsmanager der Joomgallery wie folgt gesetzt werden:

    'Favoriten verwenden', 'Öffentlicher Zip-Download' und 'Nur Zip-Download anbieten' auf 'Ja'  sowie 'Wer darf die Favoriten verwenden?' auf registrierte und spezielle

    Dann sollten noch die Links ZIP-Download auskommentiert und die Hinweise und Linktexte zum Zipdownload in den JoomGallery-Sprachdateien in folgenden Dateien angepasst werden:

    • Links Zip Download auskommentieren in
      • components/com_joomgallery/joomgallery.html.php
        Zeilen 499 bis 505 am Ende der Funktion Joom_ShowFavouritesLink() diesen Code
    Code:
    <div class="jg_my_favourites">
        <a href="<?php echo JRoute::_('index.php?option=com_joomgallery&func=createzip'._JOOM_ITEMID); ?>"
            onMouseOver="return overlib('<?php echo JText::_('JGS_ZIP_CREATE_TOOLTIP_TEXT',true); ?>', CAPTION, '<?php echo JText::_('JGS_ZIP_DOWNLOAD',true); ?>', BELOW, RIGHT);" onmouseout="return nd();"><?php echo JText::_('JGS_ZIP_DOWNLOAD'); ?>
          <img src="<?php echo _JOOM_LIVE_SITE.'components/com_joomgallery/assets/images/package_go.png' ;?>" alt="<?php echo JText::_('JGS_ZIP_DOWNLOAD'); ?>" class="pngfile jg_icon" />
        </a>
      </div>
    [/li]
    [li]components/com_joomgallery/includes/html/joom.favourites.html.php
    Zeilen 154 bis 157 innerhalb der Funktion Joom_ShowFavourites_HTML1 und 304 bis 307 innerhalb der Funktion Joom_ShowFavourites_HTML2
    Code:
    <div class="jg_up_esub1">
              <a href="<?php echo JRoute::_('index.php?option=com_joomgallery&func=download&catid='.$row->catid.'&id='.$row->id._JOOM_ITEMID); ?>"
                onMouseOver="return overlib('<?php echo JText::_('JGS_DOWNLOAD_TOOLTIP_TEXT',true); ?>', CAPTION, '<?php echo JText::_('JGS_DOWNLOAD_TOOLTIP_CAPTION',true); ?>', BELOW, RIGHT);" onmouseout="return nd();">
              <img src="<?php echo _JOOM_LIVE_SITE.'components/com_joomgallery/assets/images/download.png' ;?>" border="0" width="16" height="16" alt="<?php echo JText::_('JGS_DOWNLOAD_TOOLTIP_CAPTION'); ?>" class="pngfile jg_icon" /></a>
            </div>
        [/li]
      [/li]
      [li]Achtung: bei der Anpassung der Sprachdateien Variablennamen nicht verändern!!
      language/de-DE/de-DE.com_joomgallery.ini bzw. language/en-GB/en-GB.com_joomgallery.ini die Tooltipps und Linktexte zu Favoriten durch Warenkorbhinweise ersetzen
      Angepasste Sprachvariablen:
      • Zeilen 65 - 74
        JGS_FAV_HEADING=Warenkorb
        JGS_ZIP_HEADING=Bilder im Warenkorb
        JGS_FAV_SWITCH_LAYOUT=Ansicht ändern
        JGS_FAV_REMOVE_ALL=Liste leeren
        JGS_ZIP_CREATE_TOOLTIP_TEXT=
        JGS_FAV_REMOVE_TOOLTIP_CAPTION=Bild aus dem Warenkorb entfernen
        JGS_ZIP_REMOVE_TOOLTIP_CAPTION=Bild aus der Warenkorbliste entfernen
        JGS_FAV_REMOVE_TOOLTIP_TEXT=Hier klicken, um das Bild wieder aus dem Warenkorb zu entfernen.
        JGS_ZIP_REMOVE_TOOLTIP_TEXT=Hier klicken, um das Bild wieder aus der Warenkorbliste zu entfernen.
        JGS_FAV_REMOVE_TOOLTIP_CAPTION=Bild aus dem Warenkorb entfernen
        JGS_ZIP_REMOVE_TOOLTIP_CAPTION=Bild aus der Warenkorbliste entfernen
        JGS_FAV_REMOVE_TOOLTIP_TEXT=Hier klicken, um das Bild wieder aus dem Warenkorb zu entfernen
        JGS_ZIP_REMOVE_TOOLTIP_TEXT=Hier klicken, um das Bild wieder aus der Warenkorbliste zu entfernen
      • Zeilen 219 - 222
        JGS_FAV_ADD_PICTURE_TOOLTIP_CAPTION=Bild in den Warenkorb legen
        JGS_ZIP_ADD_PICTURE_TOOLTIP_CAPTION=Bild der Warenkorb-Liste hinzufügen
        JGS_FAV_ADD_PICTURE_TOOLTIP_TEXT=Hier Bild dem Warenkorb hinzufügen, welcher  mit einem Klick auf <i>Warenkorb</i> aufgerufen werden kann.
        JGS_ZIP_ADD_PICTURE_TOOLTIP_TEXT=Hier Bild dem Warenkorb hinzufügen, um die Lizenzen dann mit anderen ausgewählten Bildern bestellen zu können.
      • Zeilen 368 - 372
        JGS_FAV_MY=Warenkorb
        JGS_ZIP_MY=Warenkorb
        JGS_FAV_DOWNLOAD_TOOLTIP_TEXT=Bilder im Warenkorb anzeigen.
        JGS_ZIP_DOWNLOAD_ALLOWED_TOOLTIP_TEXT=Mit Klick auf den Bestellbutton können die Lizenzen für die gespeicherten Bilder geordert werden.
        JGS_ZIP_DOWNLOAD_TOOLTIP_TEXT=Mit Hilfe des Korb-Symbols können Bilder in dieser Galerie im Warenkorb gesammelt werden.

      [/li]
      [/list]

      Über das Warenkorbsymbol unter den Bildern der Detailansicht können die Nutzer die BildID's in der Joomla-Session ablegen, was auch ohne Login funktioniert.
      Zugriff auf die  gespeicherten BildID's bekommt man mit dieser Funktion: $piclist = $mainframe->getUserState('joom.favourites.pictures');

      Das waren im wesentlichen die Anpassungen an der Joomgallery (falls ich was übersehen habe - Tipps sind willkommen :-)).


      2. Übertragung der gespeicherte BildID's in ein Formular der Komponente Chronoforms

      Zur Übermittlung der gespeicherte Bilddaten an den Fotografen nutze ich die Komponente Chronoforms (Version: Chronoforms_3.1_RC3, Download unter www.chronoengine.com ). Hiermit lassen sich E-Mail-Formulare für Joomla 1.5 flexibel gestalten (auch mit PHP-Code) und die Daten in der Datenbank abspeichern.
      Nach dem Installieren von Chronoforms kann nach Anleitung ein Formular angelegt werden, Tutorials dazu gibt es unter http://www.chronoengine.com/downloads/folder/43-ChronoForms%20Tutorials.html und http://openbook.galileocomputing.de/joomla15/joomla_18_formulare_neu_002.htm:

      Beispielcode, mit dem die gespeicherten Bilddaten der Joomgallery-Favoriten anzeigt und in ein Formular geschrieben werden. Der Code muss ggf. noch angepasst werden - betrachtet ihn als Beta-Version. Mit dem Formular aus dem nachfolgenden Beispielcode werden 20 gespeicherte Bilder ausgelesen (man kann die Schleife auch hochsetzen auf mehr Bilder- meist reichen aber 20)und deren Daten in dynamische Formularfelder geschrieben. Es kann zu jedem Bild noch das Format und das Nutzungsrecht ausgewählt werden. Die Daten werden dann über Chronforms an die Dort hinterlegten Empfänger gesendet.

      Code:
      <?php
      $piclist = $mainframe->getUserState('joom.favourites.pictures');
      $piclist_array = explode(',',$piclist);
      $database = & JFactory::getDBO();
      if(sizeof($piclist_array)>0)
      {
      $imgsize_1="<= 320 cm&sup2";
      $imgsize_2="> 320 cm&sup2";
      ?>
      <table width="100%"  border="0" cellspacing="0" cellpadding="0" class="table_form">
        <tr>
      <th>Bild<br>Image</th>
      <th>ID</th>
      <th>Titel<br>Title</th>
      <th>Druckgröße<br>Size to print</th>
      <th>Ständiges Nutzungsrecht<br>Positive covenant</th>
        </tr>
        <?php
      for ($x = 0; $x < sizeof($piclist_array); ++$x)
      {
      $sql = "SELECT  * FROM #__joomgallery
      WHERE id='".current($piclist_array)."'";
      $database->setQuery( $sql );
      $output_img=$database->loadObject();
      if($output_img){
      $sql_cat = "SELECT  * FROM #__joomgallery_catg 
      WHERE cid='".$output_img->catid."'";
      $database->setQuery( $sql_cat );
      $output_cat=$database->loadObject();
      if($output_cat){
      ?>
        <tr>
      <td><a href="<?php echo JRoute::_('index.php?option=com_joomgallery&amp;func=detail&amp;id='.$output_img->id._JOOM_ITEMID); ?>"><img src="<?php echo 'components/com_joomgallery/img_thumbnails/'.$output_cat->catpath.'/'.$output_img->imgthumbname;?>" alt="<?php echo $output_img->imgtitle; ?>" border="0"></a></td>
      <td><?php echo $output_img->imgauthor; ?>
      <input id="hidden_<?php echo $x;?>_1" name="BildID_<?php echo $x;?>" type="hidden" readonly="readonly"  value="<?php echo $output_img->imgauthor; ?>"></td>
      <td><?php echo $output_img->imgtitle; ?>
      <input id="hidden_<?php echo $x;?>_2" name="Bildtitel_<?php echo $x;?>" type="hidden" readonly="readonly"  value="<?php echo $output_img->imgtitle; ?>"></td>
      <td>
      <select name="Groesse_<?php echo $x;?>">
      <option value="<?php echo $imgsize_1;?>"><?php echo $imgsize_1;?></option>
      <option value="<?php echo $imgsize_2;?>"><?php echo $imgsize_2;?></option>
      </select>
      </td>
      <td>
      <select name="Nutzungsrecht_<?php echo $x;?>">
      <option value="nein">nein/ no</option>
      <option value="ja">ja / yes</option>
      </select>
      </td>
        </tr>
        <? }
      }
        next($piclist_array);
      }
      ?>
      <tr>
      <td colspan="5"></td>
      <?php
      $no_of_fields="20";
      if(sizeof($piclist_array)<$no_of_fields)
      {
      for ($i = sizeof($piclist_array); $i <= $no_of_fields; ++$i)
      {
      ?>     
      <input id="hidden_<?php echo $i;?>_1" name="BildID_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
      <input id="hidden_<?php echo $i;?>_2" name="Bildtitel_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
      <input id="hidden_<?php echo $i;?>_3" name="Groesse_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
      <input id="hidden_<?php echo $i;?>_4" name="Nutzungsrecht_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
      <?php
      }
      }
      ?>
      </td>
      </tr>
      <tr><th colspan="5">Ihre Daten / Your data</th></tr>
      <tr>
      <td colspan="3"><label class="cf_label">Vor- und Zuname / Name</label></td>
      <td colspan="2"><input  id="text_0" name="vor-und-zuname" type="text" /></td>
      </tr>
      <tr>
      <td colspan="3"><label class="cf_label">Strasse + Hausnr. / street</label></td>
      <td colspan="2"><input  id="text_1" name="strasse" type="text" /></td>
      </tr>
      <tr>
      <td colspan="3"><label class="cf_label">PLZ / postel code</label></td>
      <td colspan="2"><input  id="text_3" name="plz" type="text" /></td>
        </tr>
      <tr>
      <td colspan="3"><label class="cf_label">Ort / town</label></td>
      <td colspan="2"><input  id="text_4" name="ort" type="text" /></td>
        </tr>
      <tr>
      <td colspan="3"><label class="cf_label">E-Mail / email</label></td>
      <td colspan="2"><input class="cf_inputbox required validate-email"  id="text_2" name="email" type="text" /></td>
      </tr>
      <tr>
      <td colspan="3"><label class="cf_label">Bemerkungen / message</label></td>
      <td colspan="2"><textarea class="cf_inputbox" rows="3" id="text_5" cols="30" name="bemerkungen"></textarea></td>
      </tr>
      <tr>
      <td colspan="3">
      <label class="cf_label">Spamschutz / anti spam<br>Bitte tragen Sie den angezeigten Code in das Feld ein!<br>Insert this code, please!</label></td>
      <td colspan="2"><span>{imageverification}</span>

        </td>
      </tr>
      <tr>
      <td colspan="5"><div class="formbutton" align="center"><input value="Bestellung senden / send" type="submit" /></div></td>
      </tr>
      </table>
      <?php }
      else
      {
      echo " Bitte wählen Sie zunächst Fotos aus.<br>Please choose any Photos.";
      } ?>


      Hinweise: Es empfielt sich die Daten neben dem E-Mail-Versand  von Chronoforms in der Datenbank speichern zu lassen. So geht nichts verloren. Auch die Möglichkeiten der Eingabeüberprüfung und des Spamschutzes nutzen. Wer vermeiden möchte, dass sein Formular Fehler enthält, sollte das Formular mit dem Chronoforms Form Wizard anlegen. Der individuelle PHP-Code muss dann nachträglich im "Forms Management" Reiter "Form Code" ergänzt werden. Aber Vorsicht, wenn Ihr das Formular erneut mit dem Form-Wizard bearbeitet, wird der PHP-Code beim Specihern wieder überschrieben und Ihr habt nur das blanke Formular. 
      Ist das Formular richtig konfiguriert, muss nun nur noch ein Bestelllink in der Seitennavigation platziert werden, der auf ein Formular der Componente Chronoforms und das entsprechende Formular weißt.

      Durch das Kombinieren von Joomgallery und Chronoforms kann auf recht einfache Weise die Bestellung von Fotos ermöglicht werden. Auch wenn die Funktionalitäten bezüglich der Bestellverwaltung nicht so komfortabel wie in einem Onlienshop sind und das Versenden von Rechnungen und der Fotos vom Fotografen in Handarbeit abwickelt werden muss, ist es für kleine Fotoportale  sicher eine Überlegung wert.

      Gruß Gabi

      PS. Nochmals vielen Dank an chraneco. Du hast mich mit Deinen Hinweisen auf einen einfachen Lösungsweg gebracht.




      [/quote]


      Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
      Beitrag von: gabi_ix am 10-01-2011 14:11:15
      Hallo neumagg.net,

      die Dateistruktur der Joomgallery wurde zwischenzeitlich geändert.  Die Ausgabe der einzelnen Funktionen wird im Joomgallery-Verzeichnis "views" verwaltet. Dort hat jede Funktion ein eigenes Verzeichnis und darin einen Verzeichnis "tmpl".

      In  der Version 1.5.6 müsste sich die Ausgabe der Favoriten in

      components/com_joomgallery/views/favourites/tmpl/default.php

      befinden.

      Die Ausgabe der Downloadlinks und die Erstellung eines Zip-Downloads müssten unter

      components/com_joomgallery/views/downloadzip/tmpl/default.php

      zu finden sein.

      Mit der neuen Struktur habe ich mich noch nicht näher befasst, daher kann ich keine genauen Zeilenangaben nennen.

      Gruß Gabi


      Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
      Beitrag von: suffi am 15-02-2011 21:59:13
      Hat sich schon jemand mit der neuen Strutur befasst und kann dies vielleicht veröffentlichen wo wie was geändert werden muss?
      Vielen Dank schonmal


      Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
      Beitrag von: Emre411 am 06-10-2011 01:47:44
      Hallo Zusammen,

      könnte jemand eventuell die aktuelle Version bzw. einen Link von einer funktionierenden Seite posten?
      Bin auch auf der Suche nach so einer Lösung. Es wäre echt super!

      Gruß
      Emre411


      Titel: Re: Warenkorblink unter Thumbnails und Detailansicht einfügen
      Beitrag von: Maggi am 10-01-2012 12:12:41
      Hallo alle,
      ist zwar schon älter aber für mich immer noch aktuell.
      Ich probiere die Joomgallery 2 aus und finde es echt super flexibel. Auch wenn ich noch eine Fehlermeldung bekomme:
              JFTP: :write: Bad response
              JFTP: :write: Bad response
              Beim Erstellen des Zips trat leider ein Fehler auf: COM_JOOMGALLERY_FAVOURITES_ERROR_CREATEZIP

      Aber ist ja noch beta..
      Die Integration eines Warenkorbs über die Favoriten Funktion und Anbindung von Chronoforms (oder ähnliches) wäre auch für mich sehr interessant.
      Zur Zeit probiere ich noch PhocaGallery mit Simplecaddy. Simplecaddy funktioniert hierbei auch gut (bis auf eine kleine Sache bei der Auswahl von Bildgrößen) aber PhocaGallery ist lange nicht so flexibel wie Joomgallery.
      Ich bin auch interessiert daran, wenn jemand hierfür eine Lösung hat. Kann leider selbst nicht programmieren.
      Würde dafür auch was spenden... :-)
      Habe auf der Wunschliste für Joomgallery auch schon mein Votum abgegeben, für die Integration einer solchen Funktion in Joomgallery.
      siehe: http://joomgallery.uservoice.com/forums/13274-general/suggestions/2244147-integration-of-a-payment-system-to-download-pictur
      Vielleicht votet noch jemand dafür....
      Grüße
      Maggi


      Titel: Re: Lösungsansatz: Joomgallery-Warenkorbfunktion und Bestellformular für Bilder
      Beitrag von: Emre411 am 26-01-2012 21:48:32
      Könnte mir jemand diesbezüglich bei der Version 1.5.7.4 helfen?

      auch in der Datei default.php in components/com_joomgallery/views/downloadzip/tmpl oder in components/com_joomgallery/views/favourites/tmpl kann ich leider die entsprechenden Einträge nicht finden :-((



      Hallo zusammen,

      ich will Euch den Lösungsansatz für die Verknüpfung von Joomgallery mit einem Bestellformular (Komponente Chronoforms) mitteilen:

      Hintergrund ist, Bilder auswählen zu können und in einem Warenkorb zwischenzuspeichern. Die gespeicherten Bilder sollten dann an ein Bestellformular übermittelt werden, wo der Käufer seine Daten eingibt und die Bildbestellung an den Fotografen sendet. Das ganze soll ohne Nutzerregistrierung möglich sein.

      1. Anpassung an der Joomgallery:
      An der Joomgallery (verwendete Version JOOMGALLERY_1_5_RC2_BUILD_20090222.zip) selber sind nur wenige Anpassungen  notwendig, da die Favoriten-Funktion mit dem ZipDownload zum Warenkorb umfunktioniert werden kann.
      Damit diese auch für nicht registrierte Nutzer verfügbar sind, müssen die Favoriten im Konfigurationsmanager der Joomgallery wie folgt gesetzt werden:

      'Favoriten verwenden', 'Öffentlicher Zip-Download' und 'Nur Zip-Download anbieten' auf 'Ja'  sowie 'Wer darf die Favoriten verwenden?' auf registrierte und spezielle

      Dann sollten noch die Links ZIP-Download auskommentiert und die Hinweise und Linktexte zum Zipdownload in den JoomGallery-Sprachdateien in folgenden Dateien angepasst werden:

      • Links Zip Download auskommentieren in
        • components/com_joomgallery/joomgallery.html.php
          Zeilen 499 bis 505 am Ende der Funktion Joom_ShowFavouritesLink() diesen Code
      Code:
      <div class="jg_my_favourites">
          <a href="<?php echo JRoute::_('index.php?option=com_joomgallery&func=createzip'._JOOM_ITEMID); ?>"
              onMouseOver="return overlib('<?php echo JText::_('JGS_ZIP_CREATE_TOOLTIP_TEXT',true); ?>', CAPTION, '<?php echo JText::_('JGS_ZIP_DOWNLOAD',true); ?>', BELOW, RIGHT);" onmouseout="return nd();"><?php echo JText::_('JGS_ZIP_DOWNLOAD'); ?>
            <img src="<?php echo _JOOM_LIVE_SITE.'components/com_joomgallery/assets/images/package_go.png' ;?>" alt="<?php echo JText::_('JGS_ZIP_DOWNLOAD'); ?>" class="pngfile jg_icon" />
          </a>
        </div>
      [/li]
      [li]components/com_joomgallery/includes/html/joom.favourites.html.php
      Zeilen 154 bis 157 innerhalb der Funktion Joom_ShowFavourites_HTML1 und 304 bis 307 innerhalb der Funktion Joom_ShowFavourites_HTML2
      Code:
      <div class="jg_up_esub1">
                <a href="<?php echo JRoute::_('index.php?option=com_joomgallery&func=download&catid='.$row->catid.'&id='.$row->id._JOOM_ITEMID); ?>"
                  onMouseOver="return overlib('<?php echo JText::_('JGS_DOWNLOAD_TOOLTIP_TEXT',true); ?>', CAPTION, '<?php echo JText::_('JGS_DOWNLOAD_TOOLTIP_CAPTION',true); ?>', BELOW, RIGHT);" onmouseout="return nd();">
                <img src="<?php echo _JOOM_LIVE_SITE.'components/com_joomgallery/assets/images/download.png' ;?>" border="0" width="16" height="16" alt="<?php echo JText::_('JGS_DOWNLOAD_TOOLTIP_CAPTION'); ?>" class="pngfile jg_icon" /></a>
              </div>
          [/li]
        [/li]
        [li]Achtung: bei der Anpassung der Sprachdateien Variablennamen nicht verändern!!
        language/de-DE/de-DE.com_joomgallery.ini bzw. language/en-GB/en-GB.com_joomgallery.ini die Tooltipps und Linktexte zu Favoriten durch Warenkorbhinweise ersetzen
        Angepasste Sprachvariablen:
        • Zeilen 65 - 74
          JGS_FAV_HEADING=Warenkorb
          JGS_ZIP_HEADING=Bilder im Warenkorb
          JGS_FAV_SWITCH_LAYOUT=Ansicht ändern
          JGS_FAV_REMOVE_ALL=Liste leeren
          JGS_ZIP_CREATE_TOOLTIP_TEXT=
          JGS_FAV_REMOVE_TOOLTIP_CAPTION=Bild aus dem Warenkorb entfernen
          JGS_ZIP_REMOVE_TOOLTIP_CAPTION=Bild aus der Warenkorbliste entfernen
          JGS_FAV_REMOVE_TOOLTIP_TEXT=Hier klicken, um das Bild wieder aus dem Warenkorb zu entfernen.
          JGS_ZIP_REMOVE_TOOLTIP_TEXT=Hier klicken, um das Bild wieder aus der Warenkorbliste zu entfernen.
          JGS_FAV_REMOVE_TOOLTIP_CAPTION=Bild aus dem Warenkorb entfernen
          JGS_ZIP_REMOVE_TOOLTIP_CAPTION=Bild aus der Warenkorbliste entfernen
          JGS_FAV_REMOVE_TOOLTIP_TEXT=Hier klicken, um das Bild wieder aus dem Warenkorb zu entfernen
          JGS_ZIP_REMOVE_TOOLTIP_TEXT=Hier klicken, um das Bild wieder aus der Warenkorbliste zu entfernen
        • Zeilen 219 - 222
          JGS_FAV_ADD_PICTURE_TOOLTIP_CAPTION=Bild in den Warenkorb legen
          JGS_ZIP_ADD_PICTURE_TOOLTIP_CAPTION=Bild der Warenkorb-Liste hinzufügen
          JGS_FAV_ADD_PICTURE_TOOLTIP_TEXT=Hier Bild dem Warenkorb hinzufügen, welcher  mit einem Klick auf <i>Warenkorb</i> aufgerufen werden kann.
          JGS_ZIP_ADD_PICTURE_TOOLTIP_TEXT=Hier Bild dem Warenkorb hinzufügen, um die Lizenzen dann mit anderen ausgewählten Bildern bestellen zu können.
        • Zeilen 368 - 372
          JGS_FAV_MY=Warenkorb
          JGS_ZIP_MY=Warenkorb
          JGS_FAV_DOWNLOAD_TOOLTIP_TEXT=Bilder im Warenkorb anzeigen.
          JGS_ZIP_DOWNLOAD_ALLOWED_TOOLTIP_TEXT=Mit Klick auf den Bestellbutton können die Lizenzen für die gespeicherten Bilder geordert werden.
          JGS_ZIP_DOWNLOAD_TOOLTIP_TEXT=Mit Hilfe des Korb-Symbols können Bilder in dieser Galerie im Warenkorb gesammelt werden.

        [/li]
        [/list]

        Über das Warenkorbsymbol unter den Bildern der Detailansicht können die Nutzer die BildID's in der Joomla-Session ablegen, was auch ohne Login funktioniert.
        Zugriff auf die  gespeicherten BildID's bekommt man mit dieser Funktion: $piclist = $mainframe->getUserState('joom.favourites.pictures');

        Das waren im wesentlichen die Anpassungen an der Joomgallery (falls ich was übersehen habe - Tipps sind willkommen :-)).


        2. Übertragung der gespeicherte BildID's in ein Formular der Komponente Chronoforms

        Zur Übermittlung der gespeicherte Bilddaten an den Fotografen nutze ich die Komponente Chronoforms (Version: Chronoforms_3.1_RC3, Download unter www.chronoengine.com ). Hiermit lassen sich E-Mail-Formulare für Joomla 1.5 flexibel gestalten (auch mit PHP-Code) und die Daten in der Datenbank abspeichern.
        Nach dem Installieren von Chronoforms kann nach Anleitung ein Formular angelegt werden, Tutorials dazu gibt es unter http://www.chronoengine.com/downloads/folder/43-ChronoForms%20Tutorials.html und http://openbook.galileocomputing.de/joomla15/joomla_18_formulare_neu_002.htm:

        Beispielcode, mit dem die gespeicherten Bilddaten der Joomgallery-Favoriten anzeigt und in ein Formular geschrieben werden. Der Code muss ggf. noch angepasst werden - betrachtet ihn als Beta-Version. Mit dem Formular aus dem nachfolgenden Beispielcode werden 20 gespeicherte Bilder ausgelesen (man kann die Schleife auch hochsetzen auf mehr Bilder- meist reichen aber 20)und deren Daten in dynamische Formularfelder geschrieben. Es kann zu jedem Bild noch das Format und das Nutzungsrecht ausgewählt werden. Die Daten werden dann über Chronforms an die Dort hinterlegten Empfänger gesendet.

        Code:
        <?php
        $piclist = $mainframe->getUserState('joom.favourites.pictures');
        $piclist_array = explode(',',$piclist);
        $database = & JFactory::getDBO();
        if(sizeof($piclist_array)>0)
        {
        $imgsize_1="<= 320 cm&sup2";
        $imgsize_2="> 320 cm&sup2";
        ?>
        <table width="100%"  border="0" cellspacing="0" cellpadding="0" class="table_form">
          <tr>
        <th>Bild<br>Image</th>
        <th>ID</th>
        <th>Titel<br>Title</th>
        <th>Druckgröße<br>Size to print</th>
        <th>Ständiges Nutzungsrecht<br>Positive covenant</th>
          </tr>
          <?php
        for ($x = 0; $x < sizeof($piclist_array); ++$x)
        {
        $sql = "SELECT  * FROM #__joomgallery
        WHERE id='".current($piclist_array)."'";
        $database->setQuery( $sql );
        $output_img=$database->loadObject();
        if($output_img){
        $sql_cat = "SELECT  * FROM #__joomgallery_catg 
        WHERE cid='".$output_img->catid."'";
        $database->setQuery( $sql_cat );
        $output_cat=$database->loadObject();
        if($output_cat){
        ?>
          <tr>
        <td><a href="<?php echo JRoute::_('index.php?option=com_joomgallery&amp;func=detail&amp;id='.$output_img->id._JOOM_ITEMID); ?>"><img src="<?php echo 'components/com_joomgallery/img_thumbnails/'.$output_cat->catpath.'/'.$output_img->imgthumbname;?>" alt="<?php echo $output_img->imgtitle; ?>" border="0"></a></td>
        <td><?php echo $output_img->imgauthor; ?>
        <input id="hidden_<?php echo $x;?>_1" name="BildID_<?php echo $x;?>" type="hidden" readonly="readonly"  value="<?php echo $output_img->imgauthor; ?>"></td>
        <td><?php echo $output_img->imgtitle; ?>
        <input id="hidden_<?php echo $x;?>_2" name="Bildtitel_<?php echo $x;?>" type="hidden" readonly="readonly"  value="<?php echo $output_img->imgtitle; ?>"></td>
        <td>
        <select name="Groesse_<?php echo $x;?>">
        <option value="<?php echo $imgsize_1;?>"><?php echo $imgsize_1;?></option>
        <option value="<?php echo $imgsize_2;?>"><?php echo $imgsize_2;?></option>
        </select>
        </td>
        <td>
        <select name="Nutzungsrecht_<?php echo $x;?>">
        <option value="nein">nein/ no</option>
        <option value="ja">ja / yes</option>
        </select>
        </td>
          </tr>
          <? }
        }
          next($piclist_array);
        }
        ?>
        <tr>
        <td colspan="5"></td>
        <?php
        $no_of_fields="20";
        if(sizeof($piclist_array)<$no_of_fields)
        {
        for ($i = sizeof($piclist_array); $i <= $no_of_fields; ++$i)
        {
        ?>     
        <input id="hidden_<?php echo $i;?>_1" name="BildID_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
        <input id="hidden_<?php echo $i;?>_2" name="Bildtitel_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
        <input id="hidden_<?php echo $i;?>_3" name="Groesse_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
        <input id="hidden_<?php echo $i;?>_4" name="Nutzungsrecht_<?php echo $i;?>" type="hidden" readonly="readonly"  value="">
        <?php
        }
        }
        ?>
        </td>
        </tr>
        <tr><th colspan="5">Ihre Daten / Your data</th></tr>
        <tr>
        <td colspan="3"><label class="cf_label">Vor- und Zuname / Name</label></td>
        <td colspan="2"><input  id="text_0" name="vor-und-zuname" type="text" /></td>
        </tr>
        <tr>
        <td colspan="3"><label class="cf_label">Strasse + Hausnr. / street</label></td>
        <td colspan="2"><input  id="text_1" name="strasse" type="text" /></td>
        </tr>
        <tr>
        <td colspan="3"><label class="cf_label">PLZ / postel code</label></td>
        <td colspan="2"><input  id="text_3" name="plz" type="text" /></td>
          </tr>
        <tr>
        <td colspan="3"><label class="cf_label">Ort / town</label></td>
        <td colspan="2"><input  id="text_4" name="ort" type="text" /></td>
          </tr>
        <tr>
        <td colspan="3"><label class="cf_label">E-Mail / email</label></td>
        <td colspan="2"><input class="cf_inputbox required validate-email"  id="text_2" name="email" type="text" /></td>
        </tr>
        <tr>
        <td colspan="3"><label class="cf_label">Bemerkungen / message</label></td>
        <td colspan="2"><textarea class="cf_inputbox" rows="3" id="text_5" cols="30" name="bemerkungen"></textarea></td>
        </tr>
        <tr>
        <td colspan="3">
        <label class="cf_label">Spamschutz / anti spam<br>Bitte tragen Sie den angezeigten Code in das Feld ein!<br>Insert this code, please!</label></td>
        <td colspan="2"><span>{imageverification}</span>

          </td>
        </tr>
        <tr>
        <td colspan="5"><div class="formbutton" align="center"><input value="Bestellung senden / send" type="submit" /></div></td>
        </tr>
        </table>
        <?php }
        else
        {
        echo " Bitte wählen Sie zunächst Fotos aus.<br>Please choose any Photos.";
        } ?>


        Hinweise: Es empfielt sich die Daten neben dem E-Mail-Versand  von Chronoforms in der Datenbank speichern zu lassen. So geht nichts verloren. Auch die Möglichkeiten der Eingabeüberprüfung und des Spamschutzes nutzen. Wer vermeiden möchte, dass sein Formular Fehler enthält, sollte das Formular mit dem Chronoforms Form Wizard anlegen. Der individuelle PHP-Code muss dann nachträglich im "Forms Management" Reiter "Form Code" ergänzt werden. Aber Vorsicht, wenn Ihr das Formular erneut mit dem Form-Wizard bearbeitet, wird der PHP-Code beim Specihern wieder überschrieben und Ihr habt nur das blanke Formular. 
        Ist das Formular richtig konfiguriert, muss nun nur noch ein Bestelllink in der Seitennavigation platziert werden, der auf ein Formular der Componente Chronoforms und das entsprechende Formular weißt.

        Durch das Kombinieren von Joomgallery und Chronoforms kann auf recht einfache Weise die Bestellung von Fotos ermöglicht werden. Auch wenn die Funktionalitäten bezüglich der Bestellverwaltung nicht so komfortabel wie in einem Onlienshop sind und das Versenden von Rechnungen und der Fotos vom Fotografen in Handarbeit abwickelt werden muss, ist es für kleine Fotoportale  sicher eine Überlegung wert.

        Gruß Gabi

        PS. Nochmals vielen Dank an chraneco. Du hast mich mit Deinen Hinweisen auf einen einfachen Lösungsweg gebracht.




        [/quote]