main_setting_top_menu.py 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. from .tool.func import *
  2. async def main_setting_top_menu():
  3. with get_db_connect() as conn:
  4. curs = conn.cursor()
  5. if await acl_check('', 'owner_auth', '', '') == 1:
  6. return await re_error(conn, 0)
  7. if flask.request.method == 'POST':
  8. curs.execute(db_change("select name from other where name = 'top_menu'"))
  9. if curs.fetchall():
  10. curs.execute(db_change("update other set data = ? where name = 'top_menu'"), [flask.request.form.get('content', '')])
  11. else:
  12. curs.execute(db_change("insert into other (name, data, coverage) values ('top_menu', ?, '')"), [flask.request.form.get('content', '')])
  13. await acl_check(tool = 'owner_auth', memo = 'edit_set (top_menu)')
  14. return redirect(conn, '/setting/top_menu')
  15. else:
  16. curs.execute(db_change("select data from other where name = 'top_menu'"))
  17. db_data = curs.fetchall()
  18. db_data = db_data[0][0] if db_data else ''
  19. return await render_template(
  20. await get_lang('top_menu_setting'),
  21. '''
  22. <span>
  23. EX)
  24. <br>
  25. ONTS
  26. <br>
  27. https://2du.pythonanywhere.com/
  28. <br>
  29. FrontPage
  30. <br>
  31. /w/FrontPage
  32. </span>
  33. <hr class="main_hr">
  34. ''' + await get_lang('not_support_skin_warning') + '''
  35. <hr class="main_hr">
  36. <form method="post">
  37. <textarea class="opennamu_textarea_500 __ON_TEXTAREA__" placeholder="''' + await get_lang('enter_top_menu_setting') + '''" name="content" id="content">''' + html.escape(db_data) + '''</textarea>
  38. <hr class="main_hr">
  39. <button id="opennamu_save_button" type="submit">''' + await get_lang('save') + '''</button>
  40. </form>
  41. ''',
  42. 0,
  43. [['setting', await get_lang('return')]]
  44. )