raw_view.py 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. from .tool.func import *
  2. def raw_view_2(conn, name, sub_title, num):
  3. curs = conn.cursor()
  4. v_name = name
  5. sub = ' (' + load_lang('raw') + ')'
  6. if not num:
  7. num = flask.request.args.get('num', None)
  8. if num:
  9. num = int(number_check(num))
  10. if not sub_title and num:
  11. curs.execute("select title from history where title = ? and id = ? and hide = 'O'", [name, str(num)])
  12. if curs.fetchall() and admin_check(6) != 1:
  13. return re_error('/error/3')
  14. curs.execute("select data from history where title = ? and id = ?", [name, str(num)])
  15. sub += ' (r' + str(num) + ')'
  16. menu = [['history/' + url_pas(name), load_lang('history')]]
  17. elif sub_title:
  18. curs.execute("select data from topic where id = ? and title = ? and sub = ? and block = ''", [str(num), name, sub_title])
  19. v_name = load_lang('discussion_raw')
  20. sub = ' (' + str(num) + ')'
  21. menu = [['topic/' + url_pas(name) + '/sub/' + url_pas(sub_title) + '#' + str(num), load_lang('discussion')], ['topic/' + url_pas(name) + '/sub/' + url_pas(sub_title) + '/admin/' + str(num), load_lang('return')]]
  22. else:
  23. curs.execute("select data from data where title = ?", [name])
  24. menu = [['w/' + url_pas(name), load_lang('return')]]
  25. data = curs.fetchall()
  26. if data:
  27. p_data = html.escape(data[0][0])
  28. p_data = '<textarea readonly rows="25">' + p_data + '</textarea>'
  29. return easy_minify(flask.render_template(skin_check(),
  30. imp = [v_name, wiki_set(), custom(), other2([sub, 0])],
  31. data = p_data,
  32. menu = menu
  33. ))
  34. else:
  35. return redirect('/w/' + url_pas(name))