|
|
@@ -1,118 +1,107 @@
|
|
|
from .tool.func import *
|
|
|
|
|
|
-def api_user_info(name = ''):
|
|
|
+def api_user_info(user_name = ''):
|
|
|
with get_db_connect() as conn:
|
|
|
curs = conn.cursor()
|
|
|
|
|
|
- if flask.request.method == 'POST':
|
|
|
- try:
|
|
|
- data_list = json.loads(flask.request.form.get('title_list', ''))
|
|
|
- data_list = list(set(data_list))
|
|
|
- except:
|
|
|
- data_list = [name]
|
|
|
-
|
|
|
- data_result = {}
|
|
|
- for user_name in data_list:
|
|
|
- data_result[user_name] = {}
|
|
|
-
|
|
|
- # name part
|
|
|
- data_result[user_name]['render'] = ip_pas(user_name)
|
|
|
-
|
|
|
- # auth part
|
|
|
- curs.execute(db_change("select data from user_set where id = ? and name = 'acl'"), [user_name])
|
|
|
- db_data = curs.fetchall()
|
|
|
- if db_data:
|
|
|
- if db_data[0][0] != 'user':
|
|
|
- curs.execute(db_change("select name from alist where name = ?"), [db_data[0][0]])
|
|
|
- if curs.fetchall() or db_data[0][0] in get_default_admin_group():
|
|
|
- data_result[user_name]['auth'] = db_data[0][0]
|
|
|
- else:
|
|
|
- data_result[user_name]['auth'] = '1'
|
|
|
- else:
|
|
|
- data_result[user_name]['auth'] = '1'
|
|
|
+ data_result = {}
|
|
|
+
|
|
|
+ # name part
|
|
|
+ data_result['render'] = ip_pas(user_name)
|
|
|
+
|
|
|
+ # auth part
|
|
|
+ curs.execute(db_change("select data from user_set where id = ? and name = 'acl'"), [user_name])
|
|
|
+ db_data = curs.fetchall()
|
|
|
+ if db_data:
|
|
|
+ if db_data[0][0] != 'user':
|
|
|
+ curs.execute(db_change("select name from alist where name = ?"), [db_data[0][0]])
|
|
|
+ if curs.fetchall() or db_data[0][0] in get_default_admin_group():
|
|
|
+ data_result['auth'] = db_data[0][0]
|
|
|
else:
|
|
|
- data_result[user_name]['auth'] = '0'
|
|
|
+ data_result['auth'] = '1'
|
|
|
+ else:
|
|
|
+ data_result['auth'] = '1'
|
|
|
+ else:
|
|
|
+ data_result['auth'] = '0'
|
|
|
|
|
|
- curs.execute(db_change("select data from user_set where id = ? and name = 'auth_date'"), [user_name])
|
|
|
- db_data = curs.fetchall()
|
|
|
- if db_data:
|
|
|
- data_result[user_name]['auth_date'] = db_data[0][0]
|
|
|
- else:
|
|
|
- data_result[user_name]['auth_date'] = '0'
|
|
|
+ curs.execute(db_change("select data from user_set where id = ? and name = 'auth_date'"), [user_name])
|
|
|
+ db_data = curs.fetchall()
|
|
|
+ if db_data:
|
|
|
+ data_result['auth_date'] = db_data[0][0]
|
|
|
+ else:
|
|
|
+ data_result['auth_date'] = '0'
|
|
|
|
|
|
- curs.execute(db_change("select data from user_set where id = ? and name = 'level'"), [user_name])
|
|
|
- db_data = curs.fetchall()
|
|
|
- if db_data:
|
|
|
- data_result[user_name]['level'] = db_data[0][0]
|
|
|
- else:
|
|
|
- data_result[user_name]['level'] = '0'
|
|
|
+ curs.execute(db_change("select data from user_set where id = ? and name = 'level'"), [user_name])
|
|
|
+ db_data = curs.fetchall()
|
|
|
+ if db_data:
|
|
|
+ data_result['level'] = db_data[0][0]
|
|
|
+ else:
|
|
|
+ data_result['level'] = '0'
|
|
|
|
|
|
- curs.execute(db_change("select data from user_set where id = ? and name = 'experience'"), [user_name])
|
|
|
- db_data = curs.fetchall()
|
|
|
- if db_data:
|
|
|
- data_result[user_name]['exp'] = db_data[0][0]
|
|
|
- else:
|
|
|
- data_result[user_name]['exp'] = '0'
|
|
|
+ curs.execute(db_change("select data from user_set where id = ? and name = 'experience'"), [user_name])
|
|
|
+ db_data = curs.fetchall()
|
|
|
+ if db_data:
|
|
|
+ data_result['exp'] = db_data[0][0]
|
|
|
+ else:
|
|
|
+ data_result['exp'] = '0'
|
|
|
+
|
|
|
+ # ban part
|
|
|
+ if ban_check(user_name) == 0:
|
|
|
+ data_result['ban'] = '0'
|
|
|
+ else:
|
|
|
+ data_result['ban'] = {}
|
|
|
+ regex_ban = 0
|
|
|
+
|
|
|
+ curs.execute(db_change("select login, block, end, why from rb where band = 'regex' and ongoing = '1'"))
|
|
|
+ for db_data in curs.fetchall():
|
|
|
+ if re.compile(db_data[1]).search(user_name):
|
|
|
+ regex_ban = 1
|
|
|
|
|
|
- # ban part
|
|
|
- if ban_check(name) == 0:
|
|
|
- data_result[user_name]['ban'] = '0'
|
|
|
- else:
|
|
|
- data_result[user_name]['ban'] = {}
|
|
|
- regex_ban = 0
|
|
|
+ data_result['ban']['type'] = 'regex'
|
|
|
+ if db_data[0] == 'O':
|
|
|
+ data_result['ban']['login_able'] = '1'
|
|
|
+ else:
|
|
|
+ data_result['ban']['login_able'] = '0'
|
|
|
+
|
|
|
+ if db_data[2] == '':
|
|
|
+ data_result['ban']['period'] = '0'
|
|
|
+ else:
|
|
|
+ data_result['ban']['period'] = db_data[2]
|
|
|
+
|
|
|
+ data_result['ban']['reason'] = db_data[3]
|
|
|
|
|
|
- curs.execute(db_change("select login, block, end, why from rb where band = 'regex' and ongoing = '1'"))
|
|
|
- for db_data in curs.fetchall():
|
|
|
- if re.compile(db_data[1]).search(user_name):
|
|
|
- regex_ban = 1
|
|
|
-
|
|
|
- data_result[user_name]['ban']['type'] = 'regex'
|
|
|
- if db_data[0] == 'O':
|
|
|
- data_result[user_name]['ban']['login_able'] = '1'
|
|
|
- else:
|
|
|
- data_result[user_name]['ban']['login_able'] = '0'
|
|
|
-
|
|
|
- if db_data[2] == '':
|
|
|
- data_result[user_name]['ban']['period'] = '0'
|
|
|
- else:
|
|
|
- data_result[user_name]['ban']['period'] = db_data[2]
|
|
|
-
|
|
|
- data_result[user_name]['ban']['reason'] = db_data[3]
|
|
|
-
|
|
|
- break
|
|
|
-
|
|
|
- if regex_ban == 0:
|
|
|
- curs.execute(db_change("select login, block, end, why from rb where block = ? and ongoing = '1'"), [user_name])
|
|
|
- db_data = curs.fetchall()
|
|
|
- if db_data:
|
|
|
- data_result[user_name]['ban']['type'] = 'normal'
|
|
|
- if db_data[0][0] == 'O':
|
|
|
- data_result[user_name]['ban']['login_able'] = '1'
|
|
|
- else:
|
|
|
- data_result[user_name]['ban']['login_able'] = '0'
|
|
|
-
|
|
|
- if db_data[0][2] == '':
|
|
|
- data_result[user_name]['ban']['period'] = '0'
|
|
|
- else:
|
|
|
- data_result[user_name]['ban']['period'] = db_data[0][2]
|
|
|
-
|
|
|
- data_result[user_name]['ban']['reason'] = db_data[0][3]
|
|
|
-
|
|
|
- # user document part
|
|
|
- curs.execute(db_change("select title from data where title = ?"), ['user:' + user_name])
|
|
|
- if curs.fetchall():
|
|
|
- data_result[user_name]['document'] = '1'
|
|
|
- else:
|
|
|
- data_result[user_name]['document'] = '0'
|
|
|
-
|
|
|
- # user title part
|
|
|
- curs.execute(db_change('select data from user_set where name = "user_title" and id = ?'), [user_name])
|
|
|
+ break
|
|
|
+
|
|
|
+ if regex_ban == 0:
|
|
|
+ curs.execute(db_change("select login, block, end, why from rb where block = ? and ongoing = '1'"), [user_name])
|
|
|
db_data = curs.fetchall()
|
|
|
if db_data:
|
|
|
- data_result[user_name]['user_title'] = db_data[0][0]
|
|
|
- else:
|
|
|
- data_result[user_name]['user_title'] = ''
|
|
|
-
|
|
|
- return flask.jsonify(data_result)
|
|
|
+ data_result['ban']['type'] = 'normal'
|
|
|
+ if db_data[0][0] == 'O':
|
|
|
+ data_result['ban']['login_able'] = '1'
|
|
|
+ else:
|
|
|
+ data_result['ban']['login_able'] = '0'
|
|
|
+
|
|
|
+ if db_data[0][2] == '':
|
|
|
+ data_result['ban']['period'] = '0'
|
|
|
+ else:
|
|
|
+ data_result['ban']['period'] = db_data[0][2]
|
|
|
+
|
|
|
+ data_result['ban']['reason'] = db_data[0][3]
|
|
|
+
|
|
|
+ # user document part
|
|
|
+ curs.execute(db_change("select title from data where title = ?"), ['user:' + user_name])
|
|
|
+ if curs.fetchall():
|
|
|
+ data_result['document'] = '1'
|
|
|
+ else:
|
|
|
+ data_result['document'] = '0'
|
|
|
+
|
|
|
+ # user title part
|
|
|
+ curs.execute(db_change('select data from user_set where name = "user_title" and id = ?'), [user_name])
|
|
|
+ db_data = curs.fetchall()
|
|
|
+ if db_data:
|
|
|
+ data_result['user_title'] = db_data[0][0]
|
|
|
else:
|
|
|
- return flask.jsonify({})
|
|
|
+ data_result['user_title'] = ''
|
|
|
+
|
|
|
+ return flask.jsonify({ 'data' : data_result })
|