recent_history_add.py 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. from .tool.func import *
  2. def recent_history_add(name = 'Test', do_type = ''):
  3. with get_db_connect() as conn:
  4. curs = conn.cursor()
  5. ip = ip_check()
  6. if admin_check() != 1:
  7. return re_error('/ban')
  8. if flask.request.method == 'POST' and do_type == '':
  9. admin_check(None, 'history_add (' + name + ')')
  10. today = get_time()
  11. content = flask.request.form.get('content', '')
  12. leng = '+' + str(len(content))
  13. history_plus(
  14. name,
  15. content,
  16. today,
  17. 'Add:' + flask.request.form.get('get_ip', ''),
  18. flask.request.form.get('send', ''),
  19. leng,
  20. t_check = 'add',
  21. mode = 'add'
  22. )
  23. conn.commit()
  24. return redirect('/history/' + url_pas(name))
  25. else:
  26. curs.execute(db_change('select data from other where name = "edit_help"'))
  27. sql_d = curs.fetchall()
  28. p_text = html.escape(sql_d[0][0]) if sql_d and sql_d[0][0] != '' else load_lang('default_edit_help')
  29. send = ''
  30. get_ip = ''
  31. data = ''
  32. data_preview = ''
  33. if do_type == 'preview':
  34. data = flask.request.form.get('content', '')
  35. data = data.replace('\r', '')
  36. send = flask.request.form.get('send', '')
  37. get_ip = flask.request.form.get('get_ip', '')
  38. data_preview = render_set(
  39. doc_name = name,
  40. doc_data = data
  41. )
  42. return easy_minify(flask.render_template(skin_check(),
  43. imp = [load_lang('history_add'), wiki_set(), wiki_custom(), wiki_css(['(' + name + ')', 0])],
  44. data = '''
  45. <form method="post">
  46. <div>''' + edit_button('opennamu_edit_textarea') + '''</div>
  47. <textarea id="opennamu_edit_textarea" class="opennamu_textarea_500" name="content" placeholder="''' + p_text + '''">''' + html.escape(data) + '''</textarea>
  48. <hr class="main_hr">
  49. <input placeholder="''' + load_lang('why') + '''" name="send" value="''' + html.escape(send) + '''">
  50. <hr class="main_hr">
  51. <input placeholder="''' + load_lang('name') + '''" name="get_ip" value="''' + html.escape(get_ip) + '''">
  52. <hr class="main_hr">
  53. <button id="opennamu_save_button" formaction="/history_add/''' + url_pas(name) + '''" type="submit">''' + load_lang('save') + '''</button>
  54. <button id="opennamu_preview_button" formaction="/history_add_preview/''' + url_pas(name) + '''" type="submit">''' + load_lang('preview') + '''</button>
  55. </form>
  56. <hr class="main_hr">
  57. <div id="opennamu_preview_area">''' + data_preview + '''</div>
  58. ''',
  59. menu = [['history/' + url_pas(name), load_lang('return')]]
  60. ))