SebastianStieme
Returning Observer

typografische Anführungszeichen von kopierten Texten, automatisch durch nicht typografische automatisch ersetzen

Hallo FS Comunity,

ich/wir haben die Anforderung "typografische Anführungszeichen von kopierten Texten, automatisch durch nicht typografische automatisch ersetzen" von unserem Kunden erhalten. Leider haben wir hierfür keine gute Idee, wie wir das umsetzen könnten, deshalb frage ich einmal hier an dieser Stelle ob vlt. von euch einer eine Idee dazu hat, wie man das bewerkstelligen könnte?

Es geht also darum das ein Redakteur irgendwo einen Text kopiert, also z.B. aus Word oder dem Internet Browser und kopiert diesen Text in FirstSpirit in ein Input-Feld, DOM oder eine Textarea. Dabei sollen dann aus den mit kopierten typografische Anführungszeichen nicht typografische Anführungszeichen werden.

Vielen Dank für eure Hilfe.

0 Kudos
6 Replies
marian
Crownpeak (Retired)

Hallo!

was ist mit den Konvertierungsregeln, die FirstSpirit von Haus aus anbietet? Damit können (Sonder-)Zeichen konvertiert werden.

Auszug aus der ODFS:

Mit dem Attribut "convertEntities" werden Sonderzeichen, die in die Eingabekomponente eingegeben wurden, bei der Ausgabe in HTML-Zeichen umgewandelt.

Es gibt hier drei Ausprägungen:

  • convertEntities="NONE" (Standard)
  • convertEntities="STANDARD"
  • convertEntities="QUOTE"

Bei NONE werden keinerlei Konvertierungsregeln angewendet.

Wird STANDARD angegeben, so werden die Konvertierungsregeln angewendet, die im Bereich "convert" der ausgewählten Konvertierungsregel des Vorlagensatzes stehen.

Die Angabe QUOTE schließt STANDARD explizit mit ein. Es wird jedoch zusätzlich der Bereich "quote" der Konvertierungsregel angewendet.

Das wäre die Möglichkeit es direkt im Formular umzuwandeln. Vorzug würde ich aber immer der Variante im Ausgabekanal geben mit .convert2

z.B. $CMS_VALUE(pt_text.convert2)$. Welche Werte/Zeichen konvertiert werden sollen, müsste in den Servereinstellungen hinterlegt werden.

Bests
Marian
0 Kudos
mbergmann
Crownpeak employee

Hallo Sebastian,

die Nutzung von convertEntities im Formular würde ich (wie Marian auch) auf keinen Fall empfehlen. Aus der Erfahrung heraus kann das im späteren Verlauf zu diversen Problemen führen, weil es - kurz gesagt - nicht flexibel genug ist.

Darüber hinaus kannst Du über den ServerManager (Server-Eigenschaften) auch eigene Konvertierungsregeln definieren, falls Du das lieber "kleinteiliger" haben möchtest. Z.B. tatsächlich eine eigene zusätzliche Regel nur für diesen Fall (bzw. entsprechend ähnliche). Die kannst Du dann ganz explizit aufrufen, z.B.

pt_text.convert2.convert2("myspecialconversion")

Hier erfolgt erstmal das "normale" convert2 und dann nachgelagert noch die gewünschte "Spezialbehandlung". Aus dem Bauch heraus fände ich hier den Ansatz über eine extra Regel besser, als die "Standardkonvertierungsregel" anzupassen. Wäre allerdings natürlich mir mehr Aufwand verbunden, weil man das an den diversen Stellen ergänzen müsste.

Viele Grüße

Michael

0 Kudos

Auf jeden Fall schon einmal vielen Dank für die Ideen.

Was daran natürlich nicht so schön ist, dass man ja an allen Stellen, an denen irgendwo eine Ausgabe von Text stattfindet das .convert2("myspecialconversion") anhängen müsste. Klingt sehr aufwändig und auch ein wenig risikobehaftet.

Vlt. hat noch jemand anderes eine Idee? Vlt. kann man auch irgendwie ein Script in den Freigabeworkflow bauen, der die Umwandlung übernimmt?! Oder vlt. gibts noch eine ganz andere, schönere Idee?

0 Kudos

Hallo Sebastian,

mir persönlich fällt keine andere (schönere) Idee ein. So wie Michael und Marian es bereits beschrieben haben, würde ich deine Frage über eine Konvertierungsregel lösen und dabei wie von Michael vorgeschlagen eine eigene Regel verwenden. Der Ansatz, ein Skript in den Freigabeworkflow einzubinden, erscheint mir für zu umständlich und nicht umsetzbar.

Viele Grüße

Michaela

0 Kudos
thmarx
I'm new here

Hallo Sebastian,

benötigst Du noch weitere Hilfe oder haben Dir die Antworten bereits geholfen?

In diesem Fall wäre es super, wenn Du die "richtige Antwort" entsprechend markierst, damit auch andere

Community-Teilnehmer diese auf den ersten Blick finden. Solltest Du zwischenzeitlich eine eigene Lösung

gefunden haben, wäre es nett, wenn Du diese hier bereitstellst.

Viele Grüße

Thorsten

0 Kudos

Naja, so richtig ne schöne Lösung war ja leider nicht dabei. Von da her wurde mir leider nicht so richtig weiter geholfen.

außer vlt, dass ich nun weiß, dass es wohl keine einfache/schöne Lösung gibt

0 Kudos