Registered (R) hochstellen
Aus Contao Community Documentation
Unvollständiger Artikel: dieser Artikel ist noch nicht sauber bearbeitet.
Bitte erweitere ihn und entferne erst anschliessend diesen Hinweis. |
betrifft | |
---|---|
TYPOlight Version | ab 2.6 |
Contao Version | ab 2.9 |
Beim Arbeiten mit Produkten, z.B. in Katalogen, kommt es häufiger vor, dass man das Registered(R)-Symbol verwenden muss. Für die Auftraggeber ist ein einfaches Weglassen des Zeichens keine Alternative, da diese Markenrechte viel Geld gekostet haben und es jeder sehen soll, dass das Produkt markenrechtlich geschützt ist.
Inhaltsverzeichnis
®-Zeichen auf der Computertastatur
Auf einem PC kann das ® mit der Tastenkombination [AltGr]+[⇧]+[R], auf MS-Windows-Systemen mit [Alt]+[0][1][7][4], in MS Word mit [AltGr]+[R] und auf Apple-Systemen mit [Alt]+[R] erzeugt werden. Unter Linux erzeugt man dieses Zeichen auf der deutschen Standardtastatur mit der Tastenkombination [Shift]+[AltGr]+[R] oder über die Compose-Kombination [Compose],[O],[R], falls diese nicht zur Verfügung steht.
.
Aufgabenstellung
Da das ® relativ zur Schrift meist hochgestellt verwendet wird, muss es bei jeder Verwendung extra formatiert werden. In HTML wird es dazu in die <sup>®</sup>-Tags eingeschlossen. Bei der Eingabe von laufendem Text ist das sehr lästig. Wenn das Zeichen beispielsweise in Titelfeldern im Backend verwendet wird, ist es normalerweise gar nicht möglich, HTML-Tags einzugeben, da Contao diese beim Speichern automatisch entfernt. Das kann man zwar mit Einträgen in der dcaconfig.php anpassen, es soll aber eine einfachere Möglichhkeit geben.
.
Lösungansätze
Hier mein Dank an die Kollegen aus dem IRC-Chat für die zahlreichen Ideen und Anregungen.
1. kleines JavaScript
Ein JavaScript würde nach dem Aufbau der Webseite hingehen und nachträglich die ® mit dem <sup>-Tag umschließen. Voraussetzung ist dabei, dass beim Betrachter im Browser JavaScript aktiviert ist.
.
2. über den Ausgabe-Hook mit einer kleinen Erweiterung
Diese Variante verspricht am meisten Erfolg, da hier die Webseite vor der Auslieferung entsprechend manipuliert werden kann. Es kostet natürlich etwas Überwindung, dafür eine Erweiterung zu schreiben, aber wir werden weiter unten sehen, dass es gar nicht so schlimm ist.
3. Bei der Eingabe im Backend modifizieren
Man könnte auch das Backend derart modifizieren, dass eine Speicher-Callback-Routine die Aufgabe ausführt. Dann muss man aber dafür sorgen, dass auch beim Laden über einen Load-Callback die Anpassung erstmal herausgenommen wird, da der Save-Callback sie ja dann wieder einbaut. Außerdem wären diese Callbacks für viele Felder in vielen Modulen notwendig. Diesen Ansatz kann man also auslassen.
.
Erstellung eines kleinen Contao-Moduls
-- do_while - 2010-08-14