Skip to content
Snippets Groups Projects
Verified Commit a9f0bc00 authored by Théodore Biadala's avatar Théodore Biadala
Browse files

Revert "Issue #3421843 by scott_euser, smustgrave, Wim Leers, catch:...

Revert "Issue #3421843 by scott_euser, smustgrave, Wim Leers, catch: filter_autop should ignore twig.config debug html comments"

This reverts commit 50340b46.
parent 50340b46
No related branches found
No related tags found
5 merge requests!8376Drupal views: adding more granularity to the ‘use ajax’ functionality,!8300Issue #3443586 View area displays even when parent view has no results.,!7567Issue #3153723 by quietone, Hardik_Patel_12: Change the scaffolding...,!7565Issue #3153723 by quietone, Hardik_Patel_12: Change the scaffolding...,!7509Change label "Block description" to "Block type"
Pipeline #139549 passed
Pipeline: drupal

#139562

    Pipeline: drupal

    #139558

      Pipeline: drupal

      #139557

        +1
        ......@@ -734,27 +734,6 @@ function _filter_autop($text) {
        }
        }
        elseif (!$ignore) {
        // Skip if the next chunk starts with Twig theme debug.
        // @see twig_render_template()
        if (isset($chunks[$i + 1]) && $chunks[$i + 1] === '<!-- THEME DEBUG -->') {
        $chunk = rtrim($chunk, "\n");
        $output .= $chunk;
        continue;
        }
        // Skip if the preceding chunk was the end of a Twig theme debug.
        // @see twig_render_template()
        if (isset($chunks[$i - 1])) {
        if (
        str_starts_with($chunks[$i - 1], '<!-- BEGIN OUTPUT from ')
        || str_starts_with($chunks[$i - 1], '<!-- 💡 BEGIN CUSTOM TEMPLATE OUTPUT from ')
        ) {
        $chunk = ltrim($chunk, "\n");
        $output .= $chunk;
        continue;
        }
        }
        // just to make things a little easier, pad the end
        $chunk = preg_replace('|\n*$|', '', $chunk) . "\n\n";
        $chunk = preg_replace('|<br />\s*<br />|', "\n\n", $chunk);
        ......
        ......@@ -437,20 +437,6 @@ public function testLineBreakFilter() {
        '<!-- comment -->' => TRUE,
        "<!--\nThree.\n-->" => TRUE,
        ],
        // Do not add paragraph tags around Twig theme debugging.
        "<p>Text here\n<!-- THEME DEBUG -->\n<!-- THEME HOOK: 'html' -->\n<!-- FILE NAME SUGGESTIONS:\n* html--node.html.twig\nx html.html.twig\n-->\n<!-- BEGIN OUTPUT from 'core/themes/olivero/templates/layout/html.html.twig' -->\n<span>Test</span></p>" => [
        "<p>Text here" => TRUE,
        "<p>Text here</p>" => FALSE,
        "<span>Test</span></p>" => TRUE,
        "<p><span>Test</span></p>" => FALSE,
        ],
        // Do not add paragraph tags around custom template Twig theme debugging.
        "<p>Text here\n<!-- THEME DEBUG -->\n<!-- THEME HOOK: 'html' -->\n<!-- FILE NAME SUGGESTIONS:\n* html--node.html.twig\nx html.html.twig\n-->\n<!-- 💡 BEGIN CUSTOM TEMPLATE OUTPUT from 'custom/themes/custom-theme/templates/layout/html.html.twig' -->\n<span>Test</span></p>" => [
        "<p>Text here" => TRUE,
        "<p>Text here</p>" => FALSE,
        "<span>Test</span></p>" => TRUE,
        "<p><span>Test</span></p>" => FALSE,
        ],
        // Resulting HTML should produce matching paragraph tags.
        '<p><div> </div></p>' => [
        "<p>\n<div> </div>\n</p>" => TRUE,
        ......@@ -495,44 +481,6 @@ public function testLineBreakFilter() {
        $this->assertEquals($result, '<p>' . $source . "</p>\n", 'Line break filter can process very long strings.');
        }
        /**
        * Tests that the line break filter does not apply to twig debug.
        */
        public function testLineBreakFilterTwigDebug(): void {
        // Enable twig theme debug to ensure that any
        // changes to theme debugging format force checking
        // that the auto paragraph filter continues to be applied
        // correctly.
        $twig = \Drupal::service('twig');
        $twig->enableDebug();
        // Manually render a template in its simplest form.
        $variables = [
        'theme_hook_original' => 'container',
        'directory' => '',
        'children' => 'Test two',
        ];
        include_once $this->root . '/core/themes/engines/twig/twig.engine';
        $render = twig_render_template('container.html.twig', $variables);
        $render = trim($render);
        // Render text before applying the auto paragraph filter.
        $this->assertSame("<!-- THEME DEBUG -->
        <!-- THEME HOOK: 'container' -->
        <!-- 💡 BEGIN CUSTOM TEMPLATE OUTPUT from 'container.html.twig' -->
        <div>Test two</div>
        <!-- END CUSTOM TEMPLATE OUTPUT from 'container.html.twig' -->", $render);
        $result = _filter_autop($render);
        // After auto-p is applied, the theme debug should no longer have
        // line breaks but the true line breaks should still.
        $this->assertSame("<!-- THEME DEBUG --><!-- THEME HOOK: 'container' --><!-- 💡 BEGIN CUSTOM TEMPLATE OUTPUT from 'container.html.twig' --><div>Test two</div>
        <!-- END CUSTOM TEMPLATE OUTPUT from 'container.html.twig' -->", $result);
        }
        /**
        * Tests filter settings, defaults, access restrictions and similar.
        *
        ......
        0% Loading or .
        You are about to add 0 people to the discussion. Proceed with caution.
        Please register or to comment