Keine "title" und "alt" Übernahme bei WY

Wie verwendet man Module oder Aktion und passt diese an.

Keine "title" und "alt" Übernahme bei WY

Beitragvon mmike » 20. Jan 2010, 13:24

Die Angaben aus dem Medienpool werden nicht in den "title" und "alt" Tag übernommen. Ich verwende R 4.2.1 mit TinyMCE und WYSIWYGImage 1.8. Kann mir da jemand weiterhelfen?
mmike
 
Beiträge: 4
Registriert: 20. Jan 2010, 13:16
Wohnort: Bautzen

Re: Keine "title" und "alt" Übernahme be

Beitragvon Koala » 20. Jan 2010, 16:32

mmike hat geschrieben:Die Angaben aus dem Medienpool werden nicht in den "title" und "alt" Tag übernommen. Ich verwende R 4.2.1 mit TinyMCE und WYSIWYGImage 1.8. Kann mir da jemand weiterhelfen?

Wie sieht denn dein Code aus, mit dem du "title" und "alt" Tag ausließt?
.
<?php print $Footer; ?>

Sven

Ich würde ja die Welt verändern,
doch der Quellcode ist mir zu absurd!


Fragen im Forum stellen - oder - Wieso bekomme ich keine oder nur eine komische Antwort?
REX_DOKU :: REX_WIKI :: REX_FAQ :: REX_WIKIPEDIA
Benutzeravatar
Koala
 
Beiträge: 1581
Registriert: 3. Okt 2005, 13:20

Beitragvon mmike » 20. Jan 2010, 17:52

Das Modul sieht folgendermaßen aus:
Eingabe:
Code: Alles auswählen
<?php
/**
* --------------------------------------------------------------------
*
* Modul-Input: WYSIWYGImage, wysiwyg-Text mit Bild/Bildergalerie
* Version: 1.8, 23.07.2009
*
* Autor: Andreas Eberhard, andreas.eberhard@gmail.com
*        http://rex.andreaseberhard.de
*
* Features:
* - Bild zum Text positionierbar
* - TinyMCE oder markitUp als Editor
* - Anzeige eines Zufallsbildes möglich
* - Bildergalerie über zusätzliches Addon möglich
*
* --------------------------------------------------------------------
*
* Das Modul benötigt die Aktion "rexnames", bei Presave-Action ADD+EDIT
* und bei Postsave-Action ADD+EDIT (REDAXO 4.x)
* [POST|ADD|EDIT] und [PRE|ADD|EDIT] bei Redaxo 3.x
*
* PHP-Code für Aktion "rexnames" (### entfernen!):
*
<?php
   $rexname = rex_request("rexname","array"); // ab REDAXO 4.2.1
   $newname = "";
   for ( $c = 0; $c < 99; $c++ ) {
      if (isset($rexname[$c])) { $newname .= $rexname[$c] . '~~'; }
      else { $newname .= '~~'; }
   }
   if ( isset($REX_ACTION['VALUE'][1]) and $REX_ACTION['VALUE'][1] != '') {
      $rexname = split('~~', $REX_ACTION['VALUE'][1]);
   } else {
      $REX_ACTION['VALUE'][1] = $newname;
   }
?>
*
* --------------------------------------------------------------------
*
* Verwendete Redaxo-Variablen:
*
* REX_VALUE[1]      rexnames
*   rexname[0]      -
*   rexname[1]      Anzeigetyp
*   rexname[2]      Schalter für Zufallsbild
*   rexname[3]      Schalter für Link in neuem Fenster
*   rexname[4]      optionale CSS-Klasse
*   rexname[5]      Bildbeschreibungen aus dem Medienpool (Bildergalerie)
*   rexname[6]      Pre-HTML
*   rexname[7]      Post-HTML
*   rexname[8]      Filter für das Bild (REDAXO 4.0.x)
*   rexname[9]      Filter für die Bildergalerie (REDAXO 4.0.x)
*   rexname[10]     Filter für das MouseOver-Bild (REDAXO 4.0.x)
* REX_VALUE[2]      Wysiwyg-Text
* REX_VALUE[3]      Bildunterschrift
* REX_VALUE[4]      Medienpool-Kategorie
* REX_VALUE[5]      Bildausrichtung
* REX_VALUE[6]      Bild-Größe
* REX_VALUE[7]      Adresse externer Link
* REX_VALUE[8]      Bild-Größe der Galeriebilder
* REX_MEDIALIST[1]  ausgewählte Bilder aus dem Medienpool
* REX_LINK_ID[2]    interner Link
* REX_MEDIA_BUTTON[1] MouseOver-Bild
*
* --------------------------------------------------------------------
*
* Changelog:
* 23.07.2009 Version 1.8
*            - Anpassung an REDAXO 4.2.x ($REX_USER -> $REX['USER'])
*            - jetzt auch Kategorie + Einzelauswahl möglich
*            - MouseOver-Bild möglich 
*            - leichte Anpassung des Backends
*            - Code für Aktion rexnames angepasst ($rexname = rex_request...)
*            - Funktion wysiwygimg_cleanWysiwygCode entfernt   
*            - Filter jetzt auch bei nur einem Bild, Popup-Größe angepasst falls maximale
*              Größe vorgegeben ist
* 02.07.2008 Version 1.7
*            - Action angepasst
*            - markitUp als Editor möglich
*            - erweitert für Addons Lytebox, Lightview
* 19.03.2008 Version 1.6
*            - Anpassung an REDAXO 4.1.x
*            - Bugfix bei Galerie mit Thickbox
*            - Action angepasst
* 07.02.2008 Version 1.5
*            - target="_blank" wird jetzt umgesetzt in onclick="window.open(this.href); return false;"
*            - '<div align="center">' => '<div style="text-align:center;">'
* 10.12.2007 Version 1.4
*            - Bild jetzt auch ohne Resize möglich
*            - Größenangabe für die Galeriebilder möglich
*            - PHP Warnings/Notices usw. entfernt
*            - Anpassung an Redaxo-Versionen ab 3.01 inkl. 4.0.1
*            - neue Option für Bildbeschreibungen (rexname[5])
*            - neue Optionen PRE+POST-Html (rexname[6]+rexname[7])
*            - neue Option Grafik-Filter (rexname[8], ab REDAXO 4.0.x)
*            - neue Option Grafik-Filter für Bildergalerie (rexname[9], ab REDAXO 4.0.x)
*            - CSS überarbeitet, IE7-Hack wg. Rollbalken
*            - erweitert für Addons jQueryLightbox, Shadowbox
*            - Backend überarbeitet
* 25.09.2007 Version 1.3
*            INPUT-Modul
*            - Anpassung an Redaxo 3.01 und 3.11
*            - Anpassung Modulkonfiguration
*            OUTPUT-Modul
*            - Anpassung an Redaxo 3.01 und 3.11
*            - Keine Ausgabe wenn kein Text und keine Bilder ausgewählt
* 22.09.2007 Version 1.2
*            INPUT-Modul
*            - Anpassung der Auswahl Medienpool-Kategorie an Redaxo 3.2.x und 3.3.x
*            - Anpassung des WYSIWYG-Editors an Redaxo 3.2.x und 3.3.x
*            - Bildervorschau jetzt unter dem REX_MEDIALIST_BUTTON
*            - neue Option Zufallsbild anzeigen
*            OUTPUT-Modul
*            - Im Backend keine Links
*            - Zufallsbild anzeigen
* 13.08.2007 Version 1.1
*            INPUT-Modul
*            - rexnames[] für weitere Optionen
*            - Media-List statt Media-Button (mehrere Bilder möglich)
*            - Medienpool-Kategorie als Bilderquelle auswählen (inkl. Zugriffs-Berechtigungen)
*            - Erweitert um Popupimg/Lightbox/Thickbox/Greybox/Slimbox
*            OUTPUT-Modul
*            - rexnames[] für weitere Optionen
*            - Erweitert um Popupimg/Lightbox/Thickbox/Greybox/Slimbox
* 13.11.2006 Version 1.0 Erste Version
*
* --------------------------------------------------------------------
*/

   unset($rxmodule);
   $rxmodule['moduleversion'] = 'WYSIWYGImage 1.8';

   // REDAXO-Version
   $rxmodule['rexversion'] = isset($REX['VERSION']) ? $REX['VERSION'] . $REX['SUBVERSION'] : $REX['version'] . $REX['subversion'];

