잉여개발기 (SPDV) 6 лет назад
Родитель
Сommit
9c66734354
4 измененных файлов с 42 добавлено и 3 удалено
  1. 4 0
      app.py
  2. 29 0
      route/api_recent_change.py
  3. 8 2
      route/api_search.py
  4. 1 1
      version.json

+ 4 - 0
app.py

@@ -665,6 +665,10 @@ def api_topic_sub(name = '', sub = '', time = ''):
 @app.route('/api/search/<name>')
 def api_search(name = ''):
     return api_search_2(conn, name)
+
+@app.route('/api/recent_changes')
+def api_recent_change():
+    return api_recent_change_2(conn)
     
 # File
 @app.route('/views/easter_egg.html')

+ 29 - 0
route/api_recent_change.py

@@ -0,0 +1,29 @@
+from .tool.func import *
+
+def api_recent_change_2(conn):
+    curs = conn.cursor()
+
+    num = int(number_check(flask.request.args.get('num', '10')))
+    if not num > 0:
+        num = 1
+
+    if num > 1000:
+        num = 1
+
+    page = int(number_check(flask.request.args.get('page', '1')))
+    if page * num > 0:
+        page = page * num - num
+    else:
+        page = 0   
+
+    curs.execute(db_change('' + \
+        'select id, title, date, ip, send, leng from history ' + \
+        "where not title like 'user:%' " + \
+        'order by date desc ' + \
+        'limit ?, ?' + \
+    ''), [page, num])
+    all_list = curs.fetchall()
+    if all_list:
+        return flask.jsonify(all_list)
+    else:
+        return flask.jsonify({})

+ 8 - 2
route/api_search.py

@@ -10,11 +10,17 @@ def api_search_2(conn, name):
     if num > 1000:
         num = 1
 
+    page = int(number_check(flask.request.args.get('page', '1')))
+    if page * num > 0:
+        page = page * num - num
+    else:
+        page = 0      
+
     curs.execute(db_change("" + \
         "select distinct title, case when title like ? then 'title' else 'data' " + \
         "end from data where title like ? or data like ? order by case " + \
-        "when title like ? then 1 else 2 end limit ?"),
-        ['%' + name + '%', '%' + name + '%', '%' + name + '%', '%' + name + '%', num]
+        "when title like ? then 1 else 2 end limit ?, ?"),
+        ['%' + name + '%', '%' + name + '%', '%' + name + '%', '%' + name + '%', page, num]
     )
     all_list = curs.fetchall()
     if all_list:

+ 1 - 1
version.json

@@ -1,6 +1,6 @@
 {
     "master" : {
-        "r_ver" : "v3.1.4-master-20",
+        "r_ver" : "v3.1.4-master-21",
         "c_ver" : "400004",
         "s_ver" : "5"
     }, "stable" : {