2
0

user_setting_email_check.py 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. from .tool.func import *
  2. async def user_setting_email_check():
  3. with get_db_connect() as conn:
  4. curs = conn.cursor()
  5. ip = ip_check()
  6. if ip_or_user(ip) != 0:
  7. return redirect(conn, '/login')
  8. re_set_list = ['c_key', 'c_email']
  9. if not 'c_key' in flask.session or \
  10. not 'c_email' in flask.session:
  11. for i in re_set_list:
  12. flask.session.pop(i, None)
  13. if flask.request.method == 'POST':
  14. ip = ip_check()
  15. input_key = flask.request.form.get('key', '')
  16. user_agent = flask.request.headers.get('User-Agent', '')
  17. if flask.session['c_key'] == input_key:
  18. curs.execute(db_change('delete from user_set where name = "email" and id = ?'), [ip])
  19. curs.execute(db_change('insert into user_set (name, id, data) values ("email", ?, ?)'), [ip, flask.session['c_email']])
  20. for i in re_set_list:
  21. flask.session.pop(i, None)
  22. return redirect(conn, '/change')
  23. else:
  24. curs.execute(db_change('select data from other where name = "check_key_text"'))
  25. sql_d = curs.fetchall()
  26. b_text = (sql_d[0][0] + '<hr class="main_hr">') if sql_d and sql_d[0][0] != '' else ''
  27. return await render_template(
  28. await get_lang('check_key'),
  29. '''
  30. <form method="post">
  31. ''' + b_text + '''
  32. <input class="__ON_INPUT__" placeholder="''' + await get_lang('key') + '''" name="key" type="text">
  33. <hr class="main_hr">
  34. <button class="__ON_BUTTON__" type="submit">''' + await get_lang('save') + '''</button>
  35. </form>
  36. ''',
  37. 0,
  38. [['user', await get_lang('return')]]
  39. )