2
0

main_setting_main_logo.py 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. from .tool.func import *
  2. async def main_setting_main_logo():
  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. skin_list = [0] + await load_skin('', 1)
  8. i_list = []
  9. for i in skin_list:
  10. i_list += [['logo', '' if i == 0 else i]]
  11. if flask.request.method == 'POST':
  12. for i in i_list:
  13. curs.execute(db_change("update other set data = ? where name = ? and coverage = ?"), [
  14. flask.request.form.get(('main_css' if i[1] == '' else i[1]), ''),
  15. i[0],
  16. i[1]
  17. ])
  18. await acl_check(tool = 'owner_auth', memo = 'edit_set (logo)')
  19. return redirect(conn, '/setting/main/logo')
  20. else:
  21. d_list = []
  22. for i in i_list:
  23. curs.execute(db_change('select data from other where name = ? and coverage = ?'), [i[0], i[1]])
  24. sql_d = curs.fetchall()
  25. if sql_d:
  26. d_list += [sql_d[0][0]]
  27. else:
  28. curs.execute(db_change('insert into other (name, data, coverage) values (?, ?, ?)'), [i[0], '', i[1]])
  29. d_list += ['']
  30. end_data = ''
  31. for i in range(0, len(skin_list)):
  32. end_data += '' + \
  33. '<span>' + await get_lang('wiki_logo') + ' ' + ('(' + skin_list[i] + ')' if skin_list[i] != 0 else '') + ' (HTML)' + \
  34. '<hr class="main_hr">' + \
  35. '<input class="__ON_INPUT__" name="' + (skin_list[i] if skin_list[i] != 0 else 'main_css') + '" value="' + html.escape(d_list[i]) + '">' + \
  36. '<hr class="main_hr">' + \
  37. ''
  38. return easy_minify(flask.render_template(await skin_check(),
  39. imp = [await get_lang('wiki_logo'), await wiki_set(), await wiki_custom(), wiki_css([0, 0])],
  40. data = '''
  41. <form method="post">
  42. ''' + end_data + '''
  43. <button id="opennamu_save_button" type="submit">''' + await get_lang('save') + '''</button>
  44. </form>
  45. ''',
  46. menu = [['setting/main', await get_lang('return')]]
  47. ))