summary refs log tree commit diff
path: root/util/src
diff options
context:
space:
mode:
authorMadeline <46743919+MaddyUnderStars@users.noreply.github.com>2022-04-23 01:47:51 +1000
committerMadeline <46743919+MaddyUnderStars@users.noreply.github.com>2022-04-23 01:47:51 +1000
commit2a32a481d227e27b459aeac59fa0bb1b4a872bec (patch)
tree90f6bd925c5496889f483b86e94fa9cdb89e17ac /util/src
parentMerge branch 'slowcord' of github.com:MaddyUnderStars/fosscord-server into sl... (diff)
parentCan no longer send messages to channel types that do not support it ( categor... (diff)
downloadserver-2a32a481d227e27b459aeac59fa0bb1b4a872bec.tar.xz
Merge branch 'fix/sanitisation' into slowcord
Diffstat (limited to 'util/src')
-rw-r--r--util/src/entities/Channel.ts11
-rw-r--r--util/src/entities/UserGroup.ts37
2 files changed, 48 insertions, 0 deletions
diff --git a/util/src/entities/Channel.ts b/util/src/entities/Channel.ts

index 4bf81901..c516e6a1 100644 --- a/util/src/entities/Channel.ts +++ b/util/src/entities/Channel.ts
@@ -352,6 +352,17 @@ export class Channel extends BaseClass { isDm() { return this.type === ChannelType.DM || this.type === ChannelType.GROUP_DM; } + + // Does the channel support sending messages ( eg categories do not ) + isWritable() { + const disallowedChannelTypes = [ + ChannelType.GUILD_CATEGORY, + ChannelType.GUILD_VOICE, // TODO: Remove this when clients can send messages to voice channels on discord.com + ChannelType.GUILD_STAGE_VOICE, + ChannelType.VOICELESS_WHITEBOARD, + ]; + return disallowedChannelTypes.indexOf(this.type) == -1; + } } export interface ChannelPermissionOverwrite { diff --git a/util/src/entities/UserGroup.ts b/util/src/entities/UserGroup.ts new file mode 100644
index 00000000..709b9d0b --- /dev/null +++ b/util/src/entities/UserGroup.ts
@@ -0,0 +1,37 @@ +import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; + +import { BaseClass } from "./BaseClass"; +import { Guild } from "./Guild"; +import { User } from "./User"; + +@Entity("groups") +export class UserGroup extends BaseClass { + @Column() + color: number; + + @Column() + hoist: boolean; + + @JoinColumn({ name: "controller", referencedColumnName: "id" }) + @ManyToOne(() => User) + controller?: User; + + @Column() + mentionable_by?: string; + + @Column() + name: string; + + @Column() + rights: string; + + @Column({ nullable: true }) + icon: string; + + @Column({ nullable: true }) + parent?: string; + + @Column({ type: "simple-array", nullable: true}) + associciations: string[]; + +}