/**
* markitUp statt TiniMCE für das Textfeld (ab Redaxo 4.0)
* auch im Output-Modul auf true setzen!
*/
   $rxmodule['markitup'] = false;
   
/**
* Darstellungsmöglichkeiten für das Bild
*/
   $rxmodule['myimgpos'] = array(
      "im Text links (Textumfluss)",
      "im Text rechts (Textumfluss)",
      "links vom Text",
      "rechts vom Text",
      "links &uuml;ber dem Text",
      "mittig &uuml;ber dem Text",
      "rechts &uuml;ber dem Text",
      "links unter dem Text",
      "mittig unter dem Text",
      "rechts unter dem Text"
   );

/**
* Werte übernehmen
*/

   $rxmodule['rexname'] = split('~~', "REX_VALUE[1]");
   $rxmodule['rexnames_inuse'] = count($rxmodule['rexname']) > 1;
   if (!$rxmodule['rexnames_inuse']) {
      $rxmodule['rexname'] = array_fill(0, 99, '');
   }

   // ausgewählte Bilder aus dem Medienpool
   $rxmodule['imagelist'] = explode(',', trim("REX_MEDIALIST[1]"));

   // Bildtitel
   $rxmodule['imgtitle'] = stripslashes(trim("REX_VALUE[3]"));

   // Bildausrichtung
   $rxmodule['imgpos'] = trim("REX_VALUE[5]");
   if (trim($rxmodule['imgpos']) == "") {
      $rxmodule['imgpos'] = '0';
   }

   // Thumbnail-Größe
   $rxmodule['imgsize'] = trim("REX_VALUE[6]");
   if ( trim($rxmodule['imgsize']) <> '') {
      if ( !in_array(substr($rxmodule['imgsize'], 0, 1), array('a', 'h', 'w')) ) {
         $rxmodule['imgsize'] = 'w' . $rxmodule['imgsize'];
      }
   }
   
   // Bild-Größe der Galeriebilder
   $rxmodule['galimgsize'] = trim("REX_VALUE[8]");
   if ( trim($rxmodule['galimgsize']) <> '') {
      if ( !in_array(substr($rxmodule['galimgsize'], 0, 1), array('a', 'h', 'w')) ) {
         $rxmodule['galimgsize'] = 'w' . $rxmodule['galimgsize'];
      }
   }

   // Anzeigetyp
   $rxmodule['displaytype'] = trim($rxmodule['rexname']['1']);
   if ($rxmodule['displaytype'] == '') {
      $rxmodule['displaytype'] = 'showonly';
   }

   // interner Link
   $rxmodule['intlink'] = "REX_LINK_ID[2]";
   $rxmodule['intlinkurl'] = rex_GetUrl($rxmodule['intlink']);

   // externer Link
   $rxmodule['extlink'] = trim("REX_VALUE[7]");

   // Zufallsbild
   $rxmodule['randompic'] = trim($rxmodule['rexname'][2]);

   // Link in neuem Fenster?
   $rxmodule['newwindow'] = trim($rxmodule['rexname'][3]);

   // CSS-Klasse
   $rxmodule['cssclass'] = trim($rxmodule['rexname'][4]);

   // Bildbeschreibungen aus dem Medienpool
   $rxmodule['imgdesc'] = trim($rxmodule['rexname'][5]);

   // Pre + Post-HTML
   $rxmodule['prehtml'] = stripslashes(trim($rxmodule['rexname'][6]));
   $rxmodule['posthtml'] = stripslashes(trim($rxmodule['rexname'][7]));

   // Filter für das Bild (ab REDAXO 4.0.x)
   $rxmodule['filter'] = trim($rxmodule['rexname'][8]);

   // Filter für die Bildergalerie (ab REDAXO 4.0.x)
   $rxmodule['galfilter'] = trim($rxmodule['rexname'][9]);

   // Filter für das MouseOver-Bild (ab REDAXO 4.0.x)
   $rxmodule['overfilter'] = trim($rxmodule['rexname'][10]);
?>

<table width="98%" border="0" cellpadding="0" cellspacing="3">

   <tr>
      <td><strong style="display:block;width:185px;">Text:</strong></td>
      <td width="100%" align="right"><strong style="display:block;width:370px;">[ <?php echo $rxmodule['moduleversion']; ?> ]</strong></td>
   </tr>

   <tr>
      <td colspan="2">
      
<?php
// Die folgenden 3 Zeilen dürfen keine führenden Leerzeichen enthalten!
$wysiwigvalue =<<<TEXT
REX_VALUE[2]
TEXT;

if (!$rxmodule['markitup']) {
if ( in_array($rxmodule['rexversion'], array('3.01', '3.11', '32')) ) { // REDAXO 3.2.x, REDAXO 3.01, REDAXO 3.11
$rxmodule['wysiwig'] = new rex_wysiwyg_editor();
/*
// Redaxo 3.2 Standard wysiwyg-Einstellungen
$rxmodule['wysiwig']->buttonrow1 = "styleselect,separator, bold,italic,separator,bullist,numlist,image";
$rxmodule['wysiwig']->buttonrow2 = "link,linkHack,unlink, insertEmail,separator,removeformat,pasteRichtext,code";
$rxmodule['wysiwig']->buttonrow3 = "tablecontrols, separator, visualaid";
$rxmodule['wysiwig']->buttonrow4 = "rowseparator, formatselect,fontselect,fontsizeselect,forecolor,charmap";
*/
$rxmodule['wysiwig']->buttonrow1 = "cut, copy, paste, pastetext, pasteword, separator, justifyleft, justifycenter, justifyright, justifyfull, separator, bullist, numlist, separator, link, linkHack, unlink, insertEmail, separator, image, hr, separator, cleanup, removeformat, code";
$rxmodule['wysiwig']->buttonrow2 = "bold, italic, underline, forecolor, backcolor, charmap, formatselect, separator, tablecontrols, visualaid";
$rxmodule['wysiwig']->buttonrow3 = "empty";
$rxmodule['wysiwig']->buttonrow4 = "empty";
$rxmodule['wysiwig']->stylesheet = $REX['HTDOCS_PATH'] . "files/wysiwyg.css";
$rxmodule['wysiwig']->content = $wysiwigvalue;
$rxmodule['wysiwig']->height = 220;
$rxmodule['wysiwig']->id = 2;
$rxmodule['wysiwig']->show();
}
if ( in_array($rxmodule['rexversion'], array('40', '41', '42')) ) { // REDAXO 4.0.x, 4.1.x, 4.2.x
if (class_exists('rexTiny2Editor')) {
$rxmodule['wysiwig'] = new rexTiny2Editor();
//$rxmodule['wysiwig']->buttons1 = "cut, copy, paste, pastetext, pasteword, separator, justifyleft, justifycenter, justifyright, justifyfull, separator, bullist, numlist, separator, link, linkHack, unlink, insertEmail, separator, image, hr, separator, cleanup, removeformat, code";
//$rxmodule['wysiwig']->buttons2 = "bold, italic, underline, forecolor, backcolor, charmap, formatselect, separator, tablecontrols, visualaid";
$rxmodule['wysiwig']->buttons3 = "";
$rxmodule['wysiwig']->buttons4 = "";
$rxmodule['wysiwig']->editorCSS = $REX['HTDOCS_PATH'] . "files/wysiwyg.css";
$rxmodule['wysiwig']->content = $wysiwigvalue;
$rxmodule['wysiwig']->id = 2;
$rxmodule['wysiwig']->show();
} else {
echo '<br /><font color="#cc0000"><strong>Klasse rexTiny2Editor existiert nicht!<br />Eventuell ist das Addon TinyMCE nicht installiert!?</strong></font>';
}
}
}

