recent_history_add.py 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  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. data_in = ''
  42. )
  43. return easy_minify(flask.render_template(skin_check(),
  44. imp = [load_lang('history_add'), wiki_set(), wiki_custom(), wiki_css(['(' + name + ')', 0])],
  45. data = '''
  46. <form method="post">
  47. <div>''' + edit_button('opennamu_edit_textarea') + '''</div>
  48. <textarea id="opennamu_edit_textarea" class="opennamu_textarea_500" name="content" placeholder="''' + p_text + '''">''' + html.escape(data) + '''</textarea>
  49. <hr class="main_hr">
  50. <input placeholder="''' + load_lang('why') + '''" name="send" value="''' + html.escape(send) + '''">
  51. <hr class="main_hr">
  52. <input placeholder="''' + load_lang('name') + '''" name="get_ip" value="''' + html.escape(get_ip) + '''">
  53. <hr class="main_hr">
  54. <button id="opennamu_save_button" formaction="/history_add/''' + url_pas(name) + '''" type="submit">''' + load_lang('save') + '''</button>
  55. <button id="opennamu_preview_button" formaction="/history_add_preview/''' + url_pas(name) + '''" type="submit">''' + load_lang('preview') + '''</button>
  56. </form>
  57. <hr class="main_hr">
  58. <div id="opennamu_preview_area">''' + data_preview + '''</div>
  59. ''',
  60. menu = [['history/' + url_pas(name), load_lang('return')]]
  61. ))