fix sats filter for notifications
This commit is contained in:
parent
4d7e0a8296
commit
cb2efb0a7f
@ -212,6 +212,15 @@ const subClause = (sub, num, table, me, showNsfw) => {
|
|||||||
return excludeMuted + ' AND ' + HIDE_NSFW_CLAUSE
|
return excludeMuted + ' AND ' + HIDE_NSFW_CLAUSE
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function investmentClause (sats) {
|
||||||
|
return `(
|
||||||
|
CASE WHEN "Item"."parentId" IS NULL
|
||||||
|
THEN ("Item".cost + "Item".boost + ("Item".msats / 1000)) >= ${sats}
|
||||||
|
ELSE ("Item".cost + "Item".boost + ("Item".msats / 1000)) >= ${Math.min(sats, 1)}
|
||||||
|
END
|
||||||
|
)`
|
||||||
|
}
|
||||||
|
|
||||||
export async function filterClause (me, models, type) {
|
export async function filterClause (me, models, type) {
|
||||||
// if you are explicitly asking for marginal content, don't filter them
|
// if you are explicitly asking for marginal content, don't filter them
|
||||||
if (['outlawed', 'borderland', 'freebies'].includes(type)) {
|
if (['outlawed', 'borderland', 'freebies'].includes(type)) {
|
||||||
@ -225,11 +234,11 @@ export async function filterClause (me, models, type) {
|
|||||||
|
|
||||||
// handle freebies
|
// handle freebies
|
||||||
// by default don't include freebies unless they have upvotes
|
// by default don't include freebies unless they have upvotes
|
||||||
let investmentClause = '("Item".cost + "Item".boost + ("Item".msats / 1000)) >= 10'
|
let satsFilter = investmentClause(10)
|
||||||
if (me) {
|
if (me) {
|
||||||
const user = await models.user.findUnique({ where: { id: me.id } })
|
const user = await models.user.findUnique({ where: { id: me.id } })
|
||||||
|
|
||||||
investmentClause = `(("Item".cost + "Item".boost + ("Item".msats / 1000)) >= ${user.satsFilter} OR "Item"."userId" = ${me.id})`
|
satsFilter = `(${investmentClause(user.satsFilter)} OR "Item"."userId" = ${me.id})`
|
||||||
|
|
||||||
if (user.wildWestMode) {
|
if (user.wildWestMode) {
|
||||||
return investmentClause
|
return investmentClause
|
||||||
@ -244,7 +253,7 @@ export async function filterClause (me, models, type) {
|
|||||||
}
|
}
|
||||||
const outlawClause = '(' + outlawClauses.join(' OR ') + ')'
|
const outlawClause = '(' + outlawClauses.join(' OR ') + ')'
|
||||||
|
|
||||||
return [investmentClause, outlawClause]
|
return [satsFilter, outlawClause]
|
||||||
}
|
}
|
||||||
|
|
||||||
function typeClause (type) {
|
function typeClause (type) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user