topic_tool.py 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. from .tool.func import *
  2. def topic_tool(topic_num = 1):
  3. with get_db_connect() as conn:
  4. curs = conn.cursor()
  5. data = ''
  6. topic_num = str(topic_num)
  7. curs.execute(db_change("select stop, agree from rd where code = ?"), [topic_num])
  8. close_data = curs.fetchall()
  9. if close_data:
  10. if close_data[0][0] == 'S':
  11. t_state = 'Stop'
  12. elif close_data[0][0] == 'O':
  13. t_state = 'Close'
  14. else:
  15. t_state = 'Normal'
  16. else:
  17. t_state = 'Normal'
  18. curs.execute(db_change("select acl from rd where code = ?"), [topic_num])
  19. topic_acl_get = curs.fetchall()
  20. if admin_check(3) == 1:
  21. data = '''
  22. <h2>''' + load_lang('admin_tool') + '''</h2>
  23. <ul class="inside_ul">
  24. <li><a href="/thread/''' + topic_num + '/setting">' + load_lang('topic_setting') + '''</a></li>
  25. <li><a href="/thread/''' + topic_num + '/acl">' + load_lang('topic_acl_setting') + '''</a></li>
  26. </ul>
  27. '''
  28. data += '''
  29. <h2>''' + load_lang('tool') + '''</h2>
  30. <ul class="inside_ul">
  31. <li>''' + load_lang('topic_state') + ''' : ''' + t_state + '' + (' (Agree)' if close_data and (close_data[0][1] == 'O') else '') + '''</li>
  32. <li>''' + load_lang('topic_acl') + ''' : <a href="/acl/TEST#exp">''' + ('Normal' if not topic_acl_get or (topic_acl_get[0][0] == '') else topic_acl_get[0][0]) + '''</a></li>
  33. </ul>
  34. '''
  35. if admin_check(None) == 1:
  36. data += '''
  37. <h2>''' + load_lang('owner') + '''</h2>
  38. <ul class="inside_ul">
  39. <li>
  40. <a href="/thread/''' + topic_num + '''/delete">
  41. ''' + load_lang('topic_delete') + '''
  42. </a>
  43. </li>
  44. <li>
  45. <a href="/thread/''' + topic_num + '''/change">
  46. ''' + load_lang('topic_name_change') + '''
  47. </a>
  48. </li>
  49. </ul>
  50. '''
  51. return easy_minify(flask.render_template(skin_check(),
  52. imp = [load_lang('topic_tool'), wiki_set(), wiki_custom(), wiki_css([0, 0])],
  53. data = data,
  54. menu = [['thread/' + topic_num, load_lang('return')]]
  55. ))