if ($rxmodule['markitup'] === true) {
echo '<textarea name="VALUE[2]" class="markitup-text" cols="80" rows="10">'.$wysiwigvalue.'</textarea>';

if (class_exists('a287_markitup')) {
/* Für REDAXO 4.1
a287_markitup::markitup('textarea.markitup-text',
  'h3,h4,h5,separator,bold,italic,separator,listbullet,listnumeric,separator,intlink,extlink,separator,mailtolink,separator,filelink',
  '540','380'
);
*/
/* Für REDAXO 4.2.x */
a287_markitup::markitup('textarea.markitup-text',
  'h1,h2,h3,h4,h5,h6,separator,alignleft,alignright,aligncenter,alignjustify,separator,bold,italic,stroke,underline,superscript,subscript,table,separator,listbullet,listnumeric,separator,image,linkmedia,separator,linkintern,linkextern,linkmailto,separator,blockquote,code,separator,clean,separator,preview',
  '700','400'
);
} else {
echo '<br /><font color="#cc0000"><strong>Klasse a287_markitup existiert nicht!<br />Eventuell ist das Addon markitup nicht installiert!?</strong></font>';
}
}
?>
      </td>
   </tr>

   <tr>
      <td>&nbsp;</td><td>&nbsp;</td>
   </tr>
   
   <tr>
      <td colspan="2" valign="top">
         <strong>Bild(er) ausw&auml;hlen ...</strong><br />
         <em>Wenn mehrere Bilder oder eine Medienpool-Kategorie ausgew&auml;hlt werden wird nur das erste Bild bzw. ein Zufallsbild angezeigt!
         Die weiteren Bilder k&ouml;nnen nur mit zus&auml;tzlichen Addons angzeigt werden (z.B. Lightbox).</em><br />
         REX_MEDIALIST_BUTTON[1]
         <div id="REX_MEDIALIST_PREVIEWC" style="display:none;margin-bottom:25px;">Vorschau:<br /><img id="REX_MEDIALIST_PREVIEW" src="../files/clear.gif" style="cursor:pointer;border:solid 1px #999;" alt="Vorschau schlie&szlig;en" title="Vorschau schlie&szlig;en" /></div>
      </td>
   </tr>

   <tr>
      <td valign="top"><strong>... oder Medienpool-Kategorie mit Bildern ausw&auml;hlen</strong></td>
      <td valign="top">
<?php
   // Zugriffsberechtigungen für Medienpool
   $PERMALL = false;
   if (isset($REX['USER'])) {
      if ($REX['USER']->isValueOf("rights","admin[]") or $REX['USER']->isValueOf("rights","media[0]")) $PERMALL = true;
   }
   if (isset($REX_USER)) {
      if ($REX_USER->isValueOf("rights","admin[]") or $REX_USER->isValueOf("rights","media[0]")) $PERMALL = true;
      $REX['USER'] = $REX_USER;
   }
   $GLOBALS['PERMALL'] = $PERMALL;

   // Select-Options
   if (!function_exists('wysiwygimg_add_mediacat_options_wperm')) {
   function wysiwygimg_add_mediacat_options_wperm( $rxmodule, &$select, &$mediacat, &$mediacat_ids, $groupName = '') {
      global $PERMALL, $REX;
      if(empty($mediacat)) return;
      $mname = $mediacat->getName();
      $mediacat_ids[] = $mediacat->getId();
      if ( in_array($rxmodule['rexversion'], array('3.01', '3.11', '32')) ) { // REDAXO 3.2.x, REDAXO 3.01, REDAXO 3.11
         if ($PERMALL || $REX['USER']->isValueOf("rights","media[".$mediacat->getId()."]")) $select->add_option($mname,$mediacat->getId(), $mediacat->getId(),$mediacat->getParentId());
      }
      if ( in_array($rxmodule['rexversion'], array('40', '41', '42')) ) { // REDAXO 4.0.x, 4.1.x, 4.2.x
         if ($PERMALL || $REX['USER']->isValueOf("rights","media[".$mediacat->getId()."]")) $select->addOption($mname,$mediacat->getId(), $mediacat->getId(),$mediacat->getParentId());
      }
      $childs = $mediacat->getChildren();
      if (is_array($childs)) {
         foreach ( $childs as $child) {
            wysiwygimg_add_mediacat_options_wperm( $rxmodule, $select, $child, $mediacat_ids, $mname);
         }
      }
   }
   } // end function_exists

   // Select aus Medienpool-Kategorien erstellen REDAXO 3.2, REDAXO 3.01, REDAXO 3.11
   if ( in_array($rxmodule['rexversion'], array('3.01', '3.11', '32')) ) {
      $sel_media = new select;
      $sel_media->set_style('width:98%;');
      $sel_media->set_size(1);
      $sel_media->set_name("VALUE[4]");
      $sel_media->set_id("idVALUE4");
      $sel_media->add_option($I18N->msg('pool_kats_no'), "0");
      $sel_media->set_selected("REX_VALUE[4]");
      $mediacat_ids = array();
      if ($rootCats = OOMediaCategory::getRootCategories()) {
         foreach( $rootCats as $rootCat) {
            wysiwygimg_add_mediacat_options_wperm($rxmodule, $sel_media, $rootCat, $mediacat_ids);
         }
      }
      echo $sel_media->out();
   }
   // Select aus Medienpool-Kategorien erstellen REDAXO 4.0.x, 4.1.x, 4.2.x
   if ( in_array($rxmodule['rexversion'], array('40', '41', '42')) ) {
      $sel_media = new rex_select;
      $sel_media->setStyle('width:98%;');
      $sel_media->setSize(1);
      $sel_media->setName("VALUE[4]");
      $sel_media->setId("idVALUE4");
      $sel_media->addOption($I18N->msg('pool_kats_no'), "0");
      $sel_media->setSelected("REX_VALUE[4]");
      $mediacat_ids = array();
      if ($rootCats = OOMediaCategory::getRootCategories()) {
         foreach( $rootCats as $rootCat) {
            wysiwygimg_add_mediacat_options_wperm($rxmodule, $sel_media, $rootCat, $mediacat_ids);
         }
      }
      echo $sel_media->show();
   }
?>
      </td>
   </tr>

   <tr>
      <td valign="top"><strong>maximale Bildgr&ouml;&szlig;e</strong></td>
      <td valign="top">
         <input type="text" size="7" style="width:70px;" name="VALUE[6]" value="<?php echo $rxmodule['imgsize']; ?>" />
         <br />(w=Breite, h=H&ouml;he, a=die l&auml;ngere Seite, z.B.: w128)
      </td>
   </tr>

   <tr>
      <td>&nbsp;</td><td>&nbsp;</td>
   </tr>

   <tr>
      <td valign="top"><strong>Bildausrichtung zum Text</strong></td>
      <td valign="top">
         <select name="VALUE[5]" style="width:98%;">
<?php
   foreach ($rxmodule['myimgpos'] as $key => $value) {
      echo '<option value="'.$key.'" ';
      if ( $rxmodule['imgpos']=="$key" ) {
         echo 'selected="selected" ';
      }
      echo '>'.$value.'</option>';
   }
?>
         </select>
      </td>
   </tr>

   <tr>
      <td valign="top"><strong>Bildunterschrift</strong></td>
      <td valign="top">
      <textarea cols="50" rows="2" title="Doppelklick f&uuml;r mehr/weniger Zeilen" ondblclick="this.rows!=8 ? this.rows=8 : this.rows=2;" name="VALUE[3]" style="width:98%;"><?php echo $rxmodule['imgtitle'] ;?></textarea>
      </td>
   </tr>

