소스 검색

사용자 상태 표 좀 더 자세하게

Surplus_Up (2DU) 6 년 전
부모
커밋
c4e5d867ad
3개의 변경된 파일30개의 추가작업 그리고 67개의 파일을 삭제
  1. 25 17
      route/api_user_info.py
  2. 4 49
      route/tool/func.py
  3. 1 1
      version.json

+ 25 - 17
route/api_user_info.py

@@ -7,6 +7,9 @@ def api_user_info_2(conn, name):
         plus_d = ''
         plus_t = []
 
+        curs.execute(db_change("delete from ban where (end < ? and end like '2%')"), [get_time()])
+        conn.commit()
+
         plus_d = '''
             <table class="user_info_table">
                 <tbody>
@@ -39,28 +42,33 @@ def api_user_info_2(conn, name):
         if ban_check(name) == 0:
             plus_t += [load_lang('normal')]
         else:
-            match = re.search("^([0-9]{1,3}\.[0-9]{1,3})", name)
-            if match:
-                match = match.groups()[0]
-            else:
-                match = '-'
+            plus_t += [load_lang('blocked') + '<br>']
 
-            curs.execute(db_change("select end, login, band from ban where block = ? or block = ?"), [name, match])
-            block_data = curs.fetchall()
-            if block_data:
-                if block_data[0][0] != '':
-                    plus_t += [load_lang('period') + ' : ' + block_data[0][0]]
-                else:
-                    plus_t += [load_lang('limitless')]
+            match = re.search("^([0-9]{1,3}\.[0-9]{1,3})", name)
+            match = match.groups()[0] if match else '-'
+            regex_ban = 0
 
-                if block_data[0][1] != '':
-                    plus_t += [load_lang('login_able')]
+            curs.execute(db_change("select login, block, end, why from ban where band = 'regex'"))
+            for test_r in curs.fetchall():
+                if re.compile(test_r[1]).search(name):
+                    plus_t[1] += load_lang('type') + ' : ' + load_lang('regex') + '<br>'
+                    plus_t[1] += load_lang('period') + ' : ' + (test_r[2] if test_r[2] != '' else load_lang('limitless'))
+                    plus_t[1] += ('<br>' + load_lang('login_able') if test_r[0] == 'O' else '')
+                    plus_t[1] += ('<br>' + load_lang('why') + ' : ' + test_r[3] if test_r[3] != '' else '')
+                    regex_ban = 1
 
-                if block_data[0][2] == 'O':
-                    plus_t += [load_lang('band_blocked')]
+            if regex_ban == 0:
+                curs.execute(db_change("select end, login, band, why from ban where block = ? or block = ?"), [name, match])
+                block_data = curs.fetchall()
+                if block_data:
+                    plus_t[1] += load_lang('type') + ' : ' + load_lang('normal') + '<br>'
+                    plus_t[1] += load_lang('period') + ' : ' + (block_data[0][0] if block_data[0][0] != '' else load_lang('limitless'))
+                    plus_t[1] += ('<br>' + load_lang('login_able') if block_data[0][1] != '' else '')
+                    plus_t[1] += ('<br>' + load_lang('band_blocked') if block_data[0][2] == 'O' else '')
+                    plus_t[1] += ('<br>' + load_lang('why') + ' : ' + block_data[0][3] if block_data[0][3] != '' else '')
 
         plus_d = plus_d.format(ip_pas(name), plus_t[0], plus_t[1])
 
         return flask.jsonify({ "data" : plus_d })
     else:
-        pass
+        return flask.jsonify({})

+ 4 - 49
route/tool/func.py

@@ -742,7 +742,6 @@ def load_skin(data = '', set_n = 0):
         if set_n == 0:
             for skin_data in os.listdir(os.path.abspath('views')):
                 if not skin_data in system_file:
-                    print(data[0][0])
                     if data[0][0] == skin_data:
                         skin_return_data = '<option value="' + skin_data + '">' + skin_data + '</option>' + skin_return_data
                     else:
@@ -1064,58 +1063,14 @@ def re_error(data):
     conn.commit()
     
     if data == '/ban':
-        ip = ip_check()
-
-        end = '<li>' + load_lang('why') + ' : ' + load_lang('authority_error') + '</li>'
-
         if ban_check() == 1:
-            end = '<li>' + load_lang('state') + ' : ' + load_lang('ban') + '</li>'
-            ok_sign = 1
-
-            band = re.search("^([0-9]{1,3}\.[0-9]{1,3})", ip)
-            if band:
-                band_it = band.groups()[0]
-            else:
-                band_it = '-'
-
-            curs.execute(db_change("delete from ban where (end < ? and end like '2%')"), [get_time()])
-            conn.commit()
-
-            curs.execute(db_change("select login, block, end from ban where ((end > ? and end like '2%') or end = '') and band = 'regex'"), [get_time()])
-            regex_d = curs.fetchall()
-            for test_r in regex_d:
-                g_regex = re.compile(test_r[1])
-                if g_regex.search(ip):
-                    end += '<li>' + load_lang('type') + ' : regex ban</li>'
-                    end += '<li>' + load_lang('end') + ' : ' + (test_r[2] if test_r[2] != '' else load_lang('limitless')) + '</li>'
-                    if test_r[0] == 'O':
-                        end += '<li>' + load_lang('login_able') + ' (' + load_lang('not_sure') + ')</li>'
-
-                    end += '<hr class=\"main_hr\">'
-            
-            curs.execute(db_change("select login, end from ban where ((end > ? and end like '2%') or end = '') and block = ?"), [get_time(), band_it])
-            band_d = curs.fetchall()
-            if band_d:
-                end += '<li>' + load_lang('type') + ' : band ban</li>'
-                end += '<li>' + load_lang('end') + ' : ' + (band_d[0][1] if band_d[0][1] != '' else load_lang('limitless')) + '</li>'
-                if band_d[0][0] == 'O':
-                    end += '<li>' + load_lang('login_able') + ' (' + load_lang('not_sure') + ')</li>'
-
-                end += '<hr class=\"main_hr\">'
-
-            curs.execute(db_change("select login, end from ban where ((end > ? and end like '2%') or end = '') and block = ?"), [get_time(), ip])
-            ban_d = curs.fetchall()
-            if ban_d:
-                end += '<li>' + load_lang('type') + ' : ban</li>'
-                end += '<li>' + load_lang('end') + ' : ' + (ban_d[0][1] if ban_d[0][1] != '' else load_lang('limitless')) + '</li>'
-                if ban_d[0][0] == 'O':
-                    end += '<li>' + load_lang('login_able') + ' (' + load_lang('not_sure') + ')</li>'
-
-                end += '<hr class=\"main_hr\">'
+            end = '<div id="get_user_info"></div><script>load_user_info("' + ip_check() + '");</script>'
+        else:
+            end = load_lang('authority_error')
 
         return easy_minify(flask.render_template(skin_check(), 
             imp = [load_lang('error'), wiki_set(1), custom(), other2([0, 0])],
-            data = '<h2>' + load_lang('error') + '</h2><ul>' + end + '</ul>',
+            data = '<h2>' + load_lang('error') + '</h2>' + end,
             menu = 0
         ))
     else:

+ 1 - 1
version.json

@@ -1,6 +1,6 @@
 {
     "master" : {
-        "r_ver" : "v3.1.5-master-33",
+        "r_ver" : "v3.1.5-master-34",
         "c_ver" : "400007",
         "s_ver" : "6"
     }, "stable" : {