2
0

main_setting_404_page.py 2.3 KB

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