user_count.py 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. from .tool.func import *
  2. async def user_count(name = None):
  3. with get_db_connect() as conn:
  4. curs = conn.cursor()
  5. if name == None:
  6. that = ip_check()
  7. else:
  8. that = name
  9. curs.execute(db_change("select count(*) from history where ip = ?"), [that])
  10. count = curs.fetchall()
  11. if count:
  12. data = count[0][0]
  13. else:
  14. data = 0
  15. curs.execute(db_change("select count(*) from topic where ip = ?"), [that])
  16. count = curs.fetchall()
  17. if count:
  18. data_topic = count[0][0]
  19. else:
  20. data_topic = 0
  21. date = get_time()
  22. date = date.split()
  23. date = date[0]
  24. data_today = 0
  25. data_today_len = 0
  26. curs.execute(db_change("select leng from history where date like ? and ip = ?"), [date + '%', that])
  27. db_data = curs.fetchall()
  28. for count in db_data:
  29. count_data = count[0]
  30. count_data = count_data.replace('+', '')
  31. count_data = count_data.replace('-', '')
  32. data_today_len += int(count_data)
  33. data_today += 1
  34. date_yesterday = str((
  35. datetime.datetime.today() + datetime.timedelta(days = -1)
  36. ).strftime("%Y-%m-%d"))
  37. data_yesterday = 0
  38. data_yesterday_len = 0
  39. curs.execute(db_change("select leng from history where date like ? and ip = ?"), [date_yesterday + '%', that])
  40. db_data = curs.fetchall()
  41. for count in db_data:
  42. count_data = count[0]
  43. count_data = count_data.replace('+', '')
  44. count_data = count_data.replace('-', '')
  45. data_yesterday_len += int(count_data)
  46. data_yesterday += 1
  47. # 한글 지원 필요
  48. return easy_minify(conn, flask.render_template(skin_check(conn),
  49. imp = [get_lang(conn, 'count'), wiki_set(conn), await wiki_custom(conn), wiki_css([0, 0])],
  50. data = '''
  51. <ul>
  52. <li><a href="/record/''' + url_pas(that) + '''">''' + get_lang(conn, 'edit_record') + '''</a> : ''' + str(data) + '''</li>
  53. <li><a href="/record/topic/''' + url_pas(that) + '''">''' + get_lang(conn, 'discussion_record') + '''</a> : ''' + str(data_topic) + '''</a></li>
  54. <hr>
  55. <li>(''' + get_lang(conn, 'beta') + ''') TODAY : ''' + str(data_today) + '''</li>
  56. <li>(''' + get_lang(conn, 'beta') + ''') TODAY LEN : ''' + str(data_today_len) + '''</li>
  57. <li>(''' + get_lang(conn, 'beta') + ''') TODAY DIFF : ''' + str(data_today_len - data_yesterday_len) + '''</li>
  58. <hr>
  59. <li>(''' + get_lang(conn, 'beta') + ''') YESTERDAY : ''' + str(data_yesterday) + '''</li>
  60. <li>(''' + get_lang(conn, 'beta') + ''') YESTERDAY LEN : ''' + str(data_yesterday_len) + '''</li>
  61. </ul>
  62. ''',
  63. menu = [['user', get_lang(conn, 'return')]]
  64. ))