RoundCube und HTML-Emails – kann keine Bilder einfügen
Abgelegt unter: Off-TopicNachdem ich gestern ziemlich lange mit der Suche nach der Lösung für dieses Problem verbrachte und keine fertige Antwort fand, wollte ich mein “Heureka!” eigentlich direkt im RoundCube-Forum posten. Allerdings muss ich sagen, dass ich mich bei der Registrierung von einem wirklich fiesen Captcha PLUS noch einer zusätzlichen Sicherheitsabfrage ziemlich abgeschreckt fühle – und zweitens habe ich immer noch nicht die eigentlich automatisch verschickte Aktivierungs-Email bekommen. Irgendwie wollen die anscheinend keine neuen Mitglieder. Also gibts die Lösung halt hier, bevor ich sie wieder vergesse…
Generelles:
Für alle, die RoundCube bereits kennen, ist eine Vorstellung ja überflüssig, aber da ich noch nicht vielen begegnet bin, die bei diesem Namen nicht mal erst mit der Stirn gerunzelt haben: RoundCube ist ein webbasierter Mailer. Ähnlich wie Squirrelmail oder Horde. Allerdings gefällt mir RoundCube irgendwie besser, einfach weil es viel mehr nach Applikation als nach Web-Interface aussieht. Zum Laufen bekommt man es wohl auf jedem PHP-fähigen Webserver und die Konfiguration ist überraschend einfach – nach nur wenigen Minuten lief mein RoundCube perfekt. Da war die Einrichtung des dazugehörigen Postfix/Dovecot-Gespanns weit mehr Arbeit.
Das Symptom
Eine meiner Benutzerinnen klagte, dass sie beim Erstellen von HTML-Emails keine Bilder in den Text einfügen könne. Normalerweise hängt man ja erst ein Bild als Attachment dran, dann hat man im entsprechenden Dialogfenster des eingebauten TinyMCE eine Auswahlliste mit den bereits als Bilder angehängten Attachments:

Genau diese Auswahlliste vermisste sie allerdings. Und bei mir gings. Also wie so oft: ich habe keine Ahnung, was sie da verkehrt gemacht hat…
Nach ziemlichem Suchen fiel mir dann allerdings das offensichtlichste ein: das Bild, das sie laut dem mitgeschickten Screenshot angehängt hatte, hiess DSC_00273.JPG. Na – wem fällt das Problem auf? Richtig: die Großbuchstaben…
Als ich es dann nämlich selbst mal mit einer Testdatei versuchte, deren Endung in Großbuchstaben war, fehlte auch mir plötzlich diese Auswahlbox. Hah!
Die Lösung
Eigentlich Quick and Dirty: das Problem steckt im TinyMCE, genauer gesagt in der Datei editor_images.js, die sich üblicherweise im Unterverzeichnis /js befindet.
Dort liest man nämlich in Zeile 19:
if (fname.match(/\.(bmp|gif|png|jpg|jpeg)$/))
Und das ist natürlich ein Case-Sensitiver Match, d.h. es funktioniert wirklich nur mit z.B. .jpg, aber nicht mit .JPG oder auch .JpG.
Also einfach schnell in einen Case-Insensitiven Match verändern:
if (fname.match(/\.(bmp|gif|png|jpg|jpeg)$/i))
(also das “i” am Ende anhängen)
Und schon funktionierts auch mit Großbuchstaben!
Vielleicht konnte ich damit ja anderen, die das gleiche Problem haben oder noch haben werden, ein wenig Sucharbeit ersparen…
Das könnte Dich auch interessieren:
- Der SEOdiot – jetzt mit MEHR POWER! Das würde zumindest Tim Taylor sagen. Diese Website wird jetzt nämlich von einem satten QuadCore-Prozessor angetrieben. Dieser werkelt in einem...
- Eine neue Herausforderung… Es ist so weit. Der SEOdiot treibt wieder im Agentur-Umfeld sein Unwesen. Am Montag trat ich die Mission als Head...
- The SEOdiot is back! Möglicherweise ist dem Einen oder Anderen aufgefallen, dass ich seit etwa Oktober keinen einzigen Beitrag mehr verfasst habe. Der Grund...
- Google und Parameter-URLs – Resignation vor der Wirklichkeit Danke, Google. Als ich heute morgen die Twittersphere überflog, sprangen mir dutzende Meldungen entgegen, dass Du jetzt die Möglichkeit bietest,...
Diesen Artikel per Email weiterempfehlen


uih .. der Bug tut ja richtig aua!
Das kommt davon, wenn selbst die tollsten Programme von Leuten entwickelt werden, deren eigene Umgebungsentwicklung NICHT der Zielplattform entspricht.
Das Problem hab ICH wenigstens nimmer
cu, w0lf.
Antworten
Diskutiere mit - gib einen Kommentar ab