Zum Inhalt springen

erweiterung dh_popupimg_caption

Erstellt am 3. Februar 2005 · 2 Antworten · letzte Antwort am 7. Februar 2005

Tags: Bilder, Frage

lovepe ·

Hallo, kann mir jemand helfen?

ich bin an einer seite wo bilder mit bildunterschriften angezeigt werden müssen. dies ist auch überhaupt kein problem. mit dem captionSplit kann man ja bekanntlich die bildunterschriften für jedes einzelne bild (pro zeile) einfügen.

nun bräuchte ich aber noch die option, wenn ma auf enlarge klickt, dass da im popup auch eine bildunterschrift angezeigt wird. mit der erweiterung dh_popupimg_caption ist das sehr schön möglich, nur habe ich das problem, dass bei jedem bild jeweils die erste zeile des feldes "Caption:" bzw. "Caption in click-enlarge popup" angezeigt wird.

gibt es hier auch eine möglichkeit eine art captionSplit zu machen?

vielen dank im voraus für eure hilfe.
grüsse thomas.

lovepe ·

Na gut, so wie es aussieht, gibt es niemand der dieselbe extension wie ich gebraucht bzw. dasselbe problem wie ich habe.

nun habe ich die lösung gefunden, ich bin jedoch nicht 100% sicher ob die lösung auch wircklich keine komplikationen mit anderen extensions erzeugt.

in der datei class.tx_dhpopupimgcaption.php scheint es ein problem mit dem array der variablen $cId zu geben, im popup wird immer die erste zeile des caption-feldes ausgegeben; das splitten funktioniert folglich.

ich habe nun eine globale variable erzeugt ($i) die nach jedem durchgang mit 1 addiert wird (--> die klassischen php funktionen). der code sieht dann wie folgt aus:

class tx_dhpopupimgcaption {
    var $cObj;    // reference to the calling object.
    
    function main($content,$conf)    {
 -->     global $TSFE, $i;
 -->     if (empty($i)) { $i = 0; }

        $captionArray = split("
",$this->cObj->stdWrap("",$conf["caption."]));
        $imagesArray = split(",",$this->cObj->stdWrap("",$conf["files."]));

        $file = $content;
        $cId = array_search (str_replace($conf["imgPath"],"",$file), $imagesArray);
 -->     $conf["wrap"] = str_replace ("###IMAGE_CAPTION###",$captionArray[$i],$conf["wrap"]);
 -->     #ALT: $conf["wrap"] = str_replace ("###IMAGE_CAPTION###",$captionArray[$cId],$conf["wrap"]);
 -->     $i = $i+1;

        $out = "&title=".urlencode($conf["title"])."&width=".$conf["width"]."&height=".$conf["height"]."
                &bodyTag=".urlencode($conf["bodyTag"])."&wrap=".urlencode($conf["wrap"]);
        $md5_value = md5($file."|".$conf["width"]."|".$conf["height"]."|".$conf["effects"]."|".
                $GLOBALS["TYPO3_CONF_VARS"]["SYS"]["encryptionKey"]."|");
        return "showpic.php?file=".urlencode($file) . $out . "&md5=" . $md5_value ;
    }
}