Procházet zdrojové kódy

자동 오래된 문서 수정 및 버그 수정

https://github.com/openNAMU/openNAMU/issues/1985
잉여개발기 před 2 roky
rodič
revize
615dcb4c04

+ 1 - 1
route/tool/func.py

@@ -1058,7 +1058,7 @@ def wiki_css(data):
     data_css = ''
     data_css_dark = ''
 
-    data_css_ver = '214'
+    data_css_ver = '215'
     data_css_ver = '.cache_v' + data_css_ver
 
     if 'main_css' in global_wiki_set:

+ 84 - 80
route/tool/func_render_namumark.py

@@ -1465,103 +1465,107 @@ class class_do_render_namumark:
 
     def do_render_redirect(self):
         match = re.search(r'^<back_br>\n#(?:redirect|넘겨주기) ([^\n]+)', self.render_data, flags = re.I)
-        if match and self.doc_set['doc_type'] == 'view':
-            link_data_full = match.group(0)
-            link_main = match.group(1)
+        if match:
+            if self.doc_set['doc_type'] == 'view':
+                link_data_full = match.group(0)
+                link_main = match.group(1)
 
-            link_inter_name = ''
+                link_inter_name = ''
 
-            link_inter_regex = re.compile('^(?:inter|인터):([^:]+):', flags = re.I)
-            inter_check = re.search(link_inter_regex, link_main)
-            if not inter_check:
-                # under page & fix url
-                link_main = self.get_tool_link_fix(link_main, 'redirect')
-            else:
-                link_inter_name = inter_check.group(1)
-                link_main = re.sub(link_inter_regex, '', link_main)
-
-            # sharp
-            link_main = link_main.replace('&#x27;', '<link_single>')
-            link_data_sharp_regex = r'#([^#]+)$'
-            link_data_sharp = re.search(link_data_sharp_regex, link_main)
-            if link_data_sharp:
-                link_data_sharp = link_data_sharp.group(1)
-                link_data_sharp = html.unescape(link_data_sharp)
-                link_data_sharp = '#' + url_pas(link_data_sharp)
-
-                link_main = re.sub(link_data_sharp_regex, '', link_main)
-            else:
-                link_data_sharp = ''
-            
-            link_main = link_main.replace('<link_single>', '&#x27;')
-
-            if not inter_check:
-                # main link fix
-                link_main = self.get_tool_data_restore(link_main, do_type = 'slash')
-                link_main = html.unescape(link_main)
+                link_inter_regex = re.compile('^(?:inter|인터):([^:]+):', flags = re.I)
+                inter_check = re.search(link_inter_regex, link_main)
+                if not inter_check:
+                    # under page & fix url
+                    link_main = self.get_tool_link_fix(link_main, 'redirect')
+                else:
+                    link_inter_name = inter_check.group(1)
+                    link_main = re.sub(link_inter_regex, '', link_main)
 
-                link_exist = 1
+                # sharp
+                link_main = link_main.replace('&#x27;', '<link_single>')
+                link_data_sharp_regex = r'#([^#]+)$'
+                link_data_sharp = re.search(link_data_sharp_regex, link_main)
+                if link_data_sharp:
+                    link_data_sharp = link_data_sharp.group(1)
+                    link_data_sharp = html.unescape(link_data_sharp)
+                    link_data_sharp = '#' + url_pas(link_data_sharp)
 
-                self.curs.execute(db_change("select title from data where title = ?" + self.link_case_insensitive), [link_main])
-                db_data = self.curs.fetchall()
-                if not db_data:
-                    if not link_main in self.data_backlink:
-                        self.data_backlink[link_main] = {}
-
-                    self.data_backlink[link_main]['no'] = ''
-                    link_exist = 0
+                    link_main = re.sub(link_data_sharp_regex, '', link_main)
                 else:
-                    link_main = db_data[0][0]
-                    if not link_main in self.data_backlink:
-                        self.data_backlink[link_main] = {}
+                    link_data_sharp = ''
+                
+                link_main = link_main.replace('<link_single>', '&#x27;')
+
+                if not inter_check:
+                    # main link fix
+                    link_main = self.get_tool_data_restore(link_main, do_type = 'slash')
+                    link_main = html.unescape(link_main)
 
