Search the FirstSpirit Knowledge Base
Hallo,
ich hatte jetzt schon ein paar Themen zum Verhalten von allowEmpty="no" hier im Forum gelesen, allerdings noch keine praktikable Lösung für mein Problem gesichtet.
Mit einem einfachen Seitentemplate kann man es gut Nachstellen:
<CMS_MODULE>
<CMS_INPUT_TEXT name="text" allowEmpty="no">
<LANGINFOS>
<LANGINFO lang="*" label=""/>
</LANGINFOS>
</CMS_INPUT_TEXT>
</CMS_MODULE>
Links zeigt das verhalten beim erstmaligen ausfüllen und abspeichern in FS 5.0.425 und rechts mit FS 4.2.476:
Sprache EN:
Sprache DE:
Mein Wunsch wäre jetzt das alte Verhalten, am besten mit einer einfachen Server/Projekteinstellung, wieder zu bekommen. Bei 2 Sprachen ist das vielleicht so noch machbar für einen Redakteur. Allerdings haben wir Kunden die 8 Sprachen und mehr haben. Von einem Redakteur der nur für eine Sprache zuständig ist, kann man keinen so hohen initialen Aufwand verlangen, nur um eine Seite anzulegen.
Ist das eigentlich ein ungewolltes Verhalten oder ein "Verkaufsargument" für den neuen Regeln-Tab und umfassendere Migrationsprojekte?
Mit freundlichen Grüßen
Stephan Eginger
Hallo Stephan,
in FS5 musst Du das Verhalten über Rules abbilden. D.h. allowEmpty=no wird in FS5 das Speichern der Seite verhindern, sobald nicht alle Sprachen ausgefüllt sind.
Die Regel könnte in etwa so aussehen:
<ON_SAVE>
<IF>
<PROPERTY source="#global" name="TRANSLATED"/>
</IF>
<WITH>
<NOT>
<PROPERTY source="DeinTextfeld" name="EMPTY"/>
</NOT>
</WITH>
<DO>
<VALIDATION>
<PROPERTY source="DeinTextfeld" name="VALID"/>
<MESSAGE lang="*" text="Bitte ausfüllen...."/>
</VALIDATION>
</DO>
</ON_SAVE>
Viele Grüße
Jan Tilo
Hierzu eine Anmerkung:
Hier darf das TRANSLATED nicht per IF abgefragt werden sondern muss mit in das WITH.
Näheres dazu hier.
Viele Grüße
Michael
Hallo Stephan ,
benötigst Du noch weitere Hilfe oder haben Dir die bisherigen Antworten bereits geholfen?
Solltest Du zwischenzeitlich eine eigene Lösung gefunden haben, wäre es nett, wenn Du diese hier bereitstellst.
Viele Grüße
Michaela