Procházet zdrojové kódy

정규식 버그에 대한 예외처리

Surplus_Up (2DU) před 7 roky
rodič
revize
e741a22613
4 změnil soubory, kde provedl 17 přidání a 7 odebrání
  1. 1 0
      language/en-US.json
  2. 2 1
      language/ko-KR.json
  3. 13 5
      route/plus_inter.py
  4. 1 1
      route/user_log.py

+ 1 - 0
language/en-US.json

@@ -154,6 +154,7 @@
         "encryption_method" : "Encryption method",
         "check_key" : "Check Authentication Key",
         "reset_user_ok" : "Check Success",
+        "name_or_ip_or_regex" : "ID or IP or Regex",
         "_comment_2.1_" : "Filter",
             "_comment_2.1.1_" : "List",
                 "interwiki_list" : "Interwiki(s) list",

+ 2 - 1
language/ko-KR.json

@@ -85,7 +85,7 @@
         "_comment_1.1_" : "시간",
             "second" : "초",
             "hour" : "시간",
-            "limitless" : "무한",
+            "limitless" : "무한",
             "time" : "시간",
             "period" : "기간",
             "end" : "끝",
@@ -154,6 +154,7 @@
         "encryption_method" : "암호화 방식",
         "check_key" : "인증키 검사",
         "reset_user_ok" : "검사 성공",
+        "name_or_ip_or_regex" : "ID or IP or 정규식",
         "_comment_2.1_" : "필터",
             "_comment_2.1.1_" : "목록",
                 "interwiki_list" : "인터위키 목록",

+ 13 - 5
route/plus_inter.py

@@ -16,11 +16,19 @@ def plus_inter_2(conn, tools, name):
             else:
                 end = flask.request.form.get('second', 'X')
 
-            curs.execute("select name from filter where name = ?", [name])
-            if curs.fetchall():
-                curs.execute("update filter set regex = ?, sub = ? where name = ?", [flask.request.form.get('content', 'test'), end, name])
-            else:
-                curs.execute("insert into filter (name, regex, sub) values (?, ?, ?)", [name, flask.request.form.get('content', 'test'), end])
+            try:
+                re.compile(flask.request.form.get('content', 'test'))
+
+                i = 0
+            except:
+                i = 1
+
+            if i == 0:
+                curs.execute("select name from filter where name = ?", [name])
+                if curs.fetchall():
+                    curs.execute("update filter set regex = ?, sub = ? where name = ?", [flask.request.form.get('content', 'test'), end, name])
+                else:
+                    curs.execute("insert into filter (name, regex, sub) values (?, ?, ?)", [name, flask.request.form.get('content', 'test'), end])
         else:
             if tools == 'plus_name_filter':
                 admin_check(None, 'name_filter edit')

+ 1 - 1
route/user_log.py

@@ -33,7 +33,7 @@ def user_log_2(conn):
         list_data += '</li>'
 
     if num == 1:
-        list_data +=    '''
+        list_data += '''
             </ul>
         '''