Browse Source

이 스레를 인용한 스레 기능

https://github.com/openNAMU/openNAMU/issues/1512
잉여개발기 (SPDV) 2 years ago
parent
commit
ffe9aaa178
4 changed files with 28 additions and 3 deletions
  1. 2 1
      route/api_topic.py
  2. 1 1
      route/tool/func.py
  3. 3 1
      route/topic.py
  4. 22 0
      views/main_css/js/route/topic.js

+ 2 - 1
route/api_topic.py

@@ -28,8 +28,9 @@ def api_topic_thread_make(user_id, date, data, code, color = '', blind = '', add
                     </td>
                 </tr>
                 <tr>
-                    <td class="''' + color_b + '''" id="opennamu_comment_data_main">
+                    <td class="''' + color_b + ''' opennamu_comment_data_main" id="thread_''' + code + '''">
                         ''' + data + '''
+                        <div id="opennamu_topic_req_''' + code + '''"></div>
                     </td>
                 </tr>
             </table>

+ 1 - 1
route/tool/func.py

@@ -1045,7 +1045,7 @@ def wiki_css(data):
     data_css = ''
     data_css_dark = ''
 
-    data_css_ver = '196'
+    data_css_ver = '197'
     data_css_ver = '.cache_v' + data_css_ver
 
     if 'main_css' in global_wiki_set:

+ 3 - 1
route/topic.py

@@ -147,6 +147,7 @@ def topic(topic_num = 0, do_type = '', doc_name = 'Test'):
                         }
                     </style>
                     <input type="checkbox" onclick="opennamu_do_remove_blind_thread();" checked> ''' + load_lang('remove_blind_thread') + '''
+                    <hr class="main_hr">
 
                     ''' + shortcut + '''
                     <h2 id="topic_top_title">''' + html.escape(sub) + '''</h2>
@@ -154,7 +155,8 @@ def topic(topic_num = 0, do_type = '', doc_name = 'Test'):
                     <div id="top_topic">''' + top_topic + '''</div>
                     <div id="main_topic">''' + main_topic + '''</div>
                     <div id="plus_topic"></div>
-                    
+                    <script>opennamu_thread_where();</script>
+
                     <a href="/thread/''' + topic_num + '/tool">(' + load_lang('topic_tool') + ''')</a>
                     <hr class="main_hr">
                     

+ 22 - 0
views/main_css/js/route/topic.js

@@ -32,4 +32,26 @@ function opennamu_thread_blind() {
     if(do_true === 1) {
         history.go(0);
     }
+}
+
+function opennamu_thread_where() {
+    for(let for_a = 0; for_a < document.getElementsByClassName('opennamu_comment_data_main').length; for_a++) {
+        let data = document.getElementsByClassName('opennamu_comment_data_main')[for_a].innerHTML;
+        let id = document.getElementsByClassName('opennamu_comment_data_main')[for_a].id.replace(/^thread_/, '');
+
+        let match = Array.from(data.matchAll(/<a href="#(?:[0-9]+)">#([0-9]+)<\/a>/g)).map(match => match[1]);
+        console.log(data);
+        if(match) {
+            console.log(match);
+            for(let for_b = 0; for_b < match.length; for_b++) {
+                if(document.getElementById('opennamu_topic_req_' + match[for_b])) {
+                    if(document.getElementById('opennamu_topic_req_' + match[for_b]).innerHTML === '') {
+                        document.getElementById('opennamu_topic_req_' + match[for_b]).innerHTML += '<hr>'
+                    }
+
+                    document.getElementById('opennamu_topic_req_' + match[for_b]).innerHTML += '<a href="#' + id + '">#' + id + '</a> ';
+                }
+            }
+        }
+    }
 }