-                self.data_backlink[link_main]['redirect'] = ''
+                    link_exist = 1
 
-                link_main = url_pas(link_main)
-                if link_main != '':
-                    link_main = '/w_from/' + link_main
+                    self.curs.execute(db_change("select title from data where title = ?" + self.link_case_insensitive), [link_main])
+                    db_data = self.curs.fetchall()
+                    if not db_data:
+                        if not link_main in self.data_backlink:
+                            self.data_backlink[link_main] = {}
 
-                self.data_redirect = 1
-                if link_exist == 1:
-                    if self.doc_set['doc_from'] != '':
-                        data_name = self.get_tool_data_storage('<a href="' + link_main + link_data_sharp + '">(GO)</a>', '', link_data_full)
+                        self.data_backlink[link_main]['no'] = ''
+                        link_exist = 0
                     else:
-                        data_name = self.get_tool_data_storage('<meta http-equiv="refresh" content="0; url=' + link_main + link_data_sharp + '">', '', link_data_full)
-                else:
-                    data_name = self.get_tool_data_storage('', '', link_data_full)
+                        link_main = db_data[0][0]
+                        if not link_main in self.data_backlink:
+                            self.data_backlink[link_main] = {}
+
+                    self.data_backlink[link_main]['redirect'] = ''
 
-                self.render_data = '<' + data_name + '></' + data_name + '>'
-            else:
-                self.curs.execute(db_change("select plus, plus_t from html_filter where kind = 'inter_wiki' and html = ?"), [link_inter_name])
-                db_data = self.curs.fetchall()
-                if db_data:
                     link_main = url_pas(link_main)
-                    link_main = db_data[0][0] + link_main
+                    if link_main != '':
+                        link_main = '/w_from/' + link_main
 
-                    link_sub_storage = match.group(1)
-                    link_sub_storage = re.sub(link_inter_regex, '', link_sub_storage)
+                    self.data_redirect = 1
+                    if link_exist == 1:
+                        if self.doc_set['doc_from'] != '':
+                            data_name = self.get_tool_data_storage('<a href="' + link_main + link_data_sharp + '">(GO)</a>', '', link_data_full)
+                        else:
+                            data_name = self.get_tool_data_storage('<meta http-equiv="refresh" content="0; url=' + link_main + link_data_sharp + '">', '', link_data_full)
+                    else:
+                        data_name = self.get_tool_data_storage('', '', link_data_full)
 
-                    link_inter_icon = link_inter_name + ':'
-                    if db_data[0][1] != '':
-                        link_inter_icon = db_data[0][1]
+                    self.render_data = '<' + data_name + '></' + data_name + '>'
+                else:
+                    self.curs.execute(db_change("select plus, plus_t from html_filter where kind = 'inter_wiki' and html = ?"), [link_inter_name])
+                    db_data = self.curs.fetchall()
+                    if db_data:
+                        link_main = url_pas(link_main)
+                        link_main = db_data[0][0] + link_main
 
-                    link_sub_storage = link_inter_icon + link_sub_storage
+                        link_sub_storage = match.group(1)
+                        link_sub_storage = re.sub(link_inter_regex, '', link_sub_storage)
 
-                    self.curs.execute(db_change("select plus_t from html_filter where kind = 'inter_wiki_sub' and html = ?"), [link_inter_name])
-                    db_data = self.curs.fetchall()
-                    if db_data and db_data[0][0] == 'under_bar':
-                        link_main = link_main.replace('%20', '_')
+                        link_inter_icon = link_inter_name + ':'
+                        if db_data[0][1] != '':
+                            link_inter_icon = db_data[0][1]
 
