Add: Post Review flag

This commit is contained in:
Donatas Kirda 2024-05-20 22:53:51 +03:00
parent 0105059771
commit e16429cdd9
Signed by: bloodwiing
GPG Key ID: 63020D8D3F4A164F
3 changed files with 6 additions and 3 deletions

View File

@ -62,6 +62,7 @@ export function parsePost(object) {
category: getObject(object, 'category', {}, parseCategory), category: getObject(object, 'category', {}, parseCategory),
edited: get(object, 'edited', false), edited: get(object, 'edited', false),
editCount: get(object, 'editCount', 0), editCount: get(object, 'editCount', 0),
reviewed: get(object, 'reviewed', false),
postDate: getDate(object, 'postDate'), postDate: getDate(object, 'postDate'),
rating: getObject(object, 'rating', {}, parseRating), rating: getObject(object, 'rating', {}, parseRating),
metrics: getObject(object, 'metrics', null, parsePostMetrics), metrics: getObject(object, 'metrics', null, parsePostMetrics),

View File

@ -39,6 +39,7 @@ function parsePostFromRow(author, category, row, withMetrics = false) {
content: row['latest_content'], content: row['latest_content'],
edited: row['edit_count'] > 1, edited: row['edit_count'] > 1,
editCount: row['edit_count'] - 1, editCount: row['edit_count'] - 1,
reviewed: row['reviewed'],
postDate: row['created_date'], postDate: row['created_date'],
rating: { rating: {
likes: BigInt(row['likes']), likes: BigInt(row['likes']),
@ -88,13 +89,13 @@ export async function getPosts(opts = {}) {
withMetrics = false, withMetrics = false,
} = opts; } = opts;
const filter = category ? sql`WHERE category_id = ${ category.id }` : sql``; const filter = category ? sql`AND category_id = ${ category.id }` : sql``;
const metrics = withMetrics ? sql`, comment_count, user_count, latest_activity, engagement, age, relevancy` : sql``; const metrics = withMetrics ? sql`, comment_count, user_count, latest_activity, engagement, age, relevancy` : sql``;
const query = sql` const query = sql`
SELECT id, author_id, name, category_id, latest_content, edit_count, created_date, likes, dislikes ${ metrics } SELECT id, author_id, name, category_id, latest_content, reviewed, edit_count, created_date, likes, dislikes ${ metrics }
FROM doki8902.message_post FROM doki8902.message_post
${ filter } WHERE reviewed ${ filter }
FETCH FIRST ${ limit } ROWS ONLY FETCH FIRST ${ limit } ROWS ONLY
OFFSET ${ offset };`; OFFSET ${ offset };`;

View File

@ -33,6 +33,7 @@ export type Post = {
content: string, content: string,
edited: boolean, edited: boolean,
editCount: number, editCount: number,
reviewed: boolean,
postDate: Date, postDate: Date,
rating: Rating, rating: Rating,
metrics: PostMetrics | null, metrics: PostMetrics | null,