Ver Fonte

fixing SRI hash generation, broken by yesterdays Cloudflare fix that changed the script tag format

El RIDO há 8 anos atrás
pai
commit
da11d2e729
3 ficheiros alterados com 7 adições e 7 exclusões
  1. 1 1
      tpl/bootstrap.php
  2. 1 1
      tpl/page.php
  3. 5 5
      tst/Bootstrap.php

+ 1 - 1
tpl/bootstrap.php

@@ -42,7 +42,7 @@ endif;
 ?>
 		<noscript><link type="text/css" rel="stylesheet" href="css/noscript.css" /></noscript>
 		<script type="text/javascript" data-cfasync="false" src="js/jquery-3.1.1.js" integrity="sha512-U6K1YLIFUWcvuw5ucmMtT9HH4t0uz3M366qrF5y4vnyH6dgDzndlcGvH/Lz5k8NFh80SN95aJ5rqGZEdaQZ7ZQ==" crossorigin="anonymous"></script>
-		<script type="text/javascript" data-cfasync="false" src="js/sjcl-1.0.7.js" integrity="sha512-DsyxLV/uBoQlRTJmW5Gb2SxXUXB+aYeZ6zk+NuXy8LuLyi8oGti9AGn6He5fUY2DtgQ2//RjfaZog8exFuunUQ==" crossorigin="anonymous"></script>
+		<script type="text/javascript" data-cfasync="false" src="js/sjcl-1.0.7.js" integrity="sha512-J2eNenPwyfXkMVNMFz9Q54kKfYi5AA3mQWpNgtjSJzsKHtpbhUt/7bvcjGwwmzE8ZUVWMI/ndagIX1lG+SfxGA==" crossorigin="anonymous"></script>
 <?php
 if ($QRCODE):
 ?>

+ 1 - 1
tpl/page.php

@@ -21,7 +21,7 @@ if ($SYNTAXHIGHLIGHTING):
 endif;
 ?>
 		<script type="text/javascript" data-cfasync="false" src="js/jquery-3.1.1.js" integrity="sha512-U6K1YLIFUWcvuw5ucmMtT9HH4t0uz3M366qrF5y4vnyH6dgDzndlcGvH/Lz5k8NFh80SN95aJ5rqGZEdaQZ7ZQ==" crossorigin="anonymous"></script>
-		<script type="text/javascript" data-cfasync="false" src="js/sjcl-1.0.7.js" integrity="sha512-DsyxLV/uBoQlRTJmW5Gb2SxXUXB+aYeZ6zk+NuXy8LuLyi8oGti9AGn6He5fUY2DtgQ2//RjfaZog8exFuunUQ==" crossorigin="anonymous"></script>
+		<script type="text/javascript" data-cfasync="false" src="js/sjcl-1.0.7.js" integrity="sha512-J2eNenPwyfXkMVNMFz9Q54kKfYi5AA3mQWpNgtjSJzsKHtpbhUt/7bvcjGwwmzE8ZUVWMI/ndagIX1lG+SfxGA==" crossorigin="anonymous"></script>
 		<script type="text/javascript" data-cfasync="false" src="js/kjua.min.js" integrity="sha512-hmvfOhcr4J8bjQ2GuNVzfSbuulv72wgQCJpgnXc2+cCHKqvYo8pK2nc0Q4Esem2973zo1radyIMTEkt+xJlhBA==" crossorigin="anonymous"></script>
 <?php
 if ($ZEROBINCOMPATIBILITY):

+ 5 - 5
tst/Bootstrap.php

@@ -315,12 +315,12 @@ class Helper
                     PATH . 'tpl' . DIRECTORY_SEPARATOR . $file
                 );
                 $content = preg_replace_callback(
-                    '#<script type="text/javascript" src="js/([a-z0-9.-]+.js)([^"]*)"( integrity="[^"]+" crossorigin="[^"]+")?></script>#',
+                    '#<script ([^>]+) src="js/([a-z0-9.-]+.js)([^"]*)"( integrity="[^"]+" crossorigin="[^"]+")?></script>#',
                     function ($matches) {
-                        if (array_key_exists($matches[1], Helper::$hashes)) {
-                            return '<script type="text/javascript" src="js/' .
-                                $matches[1] . $matches[2] .
-                                '" integrity="sha512-' . Helper::$hashes[$matches[1]] .
+                        if (array_key_exists($matches[2], Helper::$hashes)) {
+                            return '<script ' . $matches[1] . ' src="js/' .
+                                $matches[2] . $matches[3] .
+                                '" integrity="sha512-' . Helper::$hashes[$matches[2]] .
                                 '" crossorigin="anonymous"></script>';
                         } else {
                             return $matches[0];