correct writeForeignCommunity

This commit is contained in:
Claus-Peter Huebner 2023-05-05 18:11:35 +02:00
parent 0eaecf954c
commit 85c78b3e36
2 changed files with 23 additions and 18 deletions

View File

@ -90,23 +90,24 @@ async function writeForeignCommunity(
dbCom: DbFederatedCommunity,
pubInfo: PublicCommunityInfo,
): Promise<void> {
const variables = {
public_key: pubInfo.publicKey,
url: dbCom.endPoint,
name: pubInfo.name,
description: pubInfo.description,
creation_date: pubInfo.createdAt,
}
if (dbCom && pubInfo) {
await DbCommunity.createQueryBuilder()
.insert()
.into(DbCommunity)
.values(variables)
.orUpdate({
conflict_target: ['id', 'public_key'],
overwrite: ['url', 'name', 'description', 'creation_date'],
})
.execute()
if (!dbCom || !pubInfo || !(dbCom.publicKey.toString('hex') === pubInfo.publicKey)) {
logger.error(
`Error in writeForeignCommunity: missmatching parameters or publicKey. pubInfo:${JSON.stringify(
pubInfo,
)}`,
)
} else {
let com = await DbCommunity.findOne({ publicKey: dbCom.publicKey })
if (!com) {
com = DbCommunity.create()
}
com.creationDate = pubInfo.createdAt
com.description = pubInfo.description
com.foreign = true
com.name = pubInfo.name
com.publicKey = dbCom.publicKey
com.url = dbCom.endPoint
await DbCommunity.save(com)
}
}

View File

@ -12,7 +12,11 @@ export class PublicCommunityInfoResolver {
logger.debug(`getPublicCommunityInfo() via apiVersion=1_0 ...`)
const homeCom = await DbCommunity.findOneOrFail({ foreign: false })
const result = new GetPublicCommunityInfoResult(homeCom)
logger.info(`getPublicCommunityInfo()-1_0... return publicInfo=${result}`)
logger.info(
`getPublicCommunityInfo()-1_0... return publicInfo=${JSON.stringify(
result
)}`
)
return result
}
}