diff --git a/src/lib/models/Event.ts b/src/lib/models/Event.ts index c52e9a1..d6564d6 100644 --- a/src/lib/models/Event.ts +++ b/src/lib/models/Event.ts @@ -68,7 +68,11 @@ export class Event extends Model { */ public async joined({userId}: {userId: number}, request: any): Promise { userId = userId ?? request.session.userId; - const participants = await this.$get("rParticipants", {where: {id: userId}}) as User[]; - return participants.length !== 0; + if (userId) { + const participants = await this.$get("rParticipants", {where: {id: userId}}) as User[]; + return participants.length !== 0; + } else { + return false; + } } } diff --git a/src/lib/models/Group.ts b/src/lib/models/Group.ts index f7f7ce0..f4f83a8 100644 --- a/src/lib/models/Group.ts +++ b/src/lib/models/Group.ts @@ -129,7 +129,11 @@ export class Group extends Model { */ public async joined({userId}: {userId: number}, request: any): Promise { userId = userId ?? request.session.userId; - const members = await this.$get("rMembers", {where: {id: userId}}) as User[]; - return members.length !== 0; + if (userId) { + const members = await this.$get("rMembers", {where: {id: userId}}) as User[]; + return members.length !== 0; + } else { + return false; + } } } diff --git a/src/lib/models/Post.ts b/src/lib/models/Post.ts index 59ee1de..af67f06 100644 --- a/src/lib/models/Post.ts +++ b/src/lib/models/Post.ts @@ -137,8 +137,12 @@ export class Post extends Model { */ public async userVote({userId}: {userId: number}, request: any): Promise { userId = userId ?? request.session.userId; - const votes = await this.$get("rVotes", {where: {id: userId}}) as Array; - return votes[0]?.PostVote?.voteType; + if (userId) { + const votes = await this.$get("rVotes", {where: {id: userId}}) as Array; + return votes[0]?.PostVote?.voteType; + } else { + return undefined; + } } /** @@ -149,7 +153,7 @@ export class Post extends Model { public async deletable({userId}: {userId: number}, request: any): Promise { userId = userId ?? request.session.userId; const isAuthor = Number(userId) === Number(this.authorId); - if (!isAuthor) { + if (userId && !isAuthor) { return (await User.findOne({where: {id: userId}})).isAdmin; } return isAuthor;