Skip to content
Snippets Groups Projects
Verified Commit 1837cf5b authored by Alex Pott's avatar Alex Pott
Browse files

Issue #3061489 by penyaskito, shaal, betoscopio, smustgrave: Umami changes the...

Issue #3061489 by penyaskito, shaal, betoscopio, smustgrave: Umami changes the admin interface language based on the current page

(cherry picked from commit 0e6acad4)
parent 2c9040ee
No related branches found
No related tags found
33 merge requests!12684Issue #3220784,!12537Add ViewsConfigUpdater deprecation support for default_argument_skip_url,!12523Issue #3493858 by vidorado, xavier.masson, smustgrave: Extend ViewsBlockBase...,!122353526426-warning-for-missing,!12212Issue #3445525 by alexpott, japerry, catch, mglaman, longwave: Add BC layer...,!11958Issue #3490507 by alexpott, smustgrave: Fix bogus mocking in...,!11769Issue #3517987: Add option to contextual filters to encode slashes in query parameter.,!11185Issue #3477324 by andypost, alexpott: Fix usage of str_getcsv() and fgetcsv() for PHP 8.4,!10602Issue #3438769 by vinmayiswamy, antonnavi, michelle, amateescu: Sub workspace does not clear,!10301Issue #3469309 by mstrelan, smustgrave, moshe weitzman: Use one-time login...,!10187Issue #3487488 by dakwamine: ExtensionMimeTypeGuesser::guessMimeType must support file names with "0" (zero) like foo.0.zip,!9944Issue #3483353: Consider making the createCopy config action optionally fail...,!9929Issue #3445469 by pooja_sharma, smustgrave: Add additional test coverage for...,!9787Resolve issue 3479427 - bootstrap barrio issue under Windows,!9742Issue #3463908 by catch, quietone: Split OptionsFieldUiTest into two,!9526Issue #3458177 by mondrake, catch, quietone, godotislate, longwave, larowlan,...,!8738Issue #3424162 by camilledavis, dineshkumarbollu, smustgrave: Claro...,!8704Make greek characters available in ckeditor5,!8597Draft: Issue #3442259 by catch, quietone, dww: Reduce time of Migrate Upgrade tests...,!8533Issue #3446962 by kim.pepper: Remove incorrectly added...,!8517Issue #3443748 by NexusNovaz, smustgrave: Testcase creates false positive,!8325Update file Sort.php,!8095Expose document root on install,!7930Resolve #3427374 "Taxonomytid viewsargumentdefault plugin",!7627Issue #3439440 by nicxvan, Binoli Lalani, longwave: Remove country support from DateFormatter,!7445Issue #3440169: When using drupalGet(), provide an associative array for $headers,!7401#3271894 Fix documented StreamWrapperInterface return types for realpath() and dirname(),!7384Add constraints to system.advisories,!7078Issue #3320569 by Spokje, mondrake, smustgrave, longwave, quietone, Lendude,...,!6622Issue #2559833 by piggito, mohit_aghera, larowlan, guptahemant, vakulrai,...,!6502Draft: Resolve #2938524 "Plach testing issue",!38582585169-10.1.x,!3226Issue #2987537: Custom menu link entity type should not declare "bundle" entity key
Pipeline #120194 passed with warnings
Pipeline: drupal

