2
0

give_user_check.py 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. from .tool.func import *
  2. def give_user_check_2(conn, name):
  3. curs = conn.cursor()
  4. curs.execute(db_change("select acl from user where id = ? or id = ?"), [name, flask.request.args.get('plus', '-')])
  5. user = curs.fetchall()
  6. if user and user[0][0] != 'user':
  7. if admin_check() != 1:
  8. return re_error('/error/4')
  9. if admin_check(4, 'check (' + name + ')') != 1:
  10. return re_error('/error/3')
  11. num = int(number_check(flask.request.args.get('num', '1')))
  12. if num * 50 > 0:
  13. sql_num = num * 50 - 50
  14. else:
  15. sql_num = 0
  16. div = ''
  17. if ip_or_user(name) == 0:
  18. curs.execute(db_change("select data from user_set where name = \"approval_question\" and id = ?"), [name])
  19. approval_question = curs.fetchall()
  20. if approval_question and approval_question[0][0]:
  21. curs.execute(db_change("select data from user_set where name = \"approval_question_answer\" and id = ?"), [name])
  22. approval_question_answer = curs.fetchall()
  23. if approval_question_answer and approval_question_answer[0]:
  24. div = '''
  25. <table id="main_table_set">
  26. <tbody>
  27. <tr>
  28. <td>Q</td>
  29. <td>''' + approval_question[0][0] + '''</td>
  30. <td>A</td>
  31. <td>''' + approval_question_answer[0][0] + '''</td>
  32. </tr>
  33. </tbody>
  34. </table>
  35. <hr class=\"main_hr\">
  36. '''
  37. if flask.request.args.get('plus', None):
  38. end_check = 1
  39. curs.execute(db_change("" + \
  40. "select name, ip, ua, today from ua_d " + \
  41. "where " + ('ip' if ip_or_user(name) == 1 else 'name') + " = ? or " + \
  42. ('ip' if ip_or_user(flask.request.args.get('plus', None)) == 1 else 'name') + " = ? " + \
  43. "order by today desc limit ?, 50" + \
  44. ""), [
  45. name,
  46. flask.request.args.get('plus', None),
  47. sql_num
  48. ])
  49. else:
  50. end_check = 0
  51. curs.execute(db_change("" + \
  52. "select name, ip, ua, today from ua_d " + \
  53. "where " + ('ip' if ip_or_user(name) == 1 else 'name') + " = ? order by today desc limit ?, 50" + \
  54. ""), [name, sql_num])
  55. record = curs.fetchall()
  56. if record:
  57. if not flask.request.args.get('plus', None):
  58. div = '<a href="/manager/14?plus=' + url_pas(name) + '">(' + load_lang('compare') + ')</a><hr class=\"main_hr\">' + div
  59. else:
  60. div = '<a href="/check/' + url_pas(name) + '">(' + name + ')</a> <a href="/check/' + url_pas(flask.request.args.get('plus', None)) + '">(' + flask.request.args.get('plus', None) + ')</a><hr class=\"main_hr\">' + div
  61. div += '''
  62. <table id="main_table_set">
  63. <tbody>
  64. <tr>
  65. <td id="main_table_width">''' + load_lang('name') + '''</td>
  66. <td id="main_table_width">ip</td>
  67. <td id="main_table_width">''' + load_lang('time') + '''</td>
  68. </tr>
  69. '''
  70. for data in record:
  71. if data[2]:
  72. ua = data[2]
  73. else:
  74. ua = '<br>'
  75. div += '''
  76. <tr>
  77. <td>''' + ip_pas(data[0]) + '''</td>
  78. <td>''' + ip_pas(data[1]) + '''</td>
  79. <td>''' + data[3] + '''</td>
  80. </tr>
  81. <tr>
  82. <td colspan="3">''' + ua + '''</td>
  83. </tr>
  84. '''
  85. div += '''
  86. </tbody>
  87. </table>
  88. '''
  89. else:
  90. return re_error('/error/2')
  91. if end_check == 1:
  92. div += next_fix('/check/' + url_pas(name) + '?plus=' + flask.request.args.get('plus', None) + '&num=', num, record)
  93. else:
  94. div += next_fix('/check/' + url_pas(name) + '?num=', num, record)
  95. return easy_minify(flask.render_template(skin_check(),
  96. imp = [load_lang('check'), wiki_set(), custom(), other2([0, 0])],
  97. data = div,
  98. menu = [['manager', load_lang('return')]]
  99. ))