user_info.py 3.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. from .tool.func import *
  2. def user_info(name = ''):
  3. with get_db_connect() as conn:
  4. curs = conn.cursor()
  5. if name == '':
  6. ip = ip_check()
  7. else:
  8. ip = name
  9. login_menu = ''
  10. tool_menu = ''
  11. if name == '':
  12. curs.execute(db_change("select count(*) from alarm where name = ?"), [ip])
  13. count = curs.fetchall()
  14. if count and count[0][0] != 0:
  15. tool_menu += '<li><a id="not_thing" href="/alarm">' + load_lang('alarm') + ' (' + str(count[0][0]) + ')</a></li>'
  16. else:
  17. tool_menu += '<li><a href="/alarm">' + load_lang('alarm') + '</a></li>'
  18. if ip_or_user(ip) == 0:
  19. login_menu += '''
  20. <li><a href="/logout">''' + load_lang('logout') + '''</a></li>
  21. <li><a href="/change">''' + load_lang('user_setting') + '''</a></li>
  22. '''
  23. tool_menu += '<li><a href="/watch_list">' + load_lang('watchlist') + '</a></li>'
  24. tool_menu += '<li><a href="/star_doc">' + load_lang('star_doc') + '</a></li>'
  25. tool_menu += '<li><a href="/challenge">' + load_lang('challenge') + '</a></li>'
  26. tool_menu += '<li><a href="/acl/user:' + url_pas(ip) + '">' + load_lang('user_document_acl') + '</a></li>'
  27. else:
  28. login_menu += '''
  29. <li><a href="/login">''' + load_lang('login') + '''</a></li>
  30. <li><a href="/register">''' + load_lang('register') + '''</a></li>
  31. <li><a href="/change">''' + load_lang('user_setting') + '''</a></li>
  32. <li><a href="/login/find">''' + load_lang('password_search') + '''</a></li>
  33. '''
  34. tool_menu += '<li><a href="/change/head">' + load_lang('user_head') + '</a></li>'
  35. login_menu = '<h2>' + load_lang('login') + '</h2><ul class="inside_ul">' + login_menu + '</ul>'
  36. tool_menu = '<h2>' + load_lang('tool') + '</h2><ul class="inside_ul">' + tool_menu + '</ul>'
  37. if admin_check(1) == 1:
  38. curs.execute(db_change("select block from rb where block = ? and ongoing = '1'"), [ip])
  39. ban_name = load_lang('release') if curs.fetchall() else load_lang('ban')
  40. admin_menu = '''
  41. <h2>''' + load_lang('admin') + '''</h2>
  42. <ul class="inside_ul">
  43. <li><a href="/auth/give/ban/''' + url_pas(ip) + '''">''' + ban_name + '''</a></li>
  44. <li><a href="/check/''' + url_pas(ip) + '''">''' + load_lang('check') + '''</a></li>
  45. </ul>
  46. '''
  47. else:
  48. admin_menu = ''
  49. return easy_minify(flask.render_template(skin_check(),
  50. imp = [load_lang('user_tool'), wiki_set(), wiki_custom(), wiki_css([0, 0])],
  51. data = '''
  52. <h2>''' + load_lang('state') + '''</h2>
  53. <div id="opennamu_get_user_info">''' + ip + '''</div>
  54. ''' + login_menu + '''
  55. ''' + tool_menu + '''
  56. <h2>''' + load_lang('other') + '''</h2>
  57. <ul class="inside_ul">
  58. <li><a href="/record/''' + url_pas(ip) + '''">''' + load_lang('record') + '''</a></li>
  59. <li><a href="/record/topic/''' + url_pas(ip) + '''">''' + load_lang('discussion_record') + '''</a></li>
  60. <li><a href="/topic/user:''' + url_pas(ip) + '''">''' + load_lang('user_discussion') + '''</a></li>
  61. <li><a href="/count/''' + url_pas(ip) + '''">''' + load_lang('count') + '''</a></li>
  62. </ul>
  63. ''' + admin_menu + '''
  64. ''',
  65. menu = 0
  66. ))