<?php if ( in_array($rxmodule['rexversion'], array('40', '41', '42')) ) { // REDAXO 4.0.x, 4.1.x, 4.2.x ?>
   <tr>
      <td valign="top"><strong>Grafik-Filter f&uuml;r das Bild</strong></td>
      <td valign="top">
      <input type="text" size="50" style="width:98%;" name="rexname[8]" value="<?php echo $rxmodule['filter']; ?>" />
      mehrere Filter in der gew&uuml;nschten Reihenfolge durch Komma getrennt<br />
      Vorhandene Filter:&nbsp;
<?php
   $dir = $REX['INCLUDE_PATH'] . '/addons/image_resize/filters/';
   $rxmodule['availablefilters'] = '';
   $k = '';
   if ( $dh = @opendir($dir) ) {
      while ( ($file = @readdir($dh)) !== false ) {
         if ( strstr($file, '.inc.php') and is_file($dir.$file) ) {
            $va = explode('.', $file);
            $rxmodule['availablefilters'] .= $k . $va[1];
            $k = ', ';
         }
      }
      @closedir($dh);
      echo $rxmodule['availablefilters'];
   }
?>
      </td>
   </tr>
<?php } ?>
   
   <tr>
      <td>&nbsp;</td><td>&nbsp;</td>
   </tr>

<?php
   // Anzeigetyp
   $rxmodule['options']['showonly'] = 'Bild nur anzeigen';
   if ( file_exists($REX['HTDOCS_PATH'].'files/popupimg.php') ) {
         $rxmodule['options']['popup'] = 'Bild bei Klick im Popup anzeigen';
   } else {
         $rxmodule['options']['popup'] = 'Bild bei Klick in neuem Fenster anzeigen';
   }
   if (class_exists('OOAddon')) {
      if ( OOAddon::isActivated('greybox') ) {
         $rxmodule['options']['greybox'] = 'Bild(er) bei Klick mit Greybox anzeigen';
      }
      if ( OOAddon::isActivated('jquerylightbox') ) {
         $rxmodule['options']['jquerylightbox'] = 'Bild(er) bei Klick mit jQueryLightbox anzeigen';
      }
      if ( OOAddon::isActivated('lightbox') ) {
         $rxmodule['options']['lightbox'] = 'Bild(er) bei Klick mit Lightbox anzeigen';
      }
      if ( OOAddon::isActivated('lightview') ) {
         $rxmodule['options']['lightview'] = 'Bild(er) bei Klick mit Lightview anzeigen';
      }
      if ( OOAddon::isActivated('lytebox') ) {
         $rxmodule['options']['lytebox'] = 'Bild(er) bei Klick mit Lytebox anzeigen';
      }
      if ( OOAddon::isActivated('pho2') ) {
         $rxmodule['options']['pho2'] = 'Bild(er) bei Klick mit Pho2 anzeigen';
      }
      if ( OOAddon::isActivated('shadowbox') ) {
         $rxmodule['options']['shadowbox'] = 'Bild(er) bei Klick mit Shadowbox anzeigen';
      }
      if ( OOAddon::isActivated('slimbox') ) {
         $rxmodule['options']['slimbox'] = 'Bild(er) bei Klick mit Slimbox anzeigen';
      }
      if ( OOAddon::isActivated('thickbox') ) {
         $rxmodule['options']['thickbox'] = 'Bild(er) bei Klick mit Thickbox anzeigen';
      }
   } else {
      if (file_exists($REX['MEDIAFOLDER'].'/greybox')) {
         $rxmodule['options']['greybox'] = 'Bild(er) bei Klick mit Greybox anzeigen';
      }
      if (file_exists($REX['MEDIAFOLDER'].'/jquerylightbox')) {
         $rxmodule['options']['jquerylightbox'] = 'Bild(er) bei Klick mit jQueryLightbox anzeigen';
      }
      if (file_exists($REX['MEDIAFOLDER'].'/lightbox')) {
         $rxmodule['options']['lightbox'] = 'Bild(er) bei Klick mit Lightbox anzeigen';
      }
      if (file_exists($REX['MEDIAFOLDER'].'/lightview')) {
         $rxmodule['options']['lightview'] = 'Bild(er) bei Klick mit Lightview anzeigen';
      }
      if (file_exists($REX['MEDIAFOLDER'].'/lytebox')) {
         $rxmodule['options']['lytebox'] = 'Bild(er) bei Klick mit Lytebox anzeigen';
      }
      if (file_exists($REX['MEDIAFOLDER'].'/pho2')) {
         $rxmodule['options']['pho2'] = 'Bild(er) bei Klick mit Pho2 anzeigen';
      }
      if (file_exists($REX['MEDIAFOLDER'].'/shadowbox')) {
         $rxmodule['options']['shadowbox'] = 'Bild(er) bei Klick mit Shadowbox anzeigen';
      }
      if (file_exists($REX['MEDIAFOLDER'].'/slimbox')) {
         $rxmodule['options']['slimbox'] = 'Bild(er) bei Klick mit Slimbox anzeigen';
      }
      if (file_exists($REX['MEDIAFOLDER'].'/thickbox')) {
         $rxmodule['options']['thickbox'] = 'Bild(er) bei Klick mit Thickbox anzeigen';
      }
   }
?>
   <tr>
      <td><strong>Anzeigetyp</strong><br /></td>
      <td>
         <select name="rexname[1]" style="width:98%;">
<?php
   foreach ($rxmodule['options'] as $key => $value) {
      echo '<option value="'.$key.'" ';
      if ( $rxmodule['displaytype']=="$key" ) {
         echo 'selected="selected" ';
      }
      echo '>'.$value.'</option>';
   }
?>
         </select>
      </td>
   </tr>

   <tr>
      <td>&nbsp;</td><td>&nbsp;</td>
   </tr>

   <tr>
      <td><strong>oder bei Klick interner Link</strong></td>
      <td>REX_LINK_BUTTON[2]</td>
   </tr>
   <tr>
      <td><strong>oder bei Klick externer Link</strong></td>
      <td><input type="text" size="50" style="width:98%;" name="VALUE[7]" value="<?php echo $rxmodule['extlink']; ?>" /></td>
   </tr>
   <tr>
      <td><strong>Link in neuem Fenster &ouml;ffnen?</strong></td>
      <td>
         <select name="rexname[3]" style="width:75px;">
<?php
foreach (array(0 => 'nein', 1 => 'ja') as $key => $value) {
   echo '<option value="' . $key . '" ';
   if ( $rxmodule['newwindow'] == "$key" ) {
      echo 'selected="selected" ';
   }
   echo '>' . $value . '</option>';
}
?>
         </select>
      </td>
   </tr>

   <tr>
      <td><strong style="display:block;width:185px;">&nbsp;</strong></td>
      <td><strong style="display:block;width:370px;">&nbsp;</strong></td>
   </tr>

</table>

<a id="togglemoduleplusoptions" style="cursor:pointer;"><strong>[ Mehr Optionen ein/ausblenden ]</strong></a><br />
<div id="moduleplusoptions" style="display:none;">

<table width="98%" border="0" cellpadding="0" cellspacing="3">

   <tr>
      <td><strong style="display:block;width:185px;">&nbsp;</strong></td>
      <td width="100%">&nbsp;</td>
   </tr>

   <tr>
      <td valign="top"><strong>Bildbeschriftungen aus dem Medienpool</strong></td>
      <td valign="top">
         <select name="rexname[5]" style="width:98%;">
