Hallo,
wie meine Überschrift schon sagt .. kann man die Beispielbilder, die angezeigt werden, wenn man einen Inhalt "Text mit Bild" erstellen will, mit den Bildern des eigenen Bilderordners (vielleicht fileadmin/contentimg/) bestücken?
Gruß, Grille
Hallo,
wie meine Überschrift schon sagt .. kann man die Beispielbilder, die angezeigt werden, wenn man einen Inhalt "Text mit Bild" erstellen will, mit den Bildern des eigenen Bilderordners (vielleicht fileadmin/contentimg/) bestücken?
Gruß, Grille
Ich habe jetzt soviel herrausbekommen:
Die Bilder sind von der Extension "lorem_ipsum" (sie erstellt auf Knopfdruck Blindtexte) ...
in der php-Datei "class.tx_loremipsum_wiz.php in der Zeile 119 wird der Pfad zur extension in die Variable $extPath gespeichert.
$extPath = t3lib_extMgm::extPath('lorem_ipsum');
ich weis leider noch nicht wie man daraus den Pfad zum Fileadmin bastelt.
wenn ich es richtig verstehe, wird hier der Pfad ermittelt:
$extPath = t3lib_extMgm::extPath('lorem_ipsum');
und hier wird aufgrund der merkwürdigen Namensgebung der Bilder von a1 bis f6, eine Tabelle aufgebaut die alle Bilder zeigt:
for($a=0;$a<6;$a++){
$tCells = array();
for($b=0;$b<7;$b++){
$absfile = $extPath.'images/'.chr($ordA+$a).($b+1).'.jpg';
$onclick = "setFormValueFromBrowseWin('".$PA['itemName']."',unescape('".rawurlencode($absfile)."'),unescape('".rawurlencode(basename($absfile))."')); return false;";
$tCells[].= '<a href="#" onclick="'.htmlspecialchars($onclick).'">'.t3lib_BEfunc::getThumbNail('thumbs.php', $absfile).'</a>';
}
$tdAttrib = ' style="width: 56px;" align="center" bgcolor="#cccccc"';
$tRows[] = '
<tr>
<td'.$tdAttrib.'>
'.implode('</td><td'.$tdAttrib.'>', $tCells).'
</td>
</tr>';
}
also muss man diese Schleife entfernen, und alle dateien aus dem gewünschten Ordner auslesen und dann diese auflisten.
OK .. fertig!
das unten folgende Skript ermöglicht die Anzeige von Bildern die sich in Ordner befinden (in meinem Beispiel : im Typo3-Verzeichnis "fileadmin/contentimg/")
Nochmal zur Erklärung, bei der Extension "lorem_ipsum" werden Dummy-Bilder in einer Tabelle gezeigt, wenn man einen Seiteninhalt "Text mit Bild" erstellen will.
Nachfolgendes Script verhindert die Ausgabe der Dummy-Bilder und ermöglicht stattdessen die Ausgabe eigener Bilder.
bearbeitet werden muss die Datei "class.tx_loremipsum_wiz.php" im verzeichnis "typo3conf/ext/lorem_ipsum"
ich möchte auch darauf hinweisen, dass diese Änderung sicher sehr unsauber ist, und jeder echte Typo3-Profi darüber die Nase rümpfen würde/wird!
dieser Code muss unterhalb der Zeile "case 'images':" eingefügt werden:
// Der Bilderpfad im Typo3 Verzeichnis ... muss man selbst angeben
$mein_bilderpfad = '/fileadmin/contentimg/';
// Ausgabecontainer
$ausgabe='';
// ermittelt den absoluten Pfad und verlängert ihn um /fileadmin/contentimg/ (wo sich die Bilder befinden)
$verzeichnis = $_SERVER["DOCUMENT_ROOT"].$mein_bilderpfad;
// oeffnet das Verzeichnis
$verzeichnis_res = openDir($verzeichnis);
// liest das Verzeichnis
while ($file = readDir($verzeichnis_res)) {
// verhindert dass höhere Verzeichnisse mit ausgelesen werden
if ($file != "." && $file != "..") {
// ermittelt die Dateiinformationen der gerade sich in der Schleife befindlichen Datei
$dateiinfo = pathinfo($verzeichnis.$file);
// Es sollen nur Bilddateien "GIF", "PNG" und "JPG" weiterbearbeitet werden
if ($dateiinfo["extension"] == 'png' or $dateiinfo["extension"] == 'gif' or $dateiinfo["extension"] == 'jpg'){
// ist der komplette absolute Pfad zur Datei und der Dateiname
$absfile = $verzeichnis.$file;
// erstellt die onClick-Funktion für das Bild
$onclick = "setFormValueFromBrowseWin('".$PA['itemName']."',unescape('".rawurlencode($absfile)."'),unescape('".rawurlencode(basename($absfile))."')); return false;";
// erstellt ein Vorschaubildchen vom Bild und schließt es in einen Link ein der die oben erstellte onClick-Funktion ermoeglicht
$ausgabe.= '<div style="padding:5px; display:inline;"><a href="#" onclick="'.htmlspecialchars($onclick).'">'.t3lib_BEfunc::getThumbNail('thumbs.php', $absfile).'</a></div>';
}
}
}
// übergibt die Bilderliste (ausgabe) an die "output-Variable"
$output = '<div style="width:400px;">'.$ausgabe.'</div>';
// verschönerungen bitte selbst erstellen (Tabellenausgabe oder andere Faxen)
und dieser code muss dafür gelöscht oder auskommentiert werden:
/*
$ordA = ord('a');
$extPath = t3lib_extMgm::extPath('lorem_ipsum');
$tRows = array();
for($a=0;$a<6;$a++) {
$tCells = array();
for($b=0;$b<7;$b++) {
$absfile = $extPath.'images/'.chr($ordA+$a).($b+1).'.jpg';
$onclick = "setFormValueFromBrowseWin('".$PA['itemName']."',unescape('".rawurlencode($absfile)."'),unescape('".rawurlencode(basename($absfile))."')); return false;";
$tCells[].= '<a href="#" onclick="'.htmlspecialchars($onclick).'">'.
t3lib_BEfunc::getThumbNail('thumbs.php', $absfile).
'</a>';
}
$tdAttrib = ' style="width: 56px;" align="center" bgcolor="#cccccc"';
$tRows[] = '
<tr>
<td'.$tdAttrib.'>
'.implode('</td><td'.$tdAttrib.'>', $tCells).'
</td>
</tr>';
}
$output = '
<table border="0" cellpadding="2" cellspacing="2" style="border: 1px solid black; margin-top: 5px; margin-bottom: 15px;">
<tr><td colspan="7" bgcolor="#aaaaaa"><b>Click a dummy image to select it:</b></td></tr>
'.implode('',$tRows).'
<tr><td colspan="7"><em>All images are copyright © Kasper Skårhøj 2001-2004 and licensed in these resolutions under Open Content License.</em></td></tr>
</table>';
*/
etwas erweitert, damit mehrere Bild-Verzeichnisse gleichzeitig nutzen kann:
case 'images':
$ausgabe='';
$mein_bilderpfad_array = array(
'/fileadmin/contentimg/',
'/uploads/tf/',
'/uploads/pics/'
);
foreach ( $mein_bilderpfad_array as $mein_bilderpfad){
$verzeichnis = $_SERVER["DOCUMENT_ROOT"].$mein_bilderpfad;
$verzeichnis_res = openDir($verzeichnis);
while ($file = readDir($verzeichnis_res)) {
if ($file != "." && $file != "..") {
$dateiinfo = pathinfo($verzeichnis.$file);
if ($dateiinfo["extension"] == 'png' or $dateiinfo["extension"] == 'gif' or $dateiinfo["extension"] == 'jpg'){
$absfile = $verzeichnis.$file;
$onclick = "setFormValueFromBrowseWin('".$PA['itemName']."',unescape('".rawurlencode($absfile)."'),unescape('".rawurlencode(basename($absfile))."')); return false;";
$ausgabe.= '<div style="padding:5px; display:inline;"><a href="#" onclick="'.htmlspecialchars($onclick).'">'.t3lib_BEfunc::getThumbNail('thumbs.php', $absfile).'</a></div>';
}
}
}
} //ende der foreach-schleife
$output = '<div style="width:400px;">'.$ausgabe.'</div>';
break;