main_setting_main_logo.py 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. from .tool.func import *
  2. def main_setting_main_logo():
  3. with get_db_connect() as conn:
  4. curs = conn.cursor()
  5. if admin_check() != 1:
  6. return re_error('/ban')
  7. skin_list = [0] + 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. conn.commit()
  19. admin_check(None, 'edit_set (logo)')
  20. return redirect('/setting/main/logo')
  21. else:
  22. d_list = []
  23. for i in i_list:
  24. curs.execute(db_change('select data from other where name = ? and coverage = ?'), [i[0], i[1]])
  25. sql_d = curs.fetchall()
  26. if sql_d:
  27. d_list += [sql_d[0][0]]
  28. else:
  29. curs.execute(db_change('insert into other (name, data, coverage) values (?, ?, ?)'), [i[0], '', i[1]])
  30. d_list += ['']
  31. conn.commit()
  32. end_data = ''
  33. for i in range(0, len(skin_list)):
  34. end_data += '' + \
  35. '<span>' + load_lang('wiki_logo') + ' ' + ('(' + skin_list[i] + ')' if skin_list[i] != 0 else '') + ' (HTML)' + \
  36. '<hr class="main_hr">' + \
  37. '<input name="' + (skin_list[i] if skin_list[i] != 0 else 'main_css') + '" value="' + html.escape(d_list[i]) + '">' + \
  38. '<hr class="main_hr">' + \
  39. ''
  40. return easy_minify(flask.render_template(skin_check(),
  41. imp = [load_lang('wiki_logo'), wiki_set(), wiki_custom(), wiki_css([0, 0])],
  42. data = '''
  43. <form method="post">
  44. ''' + end_data + '''
  45. <button id="opennamu_save_button" type="submit">''' + load_lang('save') + '''</button>
  46. </form>
  47. ''',
  48. menu = [['setting/main', load_lang('return')]]
  49. ))