list_title_index.py 2.9 KB

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