-                    self.data_redirect = 1
-                    if 'doc_from' in self.doc_set:
-                        data_name = self.get_tool_data_storage('<a href="' + link_main + link_data_sharp + '">(GO)</a>', '', link_data_full)
+                        link_sub_storage = link_inter_icon + link_sub_storage
+
+                        self.curs.execute(db_change("select plus_t from html_filter where kind = 'inter_wiki_sub' and html = ?"), [link_inter_name])
+                        db_data = self.curs.fetchall()
+                        if db_data and db_data[0][0] == 'under_bar':
+                            link_main = link_main.replace('%20', '_')
+
+                        self.data_redirect = 1
+                        if 'doc_from' in self.doc_set:
+                            data_name = self.get_tool_data_storage('<a href="' + link_main + link_data_sharp + '">(GO)</a>', '', link_data_full)
+                        else:
+                            data_name = self.get_tool_data_storage('<meta http-equiv="refresh" content="5; url=' + link_main + link_data_sharp + '">', link_sub_storage + ' - After 5s', link_data_full)
+                    
+                        self.render_data = '<' + data_name + '></' + data_name + '>'
                     else:
-                        data_name = self.get_tool_data_storage('<meta http-equiv="refresh" content="5; url=' + link_main + link_data_sharp + '">', link_sub_storage + ' - After 5s', link_data_full)
-                
-                    self.render_data = '<' + data_name + '></' + data_name + '>'
-                else:
-                    self.data_redirect = 1
-                    self.render_data = ''
+                        self.data_redirect = 1
+                        self.render_data = ''
+            else:
+                self.data_redirect = 1
+                self.render_data = ''
 
     def do_render_table(self):
         self.render_data = re.sub(r'\n +\|\|', '\n||', self.render_data)

+ 8 - 2
route/view_w.py

@@ -161,12 +161,18 @@ def view_w(name = 'Test', do_type = ''):
             else:
                 file_data = ''
         else:
+            curs.execute(db_change("select link from back where title = ? and type = 'include' limit 1"), [name])
+            doc_type = 'include' if curs.fetchall() else doc_type
+
+            curs.execute(db_change("select link from back where link = ? and type = 'redirect' limit 1"), [name])
+            doc_type = 'redirect' if curs.fetchall() else doc_type
+
             name_view = name
 
         end_data = '''
             <div id="opennamu_preview_area">
                 <textarea id="opennamu_editor_doc_name" style="display: none;">''' + html.escape(name) + '''</textarea>
-                <script>opennamu_view_w();</script>
+                <script>opennamu_view_w("''' + ('from' if do_type == 'from' else '') + '''");</script>
             </div>
         '''
 
@@ -192,7 +198,7 @@ def view_w(name = 'Test', do_type = ''):
             else:
                 end_data = '<h2>' + load_lang('error') + '</h2><ul class="opennamu_ul"><li>' + load_lang('decument_404_error') + '</li></ul>'
 
-            curs.execute(db_change('select ip, date, leng, send, id from history where title = ? and hide != "O" order by id + 0 desc limit 1'), [name])
+            curs.execute(db_change('select ip from history where title = ? limit 1'), [name])
             db_data = curs.fetchall()
             history_color = 1 if db_data else 0
         else:

+ 1 - 1
version.json

@@ -1,6 +1,6 @@
 {
     "beta" : {
-        "r_ver" : "v3.5.0-dev44",
+        "r_ver" : "v3.5.0-dev45",
         "c_ver" : "3500376",
         "s_ver" : "3500113"
     }

+ 2 - 2
views/main_css/js/route/view.js

@@ -48,7 +48,7 @@ function opennamu_view_w_raw_preview() {
     opennamu_do_render('opennamu_preview_area', data, name);
 }
 
-function opennamu_view_w() {
+function opennamu_view_w(do_type = '') {
     let name = "test";
     if(document.getElementById('opennamu_editor_doc_name')) {
         name = document.getElementById('opennamu_editor_doc_name').innerHTML.replace(/&amp;/g, '&');
@@ -58,7 +58,7 @@ function opennamu_view_w() {
         return res.json();
     }).then(function(data) {
         if(data["data"]) {
-            opennamu_do_render('opennamu_preview_area', data["data"], name);
+            opennamu_do_render('opennamu_preview_area', data["data"], name, do_type);
         }
     });
 }