login_register_submit.py 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. from .tool.func import *
  2. def login_register_submit_2():
  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('/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('/register')
  16. data_que = sql_data[0][0]
  17. if do_user_name_check(flask.session['submit_id']) == 1:
  18. for for_a in session_reset_list:
  19. flask.session.pop(for_a, None)
  20. return redirect('/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(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. conn.commit()
  39. for for_a in get_admin_list():
  40. add_alarm(for_a, user_app_data['id'], '<a href="/app_submit">' + load_lang('new_application') + '</a>')
  41. return re_error('/error/43')
  42. else:
  43. return easy_minify(flask.render_template(skin_check(),
  44. imp = [load_lang('approval_question'), wiki_set(), wiki_custom(), wiki_css([0, 0])],
  45. data = '''
  46. <form method="post">
  47. ''' + load_lang('approval_question') + ' : ' + data_que + '''
  48. <hr class="main_hr">
  49. <input placeholder="''' + load_lang('approval_question') + '''" name="answer">
  50. <hr class="main_hr">
  51. <button type="submit">''' + load_lang('save') + '''</button>
  52. </form>
  53. ''',
  54. menu = [['user', load_lang('return')]]
  55. ))