list_title_index.py 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. from .tool.func import *
  2. def list_title_index_2(conn):
  3. curs = conn.cursor()
  4. page = int(number_check(flask.request.args.get('page', '1')))
  5. num = int(number_check(flask.request.args.get('num', '100')))
  6. sql_num = (page * num - num) if page * num > 0 else 0
  7. all_list = sql_num + 1
  8. if num > 1000:
  9. return re_error('/error/3')
  10. data = '<a href="/title_index?num=250">(250)</a> <a href="/title_index?num=500">(500)</a> <a href="/title_index?num=1000">(1000)</a>'
  11. curs.execute(db_change("select title from data order by title asc limit ?, ?"), [sql_num, num])
  12. title_list = curs.fetchall()
  13. if title_list:
  14. data += '<hr class="main_hr"><ul class="inside_ul">'
  15. for list_data in title_list:
  16. data += '<li>' + str(all_list) + '. <a href="/w/' + url_pas(list_data[0]) + '">' + html.escape(list_data[0]) + '</a></li>'
  17. all_list += 1
  18. if page == 1:
  19. count_end = []
  20. curs.execute(db_change('select data from other where name = "count_all_title"'))
  21. all_title = curs.fetchall()
  22. if int(all_title[0][0]) < 30000:
  23. curs.execute(db_change("select count(*) from data"))
  24. count = curs.fetchall()
  25. if count:
  26. count_end += [count[0][0]]
  27. else:
  28. count_end += [0]
  29. sql_list = ['category:', 'user:', 'file:']
  30. for sql in sql_list:
  31. curs.execute(db_change("select count(*) from data where title like ?"), [sql + '%'])
  32. count = curs.fetchall()
  33. if count:
  34. count_end += [count[0][0]]
  35. else:
  36. count_end += [0]
  37. count_end += [count_end[0] - count_end[1] - count_end[2] - count_end[3]]
  38. data += '''
  39. </ul>
  40. <hr class="main_hr">
  41. <ul class="inside_ul">
  42. <li>''' + load_lang('all') + ' : ' + str(count_end[0]) + '''</li>
  43. </ul>
  44. <hr class="main_hr">
  45. <ul class="inside_ul">
  46. <li>''' + load_lang('category') + ' : ' + str(count_end[1]) + '''</li>
  47. <li>''' + load_lang('user_document') + ' : ' + str(count_end[2]) + '''</li>
  48. <li>''' + load_lang('file') + ' : ' + str(count_end[3]) + '''</li>
  49. <li>''' + load_lang('other') + ' : ' + str(count_end[4]) + '''</li>
  50. '''
  51. else:
  52. data += '''
  53. </ul>
  54. <hr class="main_hr">
  55. <ul class="inside_ul">
  56. <li>''' + load_lang('all') + ' : ' + all_title[0][0] + '''</li>
  57. '''
  58. data += '</ul>' + next_fix('/title_index?num=' + str(num) + '&page=', page, title_list, num)
  59. sub = ' (' + str(num) + ')'
  60. return easy_minify(flask.render_template(skin_check(),
  61. imp = [load_lang('all_document_list'), wiki_set(), wiki_custom(), wiki_css([sub, 0])],
  62. data = data,
  63. menu = [['other', load_lang('return')]]
  64. ))