#120242

    Pipeline: drupal

    #120226

      Pipeline: drupal

      #120215

        +1
        Showing
        with 80 additions and 24 deletions
        all:
        - language_interface
        - language_content
        - language_url
        configurable:
        - language_interface
        - language_content
        negotiation:
        language_content:
        enabled:
        language-url: -8
        language-selected: 12
        method_weights:
        language-content-entity: -9
        language-url: -8
        language-session: -6
        language-user: -4
        language-browser: -2
        language-interface: 9
        language-selected: 12
        language_url:
        enabled:
        language-url: 0
        language-url-fallback: 1
        language_interface:
        enabled:
        language-user-admin: -20
        language-user: -19
        language-url: -18
        language-selected: -15
        method_weights:
        language-user-admin: -20
        language-user: -19
        language-url: -18
        language-session: -17
        language-browser: -16
        language-selected: -15
        ......@@ -247,7 +247,7 @@ display:
        display_plugin: page
        position: 1
        display_options:
        rendering_language: '***LANGUAGE_language_interface***'
        rendering_language: '***LANGUAGE_language_content***'
        display_extenders: { }
        path: articles
        menu:
        ......
        ......@@ -336,7 +336,7 @@ display:
        options:
        relationship: none
        view_mode: rss
        rendering_language: '***LANGUAGE_language_interface***'
        rendering_language: '***LANGUAGE_language_content***'
        display_extenders: { }
        path: rss.xml
        sitename_title: true
        ......@@ -374,7 +374,7 @@ display:
        value: '<p class="text-align-center">Explore recipes across every type of occasion, ingredient, and skill level</p>'
        format: full_html
        tokenize: false
        rendering_language: '***LANGUAGE_language_interface***'
        rendering_language: '***LANGUAGE_language_content***'
        display_extenders: { }
        path: node
        cache_metadata:
        ......
        ......@@ -404,7 +404,7 @@ display:
        filter_groups: false
        css_class: view-promoted-items--double
        display_description: ''
        rendering_language: '***LANGUAGE_language_interface***'
        rendering_language: '***LANGUAGE_language_content***'
        display_extenders: { }
        displays:
        block_1: block_1
        ......@@ -568,7 +568,7 @@ display:
        filter_groups: false
        css_class: 'container view-promoted-items--single'
        display_description: ''
        rendering_language: '***LANGUAGE_language_interface***'
        rendering_language: '***LANGUAGE_language_content***'
        display_extenders: { }
        cache_metadata:
        max-age: -1
        ......
        ......@@ -206,7 +206,7 @@ display:
        display_plugin: block
        position: 1
        display_options:
        rendering_language: '***LANGUAGE_language_interface***'
        rendering_language: '***LANGUAGE_language_content***'
        display_extenders: { }
        block_hide_empty: true
        cache_metadata:
        ......
        ......@@ -247,7 +247,7 @@ display:
        display_plugin: page
        position: 1
        display_options:
        rendering_language: '***LANGUAGE_language_interface***'
        rendering_language: '***LANGUAGE_language_content***'
        display_extenders: { }
        path: recipes
        menu:
        ......
        ......@@ -286,7 +286,7 @@ display:
        query:
        type: views_query
        options: { }
        rendering_language: '***LANGUAGE_language_interface***'
        rendering_language: '***LANGUAGE_language_content***'
        display_extenders: { }
        path: taxonomy/term/%/feed
        displays:
        ......@@ -309,7 +309,7 @@ display:
        query:
        type: views_query
        options: { }
        rendering_language: '***LANGUAGE_language_interface***'
        rendering_language: '***LANGUAGE_language_content***'
        display_extenders: { }
        path: taxonomy/term/%
        cache_metadata:
        ......
        id,title,body,author,slug,image_reference,tags
        1,Prueba y cultiva tus propias hierbas,give-it-a-go-and-grow-your-own-herbs.html,Holly Foat,articles/prueba-y-cultiva-tus-propias-hierbas,10,"14,23,16"
        2,Delicioso chocolate sin lactosa,dairy-free-delicious-milk-chocolate.html,Umami,articles/delicioso-chocolate-sin-lactosa,11,"27,7"
        3,El verdadero negocio para comprar en el supermercado,the-real-deal-for-supermarket-savvy-shopping.html,Megan Collins Quinlan,articles/el-verdadeo-negocio-para-comprar-en-el-supermercado,12,"26,24"
        3,El verdadero negocio para comprar en el supermercado,the-real-deal-for-supermarket-savvy-shopping.html,Gregorio Sánchez,articles/el-verdadeo-negocio-para-comprar-en-el-supermercado,12,"26,24"
        4,Guía Umami de nuestras setas preferidas,the-umami-guide-to-our-favourite-mushrooms.html,Umami,articles/guia-umami-de-nuestras-setas-preferidas,13,"18,28"
        5,Un aplauso para las zanahorias,lets-hear-it-for-carrots.html,Umami,articles/un-aplauso-para-las-zanahorias,14,"6,28,15"
        6,Percances al hornear - nuestros consejos para solucionar los problemas,baking-mishaps-our-troubleshooting-tips.html,Umami,articles/percances-al-hornear-nuestros-consejos-para-solucionar-problemas,15,"3,17"
        7,Salta los espíritus con deliciosos cócteles sin alcohol,skip-the-spirits-with-delicious-mocktails.html,Megan Collins Quinlan,articles/salta-los-espiritus-con-deliciosos-cocteles-sin-alcohol,16,"1,12,20,8,11"
        7,Salta los espíritus con deliciosos cócteles sin alcohol,skip-the-spirits-with-delicious-mocktails.html,Gregorio Sánchez,articles/salta-los-espiritus-con-deliciosos-cocteles-sin-alcohol,16,"1,12,20,8,11"
        8,Dale a tu avena el cambio de imagen definitivo,give-your-oatmeal-the-ultimate-makeover.html,Umami,articles/dale-a-tu-avena-el-cambio-de-imagen-definitivo,17,"27,28,19,4,10"
        ......@@ -11,6 +11,8 @@
        use Drupal\Core\State\StateInterface;
        use Symfony\Component\DependencyInjection\ContainerInterface;
        // cSpell:ignore María García Gregorio Sánchez
        /**
        * Defines a helper class for importing default content.
        *
        ......@@ -137,7 +139,7 @@ public static function create(ContainerInterface $container) {
        */
        public function importContent() {
        $this->getModulePath()
        ->importEditors()
        ->importUsers()
        ->importContentFromFile('taxonomy_term', 'tags')
        ->importContentFromFile('taxonomy_term', 'recipe_category')
        ->importContentFromFile('media', 'image')
        ......@@ -297,25 +299,42 @@ protected function saveNodePath($langcode, $content_type, $node_csv_id, $node_ur
        }
        /**
        * Imports editors.
        * Imports users.
        *
        * Other users are created as their content is imported. However, editors
        * don't have their own content so are created here instead.
        * Users are created as their content is imported. However, some users might
        * have non-default values (as preferred language), or editors don't have
        * their own content so are created here instead.
        *
        * @return $this
        */
        protected function importEditors() {
        protected function importUsers() {
        $user_storage = $this->entityTypeManager->getStorage('user');
        $editors = [
        'Margaret Hopper',
        'Grace Hamilton',
        $users = [
        'Gregorio Sánchez' => [
        'preferred_language' => 'es',
        'roles' => ['author'],
        ],
        'Margaret Hopper' => [
        'preferred_language' => 'en',
        'roles' => ['editor'],
        ],
        'Grace Hamilton' => [
        'preferred_language' => 'en',
        'roles' => ['editor'],
        ],
        'María García' => [
        'preferred_language' => 'es',
        'roles' => ['editor'],
        ],
        ];
        foreach ($editors as $name) {
        foreach ($users as $name => $user_data) {
        $user = $user_storage->create([
        'name' => $name,
        'status' => 1,
        'roles' => ['editor'],
        'mail' => mb_strtolower(str_replace(' ', '.', $name)) . '@example.com',
        'roles' => $user_data['roles'],
        'preferred_langcode' => $user_data['preferred_language'],
        'preferred_admin_langcode' => $user_data['preferred_language'],
        'mail' => \Drupal::transliteration()->transliterate(mb_strtolower(str_replace(' ', '.', $name))) . '@example.com',
        ]);
        $user->enforceIsNew();
        $user->save();
        ......
        ......@@ -38,8 +38,8 @@ public function testFrontPageAuthenticatedWarmCache(): void {
        $expected_queries = [
        'SELECT "session" FROM "sessions" WHERE "sid" = "SESSION_ID" LIMIT 0, 1',
        'SELECT * FROM "users_field_data" "u" WHERE "u"."uid" = "8" AND "u"."default_langcode" = 1',
        'SELECT "roles_target_id" FROM "user__roles" WHERE "entity_id" = "8"',
        'SELECT * FROM "users_field_data" "u" WHERE "u"."uid" = "10" AND "u"."default_langcode" = 1',
        'SELECT "roles_target_id" FROM "user__roles" WHERE "entity_id" = "10"',
        'SELECT "config"."name" AS "name" FROM "config" "config" WHERE ("collection" = "") AND ("name" LIKE "language.entity.%" ESCAPE ' . "'\\\\'" . ') ORDER BY "collection" ASC, "name" ASC',
        'SELECT "name", "value" FROM "key_value" WHERE "name" IN ( "system.maintenance_mode" ) AND "collection" = "state"',
        'SELECT "name", "value" FROM "key_value" WHERE "name" IN ( "twig_extension_hash_prefix" ) AND "collection" = "state"',
        ......
        0% Loading or .
        You are about to add 0 people to the discussion. Proceed with caution.
        Please register or to comment