Search the FirstSpirit Knowledge Base
Hallo zusammen,
es gibt aktuell einen Fall bei meinem Projekt, wo in einer Absatzvorlag folgende Kriterien erfüllt sein sollen:
Denkbare Möglichkeiten wären gewesen das Verhalten über Rules zu pflegen oder in der Ausgabe die Mastersprache explizit zu rendern, wenn die Aufgerufene nicht gepflegt wurde. In allen Fällen lässt sich jedoch keine Wertausgabe für eine bestimmte Sprache vornehmen. Der einzige Kontext, in dem man einen FS Inhalt mit Sprache ausdrücklich anfragen könnte (abgesehen von einer Datenbanktabelle) wäre mit $CMS_REF(#global.node, lang:"SOME_LANG")$ . Damit bekommt man natürlich nur eine Referenz.
Hat da jemand eine Idee, wie man das umsetzen würde?
Hallo Kevin,
wenn es nur um die Ausgabe geht sollte es funktionieren wenn Du über das FormData gehst, in etwa so:
$CMS_SET(set_picture,st_picture)$
$CMS_IF(st_picture.isEmpty)$
$CMS_SET(set_picture, #global.section.formData.get(#global.project.masterLanguage,"st_picture").get())$
$CMS_END_IF$
<img src="$CMS_REF(set_picture)$" />
Das funktioniert allerdings nicht auf "inneren" Absätzen, da müsstest Du dann noch an das richtige FormData kommen.
Alternativer Vorschlag - auch für den Redakteur wahrscheinlich klarer ersichtlich:
Zwei FS_REFERENCEs. Eins sprachunabhängig (=Pflege in Mastersprache, ist also der "Fallback"), eins sprachabhängig.
Das sprachabhängige per Regel in der Mastersprache ausblenden, das sprachunabhängige per Regel in allen anderen Sprachen auf readonly setzen.
Du kannst dann mit einer weiteren Regel z.B. das sprachunabhängige (=aus der Mastersprache) in den anderen Sprachen nur anzeigen, wenn das sprachabhängige leer ist oder auch den Redakteuer per Toggle zwischen "Bild aus Master nutzen" und "Eigenes Bild für diese Sprache" wählen lassen.
Vorteil wäre letztlich, dass der Redakteur schon im Formular sieht, welches Bild tatsächlich benutzt wird.
Viele Grüße
Michael
Hallo Kevin,
wenn es nur um die Ausgabe geht sollte es funktionieren wenn Du über das FormData gehst, in etwa so:
$CMS_SET(set_picture,st_picture)$
$CMS_IF(st_picture.isEmpty)$
$CMS_SET(set_picture, #global.section.formData.get(#global.project.masterLanguage,"st_picture").get())$
$CMS_END_IF$
<img src="$CMS_REF(set_picture)$" />
Das funktioniert allerdings nicht auf "inneren" Absätzen, da müsstest Du dann noch an das richtige FormData kommen.
Alternativer Vorschlag - auch für den Redakteur wahrscheinlich klarer ersichtlich:
Zwei FS_REFERENCEs. Eins sprachunabhängig (=Pflege in Mastersprache, ist also der "Fallback"), eins sprachabhängig.
Das sprachabhängige per Regel in der Mastersprache ausblenden, das sprachunabhängige per Regel in allen anderen Sprachen auf readonly setzen.
Du kannst dann mit einer weiteren Regel z.B. das sprachunabhängige (=aus der Mastersprache) in den anderen Sprachen nur anzeigen, wenn das sprachabhängige leer ist oder auch den Redakteuer per Toggle zwischen "Bild aus Master nutzen" und "Eigenes Bild für diese Sprache" wählen lassen.
Vorteil wäre letztlich, dass der Redakteur schon im Formular sieht, welches Bild tatsächlich benutzt wird.
Viele Grüße
Michael
Vielen Dank für die Antwort. Wahrscheinlich macht die zweite Umsetzung mehr Sinn. Das lässt sich mit Tabs noch visuell übersichtlich gestalten.