Skip to content
  • Benni Mack's avatar
    [DB][FEATURE] Add ISO 639-1 keys to sys_language · f1e399f3
    Benni Mack authored and Georg Ringer's avatar Georg Ringer committed
    The language handling of records in TYPO3
    is solely based on UIDs of the sys_language DB table,
    but no reference to the real language used.
    
    The ISO 639-1 defines the language identifiers
    (ISO language code) completely (182 entries).
    
    If the real language key was needed before in
    TYPO3, one could install static_info_tables
    which takes a field ("static_lang_isocode") in the
    various places of the TYPO3 Core and fetches
    the isocode via separate SQL-Queries.
    
    The change introduces the ISO language
    two-letter-keys natively in the core in order to
    1. use less SQL queries in FE and BE if
    static_info_tables was installed
    2. remove hard coded dependencies of
    EXT:static_info_tables
    3. and always ensure that the core
    includes the ISO code
    
    Additionally one can now use the
    $TSFE->sys_language_isocode all the time for
    working with the ISO code instead of the
    UID parameter, meaning that isocode can now be
    set with a TypoScript parameter as well.
    
    A Migration Wizard moves values put in the old
    DB field (which is a UID reference to
    static_languages) to the new DB field "language_isocode".
    
    The old field is deprecated to use without the
    new properly filled field "language_isocode".
    
    In TYPO3 CMS 8 the static_lang_isocode field
    will be removed within the CMS core (but could
    still be included in static_info_tables).
    
    Releases: master
    Resolves: #61542
    Change-Id: Ia017af52af354ac204ffac11635d99df120b029a
    Reviewed-on: http://review.typo3.org/32884
    
    
    Reviewed-by: default avatarMarkus Klein <klein.t3@reelworx.at>
    Tested-by: default avatarMarkus Klein <klein.t3@reelworx.at>
    Reviewed-by: default avatarGeorg Ringer <georg.ringer@gmail.com>
    Tested-by: default avatarGeorg Ringer <georg.ringer@gmail.com>
    f1e399f3