<?php
foreach (array('keine','Titel','Beschreibung','Copyright','Titel + Beschreibung','Titel + Copyright', 'Beschreibung + Copyright', 'Titel + Beschreibung + Copyright') as $key => $value) {
   echo '<option value="' . $key . '" ';
   if ( $rxmodule['imgdesc'] == "$key" ) {
      echo 'selected="selected" ';
   }
   echo '>' . $value . '</option>';
}
?>
         </select>
         <br />
         Die Bildbeschriftungen werden als <em>title</em>-Attribut bei dem Bild bzw. bei den Bildlinks ausgegeben
      </td>
   </tr>

   <tr>
      <td valign="top"><strong>Bei mehreren Bildern Zufallsbild anzeigen</strong></td>
      <td valign="top">
         <select name="rexname[2]" style="width:75px;">
<?php
foreach (array(0 => 'nein', 1 => 'ja') as $key => $value) {
   echo '<option value="' . $key . '" ';
   if ( $rxmodule['randompic'] == "$key" ) {
      echo 'selected="selected" ';
   }
   echo '>' . $value . '</option>';
}
?>
         </select>
         <br />(Galerie wird auch in zuf&auml;lliger Reihenfolge angezeigt)
      </td>
   </tr>

   <tr>
      <td valign="top"><strong>maximale Bildgr&ouml;&szlig;e der Galeriebilder</strong></td>
      <td valign="top">
         <input type="text" size="7" style="width:70px;" name="VALUE[8]" value="<?php echo $rxmodule['galimgsize']; ?>" />
         <br />(w=Breite, h=H&ouml;he, a=die l&auml;ngere Seite, z.B.: w600)
      </td>
   </tr>

<?php if ( in_array($rxmodule['rexversion'], array('40', '41', '42')) ) { // REDAXO 4.0.x, 4.1.x, 4.2.x ?>
   <tr>
      <td valign="top"><strong>Grafik-Filter f&uuml;r die Galeriebilder</strong></td>
      <td valign="top">
      <input type="text" size="50" style="width:98%;" name="rexname[9]" value="<?php echo $rxmodule['galfilter']; ?>" />
      mehrere Filter in der gew&uuml;nschten Reihenfolge durch Komma getrennt<br />
      Vorhandene Filter:&nbsp; <?php echo $rxmodule['availablefilters']; ?>
      </td>
   </tr>
<?php } ?>
   
   <tr>
      <td>&nbsp;</td><td>&nbsp;</td>
   </tr>

   <tr>
      <td valign="top" style="vertical-align:top;"><strong>MouseOver-Bild</strong></td>
      <td xvalign="top">REX_MEDIA_BUTTON[1]
      (das MouseOver-Bild sollte die gleichen Ausmasse des Bildes haben)
      </td>
   </tr>

   <tr>
      <td valign="top"><strong>Filter f&uuml;r das MouseOver-Bild</strong></td>
      <td valign="top">
      <input type="text" size="50" style="width:98%;" name="rexname[10]" value="<?php echo $rxmodule['overfilter']; ?>" />
      mehrere Filter in der gew&uuml;nschten Reihenfolge durch Komma getrennt<br />
      Vorhandene Filter:&nbsp; <?php echo $rxmodule['availablefilters']; ?>
      </td>
   </tr>
   
   <tr>
      <td>&nbsp;</td><td>&nbsp;</td>
   </tr>
   
   <tr>
      <td valign="top"><strong>Prefix f&uuml;r CSS-Klassen</strong></td>
      <td valign="top"><input type="text" size="50" style="width:98%;" name="rexname[4]" value="<?php echo $rxmodule['cssclass']; ?>" />
      <br />(default wysiwygimg)
      </td>
   </tr>
   
   <tr>
      <td valign="top"><strong>Pre-HTML</strong></td>
      <td valign="top">
         <textarea rows="2" title="Doppelklick f&uuml;r mehr/weniger Zeilen" ondblclick="this.rows!=8 ? this.rows=8 : this.rows=2;" style="width:98%;" name="rexname[6]"><?php echo $rxmodule['prehtml']; ?></textarea>
      </td>
   </tr>

   <tr>
      <td valign="top"><strong>Post-HTML</strong></td>
      <td valign="top">
         <textarea rows="2" title="Doppelklick f&uuml;r mehr/weniger Zeilen" ondblclick="this.rows!=8 ? this.rows=8 : this.rows=2;" style="width:98%;" name="rexname[7]"><?php echo $rxmodule['posthtml']; ?></textarea>
      </td>
   </tr>

</table>

</div>

<?php
   unset($rxmodule);
?>

<script type="text/javascript">
function addEvent( obj, type, fn )
{
   if (obj.addEventListener) {
      obj.addEventListener( type, fn, false );
   } else if (obj.attachEvent) {
      obj["e"+type+fn] = fn;
      obj[type+fn] = function() { obj["e"+type+fn]( window.event ); }
      obj.attachEvent( "on"+type, obj[type+fn] );
   }
}
function rex_media_preview(){
   var strFileName = document.getElementById("REX_MEDIALIST_SELECT_1").value;
   if ( (strFileName.lastIndexOf(".jpg")>0) || (strFileName.lastIndexOf(".jpeg")>0) || (strFileName.lastIndexOf(".gif")>0) || (strFileName.lastIndexOf(".png")>0) || (strFileName.lastIndexOf(".bmp")>0) ) {
      newImage = new Image();
      newImage.onload = function() {
         document.getElementById("REX_MEDIALIST_PREVIEW").src = newImage.src;
         document.getElementById("REX_MEDIALIST_PREVIEWC").style.display = "block";
      }
      newImage.src = "../index.php?rex_resize=196a__"+document.getElementById("REX_MEDIALIST_SELECT_1").value;
   } else {
      document.getElementById("REX_MEDIALIST_PREVIEWC").style.display = "none";
   }
}
function rex_media_hidepreview(){
      document.getElementById("REX_MEDIALIST_PREVIEWC").style.display = "none";
}
function rex_toggle_plusoptions(){
   if ( document.getElementById("moduleplusoptions").style.display == "none" ) {
      document.getElementById("moduleplusoptions").style.display = "block";
   } else {
      document.getElementById("moduleplusoptions").style.display = "none";
   }
}
addEvent(document.getElementById("togglemoduleplusoptions"), "click", rex_toggle_plusoptions);
addEvent(document.getElementById("REX_MEDIALIST_SELECT_1"), "change", rex_media_preview);
addEvent(document.getElementById("REX_MEDIALIST_SELECT_1"), "click", rex_media_preview);
addEvent(document.getElementById("REX_MEDIALIST_PREVIEW"), "click", rex_media_hidepreview);
</script>


