Changeset View
Changeset View
Standalone View
Standalone View
keyserver/src/fetchers/link-fetchers.js
Show First 20 Lines • Show All 65 Lines • ▼ Show 20 Lines | const query = SQL` | ||||
FROM invite_links i | FROM invite_links i | ||||
INNER JOIN memberships m | INNER JOIN memberships m | ||||
ON i.community = m.thread AND m.user = ${viewer.userID} | ON i.community = m.thread AND m.user = ${viewer.userID} | ||||
WHERE i.\`primary\` = 1 AND m.role > 0 | WHERE i.\`primary\` = 1 AND m.role > 0 | ||||
`; | `; | ||||
const [result] = await dbQuery(query); | const [result] = await dbQuery(query); | ||||
return result.map(row => ({ | return result.map(row => ({ | ||||
name: row.name, | name: row.name, | ||||
primary: row.primary, | primary: row.primary === 1, | ||||
role: row.role.toString(), | role: row.role.toString(), | ||||
communityID: row.community.toString(), | communityID: row.community.toString(), | ||||
expirationTime: row.expirationTime, | expirationTime: row.expirationTime, | ||||
limitOfUses: row.limitOfUses, | limitOfUses: row.limitOfUses, | ||||
numberOfUses: row.numberOfUses, | numberOfUses: row.numberOfUses, | ||||
})); | })); | ||||
} | } | ||||
export { verifyInviteLink, checkIfInviteLinkIsValid, fetchPrimaryInviteLinks }; | export { verifyInviteLink, checkIfInviteLinkIsValid, fetchPrimaryInviteLinks }; |