Vielleicht kann mir ja hier jemand mit php-kenntnissen helfen. Ich habe ein Modul gebaut, aber ein paar kleine Probleme damit.
1. Ich bekomme mit dem Addon markitup eine <div class="bild"> - wozu ist das gut?
2. Das Modul funktioniert, wenn man ein Bild eingefügt hat. Läßt man den Bereich leer, zerhaut es den Quellcode der Seite. Kann jemand evtl. mal darüber schauen, ob ich irgendwo einen Denkfehler habe? Wenn kein Bild eingefügt ist, soll auch der Code gar nicht ausgegeben werden...
Eingabe:
-----------------------------------------------------
- Code: Alles auswählen
<?php
if(OOAddon::isAvailable('markitup'))
{
?>
<strong>Text:</strong><br/>
<textarea name="VALUE[1]" class="markitup-text" cols="80" rows="10">REX_VALUE[1]</textarea>
<?php
a287_markitup::markitup('textarea.markitup-text',
'h1,h2,separator,bold,italic,separator,listbullet,listnumeric,separator,intlink,extlink,separator,mailtolink,separator,filelink',
'580','380'
);
}else
{
echo rex_warning('Dieses Modul benötigt das "textile" Addon!');
}
?>
<strong>Bild auswählen bzw. austauschen</strong>:<br />
REX_MEDIA_BUTTON[1]
<?
if ("REX_FILE[1]" != "") {
echo "<br/><strong>Vorschau / Verwendetes Bild</strong>:<br/>";
echo "<img src=".$REX[HTDOCS_PATH]."index.php?rex_resize=120w__REX_FILE[1]><br />";
}
?>
<br/>
<strong>Ausrichtung des Artikelfotos</strong>:<br />
<select name="VALUE[9]" class="inp100">
<option value='l' <? if ("REX_VALUE[9]" == 'l') echo 'selected'; ?>>links vom Text</option>
<option value='r' <? if ("REX_VALUE[9]" == 'r') echo 'selected'; ?>>rechts vom Text</option>
</select><br />
<strong>Bild vergrößern?</strong>:<br />
<select name="VALUE[5]" class="inp101">
<option value='n' <? if ("REX_VALUE[5]" == 'n') echo 'selected'; ?>>nein</option>
<option value='j' <? if ("REX_VALUE[5]" == 'j') echo 'selected'; ?>>ja</option>
</select><br />
<br />
Ausgabe:
-----------------------------------------------------
- Code: Alles auswählen
<?php
$mediaObject = OOMedia::getMediaByName('REX_FILE[1]');
$title = $mediaObject->getTitle();
$copyright = $mediaObject->getCopyright();
$description = $mediaObject->getDescription();
// Ausrichtung des Bildes für CSS
if ("REX_VALUE[9]" == "l") $float = "flLeft";
if ("REX_VALUE[9]" == "r") $float = "flRight";
// Bild vergrößern?
if ("REX_VALUE[5]" == "n") $large = '<div class="'.$float.'"><img src="index.php?rex_resize=148c__120h__REX_FILE[1]" alt="'.$title.' "/></div>';
if ("REX_VALUE[5]" == "j") $large = '<div class="'.$float.'"><a class="fancygroup" href="index.php?rex_resize=800a__REX_FILE[1]" title="'.$description.' '.$title.'"><img src="index.php?rex_resize=148c__120h__REX_FILE[1]" alt="'.$title.' "/></a></div>';
// Wenn Bild eingefuegt wurde, Code schreiben
$file = "";
if ("REX_FILE[1]" != "") $file = $large;
// Fliesstext
if(OOAddon::isAvailable('markitup'))
{
$text =<<< EOT
REX_HTML_VALUE[1]
EOT;
$text = html_entity_decode($text);
if (trim($text) != "")
{ $textile = new Textile;
$text = $textile->TextileThis($text);}
print $file.$text;
}else {echo rex_warning('Dieses Modul benötigt das "textile" Addon!');}
?> <br style="clear:both;">
Vielen Dank
Gruß
ralf

