2
0

login_register_submit.py 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. from .tool.func import *
  2. async def login_register_submit():
  3. with get_db_connect() as conn:
  4. curs = conn.cursor()
  5. session_reset_list = ['submit_id', 'submit_pw', 'submit_email']
  6. if not 'submit_id' in flask.session:
  7. for for_a in session_reset_list:
  8. flask.session.pop(for_a, None)
  9. return redirect(conn, '/register')
  10. curs.execute(db_change('select data from other where name = "approval_question"'))
  11. sql_data = curs.fetchall()
  12. if not sql_data:
  13. for for_a in session_reset_list:
  14. flask.session.pop(for_a, None)
  15. return redirect(conn, '/register')
  16. data_que = sql_data[0][0]
  17. if do_user_name_check(conn, flask.session['submit_id']) == 1:
  18. for for_a in session_reset_list:
  19. flask.session.pop(for_a, None)
  20. return redirect(conn, '/register')
  21. if flask.request.method == 'POST':
  22. curs.execute(db_change('select data from other where name = "encode"'))
  23. data_encode = curs.fetchall()
  24. data_encode = data_encode[0][0]
  25. user_app_data = {}
  26. user_app_data['id'] = flask.session['submit_id']
  27. user_app_data['pw'] = pw_encode(conn, flask.session['submit_pw'])
  28. user_app_data['encode'] = data_encode
  29. user_app_data['question'] = data_que
  30. user_app_data['answer'] = flask.request.form.get('answer', '')
  31. if 'submit_email' in flask.session:
  32. user_app_data['email'] = flask.session['submit_email']
  33. else:
  34. user_app_data['email'] = ''
  35. for for_a in session_reset_list:
  36. flask.session.pop(for_a, None)
  37. curs.execute(db_change("insert into user_set (id, name, data) values (?, ?, ?)"), [user_app_data['id'], 'application', json_dumps(user_app_data)])
  38. return await re_error(conn, 43)
  39. else:
  40. return easy_minify(conn, flask.render_template(skin_check(conn),
  41. imp = [get_lang(conn, 'approval_question'), await wiki_set(), await wiki_custom(conn), wiki_css([0, 0])],
  42. data = '''
  43. <form method="post">
  44. ''' + get_lang(conn, 'approval_question') + ' : ' + data_que + '''
  45. <hr class="main_hr">
  46. <input placeholder="''' + get_lang(conn, 'approval_question') + '''" name="answer">
  47. <hr class="main_hr">
  48. <button type="submit">''' + get_lang(conn, 'save') + '''</button>
  49. </form>
  50. ''',
  51. menu = [['user', get_lang(conn, 'return')]]
  52. ))