Implement featured note injection

This commit is contained in:
syuilo
2020-02-18 19:05:11 +09:00
parent 3d79e7a136
commit d9986b7a2f
19 changed files with 117 additions and 16 deletions

View File

@@ -46,6 +46,7 @@ export default define(meta, async (ps, user) => {
const query = Notes.createQueryBuilder('note')
.addSelect('note.score')
.where('note.userHost IS NULL')
.andWhere(`note.score > 0`)
.andWhere(`note.createdAt > :date`, { date: new Date(Date.now() - day) })
.andWhere(`note.visibility = 'public'`)
.leftJoinAndSelect('note.user', 'user');

View File

@@ -9,6 +9,7 @@ import { generateMuteQuery } from '../../common/generate-mute-query';
import { activeUsersChart } from '../../../../services/chart';
import { generateRepliesQuery } from '../../common/generate-replies-query';
import { injectPromo } from '../../common/inject-promo';
import { injectFeatured } from '../../common/inject-featured';
export const meta = {
desc: {
@@ -90,7 +91,8 @@ export default define(meta, async (ps, user) => {
const timeline = await query.take(ps.limit!).getMany();
await injectPromo(user, timeline);
await injectPromo(timeline, user);
await injectFeatured(timeline, user);
process.nextTick(() => {
if (user) {

View File

@@ -11,6 +11,7 @@ import { generateMuteQuery } from '../../common/generate-mute-query';
import { activeUsersChart } from '../../../../services/chart';
import { generateRepliesQuery } from '../../common/generate-replies-query';
import { injectPromo } from '../../common/inject-promo';
import { injectFeatured } from '../../common/inject-featured';
export const meta = {
desc: {
@@ -170,7 +171,8 @@ export default define(meta, async (ps, user) => {
const timeline = await query.take(ps.limit!).getMany();
await injectPromo(user, timeline);
await injectPromo(timeline, user);
await injectFeatured(timeline, user);
process.nextTick(() => {
if (user) {

View File

@@ -11,6 +11,7 @@ import { activeUsersChart } from '../../../../services/chart';
import { Brackets } from 'typeorm';
import { generateRepliesQuery } from '../../common/generate-replies-query';
import { injectPromo } from '../../common/inject-promo';
import { injectFeatured } from '../../common/inject-featured';
export const meta = {
desc: {
@@ -123,7 +124,8 @@ export default define(meta, async (ps, user) => {
const timeline = await query.take(ps.limit!).getMany();
await injectPromo(user, timeline);
await injectPromo(timeline, user);
await injectFeatured(timeline, user);
process.nextTick(() => {
if (user) {

View File

@@ -9,6 +9,7 @@ import { activeUsersChart } from '../../../../services/chart';
import { Brackets } from 'typeorm';
import { generateRepliesQuery } from '../../common/generate-replies-query';
import { injectPromo } from '../../common/inject-promo';
import { injectFeatured } from '../../common/inject-featured';
export const meta = {
desc: {
@@ -156,7 +157,8 @@ export default define(meta, async (ps, user) => {
const timeline = await query.take(ps.limit!).getMany();
await injectPromo(user, timeline);
await injectPromo(timeline, user);
await injectFeatured(timeline, user);
process.nextTick(() => {
if (user) {