Ausgabe:
[code]
<?php
/**
* --------------------------------------------------------------------
*
* Modul-Output: WYSIWYGImage, wysiwyg-Text mit Bild/Bildergalerie
* Version: 1.8, 23.07.2009
*
* Autor: Andreas Eberhard, andreas.eberhard@gmail.com
* http://rex.andreaseberhard.de
*
* Features:
* - Bild zum Text positionierbar
* - TinyMCE oder markitUp als Editor
* - Anzeige eines Zufallsbildes möglich
* - Bildergalerie über zusätzliches Addon möglich
*
* --------------------------------------------------------------------
*
* Das Modul benötigt die Aktion "rexnames", bei Presave-Action ADD+EDIT
* und bei Postsave-Action ADD+EDIT (REDAXO 4.x)
* [POST|ADD|EDIT] und [PRE|ADD|EDIT] bei Redaxo 3.x
*
* PHP-Code für Aktion "rexnames" (### entfernen!):
*
<###?php
$rexname = rex_request("rexname","array"); // ab REDAXO 4.2.1
$newname = "";
for ( $c = 0; $c < 99; $c++ ) {
if (isset($rexname[$c])) { $newname .= $rexname[$c] . '~~'; }
else { $newname .= '~~'; }
}
if ( isset($REX_ACTION['VALUE'][1]) and $REX_ACTION['VALUE'][1] != '') {
$rexname = split('~~', $REX_ACTION['VALUE'][1]);
} else {
$REX_ACTION['VALUE'][1] = $newname;
}
?###>
*
* --------------------------------------------------------------------
*
* Verwendete Redaxo-Variablen:
*
* REX_VALUE[1] rexnames
* rexname[0] -
* rexname[1] Anzeigetyp
* rexname[2] Schalter für Zufallsbild
* rexname[3] Schalter für Link in neuem Fenster
* rexname[4] optionale CSS-Klasse
* rexname[5] Bildbeschreibungen aus dem Medienpool (Bildergalerie)
* rexname[6] Pre-HTML
* rexname[7] Post-HTML
* rexname[8] Filter für das Bild (REDAXO 4.0.x)
* rexname[9] Filter für die Bildergalerie (REDAXO 4.0.x)
* rexname[10] Filter für das MouseOver-Bild (REDAXO 4.0.x)
* REX_VALUE[2] Wysiwyg-Text
* REX_VALUE[3] Bildunterschrift
* REX_VALUE[4] Medienpool-Kategorie
* REX_VALUE[5] Bildausrichtung
* REX_VALUE[6] Bild-Größe
* REX_VALUE[7] Adresse externer Link
* REX_VALUE[8] Bild-Größe der Galeriebilder
* REX_MEDIALIST[1] ausgewählte Bilder aus dem Medienpool
* REX_LINK_ID[2] interner Link
* REX_MEDIA_BUTTON[1] MouseOver-Bild
*
* --------------------------------------------------------------------
*
* Changelog:
* 23.07.2009 Version 1.8
* - Anpassung an REDAXO 4.2.x ($REX_USER -> $REX['USER'])
* - jetzt auch Kategorie + Einzelauswahl möglich
* - MouseOver-Bild möglich
* - leichte Anpassung des Backends
* - Code für Aktion rexnames angepasst ($rexname = rex_request...)
* - Funktion wysiwygimg_cleanWysiwygCode entfernt
* - Filter jetzt auch bei nur einem Bild, Popup-Größe angepasst falls maximale
* Größe vorgegeben ist
* 02.07.2008 Version 1.7
* - Action angepasst
* - markitUp als Editor möglich
* - erweitert für Addons Lytebox, Lightview
* 19.03.2008 Version 1.6
* - Anpassung an REDAXO 4.1.x
* - Bugfix bei Galerie mit Thickbox
* - Action angepasst
* 07.02.2008 Version 1.5
* - target="_blank" wird jetzt umgesetzt in onclick="window.open(this.href); return false;"
* - '<div align="center">' => '<div style="text-align:center;">'
* 10.12.2007 Version 1.4
* - Bild jetzt auch ohne Resize möglich
* - Größenangabe für die Galeriebilder möglich
* - PHP Warnings/Notices usw. entfernt
* - Anpassung an Redaxo-Versionen ab 3.01 inkl. 4.0.1
* - neue Option für Bildbeschreibungen (rexname[5])
* - neue Optionen PRE+POST-Html (rexname[6]+rexname[7])
* - neue Option Grafik-Filter (rexname[8], ab REDAXO 4.0.x)
* - neue Option Grafik-Filter für Bildergalerie (rexname[9], ab REDAXO 4.0.x)
* - CSS überarbeitet, IE7-Hack wg. Rollbalken
* - erweitert für Addons jQueryLightbox, Shadowbox
* - Backend überarbeitet
* 25.09.2007 Version 1.3
* INPUT-Modul
* - Anpassung an Redaxo 3.01 und 3.11
* - Anpassung Modulkonfiguration
* OUTPUT-Modul
* - Anpassung an Redaxo 3.01 und 3.11
* - Keine Ausgabe wenn kein Text und keine Bilder ausgewählt
* 22.09.2007 Version 1.2
* INPUT-Modul
* - Anpassung der Auswahl Medienpool-Kategorie an Redaxo 3.2.x und 3.3.x
* - Anpassung des WYSIWYG-Editors an Redaxo 3.2.x und 3.3.x
* - Bildervorschau jetzt unter dem REX_MEDIALIST_BUTTON
* - neue Option Zufallsbild anzeigen
* OUTPUT-Modul
* - Im Backend keine Links
* - Zufallsbild anzeigen
* 13.08.2007 Version 1.1
* INPUT-Modul
* - rexnames[] für weitere Optionen
* - Media-List statt Media-Button (mehrere Bilder möglich)
* - Medienpool-Kategorie als Bilderquelle auswählen (inkl. Zugriffs-Berechtigungen)
* - Erweitert um Popupimg/Lightbox/Thickbox/Greybox/Slimbox
* OUTPUT-Modul
* - rexnames[] für weitere Optionen
* - Erweitert um Popupimg/Lightbox/Thickbox/Greybox/Slimbox
* 13.11.2006 Version 1.0 Erste Version
*
* --------------------------------------------------------------------
*/

unset($rxmodule);

/**
* markitUp statt TiniMCE für das Textfeld (ab Redaxo 4.0)
* auch im Output-Modul auf true setzen!
*/
$rxmodule['markitup'] = false;

