|
Verfasst am: 06. 04. 2009 [13:31]
|
|
MB-Grille
Themenersteller
Dabei seit: 12.02.2009
Beiträge: 43
|
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
|
|
Verfasst am: 06. 04. 2009 [16:11]
|
|
MB-Grille
Themenersteller
Dabei seit: 12.02.2009
Beiträge: 43
|
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.
|
|
Verfasst am: 06. 04. 2009 [19:46]
|
|
MB-Grille
Themenersteller
Dabei seit: 12.02.2009
Beiträge: 43
|
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.
|
|
Verfasst am: 07. 04. 2009 [02:02]
|
|
MB-Grille
Themenersteller
Dabei seit: 12.02.2009
Beiträge: 43
|
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 != ".."<img src="typo3conf/ext/mm_forum//res/smilies/icon_wink.gif" alt="icon_wink.gif" /> {
// 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>';
*/
|
|
Verfasst am: 07. 04. 2009 [19:12]
|
|
MB-Grille
Themenersteller
Dabei seit: 12.02.2009
Beiträge: 43
|
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 != ".."<img src="typo3conf/ext/mm_forum//res/smilies/icon_wink.gif" alt="icon_wink.gif" /> {
$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;
|