need_email.py 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. from .tool.func import *
  2. def need_email_2(conn, tool):
  3. curs = conn.cursor()
  4. if flask.request.method == 'POST':
  5. if tool == 'need_email':
  6. if 'c_id' in flask.session:
  7. main_email = ['naver.com', 'gmail.com', 'daum.net', 'hanmail.net', 'hanmail2.net']
  8. data = re.search('@([^@]+)$', flask.request.form.get('email', ''))
  9. if data:
  10. data = data.groups()[0]
  11. curs.execute("select html from html_filter where html = ? and kind = 'email'", [data])
  12. if curs.fetchall() or (data in main_email):
  13. curs.execute('select id from user_set where name = "email" and data = ?', [flask.request.form.get('email', '')])
  14. if curs.fetchall():
  15. flask.session.pop('c_id', None)
  16. flask.session.pop('c_pw', None)
  17. flask.session.pop('c_key', None)
  18. return redirect('/register')
  19. else:
  20. send_email(flask.request.form.get('email', ''), wiki_set()[0] + ' key', 'key : ' + flask.session['c_key'])
  21. flask.session['c_email'] = flask.request.form.get('email', '')
  22. return redirect('/check_key')
  23. return redirect('/register')
  24. else:
  25. curs.execute("select id from user where id = ? and email = ?", [flask.request.form.get('id', ''), flask.request.form.get('email', '')])
  26. if curs.fetchall():
  27. flask.session['c_key'] = ''.join(random.choice("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ") for i in range(16))
  28. flask.session['c_id'] = flask.request.form.get('id', '')
  29. send_email(flask.request.form.get('email', ''), wiki_set()[0] + ' ' + load_lang('password_search') + ' key', 'key : ' + flask.session['c_key'])
  30. return redirect('/check_pass_key')
  31. else:
  32. if tool == 'need_email':
  33. return easy_minify(flask.render_template(skin_check(),
  34. imp = [load_lang('email'), wiki_set(), custom(), other2([0, 0])],
  35. data = '''
  36. <a href="/email_filter">(''' + load_lang('email_filter_list') + ''')</a>
  37. <hr class=\"main_hr\">
  38. <form method="post">
  39. <input placeholder="''' + load_lang('email') + '''" name="email" type="text">
  40. <hr class=\"main_hr\">
  41. <button type="submit">''' + load_lang('save') + '''</button>
  42. </form>
  43. ''',
  44. menu = [['user', load_lang('return')]]
  45. ))
  46. else:
  47. return easy_minify(flask.render_template(skin_check(),
  48. imp = [load_lang('password_search'), wiki_set(), custom(), other2([0, 0])],
  49. data = '''
  50. <form method="post">
  51. <input placeholder="''' + load_lang('id') + '''" name="id" type="text">
  52. <hr class=\"main_hr\">
  53. <input placeholder="email" name="email" type="text">
  54. <hr class=\"main_hr\">
  55. <button type="submit">''' + load_lang('save') + '''</button>
  56. </form>
  57. ''',
  58. menu = [['user', load_lang('return')]]
  59. ))