فهرست منبع

버그 수정

잉여개발기 (SPDV) 2 سال پیش
والد
کامیت
b5604004be

+ 1 - 1
route/bbs_w_edit.py

@@ -127,7 +127,7 @@ def bbs_w_edit(bbs_num = '', post_num = '', comment_num = ''):
                         <input style="''' + option_display + '''" placeholder="''' + get_lang(conn, 'title') + '''" name="title" value="''' + html.escape(title) + '''">
                         <hr style="''' + option_display + '''" class="main_hr">
 
-                        ''' + edit_editor(curs, ip, data, 'bbs') + '''
+                        ''' + edit_editor(conn, ip, data, 'bbs') + '''
 
                         <!--
                         <div style="''' + option_display + '''">

+ 3 - 3
route/bbs_w_post.py

@@ -102,7 +102,7 @@ def bbs_w_post(bbs_num = '', post_num = ''):
                     return redirect(conn, '/bbs/w/' + bbs_num_str + '/' + post_num_str)
                 
                 data = data.replace('\r', '')
-                data = api_topic_thread_pre_render(curs, data, id_data, ip, set_id, bbs_name, temp_dict['title'], 'post')
+                data = api_topic_thread_pre_render(conn, data, id_data, ip, set_id, bbs_name, temp_dict['title'], 'post')
                 
                 date = get_time()
 
@@ -159,7 +159,7 @@ def bbs_w_post(bbs_num = '', post_num = ''):
 
                 data += '''
                     <form method="post">
-                        ''' + (edit_editor(curs, ip, text, 'bbs_comment') if bbs_comment_acl == 0 else '') + '''
+                        ''' + (edit_editor(conn, ip, text, 'bbs_comment') if bbs_comment_acl == 0 else '') + '''
                     </form>
                 '''
 
@@ -290,7 +290,7 @@ def bbs_w_post(bbs_num = '', post_num = ''):
                         ''' + comment_select + ''' <a href="javascript:opennamu_return_comment();">(''' + get_lang(conn, 'return') + ''')</a>
                         <hr class="main_hr">
                         
-                        ''' + edit_editor(curs, ip, text, 'bbs_comment') + '''
+                        ''' + edit_editor(conn, ip, text, 'bbs_comment') + '''
                     '''
 
                 data += '''

+ 5 - 3
route/edit.py

@@ -23,7 +23,9 @@ def edit_timeout(func, args = (), timeout = 3):
         pool.join()
         return 0
         
-def edit_editor(curs, ip, data_main = '', do_type = 'edit', addon = '', name = ''):
+def edit_editor(conn, ip, data_main = '', do_type = 'edit', addon = '', name = ''):
+    curs = conn.cursor()
+
     monaco_editor_top = ''
     editor_display = ''
     monaco_display = ''
