Просмотр исходного кода

나머지 기능에도 편집 필터 적용

https://github.com/openNAMU/openNAMU/issues/1436
잉여개발기 (SPDV) 2 лет назад
Родитель
Сommit
72cd408bfd
4 измененных файлов с 17 добавлено и 2 удалено
  1. 6 0
      route/bbs_w_edit.py
  2. 3 0
      route/edit.py
  3. 7 1
      route/topic.py
  4. 1 1
      version.json

+ 6 - 0
route/bbs_w_edit.py

@@ -58,6 +58,12 @@ def bbs_w_edit(bbs_num = '', post_num = '', comment_num = ''):
                 # re_error로 대체 예정
                 return redirect(conn, '/bbs/in/' + bbs_num_str)
             
+            if do_edit_filter(conn, title) == 1:
+                return re_error(conn, '/error/21')
+
+            if do_edit_filter(conn, data) == 1:
+                return re_error(conn, '/error/21')
+            
             date = get_time()
 
             if comment_num != '':

+ 3 - 0
route/edit.py

@@ -162,6 +162,9 @@ def edit(name = 'Test', section = 0, do_type = ''):
             
             if do_edit_filter(conn, content) == 1:
                 return re_error(conn, '/error/21')
+            
+            if do_edit_filter(conn, send) == 1:
+                return re_error(conn, '/error/21')
 
             if do_edit_send_check(conn, send) == 1:
                 return re_error(conn, '/error/37')

+ 7 - 1
route/topic.py

@@ -40,6 +40,7 @@ def topic(topic_num = 0, do_type = '', doc_name = 'Test'):
 
             name = flask.request.form.get('topic', 'Test')
             sub = flask.request.form.get('title', 'Test')
+            data = flask.request.form.get('content', 'Test').replace('\r', '')
             
             if do_title_length_check(conn, name) == 1:
                 return re_error(conn, '/error/38')
@@ -47,6 +48,12 @@ def topic(topic_num = 0, do_type = '', doc_name = 'Test'):
             if do_title_length_check(conn, sub, 'topic') == 1:
                 return re_error(conn, '/error/38')
             
+            if do_edit_filter(conn, sub) == 1:
+                return re_error(conn, '/error/21')
+            
+            if do_edit_filter(conn, data) == 1:
+                return re_error(conn, '/error/21')
+            
             if topic_num == '0':
                 curs.execute(db_change("select code from topic order by code + 0 desc limit 1"))
                 t_data = curs.fetchall()
@@ -97,7 +104,6 @@ def topic(topic_num = 0, do_type = '', doc_name = 'Test'):
             if ip_data and ip_or_user(ip_data[0][0]) == 0:
                 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(conn, data, num, ip, topic_num, name, sub)
 
             do_add_thread(conn, 

+ 1 - 1
version.json

@@ -1,6 +1,6 @@
 {
     "beta" : {
-        "r_ver" : "v3.5.0-v128",
+        "r_ver" : "v3.5.0-v129",
         "c_ver" : "20240513",
         "s_ver" : "20240426"
     }