[TYPO3-german] sys_language_mode "content_fallback" mit Extbase-Objekten verhält sich zum Teil merkwürdig

David Gurk dgurk at medienwerft.de
Mon Oct 7 09:40:24 CEST 2013


Ich hatte nun Zeit mir das genauer anzuschauen. Das "Problem" befindet sich in der Datei "typo3/typo3_src-6.1.5/typo3/sysext/extbase/Classes/Persistence/Generic/Storage/Typo3DbBackend.php" in der Funktion "getRecordOverlay".

Der eine Kommentar dort sagt es eigentlich ganz klar aus:
"// Will not be able to work with other tables (Just didn't implement it yet; Requires a scan over all tables [ctrl] part for first FIND the table that carries localization information for  this table (which could even be more than a single table) and then use that. Could be implemented, but obviously takes a little more....)"

Schade... Dann wird es wohl noch ein Weilchen dauern, da es wohl etwas zu komplex ist, um es selbst in die Hand zu nehmen.

-----Ursprüngliche Nachricht-----
Von: typo3-german-bounces at lists.typo3.org [mailto:typo3-german-bounces at lists.typo3.org] Im Auftrag von David Gurk
Gesendet: Mittwoch, 2. Oktober 2013 17:21
An: 'TYPO3-german at lists.typo3.org'
Betreff: [TYPO3-german] sys_language_mode "content_fallback" mit Extbase-Objekten verhält sich zum Teil merkwürdig

Hallo Zusammen!

Ich teste gerade verschiedenste Sprachkonfigurationen für ein zukünftiges Projekt. Dabei fiel mir eine kleine Ungereimtheit auf.

Ich habe Extbase-Objekte (siehe Testsystem) in der Standardsprache (Deutsch) angelegt. Nun erscheint bei der Standardsprache, bei AT und CH jeweils die Liste mit allen Objekten. Alles korrekt.

Das TypoScript-Setup ist so konfiguriert, dass die Inhalte für EN übersetzt werden müssen, damit diese auch in der englischen Sprachvariante erscheinen.

... jetzt wird es merkwürdig. Sobald ich ein einzelnes Objekt ins Englische übersetze, verschwindet genau dieses Objekt in der Liste von AT und CH. Ich kann mir das gerade nicht so richtig erklären. Um bei AT und CH das Objekt wieder angezeigt zu bekommen, habe ich eigentlich nur 2 Möglichkeiten. Entweder ich übersetze das Objekt in die jeweiligen Sprachen, oder ich lösche die englische Übersetzung.

Ich habe versucht in der Extbase-Codebasis etwas zu finden, was dieses Problem verursacht. Nur bisher bin ich leider nicht fündig geworden.

Übrigens funktioniert es bei den normalen Inhaltselementen aus tt_content ohne Probleme.

Hat von euch jemand auch so eine Erfahrung gemacht? Und hat jemand eventuell eine Idee, ob es irgendwie genauso funktionieren kann, wie bei den tt_content-Elementen?

Ich freue mich über jeden Tipp und jeder Meinung. =)

Danke und viele Grüße

David

Das Testsystem:
- TYPO3 v6.1. 5
- TypoScript-Setup: http://pastebin.com/0agNQuTM #########################################
#
# Standard (Deutschland)
config {
                # URL Konfiguration
    linkVars = L(0-3)
    uniqueLinkVars = 1

                # Spracheinstellungen
    sys_language_uid = 0
    language = de
}

# Deutsch (Österreich)
[globalVar = GP:L=1]
config {
    sys_language_mode = content_fallback;0
    sys_language_overlay = 1
    sys_language_uid = 1
    language = de_AT
}
[global]

# Deutsch (Schweiz)
[globalVar = GP:L=2]
config {
    sys_language_mode = content_fallback;0
    sys_language_overlay = 1
    sys_language_uid = 2
    language = de_CH
}
[global]

# Englisch (Vereinigtes Königreich)
[globalVar = GP:L=3]
config {
                # strict + FE|hidePagesIfNotTranslatedByDefault in der LocalConfiguration
    sys_language_mode = strict
    sys_language_uid = 3
    language = en
}
[global]

page = PAGE
page {
                type = 0
               10 < styles.content.get
}
#
#########################################

- Eine einfache, mit den Extension-Builder erstellte, Test-Extension. Die Objekte haben nur die pflegbare Eigenschaft "Name". Es gibt eine List- und eine Show-Action.
#########################################
# Ein entscheidender Auszug aus ext_tables.php \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_test_domain_model_tester');
$TCA['tx_test_domain_model_tester'] = array(
                'ctrl' => array(
                               'title'      => 'LLL:EXT:test/Resources/Private/Language/locallang_db.xlf:tx_test_domain_model_tester',
                               'label' => 'name',
                               'tstamp' => 'tstamp',
                               'crdate' => 'crdate',
                               'cruser_id' => 'cruser_id',
                               'dividers2tabs' => TRUE,
                               'sortby' => 'sorting',
                               'versioningWS' => 2,
                               'versioning_followPages' => TRUE,
                               'origUid' => 't3_origuid',
                               'languageField' => 'sys_language_uid',
                               'transOrigPointerField' => 'l10n_parent',
                               'transOrigDiffSourceField' => 'l10n_diffsource',
                               'delete' => 'deleted',
                               'enablecolumns' => array(
                                               'disabled' => 'hidden',
                                               'starttime' => 'starttime',
                                               'endtime' => 'endtime',
                               ),
                               'searchFields' => 'name,',
                               'dynamicConfigFile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath($_EXTKEY) . 'Configuration/TCA/Tester.php',
                               'iconfile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extRelPath($_EXTKEY) . 'Resources/Public/Icons/tx_test_domain_model_tester.gif'
                ),
);
#
#########################################
- Auf einer Seite gibt ist das Plugin mit der List-Action eingebunden. Die Seite ist in alle Sprachen übersetzt. Das Plugin nur für EN.
_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german


More information about the TYPO3-german mailing list