Parcourir la source

fix syntax bug

2du il y a 4 ans
Parent
commit
630a6e6c6e
2 fichiers modifiés avec 11 ajouts et 7 suppressions
  1. 3 3
      route/tool/func.py
  2. 8 4
      views/main_css/js/render_onmark.js

+ 3 - 3
route/tool/func.py

@@ -84,7 +84,7 @@ if sys.version_info < (3, 6):
 global_lang = {}
 global_wiki_set = {}
 
-data_css_ver = '99'
+data_css_ver = '100'
 data_css = ''
 
 conn = ''
@@ -727,8 +727,8 @@ def wiki_css(data):
                 
     data = data[0:2] + ['', '''
         <link   rel="stylesheet"
-                href="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@10.7.2/build/styles/default.min.css">
-        <script src="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@10.7.2/build/highlight.min.js"></script>
+                href="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@11.2.0/build/styles/default.min.css">
+        <script src="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@11.2.0/build/highlight.min.js"></script>
         <link   defer rel="stylesheet"
                 href="https://cdn.jsdelivr.net/npm/katex@0.13.2/dist/katex.min.css"
                 integrity="sha384-Cqd8ihRLum0CCg8rz0hYKPoLZ3uw+gES2rXQXycqnL5pgVQIflxAUDS7ZSjITLb5"

+ 8 - 4
views/main_css/js/render_onmark.js

@@ -34,10 +34,14 @@ function do_darkmode_split(data) {
     return data.split(',')[0];
 }
 
-function do_js_safe_change(data) {
+function do_js_safe_change(data, br_on = 1) {
     data = data.replace(/\\/g, '\\\\');
     data = data.replace(/"/g, '\\"');
-    data = data.replace(/\n/g, '<br>');
+    if(br_on === 1) {
+        data = data.replace(/\n/g, '<br>');
+    } else {
+        data = data.replace(/\n/g, '\\n');
+    }
     
     return data;
 }
@@ -633,7 +637,7 @@ function do_onmark_middle_render(data, data_js, name_include, data_nowiki, name_
                         data_nowiki[name_include + 'nowiki_syntax_' + String(syntax_n)] = middle_data_all;
                         data_js += do_data_try_insert(
                             name_include + 'nowiki_syntax_' + String(syntax_n),
-                            do_js_safe_change(middle_data_all)
+                            do_js_safe_change(do_xss_change(middle_data_all), 0)
                         );
 
                         return middle_data_before +
@@ -663,7 +667,7 @@ function do_onmark_middle_render(data, data_js, name_include, data_nowiki, name_
     data = data.replace(/<mid_e>/g, '}}}');
     
     if(syntax_n > 0) {
-        data_js += 'hljs.initHighlightingOnLoad();\n';
+        data_js += 'hljs.highlightAll();\n';
     }
     
     return [data, data_js, data_nowiki];