page: filter login/logout classes on any html element
authorMischa POSLAWSKY <perl@shiar.org>
Tue, 26 Nov 2019 23:13:19 +0000 (00:13 +0100)
committerMischa POSLAWSKY <perl@shiar.org>
Wed, 27 Nov 2019 12:27:51 +0000 (13:27 +0100)
Needed on <ul>, but extend to cover any future usage.

page.php

index 932e72943b4f8b1ee1d35c7f512407141d481b32..4bea9c6d179369efd58a88ef2c32b2dd3028224c 100644 (file)
--- a/page.php
+++ b/page.php
@@ -55,7 +55,7 @@ function getoutput($blocks = [])
        # keep either login or logout parts depending on user level
        global $User;
        $hideclass = empty($User) ? 'login' : 'logout';
-       $doc = preg_replace('{\s*<(p|li|span) class="'.$hideclass.'">.*?</\1>}s', '', $doc);
+       $doc = preg_replace('{\s*<([a-z]+) class="'.$hideclass.'">.*?</\1>}s', '', $doc);
 
        return preg_replace_callback(
                '{ (?<! <!--BLOCK: ) \[\[ ([^] ]+) ([^]]*) \]\] }x',