@@ -61,7 +63,7 @@ def edit_editor(curs, ip, data_main = '', do_type = 'edit', addon = '', name = '
     
     add_script = 'do_monaco_init("' + monaco_thema + '");'
     
-    monaco_on = get_main_skin_set(curs, flask.session, 'main_css_monaco', ip)
+    monaco_on = get_main_skin_set(conn, flask.session, 'main_css_monaco', ip)
     if monaco_on == 'use':
         editor_display = 'style="display: none;"'
     else:
@@ -348,7 +350,7 @@ def edit(name = 'Test', section = 0, do_type = ''):
                         <input placeholder="''' + get_lang(conn, 'why') + '''" name="send">
                         <hr class="main_hr">
                         
-                        ''' + edit_editor(curs, ip, data_section, addon = get_edit_text_bottom_check_box(conn) + get_edit_text_bottom(conn) , name = name) + '''
+                        ''' + edit_editor(conn, ip, data_section, addon = get_edit_text_bottom_check_box(conn) + get_edit_text_bottom(conn) , name = name) + '''
                     </form>
                 ''',
                 menu = [

+ 3 - 2
route/go_api_topic.py

@@ -38,9 +38,10 @@ def api_topic_thread_make(user_id, date, data, code, color = '', blind = '', add
         </span>
     '''
 
-def api_topic_thread_pre_render(curs, data, num, ip, topic_num = '', name = '', sub = '', do_type = 'thread'):
-    # 이거 좀 엉성해서 언젠간 손 보고 싶음
+def api_topic_thread_pre_render(conn, data, num, ip, topic_num = '', name = '', sub = '', do_type = 'thread'):
+    curs = conn.cursor()
 
+    # 이거 좀 엉성해서 언젠간 손 보고 싶음
     call_thread_regex = r"( |\n|^)(?:#([0-9]+)(?:-([0-9]+))?)( |\n|$)"
     call_thread_count = len(re.findall(call_thread_regex, data)) * 3
     while 1:

+ 1 - 1
route/recent_history_add.py

@@ -41,7 +41,7 @@ def recent_history_add(name = 'Test', do_type = ''):
                         <input placeholder="''' + get_lang(conn, 'name') + '''" name="get_ip">
                         <hr class="main_hr">
 
-                        ''' + edit_editor(curs, ip) + '''
+                        ''' + edit_editor(conn, ip) + '''
                     </form>
                 ''',
                 menu = [['history/' + url_pas(name), get_lang(conn, 'return')]]

+ 10 - 8
route/tool/func.py

@@ -1360,7 +1360,7 @@ def render_set(conn, doc_name = '', doc_data = '', data_type = 'view', markup =
 
     get_class_render[0] = '<div class="opennamu_render_complete">' + get_class_render[0] + '</div>'
 
-    font_size_set_data = get_main_skin_set(curs, flask.session, 'main_css_font_size', ip)
+    font_size_set_data = get_main_skin_set(conn, flask.session, 'main_css_font_size', ip)
     if font_size_set_data != 'default':
         font_size_set_data = number_check(font_size_set_data)
 
@@ -1393,19 +1393,19 @@ def render_set(conn, doc_name = '', doc_data = '', data_type = 'view', markup =
             </style>''' + \
         '' + get_class_render[0]
 
-    table_set_data = get_main_skin_set(curs, flask.session, 'main_css_table_scroll', ip)
+    table_set_data = get_main_skin_set(conn, flask.session, 'main_css_table_scroll', ip)
     if table_set_data == 'on':
         get_class_render[0] = '<style>.table_safe { overflow-x: scroll; white-space: nowrap; }</style>' + get_class_render[0]
 
-    joke_set_data = get_main_skin_set(curs, flask.session, 'main_css_view_joke', ip)
+    joke_set_data = get_main_skin_set(conn, flask.session, 'main_css_view_joke', ip)
     if joke_set_data == 'off':
         get_class_render[0] = '<style>.opennamu_joke { display: none; }</style>' + get_class_render[0]
 
-    math_set_data = get_main_skin_set(curs, flask.session, 'main_css_math_scroll', ip)
+    math_set_data = get_main_skin_set(conn, flask.session, 'main_css_math_scroll', ip)
     if math_set_data == 'on':
         get_class_render[0] = '<style>.katex .base { overflow-x: scroll; }</style>' + get_class_render[0]
 
-    transparent_set_data = get_main_skin_set(curs, flask.session, 'main_css_table_transparent', ip)
+    transparent_set_data = get_main_skin_set(conn, flask.session, 'main_css_table_transparent', ip)
     if transparent_set_data == 'on':
         get_class_render[0] = '' + \
             '''<style>
@@ -2463,7 +2463,9 @@ def ban_insert(conn, name, end, why, login, blocker, type_d = None, release = 0)
             login
         ])
 
-def history_plus_rc_max(curs, mode):
+def history_plus_rc_max(conn, mode):
+    curs = conn.cursor()
+
     curs.execute(db_change("select count(*) from rc where type = ?"), [mode])
     if curs.fetchall()[0][0] >= 200:
         curs.execute(db_change("select id, title from rc where type = ? order by date asc limit 1"), [mode])
@@ -2496,11 +2498,11 @@ def history_plus(conn, title, data, date, ip, send, leng, t_check = '', mode = '
     send = send + ' (' + t_check + ')' if t_check != '' else send
 
     if mode != 'add' and mode != 'user':
-        history_plus_rc_max(curs, 'normal')
+        history_plus_rc_max(conn, 'normal')
         curs.execute(db_change("insert into rc (id, title, date, type) values (?, ?, ?, 'normal')"), [id_data, title, date])
     
     if mode != 'add':
-        history_plus_rc_max(curs, mode)
+        history_plus_rc_max(conn, mode)
         curs.execute(db_change("insert into rc (id, title, date, type) values (?, ?, ?, ?)"), [id_data, title, date, mode])
 
         data_set_exist = '' if mode != 'delete' else 'not_exist'

+ 1 - 1
route/tool/func_render.py

@@ -47,7 +47,7 @@ class class_do_render:
             rep_data = db_data[0][0] if db_data else 'namumark'
 
         if rep_data == 'namumark' or rep_data == 'namumark_beta':
-            data_end = class_do_render_namumark(curs, doc_name, doc_data, doc_set, self.lang_data)()
+            data_end = class_do_render_namumark(self.conn, doc_name, doc_data, doc_set, self.lang_data)()
         elif rep_data == 'raw':
             data_end = [html.escape(doc_data).replace('\n', '<br>'), '', {}]
         else:

+ 14 - 13
route/tool/func_render_namumark.py

@@ -1,8 +1,9 @@
 from .func_tool import *
 
 class class_do_render_namumark:
-    def __init__(self, curs, doc_name, doc_data, doc_set, lang_data, do_type = 'exter'):
-        self.curs = curs
+    def __init__(self, conn, doc_name, doc_data, doc_set, lang_data, do_type = 'exter'):
+        self.conn = conn
+        self.curs = self.conn.cursor()
 
         self.doc_data = doc_data.replace('\r', '')
         self.doc_name = doc_name
@@ -227,7 +228,7 @@ class class_do_render_namumark:
         doc_set = dict(self.doc_set)
         doc_set['doc_include'] = doc_include
 
-        data_end = class_do_render_namumark(self.curs, self.doc_name, data, doc_set, self.lang_data, do_type = 'inter')()
+        data_end = class_do_render_namumark(self.conn, self.doc_name, data, doc_set, self.lang_data, do_type = 'inter')()
 
         self.render_data_js += data_end[1]
         self.data_category_list += data_end[2]['category']
@@ -241,7 +242,7 @@ class class_do_render_namumark:
     # Render
     def do_render_text(self):
         # <b> function
-        bold_user_set = get_main_skin_set(self.curs, self.flask_session, 'main_css_bold', self.ip)
+        bold_user_set = get_main_skin_set(self.conn, self.flask_session, 'main_css_bold', self.ip)
 
         def do_render_text_bold(match):
             data = match.group(1)
@@ -302,7 +303,7 @@ class class_do_render_namumark:
         self.render_data = re.sub(r",,((?:(?!,,).)+),,", do_render_text_sub, self.render_data)
 
         # <s> function
-        strike_user_set = get_main_skin_set(self.curs, self.flask_session, 'main_css_strike', self.ip)
+        strike_user_set = get_main_skin_set(self.conn, self.flask_session, 'main_css_strike', self.ip)
 
         def do_render_text_strike(match):
             data = match.group(1)
@@ -975,7 +976,7 @@ class class_do_render_namumark:
 
                     file_style = file_width + file_height + file_align_style + file_bgcolor + file_radius + file_rendering
 
-                    image_set = get_main_skin_set(self.curs, self.flask_session, 'main_css_image_set', self.ip)
+                    image_set = get_main_skin_set(self.conn, self.flask_session, 'main_css_image_set', self.ip)
                     if image_set == 'new_click' or image_set == 'click':
                         file_end = '<img style="' + file_style + '" id="opennamu_image_' + str(image_count) + '" alt="' + link_sub + '" src="">'
                     else:
@@ -1288,7 +1289,7 @@ class class_do_render_namumark:
 
     def do_render_include(self):
         include_num = 0
-        include_set_data = get_main_skin_set(self.curs, self.flask_session, 'main_css_include_link', self.ip)
+        include_set_data = get_main_skin_set(self.conn, self.flask_session, 'main_css_include_link', self.ip)
         include_regex = re.compile(r'\[include\(((?:(?!\[include\(|\)\]|<\/div>).)+)\)\](\n?)', re.I)
         include_count_max = len(re.findall(include_regex, self.render_data)) * 2
         while 1:
@@ -1370,9 +1371,9 @@ class class_do_render_namumark:
     def do_redner_footnote(self):
         footnote_num = 0
 
-        footnote_set = get_main_skin_set(self.curs, self.flask_session, 'main_css_footnote_set', self.ip)
-        footnote_number_set = get_main_skin_set(self.curs, self.flask_session, 'main_css_footnote_number', self.ip)
-        footnote_number_view_set = get_main_skin_set(self.curs, self.flask_session, 'main_css_view_real_footnote_num', self.ip)
+        footnote_set = get_main_skin_set(self.conn, self.flask_session, 'main_css_footnote_set', self.ip)
+        footnote_number_set = get_main_skin_set(self.conn, self.flask_session, 'main_css_footnote_number', self.ip)
+        footnote_number_view_set = get_main_skin_set(self.conn, self.flask_session, 'main_css_view_real_footnote_num', self.ip)
 
         footnote_regex = re.compile(r'(?:\[\*((?:(?!\[\*|\]| ).)+)?(?: ((?:(?!\[\*|\]).)+))?\]|\[(각주|footnote)\])', re.I)
         footnote_count_all = len(re.findall(footnote_regex, self.render_data)) * 4
@@ -2117,7 +2118,7 @@ class class_do_render_namumark:
 
             return end_text
             
-        list_view_set = get_main_skin_set(self.curs, self.flask_session, 'main_css_list_view_change', self.ip)
+        list_view_set = get_main_skin_set(self.conn, self.flask_session, 'main_css_list_view_change', self.ip)
         
         list_style = {
             1 : 'opennamu_list_1',
@@ -2226,7 +2227,7 @@ class class_do_render_namumark:
             if self.data_category != '':
                 data_name = self.get_tool_data_storage(self.data_category, '</div>', '')
 
-                category_set_data = get_main_skin_set(self.curs, self.flask_session, 'main_css_category_set', self.ip)
+                category_set_data = get_main_skin_set(self.conn, self.flask_session, 'main_css_category_set', self.ip)
                 if category_set_data == 'bottom':
                     if re.search(r'<footnote_category>', self.render_data):
                         self.render_data = self.render_data.replace('<footnote_category>', '<hr><' + data_name + '></' + data_name + '>', 1)
@@ -2311,7 +2312,7 @@ class class_do_render_namumark:
             self.data_toc = toc_data
             self.data_toc = re.sub(r'<toc_inside>((?:(?!<toc_inside>|<\/toc_inside>).)*)<\/toc_inside>', do_render_last_toc, self.data_toc)
 
-            toc_set_data = get_main_skin_set(self.curs, self.flask_session, 'main_css_toc_set', self.ip)
+            toc_set_data = get_main_skin_set(self.conn, self.flask_session, 'main_css_toc_set', self.ip)
 
             self.render_data = re.sub(toc_search_regex, '', self.render_data)
             if toc_set_data == 'off':

+ 3 - 1
route/tool/func_tool.py

@@ -72,7 +72,9 @@ def sha224_replace(data):
 def md5_replace(data):
     return hashlib.md5(data.encode()).hexdigest()
 
-def get_main_skin_set(curs, flask_session, set_name, ip):
+def get_main_skin_set(conn, flask_session, set_name, ip):
+    curs = conn.cursor()
+
     if ip_or_user(ip) == 0:
         curs.execute(db_change('select data from user_set where name = ? and id = ?'), [set_name, ip])
         db_data = curs.fetchall()

+ 2 - 2
route/topic.py

@@ -98,7 +98,7 @@ def topic(topic_num = 0, do_type = '', doc_name = 'Test'):
                 add_alarm(conn, ip_data[0][0], ip, '<a href="/thread/' + topic_num + '#' + num + '">' + html.escape(name) + ' - ' + html.escape(sub) + '#' + num + '</a>')
 
             data = flask.request.form.get('content', 'Test').replace('\r', '')
-            data = api_topic_thread_pre_render(curs, data, num, ip, topic_num, name, sub)
+            data = api_topic_thread_pre_render(conn, data, num, ip, topic_num, name, sub)
 
             do_add_thread(conn, 
                 topic_num,
@@ -162,7 +162,7 @@ def topic(topic_num = 0, do_type = '', doc_name = 'Test'):
                             <hr class="main_hr">
                         </div>
                         
-                        ''' + edit_editor(curs, ip, '', 'thread') + '''
+                        ''' + edit_editor(conn, ip, '', 'thread') + '''
                     </form>
                 ''',
                 menu = [['topic/' + url_pas(name), get_lang(conn, 'list')]]

+ 2 - 2
route/view_w.py

@@ -40,7 +40,7 @@ def view_w(name = 'Test', do_type = ''):
             category_sql = curs.fetchall()
             for data in category_sql:
                 link_view = data[0]
-                if get_main_skin_set(curs, flask.session, 'main_css_category_change_title', ip) != 'off':
+                if get_main_skin_set(conn, flask.session, 'main_css_category_change_title', ip) != 'off':
                     curs.execute(db_change("select data from back where title = ? and link = ? and type = 'cat_view' limit 1"), [name, data[0]])
                     db_data = curs.fetchall()
                     if db_data and db_data[0][0] != '':
@@ -264,7 +264,7 @@ def view_w(name = 'Test', do_type = ''):
         
         flask.session['lastest_document'] = list(reversed(dict.fromkeys(reversed(flask.session['lastest_document']))))
 
-        view_history_on = get_main_skin_set(curs, flask.session, 'main_css_view_history', ip)
+        view_history_on = get_main_skin_set(conn, flask.session, 'main_css_view_history', ip)
         if view_history_on == 'on':
             end_data = '' + \
                 '<div class="opennamu_trace">' + \