You've already forked KemoFureApi
removed katworks api files
added postgresql database
This commit is contained in:
@@ -9,5 +9,5 @@ if TYPE_CHECKING:
|
||||
class AccountStats(Resource):
|
||||
def get(self):
|
||||
db : Database = app.databases["Archive"]
|
||||
result = db.get_account_stats()
|
||||
_, result = db.get_account_stats()
|
||||
return db.wrap_query_response(result)
|
||||
@@ -12,6 +12,8 @@ class NewQuery(Resource):
|
||||
|
||||
db : Database = app.databases["Archive"]
|
||||
|
||||
result = db.db.run_query(query)
|
||||
|
||||
return db.wrap_query_response(result)
|
||||
status, result = db.db.run_query(query)
|
||||
if status:
|
||||
return db.wrap_query_response(result)
|
||||
else:
|
||||
return db.wrap_query_response(None, error = result)
|
||||
@@ -11,5 +11,5 @@ class GetPost(Resource):
|
||||
id = int(id)
|
||||
db : Database = app.databases["Archive"]
|
||||
|
||||
result = db.get_post(id)
|
||||
_, result = db.get_post(id)
|
||||
return db.wrap_query_response(result)
|
||||
@@ -14,6 +14,7 @@ class GetPosts(Resource):
|
||||
page = int(request.args["page"]) if "page" in request.args else 1
|
||||
artist = request.args["artist"] if "artist" in request.args else None
|
||||
last_id = int(request.args["last_id"]) if "last_id" in request.args else -1
|
||||
tags = request.args["tags"].split() if "tags" in request.args else []
|
||||
except:
|
||||
response = app.response_class(status=400)
|
||||
response.headers.add("Access-Control-Allow-Origin", "*")
|
||||
@@ -51,5 +52,8 @@ class GetPosts(Resource):
|
||||
real_page = page-1
|
||||
offset = real_page * count
|
||||
|
||||
result = db.get_posts(count, artist, actions_taken=actions, last_id= -1, offset= offset, include_ratings= ratings, order=order)
|
||||
return db.wrap_query_response(result)
|
||||
status, result = db.get_posts(count, artist, actions_taken=actions, last_id= -1, offset= offset, include_ratings= ratings, order=order, tags=tags)
|
||||
if status:
|
||||
return db.wrap_query_response(result)
|
||||
else:
|
||||
return db.wrap_query_response(None, error=result)
|
||||
@@ -11,6 +11,7 @@ class GetPostsCount(Resource):
|
||||
db : Database = app.databases["Archive"]
|
||||
try:
|
||||
artist = request.args["artist"] if "artist" in request.args else None
|
||||
tags = request.args["tags"].split() if "tags" in request.args else []
|
||||
except:
|
||||
response = app.response_class(status=400)
|
||||
response.headers.add("Access-Control-Allow-Origin", "*")
|
||||
@@ -38,5 +39,5 @@ class GetPostsCount(Resource):
|
||||
if ratings == []:
|
||||
ratings = ["SFW", "NSFW"]
|
||||
|
||||
result = db.get_posts_count(artist, actions_taken=actions, last_id= -1, include_ratings= ratings)
|
||||
result = db.get_posts_count(artist, actions_taken=actions, last_id= -1, include_ratings= ratings, tags=tags)
|
||||
return db.wrap_query_response(result, mode="text")
|
||||
@@ -12,7 +12,9 @@ class Query(Resource):
|
||||
|
||||
db : Database = app.databases["Archive"]
|
||||
|
||||
result = db.db.run_query(query)
|
||||
result = [list(d.values()) for d in result]
|
||||
|
||||
return db.wrap_query_response(result)
|
||||
status, result = db.db.run_query(query)
|
||||
if status:
|
||||
result = [list(d.values()) for d in result]
|
||||
return db.wrap_query_response(result)
|
||||
else:
|
||||
return db.wrap_query_response(None, error = result)
|
||||
13
modules/Archive/endpoints/tag_stats.py
Normal file
13
modules/Archive/endpoints/tag_stats.py
Normal file
@@ -0,0 +1,13 @@
|
||||
from __future__ import annotations
|
||||
from flask_restful import Resource
|
||||
from flask import current_app as app
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from modules.Archive.database import Database
|
||||
|
||||
class TagStats(Resource):
|
||||
def get(self):
|
||||
db : Database = app.databases["Archive"]
|
||||
_, result = db.get_tag_stats()
|
||||
return db.wrap_query_response(result)
|
||||
Reference in New Issue
Block a user