main_setting_skin_set.py 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  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. if admin_check() != 1:
  7. return re_error('/ban')
  8. set_list = user_setting_skin_set_main_set_list()
  9. if flask.request.method == 'POST':
  10. for for_b in set_list:
  11. curs.execute(db_change('select data from other where name = ?'), [for_b])
  12. if curs.fetchall():
  13. curs.execute(db_change("update other set data = ? where name = ?"), [
  14. flask.request.form.get(for_b, set_list[for_b][0][0]),
  15. for_b
  16. ])
  17. else:
  18. curs.execute(db_change('insert into other (name, data, coverage) values (?, ?, "")'), [
  19. for_b,
  20. flask.request.form.get(for_b, set_list[for_b][0][0])
  21. ])
  22. conn.commit()
  23. admin_check(None, 'edit_set (skin_set)')
  24. return redirect('/setting/skin_set')
  25. else:
  26. set_data = {}
  27. for for_b in set_list:
  28. set_data[for_b] = ''
  29. curs.execute(db_change('select data from other where name = ?'), [for_b])
  30. db_data = curs.fetchall()
  31. get_data = db_data[0][0] if db_data else ''
  32. for for_a in set_list[for_b]:
  33. if get_data == for_a[0]:
  34. set_data[for_b] = '<option value="' + for_a[0] + '">' + for_a[1] + '</option>' + set_data[for_b]
  35. else:
  36. set_data[for_b] += '<option value="' + for_a[0] + '">' + for_a[1] + '</option>'
  37. return easy_minify(flask.render_template(skin_check(),
  38. imp = [load_lang('main_skin_set_default'), wiki_set(), wiki_custom(), wiki_css(['(' + load_lang('beta') + ')', 0])],
  39. data = render_simple_set('''
  40. <form method="post">
  41. <h2>''' + load_lang("render") + '''</h2>
  42. <h3>''' + load_lang("strike") + '''</h3>
  43. <select name="main_css_strike">
  44. ''' + set_data["main_css_strike"] + '''
  45. </select>
  46. <h3>''' + load_lang("bold") + '''</h3>
  47. <select name="main_css_bold">
  48. ''' + set_data["main_css_bold"] + '''
  49. </select>
  50. <h3>''' + load_lang("category") + '''</h3>
  51. <h4>''' + load_lang("position") + '''</h4>
  52. <select name="main_css_category_set">
  53. ''' + set_data["main_css_category_set"] + '''
  54. </select>
  55. <h4>''' + load_lang("category_change_title") + '''</h4>
  56. <select name="main_css_category_change_title">
  57. ''' + set_data["main_css_category_change_title"] + '''
  58. </select>
  59. <h3>''' + load_lang("footnote") + ''' (''' + load_lang('beta') + ''')</h3>
  60. <h4>''' + load_lang("footnote_render") + '''</h4>
  61. <select name="main_css_footnote_set">
  62. ''' + set_data["main_css_footnote_set"] + '''
  63. </select>
  64. <h4>''' + load_lang("footnote_number") + '''</h4>
  65. <select name="main_css_footnote_number">
  66. ''' + set_data["main_css_footnote_number"] + '''
  67. </select>
  68. <h4>''' + load_lang("footnote_real_num_view") + '''</h4>
  69. <select name="main_css_view_real_footnote_num">
  70. ''' + set_data["main_css_view_real_footnote_num"] + '''
  71. </select>
  72. <h3>''' + load_lang("include_link") + '''</h3>
  73. <select name="main_css_include_link">
  74. ''' + set_data["main_css_include_link"] + '''
  75. </select>
  76. <h3>''' + load_lang("image") + '''</h3>
  77. <select name="main_css_image_set">
  78. ''' + set_data["main_css_image_set"] + '''
  79. </select>
  80. <h3>''' + load_lang("toc") + '''</h3>
  81. <select name="main_css_toc_set">
  82. ''' + set_data["main_css_toc_set"] + '''
  83. </select>
  84. <h3>''' + load_lang("exter_link") + '''</h3>
  85. <select name="main_css_exter_link">
  86. ''' + set_data["main_css_exter_link"] + '''
  87. </select>
  88. <h3>''' + load_lang("link_delimiter") + '''</h3>
  89. <select name="main_css_link_delimiter">
  90. ''' + set_data["main_css_link_delimiter"] + '''
  91. </select>
  92. <h3>''' + load_lang("force_darkmode") + ''' (''' + load_lang("not_working") + ''')</h3>
  93. <select name="main_css_darkmode">
  94. ''' + set_data["main_css_darkmode"] + '''
  95. </select>
  96. <h3>''' + load_lang("table_scroll") + '''</h3>
  97. <select name="main_css_table_scroll">
  98. ''' + set_data["main_css_table_scroll"] + '''
  99. </select>
  100. <h3>''' + load_lang("list_view_change") + '''</h3>
  101. <select name="main_css_list_view_change">
  102. ''' + set_data["main_css_list_view_change"] + '''
  103. </select>
  104. <h3>''' + load_lang("view_joke") + '''</h3>
  105. <select name="main_css_view_joke">
  106. ''' + set_data["main_css_view_joke"] + '''
  107. </select>
  108. <h3>''' + load_lang("math_scroll") + '''</h3>
  109. <select name="main_css_math_scroll">
  110. ''' + set_data["main_css_math_scroll"] + '''
  111. </select>
  112. <h3>''' + load_lang("view_history") + '''</h3>
  113. <select name="main_css_view_history">
  114. ''' + set_data["main_css_view_history"] + '''
  115. </select>
  116. <h2>''' + load_lang("edit") + '''</h2>
  117. <h3>''' + load_lang("image_paste") + '''</h3>
  118. <sup>''' + load_lang('only_korean') + '''</sup> <sup>''' + load_lang('unavailable_in_monaco') + '''</sup>
  119. <hr class="main_hr">
  120. <select name="main_css_image_paste">
  121. ''' + set_data["main_css_image_paste"] + '''
  122. </select>
  123. <h3>''' + load_lang("monaco_editor") + '''</h3>
  124. <select name="main_css_monaco">
  125. ''' + set_data["main_css_monaco"] + '''
  126. </select>
  127. <hr class="main_hr">
  128. <button type="submit">''' + load_lang('save') + '''</button>
  129. </form>
  130. '''),
  131. menu = [['setting', load_lang('return')]]
  132. ))