Because we had some issues with language handling and starttime/stoptime, I made some tests with different configurations and TYPO3 versions. These are the results, perhaps they are usefull for someone else, too.
### TypoScript:
config.sys_language_overlay = 0
config.sys_language_mode = strict
### Page-TsConfig:
mod.web_layout.defLangBinding = 0
# since 7.6
mod.web_layout.allowInconsistentLanguageHandling = 1
Tests
Testcase | Language | BE | FE default | FE de | |
---|---|---|---|---|---|
TYPO3 6.2.25 | |||||
01. | publish date: ce in language default only | default | OK (field is editable) | OK (shown after publish date passed) | OK (not shown) |
02. | expiration date: ce in language default only | default | OK (field is editable) | OK (shown before expiration date passed) | OK (not shown) |
03. | publish date: ce in language de only | de | ERROR (field is not editable, Forge says "WONTFIX for 6.2", see #68043 and #32252) | [not testable] | [not testable] |
04. | expiration date: ce in language de only | de | ERROR (field is not editable, Forge says "WONTFIX for 6.2", see #68043 and #32252) | [not testable] | [not testable] |
05. | publish date: ce in language default and translated to de | default | OK (field is editable) | OK (shown after publish date passed) | OK (not shown) |
06. | [translation of 05.] | de | OK (field is not editable) | OK (not shown) | ERROR (shown even bevore publish date passed) |
07. | expiration date: ce in language default and translated to de | default | OK (field is editable) | OK (shown before expiration date passed) | OK (not shown) |
08. | [translation of 07.] | de | OK (field is not editable) | OK (not shown) | ERROR (shown even after expiration date passed) |
TYPO3 7.6.9 | |||||
09. | publish date: ce in language default only | default | OK (field is editable) | OK (shown after publish date passed) | OK (not shown) |
10. | expiration date: ce in language default only | default | OK (field is editable) | OK (shown before expiration date passed) | OK (not shown) |
11. | publish date: ce in language de only | de | OK (field is editable) | OK (not shown) | OK (shown after publish date passed) |
12. | expiration date: ce in language de only | de | OK (field is editable) | OK (not shown) | OK (shown before expiration date passed) |
13. | publish date: ce in language default and translated to de | default | OK (field is editable) | OK (shown after publish date passed) | OK (not shown) |
14. | [translation of 13.]publish date: ce in language default and translated to de | de | OK (field is not editable) | OK (not shown) | ERROR (shown even bevore publish date passed) |
15. | expiration date: ce in language default and translated to de | default | OK (field is editable) | OK (shown before expiration date passed) | OK (not shown) |
16. | [translation of 15.]expiration date: ce in language default and translated to de | de | OK (field is not editable) | OK (not shown) | ERROR (shown even after expiration date passed) |
### TypoScript:
config.sys_language_overlay = 1
config.sys_language_mode = strict
### Page-TsConfig:
# should be true if "config.sys_language_overlay = 1" (see https://docs.typo3.org/typo3cms/TyposcriptReference/7.6/Setup/Config/#sys-language-overlay)
mod.web_layout.defLangBinding = 1
# since 7.6
mod.web_layout.allowInconsistentLanguageHandling = 1
Tests
Testcase | Language | BE | FE default | FE de | |
---|---|---|---|---|---|
TYPO3 6.2.25 | |||||
01. | publish date: ce in language default only | default | OK (field is editable) | OK (shown after publish date passed) | OK (shown after publish date passed because of "config.sys_language_overlay = 1") |
02. | expiration date: ce in language default only | default | OK (field is editable) | OK (shown before expiration date passed) | OK (shown after publish date passed because of "config.sys_language_overlay = 1") |
03. | publish date: ce in language de only | de | OK (ce is not shown in the page module) | [not testable] | [not testable] |
04. | expiration date: ce in language de only | de | OK (ce is not shown in the page module) | [not testable] | [not testable] |
05. | publish date: ce in language default and translated to de | default | OK (field is editable) | OK (shown after publish date passed) | OK (not shown) |
06. | [translation of 05.] | de | OK (field is not editable) | OK (not shown) | OK (shown after publish date passed) |
07. | expiration date: ce in language default and translated to de | default | OK (field is editable) | OK (shown before expiration date passed) | OK (not shown) |
08. | [translation of 07.] | de | OK (field is not editable) | OK (not shown) | OK (shown before expiration date passed) |
TYPO3 7.6.9 | |||||
09. | publish date: ce in language default only | default | OK (field is editable) | OK (shown after publish date passed) | OK (shown after publish date passed because of "config.sys_language_overlay = 1") |
10. | expiration date: ce in language default only | default | OK (field is editable) | OK (shown before expiration date passed) | OK (shown after publish date passed because of "config.sys_language_overlay = 1") |
11. | publish date: ce in language de only | de | OK (ce is not shown in the page module) | [not testable] | [not testable] |
12. | expiration date: ce in language de only | de | OK (ce is not shown in the page module) | [not testable] | [not testable] |
13. | publish date: ce in language default and translated to de | default | OK (field is editable) | OK (shown after publish date passed) | OK (not shown) |
14. | [translation of 13.] | de | OK (field is not editable) | OK (not shown) | OK (shown after publish date passed) |
15. | expiration date: ce in language default and translated to de | default | OK (field is editable) | OK (shown before expiration date passed) | OK (not shown) |
16. | [translation of 15.] | de | OK (field is not editable) | OK (not shown) | OK (shown before expiration date passed) |
### TypoScript:
config.sys_language_overlay = hideNonTranslated
config.sys_language_mode = strict
### Page-TsConfig:
# should be true if "config.sys_language_overlay = hideNonTranslated" (see https://docs.typo3.org/typo3cms/TyposcriptReference/7.6/Setup/Config/#sys-language-overlay)
mod.web_layout.defLangBinding = 1
# since 7.6
mod.web_layout.allowInconsistentLanguageHandling = 1
Tests
Testcase | Language | BE | FE default | FE de | |
---|---|---|---|---|---|
TYPO3 6.2.25 | |||||
01. | publish date: ce in language default only | default | OK (field is editable) | OK (shown after publish date passed) | OK (not shown because of "config.sys_language_overlay = hideNonTranslated") |
02. | expiration date: ce in language default only | default | OK (field is editable) | OK (shown before expiration date passed) | OK (not shown because of "config.sys_language_overlay = hideNonTranslated") |
03. | publish date: ce in language de only | de | OK (ce is not shown in the page module) | [not testable] | [not testable] |
04. | expiration date: ce in language de only | de | OK (ce is not shown in the page module) | [not testable] | [not testable] |
05. | publish date: ce in language default and translated to de | default | OK (field is editable) | OK (shown after publish date passed) | OK (not shown) |
06. | [translation of 05.] | de | OK (field is not editable) | OK (not shown) | OK (shown after publish date passed) |
07. | expiration date: ce in language default and translated to de | default | OK (field is editable) | OK (shown before expiration date passed) | OK (not shown) |
08. | [translation of 07.] | de | OK (field is not editable) | OK (not shown) | OK (shown before expiration date passed) |
TYPO3 7.6.9 | |||||
09. | publish date: ce in language default only | default | OK (field is editable) | OK (shown after publish date passed) | OK (not shown because of "config.sys_language_overlay = hideNonTranslated") |
10. | expiration date: ce in language default only | default | OK (field is editable) | OK (shown before expiration date passed) | OK (not shown because of "config.sys_language_overlay = hideNonTranslated") |
11. | publish date: ce in language de only | de | OK (ce is not shown in the page module) | [not testable] | [not testable] |
12. | expiration date: ce in language de only | de | OK (ce is not shown in the page module) | [not testable] | [not testable] |
13. | publish date: ce in language default and translated to de | default | OK (field is editable) | OK (shown after publish date passed) | OK (not shown) |
14. | [translation of 13.] | de | OK (field is not editable) | OK (not shown) | OK (shown after publish date passed) |
15. | expiration date: ce in language default and translated to de | default | OK (field is editable) | OK (shown before expiration date passed) | OK (not shown) |
16. | [translation of 15.] | de | OK (field is not editable) | OK (not shown) | OK (shown before expiration date passed) |
### TypoScript:
config.sys_language_overlay = hideNonTranslated
config.sys_language_mode = strict
### Page-TsConfig:
# should be true if "config.sys_language_overlay = hideNonTranslated" (see https://docs.typo3.org/typo3cms/TyposcriptReference/7.6/Setup/Config/#sys-language-overlay)
# but we hopefully know what we do and make an exception ;-)
mod.web_layout.defLangBinding = 0
# since 7.6
mod.web_layout.allowInconsistentLanguageHandling = 1
Tests
Testcase | Language | BE | FE default | FE de | |
---|---|---|---|---|---|
TYPO3 6.2.25 | |||||
01. | publish date: ce in language default only | default | OK (field is editable) | OK (shown after publish date passed) | OK (not shown because of "config.sys_language_overlay = hideNonTranslated") |
02. | expiration date: ce in language default only | default | OK (field is editable) | OK (shown before expiration date passed) | OK (not shown because of "config.sys_language_overlay = hideNonTranslated") |
03. | publish date: ce in language de only | de | ERROR (field is not editable, Forge says "WONTFIX for 6.2", see #68043 and #32252) | [not testable] | [not testable] |
04. | expiration date: ce in language de only | de | ERROR (field is not editable, Forge says "WONTFIX for 6.2", see #68043 and #32252) | [not testable] | [not testable] |
05. | publish date: ce in language default and translated to de | default | OK (field is editable) | OK (shown after publish date passed) | OK (not shown) |
06. | [translation of 05.] | de | OK (field is not editable) | OK (not shown) | OK (shown after publish date passed) |
07. | expiration date: ce in language default and translated to de | default | OK (field is editable) | OK (shown before expiration date passed) | OK (not shown) |
08. | [translation of 07.] | de | OK (field is not editable) | OK (not shown) | OK (shown before expiration date passed) |
TYPO3 7.6.9 | |||||
09. | publish date: ce in language default only | default | OK (field is editable) | OK (shown after publish date passed) | OK (not shown because of "config.sys_language_overlay = hideNonTranslated") |
10. | expiration date: ce in language default only | default | OK (field is editable) | OK (shown before expiration date passed) | OK (not shown because of "config.sys_language_overlay = hideNonTranslated") |
11. | publish date: ce in language de only | de | OK (field is editable) | OK (not shown) | ERROR (not shown) |
12. | expiration date: ce in language de only | de | OK (field is editable) | OK (not shown) | ERROR (not shown) |
13. | publish date: ce in language default and translated to de | default | OK (field is editable) | OK (shown after publish date passed) | OK (not shown) |
14. | [translation of 13.] | de | OK (field is not editable) | OK (not shown) | OK (shown after publish date passed) |
15. | expiration date: ce in language default and translated to de | default | OK (field is editable) | OK (shown before expiration date passed) | OK (not shown) |
16. | [translation of 15.] | de | OK (field is not editable) | OK (not shown) | OK (shown before expiration date passed) |
I didn't find an issue on forge for Configuration 1, Test 06, 08, 14 and 16 (everything the same). Any hints? And, for our usecase, Configuration 4 with TYPO3 7.6 would match best. But only if I can solve the ERROR in Test 11 and 12. Are there any chances to make this work?