/**
* Im Backend für Vorschau Standard-CSS ausgeben
*/
if ( ($REX['REDAXO'] == '1') and function_exists('rex_register_extension') ) {
rex_register_extension('OUTPUT_FILTER', 'WYSIWYGImage_opf');
if (!function_exists('WYSIWYGImage_opf')) {
function WYSIWYGImage_opf($params) {
$content = $params['subject'];
$WYSIWYGImage_css =<<<END

<style type="text/css">
/**
* Modul WYSIWYGImage, Wysiwyg-Text mit Bild/Bildergalerie
*/
div.wysiwygimg {}
/* ----- Hack only for IE 7 ----- */
*+html div.wysiwygimg {overflow:hidden;}

.wysiwygimg .wysiwygimgclear {clear:both; display:block; font-size:1px; line-height:0px; margin:0; padding:0; position:relative;}

/* Text */
.wysiwygimg .wysiwygimgtext {}

/* Bild und Link */
.wysiwygimg img.wysiwygimg {border:0; margin:1px;}
.wysiwygimg img.wysiwygimg {border:solid 5px #f5f5f5; padding:1px;}
.wysiwygimg a.wysiwygimg img {border:0;padding:0px;vertical-align:top; margin:1px;}

.wysiwygimg a.wysiwygimg, .wysiwygimg a.wysiwygimg:link {border:solid 5px #f6f6f6; display:table; display:inline-block; line-height:0.0em;}
.wysiwygimg a.wysiwygimg:visited {}
.wysiwygimg a.wysiwygimg:hover {border:solid 5px #e4e4e4;}
.wysiwygimg a.wysiwygimg:focus {border:solid 5px #e4e4e4;}
.wysiwygimg a.wysiwygimg:active {border:solid 5px #e4e4e4;}

/* Bildunterschrift */
.wysiwygimg .wysiwygimgtitle {color:#666; font-size:0.8em; font-style:italic; margin:2px 0px;}

/* Wrapper-Classe um Bild und Bildunterschrift*/
.wysiwygimg .wysiwygimgwrap {}

/* Bild links im Text (Textumfluss) */
.wysiwygimg .wysiwygimgleft {float:left; margin:0 1.0em 0 0;}

/* Bild rechts im Text (Textumfluss) */
.wysiwygimg .wysiwygimgright {float: right; margin:0 0 0 1.0em;}

/* Bild oben links */
.wysiwygimg .wysiwygimgtopleft {float:left; margin-bottom:0.5em;}

/* Bild oben rechts */
.wysiwygimg .wysiwygimgtopright {float:right; margin-bottom:0.5em;}

/* Bild oben mittig */
.wysiwygimg .wysiwygimgtopcenter {margin-bottom:0.5em; text-align:center;}
.wysiwygimg .wysiwygimgtopcenter a.wysiwygimg {margin:0 auto;}

/* Bild unten links */
.wysiwygimg .wysiwygimgbottomleft {float:left; margin-top:0.5em;}

/* Bild unten rechts */
.wysiwygimg .wysiwygimgbottomright {float:right; margin-top:0.5em;}

/* Bild unten mittig */
.wysiwygimg .wysiwygimgbottomcenter {margin-top:0.5em; text-align:center;}
.wysiwygimg .wysiwygimgbottomcenter a.wysiwygimg {margin:0 auto;}
.wysiwygimg .wysiwygimgbottomcenter img.wysiwygimg {margin:0 auto;}

/* Für Bilder links/rechts vom Text */
.wysiwygimg table {border-spacing: 0px; font-size:1.0em;}
.wysiwygimg td {vertical-align:top; font-size:1.0em;}

/* Bild links vom Text */
.wysiwygimg td.wysiwygimgleftcol {padding-right:1.0em;}

/* Bild rechts vom Text */
.wysiwygimg td.wysiwygimgrightcol {padding-left:1.0em;}
</style>

END;
return str_replace('</head>', "\n" . $WYSIWYGImage_css . "\n" . '</head>', $content);
}
}
}

/**
* --------------------------------------------------------------------
* Links für weitere Bilder aufbereiten
* --------------------------------------------------------------------
*/
if (!function_exists('wysiwygimg_imageLinks')) {
function wysiwygimg_imageLinks( &$rxmodule ) {
global $REX;
if (@count($rxmodule['imagelist']) < 2) { return; }
for ($i = 1; $i <= @count($rxmodule['imagelist'])-1; $i++) {

$rxmodule['media'] = OOMedia::getMediaByName($rxmodule['imagelist'][$i]);
if ($rxmodule['media']) {
$rxmodule['mediatitle'] = '';

if ( in_array($rxmodule['rexversion'], array('3.01', '3.11', '32')) ) { // REDAXO 3.2.x, REDAXO 3.01, REDAXO 3.11
$rxmodule['w_title'] = str_replace(array("\r\n", "\n", "\r"), ' ', $rxmodule['media']->getTitle());
$rxmodule['w_desc'] = str_replace(array("\r\n", "\n", "\r"), ' ', $rxmodule['media']->getDescription());
$rxmodule['w_copy'] = str_replace(array("\r\n", "\n", "\r"), ' ', $rxmodule['media']->getCopyright());
}
if ( in_array($rxmodule['rexversion'], array('40', '41', '42')) ) { // REDAXO 4.0.x, 4.1.x, 4.2.x
$rxmodule['w_title'] = str_replace(array("\r\n", "\n", "\r"), ' ', $rxmodule['media']->getValue('title'));
$rxmodule['w_desc'] = str_replace(array("\r\n", "\n", "\r"), ' ', $rxmodule['media']->getValue('description'));
$rxmodule['w_copy'] = str_replace(array("\r\n", "\n", "\r"), ' ', $rxmodule['media']->getValue('copyright'));
}
if ($rxmodule['imgdesc'] == '1') {
$rxmodule['mediatitle'] = $rxmodule['w_title'];
}
if ($rxmodule['imgdesc'] == '2') {
$rxmodule['mediatitle'] = $rxmodule['w_desc'];
}
if ($rxmodule['imgdesc'] == '3') {
$rxmodule['mediatitle'] = $rxmodule['w_copy'];
}
if ($rxmodule['imgdesc'] == '4') {
$rxmodule['mediatitle'] = $rxmodule['w_title'] . ' ' . $rxmodule['w_desc'];
}
if ($rxmodule['imgdesc'] == '5') {
$rxmodule['mediatitle'] = $rxmodule['w_title'] . ' ' . $rxmodule['w_copy'];
}
if ($rxmodule['imgdesc'] == '6') {
$rxmodule['mediatitle'] = $rxmodule['w_desc'] . ' ' . $rxmodule['w_copy'];
}
if ($rxmodule['imgdesc'] == '7') {
$rxmodule['mediatitle'] = $rxmodule['w_title'] . ' ' . $rxmodule['w_desc'] . ' ' . $rxmodule['w_copy'];
}
} else {
$rxmodule['mediatitle'] = '';
}
if ($rxmodule['mediatitle'] == '') {
$rxmodule['mediatitle'] = ' ';
}

$rxmodule['original'] = $REX['HTDOCS_PATH'] . 'files/' . $rxmodule['imagelist'][$i];
if (isset($rxmodule['galimgsize']) and ($rxmodule['galimgsize'] <> '') ) {
$rxmodule['resizeto'] = $rxmodule['galimgsize'];
$rxmodule['resizes'] = substr($rxmodule['resizeto'], 0, 1);
if ( !in_array(substr($rxmodule['resizes'], 0, 1), array('a', 'h', 'w')) ) {
$rxmodule['resizes'] = 'w';
}
$rxmodule['resizeto'] = str_replace( array('w', 'h', 'a'), '', $rxmodule['resizeto']);
$rxmodule['original'] = $REX['HTDOCS_PATH'] . "index.php?rex_resize=" . $rxmodule['resizeto'] . $rxmodule['resizes'] . "__" . $rxmodule['imagelist'][$i];
if ( $rxmodule['galfilter'] <> '') {
$va = explode(',', $rxmodule['galfilter']);
foreach( $va as $fi ) {
$rxmodule['original'] .= '&amp;rex_filter[]=' . trim($fi);
}
}
}

$rxmodule['imghtml'] .= '';
if ($rxmodule['displaytype'] == "greybox" ) {
$rxmodule['imghtml'] .= '<a style="display:none;" rel="gb_imageset[gb' . $rxmodule['wysiwygid'] . ']" href="' . $rxmodule['original'] . '" title="' . $rxmodule['mediatitle'] . '">' . $rxmodule['imagelist'][$i] . '</a>';
}
if ($rxmodule['displaytype'] == "jquerylightbox" ) {
$rxmodule['imghtml'] .= '<a style="display:none;" rel="lightbox[jqlb' . $rxmodule['wysiwygid'] . ']" href="' . $rxmodule['original'] . '" title="' . $rxmodule['mediatitle'] . '">' . $rxmodule['imagelist'][$i] . '</a>';
}
if ($rxmodule['displaytype'] == "lightbox" ) {
$rxmodule['imghtml'] .= '<a style="display:none;" rel="lightbox[lb' . $rxmodule['wysiwygid'] . ']" href="' . $rxmodule['original'] . '" title="' . $rxmodule['mediatitle'] . '">' . $rxmodule['imagelist'][$i] . '</a>';
}
if ($rxmodule['displaytype'] == "lightview" ) {
$rxmodule['imghtml'] .= '<a style="display:none;" class="lightview" rel="gallery[lv' . $rxmodule['wysiwygid'] . ']" href="' . $rxmodule['original'] . '" title="' . $rxmodule['mediatitle'] . '">' . $rxmodule['imagelist'][$i] . '</a>';
}
if ($rxmodule['displaytype'] == "lytebox" ) {
$rxmodule['imghtml'] .= '<a style="display:none;" rel="lytebox[lb' . $rxmodule['wysiwygid'] . ']" href="' . $rxmodule['original'] . '" title="' . $rxmodule['mediatitle'] . '">' . $rxmodule['imagelist'][$i] . '</a>';
}
if ($rxmodule['displaytype'] == "pho2" ) {
$rxmodule['imghtml'] .= '<a style="display:none;" rel="pho2[pho2' . $rxmodule['wysiwygid'] . ']" href="' . $rxmodule['original'] . '" title="' . $rxmodule['mediatitle'] . '">' . $rxmodule['imagelist'][$i] . '</a>';
}
if ($rxmodule['displaytype'] == "shadowbox" ) {
$rxmodule['imghtml'] .= '<a style="display:none;" rel="shadowbox[sb' . $rxmodule['wysiwygid'] . ']" href="' . $rxmodule['original'] . '" title="' . $rxmodule['mediatitle'] . '">' . $rxmodule['imagelist'][$i] . '</a>';
}
if ($rxmodule['displaytype'] == "slimbox" ) {
$rxmodule['imghtml'] .= '<a style="display:none;" rel="lightbox[sb' . $rxmodule['wysiwygid'] . ']" href="' . $rxmodule['original'] . '" title="' . $rxmodule['mediatitle'] . '">' . $rxmodule['imagelist'][$i] . '</a>';
}
if ($rxmodule['displaytype'] == "thickbox" ) {
$rxmodule['imghtml'] .= '<a style="display:none;" class="thickbox" rel="tb' . $rxmodule['wysiwygid'] . '" href="' . $rxmodule['original'] . '" title="' . $rxmodule['mediatitle'] . '">' . $rxmodule['imagelist'][$i] . '</a>';
}
}
}
} // End function_exists

/**
* --------------------------------------------------------------------
* Start Modul-Ausgabe
* --------------------------------------------------------------------
*/
$rxmodule['moduleversion'] = 'WYSIWYGImage 1.8';

// REDAXO-Version
$rxmodule['rexversion'] = isset($REX['VERSION']) ? $REX['VERSION'] . $REX['SUBVERSION'] : $REX['version'] . $REX['subversion'];

$rxmodule['rexname'] = split("~~", "REX_VALUE[1]");
$rxmodule['rexnames_inuse'] = count($rxmodule['rexname']) > 1;
if (!$rxmodule['rexnames_inuse']) {
$rxmodule['rexname'] = array_fill(0, 99, '');
}

/**
* WYSIWYG-HTML in Variable übernehmen
*/
$rxmodule['htmlvalue'] =<<< EOT
REX_HTML_VALUE[2]
EOT;
$rxmodule['htmlvalue'] = trim($rxmodule['htmlvalue']);
if ($rxmodule['markitup'] === true) {
$textile = '';
$textile = htmlspecialchars_decode($rxmodule['htmlvalue']);
$textile = str_replace("<br />","",$textile);
$textile = rex_a79_textile($textile);
$textile = str_replace("###","&#x20;",$textile);
$rxmodule['htmlvalue'] = $textile;
}

/**
* sonstige Werte übernehmen
*/
// Bildbeschreibung
$rxmodule['imgtitle'] = stripslashes(trim("REX_VALUE[3]"));

// Medienpool-Kategorie
$rxmodule['mediacat'] = trim("REX_VALUE[4]");

// Bildausrichtung
$rxmodule['imgpos'] = trim("REX_VALUE[5]");
if (trim($rxmodule['imgpos'])=="") {
$rxmodule['imgpos'] = '0';
}

// Thumbnail-Größe
$rxmodule['imgsize'] = trim("REX_VALUE[6]");
if ( trim($rxmodule['imgsize']) <> '') {
if ( !in_array(substr($rxmodule['imgsize'], 0, 1), array('a', 'h', 'w')) ) {
$rxmodule['imgsize'] = 'w' . $rxmodule['imgsize'];
}
}

// Bild-Größe der Galeriebilder
$rxmodule['galimgsize'] = trim("REX_VALUE[8]");
if ( trim($rxmodule['galimgsize']) <> '') {
if ( !in_array(substr($rxmodule['galimgsize'], 0, 1), array('a', 'h', 'w')) ) {
$rxmodule['galimgsize'] = 'w' . $rxmodule['galimgsize'];
}
}

// Anzeigetyp
$rxmodule['displaytype'] = trim($rxmodule['rexname'][1]);

// interner Link
$rxmodule['intlink'] = "REX_LINK_ID[2]";
$rxmodule['intlinkurl'] = rex_GetUrl($rxmodule['intlink']);

// externer Link
$rxmodule['extlink'] = trim("REX_VALUE[7]");

// Zufallsbild
$rxmodule['randompic'] = trim($rxmodule['rexname'][2]);

// Link in neuem Fenster?
$rxmodule['newwindow'] = trim($rxmodule['rexname'][3]);

// CSS-Klasse
$rxmodule['cssclass'] = trim($rxmodule['rexname'][4]);
if ( ($REX['REDAXO'] == '1') or (trim($rxmodule['cssclass'])=='') ) {
$rxmodule['cssclass'] = 'wysiwygimg';
}

// Bildbeschreibungen aus dem Medienpool
$rxmodule['imgdesc'] = trim($rxmodule['rexname'][5]);

// Pre + Post-HTML
$rxmodule['prehtml'] = stripslashes(trim($rxmodule['rexname'][6]));
$rxmodule['posthtml'] = stripslashes(trim($rxmodule['rexname'][7]));

// Filter für das Bild (ab REDAXO 4.0.x)
$rxmodule['filter'] = trim($rxmodule['rexname'][8]);

// Filter für die Bildergalerie (ab REDAXO 4.0.x)
$rxmodule['galfilter'] = trim($rxmodule['rexname'][9]);

// Filter für das MouseOver-Bild (ab REDAXO 4.0.x)
$rxmodule['overimage'] = trim('REX_FILE[1]');

// Filter für das MouseOver-Bild (ab REDAXO 4.0.x)
$rxmodule['overfilter'] = trim($rxmodule['rexname'][10]);

// damit das Modul mehrfach in einem Artikel verwendet werden kann
// wird hier eine Zufallszahl ermittelt!
srand((double)microtime()*1000000);
$rxmodule['wysiwygid'] = rand (100,900) . rand (100,900);

/**
* --------------------------------------------------------------------
* Bilder aus Medialist oder Medienpool-Kategorie ermitteln
* --------------------------------------------------------------------
*/

// Bilddateien aus Medialist
$rxmodule['imagelist'] = explode(',', trim("REX_MEDIALIST[1]"));

// Wenn eine Medienpool-Kategorie vorgegeben ist dann die Bilder aus dieser Kategorie verwenden
if (isset($rxmodule['mediacat']) and ($rxmodule['mediacat']<>'') and ($rxmodule['mediacat']<>'0')) {
$rxmodule['media'] = OOMediaCategory::getCategoryById($rxmodule['mediacat']);
if ($rxmodule['media']) {
$rxmodule['mediafiles'] = $rxmodule['media']->getFiles();
if (count($rxmodule['mediafiles']) > 0) {
$rxmodule['filetypes'] = array('jpg','gif','jpeg','png','bmp');
if (is_array($rxmodule['imagelist']) and (count($rxmodule['imagelist'])==1) and ($rxmodule['imagelist'][0]=='')) {
$rxmodule['imagelist'] = array();
}
foreach ($rxmodule['mediafiles'] as $rxmodule['mediafile']) {
$rxmodule['file'] = $rxmodule['mediafile']->getFileName();
$rxmodule['fileinfo'] = pathinfo($rxmodule['file']);
$rxmodule['extension'] = strtolower($rxmodule['fileinfo']['extension']);
if (in_array($rxmodule['extension'],$rxmodule['filetypes'])) {
$rxmodule['imagelist'][] = $rxmodule['file'];
}
}
}
}
}

// Array mischen wg. Zufallsbild
if ( ($rxmodule['randompic'] == '1') and (count($rxmodule['imagelist']) > 1) ) {
shuffle($rxmodule['imagelist']);
}

/**
* Bild vorhanden -> HTML-Code für Bild und evtl. Link zusammenbauen
*/
if ($rxmodule['imagelist'][0] != '') {

$rxmodule['original'] = $REX['HTDOCS_PATH'] . 'files/' . $rxmodule['imagelist'][0];

$rxmodule['info'] = getimagesize($rxmodule['original']);

$rxmodule['pwidth'] = $rxmodule['info'][0]+20;
$rxmodule['pheight'] = $rxmodule['info'][1]+30;

if ((isset($rxmodule['galimgsize']) and ($rxmodule['galimgsize'] <> ''
mmike
 
Beiträge: 4
Registriert: 20. Jan 2010, 13:16
Wohnort: Bautzen


Zurück zu Module/Aktionen [R4]

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste