main_setting_404_page.py 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. from .tool.func import *
  2. from .go_api_func_language import api_func_language
  3. from .go_api_setting import api_setting
  4. async def main_setting_404_page():
  5. with get_db_connect() as conn:
  6. if await acl_check('', 'owner_auth', '', '') == 1:
  7. return await re_error(conn, 0)
  8. if flask.request.method == 'POST':
  9. select_data = flask.request.form.get('select', '404_page')
  10. form_data = flask.request.form.get('data', 'Test')
  11. await api_setting('manage_404_page', 'PUT', select_data)
  12. await api_setting('manage_404_page_content', 'PUT', form_data)
  13. await acl_check(tool = 'owner_auth', memo = 'edit_set (404_page)')
  14. return redirect(conn, '/setting/404_page')
  15. else:
  16. lang = await api_func_language('', 'enter_html save 404_file 404_page preview')
  17. set_type = await api_setting('manage_404_page')
  18. set_data = await api_setting('manage_404_page_content')
  19. data_html = ''
  20. select_list = [
  21. ['404_page', lang['data']['404_page']],
  22. ['404_file', lang['data']['404_file']]
  23. ]
  24. data_html += '<select name="select">'
  25. for for_a in select_list:
  26. selected = ''
  27. if set_type['data'] == for_a[0]:
  28. selected = 'selected'
  29. data_html += '<option value="' + for_a[0] + '" ' + selected + '>' + for_a[1] + '</option>'
  30. data_html += '</select>'
  31. data_html += '<hr class="main_hr">'
  32. form_data = ''
  33. if len(set_data['data']) != 0:
  34. form_data = set_data['data'][0][0]
  35. data_html += (
  36. '<form method="post">' +
  37. '<textarea class="opennamu_textarea_500" name="data" placeholder="' + lang['data']['enter_html'] + '">' + html.escape(form_data) + '</textarea>' +
  38. '<hr class="main_hr">' +
  39. '<button id="opennamu_save_button" type="submit">' + lang['data']['save'] + '</button>' +
  40. '</form>'
  41. )
  42. return easy_minify(flask.render_template(await skin_check(),
  43. imp = [await get_lang('404_page_setting'), await wiki_set(), await wiki_custom(conn), wiki_css([0, 0])],
  44. data = data_html,
  45. menu = [['setting', await get_lang('return')]]
  46. ))