main_setting_skin_set.py 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. from .tool.func import *
  2. from .user_setting_skin_set_main import user_setting_skin_set_main_set_list
  3. def main_setting_skin_set():
  4. with get_db_connect() as conn:
  5. curs = conn.cursor()
  6. ip = ip_check()
  7. if ban_check(ip) == 1:
  8. return re_error('/ban')
  9. set_list = user_setting_skin_set_main_set_list()
  10. if flask.request.method == 'POST':
  11. for for_b in set_list:
  12. curs.execute(db_change('select data from other where name = ?'), [for_b])
  13. if curs.fetchall():
  14. curs.execute(db_change("update other set data = ? where name = ?"), [
  15. flask.request.form.get(for_b, set_list[for_b][0][0]),
  16. for_b
  17. ])
  18. else:
  19. curs.execute(db_change('insert into other (name, data, coverage) values (?, ?, "")'), [
  20. for_b,
  21. flask.request.form.get(for_b, set_list[for_b][0][0])
  22. ])
  23. conn.commit()
  24. admin_check(None, 'edit_set (skin_set)')
  25. return redirect('/setting/skin_set')
  26. else:
  27. set_data = {}
  28. for for_b in set_list:
  29. set_data[for_b] = ''
  30. curs.execute(db_change('select data from other where name = ?'), [for_b])
  31. db_data = curs.fetchall()
  32. get_data = db_data[0][0] if db_data else ''
  33. for for_a in set_list[for_b]:
  34. if get_data == for_a[0]:
  35. set_data[for_b] = '<option value="' + for_a[0] + '">' + for_a[1] + '</option>' + set_data[for_b]
  36. else:
  37. set_data[for_b] += '<option value="' + for_a[0] + '">' + for_a[1] + '</option>'
  38. return easy_minify(flask.render_template(skin_check(),
  39. imp = [load_lang('main_skin_set_default'), wiki_set(), wiki_custom(), wiki_css(['(' + load_lang('beta') + ')', 0])],
  40. data = render_simple_set('''
  41. <form method="post">
  42. <h2>''' + load_lang("render") + '''</h2>
  43. <h3>''' + load_lang("strike") + '''</h3>
  44. <select name="main_css_strike">
  45. ''' + set_data["main_css_strike"] + '''
  46. </select>
  47. <h3>''' + load_lang("bold") + '''</h3>
  48. <select name="main_css_bold">
  49. ''' + set_data["main_css_bold"] + '''
  50. </select>
  51. <h3>''' + load_lang("category") + '''</h3>
  52. <select name="main_css_category_set">
  53. ''' + set_data["main_css_category_set"] + '''
  54. </select>
  55. <h3>''' + load_lang("footnote") + ''' (''' + load_lang('beta') + ''')</h3>
  56. <h4>''' + load_lang("footnote_render") + '''</h4>
  57. <select name="main_css_footnote_set">
  58. ''' + set_data["main_css_footnote_set"] + '''
  59. </select>
  60. <h4>''' + load_lang("footnote_number") + '''</h4>
  61. <select name="main_css_footnote_number">
  62. ''' + set_data["main_css_footnote_number"] + '''
  63. </select>
  64. <h4>''' + load_lang("footnote_real_num_view") + '''</h4>
  65. <select name="main_css_view_real_footnote_num">
  66. ''' + set_data["main_css_view_real_footnote_num"] + '''
  67. </select>
  68. <h3>''' + load_lang("include_link") + '''</h3>
  69. <select name="main_css_include_link">
  70. ''' + set_data["main_css_include_link"] + '''
  71. </select>
  72. <h3>''' + load_lang("image") + '''</h3>
  73. <select name="main_css_image_set">
  74. ''' + set_data["main_css_image_set"] + '''
  75. </select>
  76. <h3>''' + load_lang("toc") + '''</h3>
  77. <select name="main_css_toc_set">
  78. ''' + set_data["main_css_toc_set"] + '''
  79. </select>
  80. <h3>''' + load_lang("exter_link") + '''</h3>
  81. <select name="main_css_exter_link">
  82. ''' + set_data["main_css_exter_link"] + '''
  83. </select>
  84. <h3>''' + load_lang("link_delimiter") + '''</h3>
  85. <select name="main_css_link_delimiter">
  86. ''' + set_data["main_css_link_delimiter"] + '''
  87. </select>
  88. <h3>''' + load_lang("force_darkmode") + ''' (''' + load_lang("not_working") + ''')</h3>
  89. <select name="main_css_darkmode">
  90. ''' + set_data["main_css_darkmode"] + '''
  91. </select>
  92. <h3>''' + load_lang("table_scroll") + '''</h3>
  93. <select name="main_css_table_scroll">
  94. ''' + set_data["main_css_table_scroll"] + '''
  95. </select>
  96. <h2>''' + load_lang("edit") + '''</h2>
  97. <h3>''' + load_lang("image_paste") + '''</h3>
  98. <sup>''' + load_lang('only_korean') + '''</sup> <sup>''' + load_lang('unavailable_in_monaco') + '''</sup>
  99. <hr class="main_hr">
  100. <select name="main_css_image_paste">
  101. ''' + set_data["main_css_image_paste"] + '''
  102. </select>
  103. <h3>''' + load_lang("monaco_editor") + '''</h3>
  104. <select name="main_css_monaco">
  105. ''' + set_data["main_css_monaco"] + '''
  106. </select>
  107. <hr class="main_hr">
  108. <button type="submit">''' + load_lang('save') + '''</button>
  109. </form>
  110. '''),
  111. menu = [['setting', load_lang('return')]]
  112. ))