v2.7.x Fehler in _initConstantsFromDeprecatedLangFile (LanguageTextManager)

Thema wurde von Avenger, 1. März 2016 erstellt.

  1. Avenger

    Avenger G-WARD 2012/13/14/15

    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    Diese Routine soll alte Sprachdateien einbinden, sie tut das aber nicht!

    Das Problem ist, dass z.B. die Sprachelemente, die früher in "lang/german/german.php" enthalten waren, über

    PHP:
    $coo_lang_file_master->init_from_lang_file('general');
    aus der DB gelesen werden.

    Mit

    PHP:
    $this->_initConstantsFromDeprecatedLangFile($p_filePath);
    wird dort dann auch noch versucht, eine Sprachdatei zu lesen.

    "$p_filePath" ist aber "general", so dass eine "lang/german/german.php" damit nicht eingebunden wird.

    PHP:
        /**
         * support for deprecated language files containing define() statements
         *
         * @param string $p_filePath
         */
        
    protected function _initConstantsFromDeprecatedLangFile($p_filePath)
        {
            if(
    file_exists(DIR_FS_CATALOG $p_filePath) && strpos($p_filePath'..') === false)
            {
                
    $coo_lang_file_master MainFactory::create_object('LanguageTextManager', array(), true);
                include_once 
    DIR_FS_CATALOG $p_filePath;
            }
        }
     
  2. Moritz (Gambio)

    Moritz (Gambio) Administrator

    Registriert seit:
    26. April 2011
    Beiträge:
    5.786
    Danke erhalten:
    2.692
    Danke vergeben:
    903
    Hallo,

    die german.php gibt es nicht mehr. Stattdessen gibt es die init.inc.php. Ebenso die admin/german.php. Das ist nun die admin/init.inc.php. Für die alte Hauptsprachdatei gibt es keine Unterstützung mehr. Ich rate auch sehr davon ab noch andere Sprachdateien im alten define-Format zu verwenden. Das ist echt Geschichte.