[rel/1518] Member flags
2 files changed, 17 insertions, 0 deletions
diff --git a/src/util/entities/Member.ts b/src/util/entities/Member.ts
index 163c25f7..1b60b72d 100644
--- a/src/util/entities/Member.ts
+++ b/src/util/entities/Member.ts
@@ -51,6 +51,7 @@ export const MemberPrivateProjection: (keyof Member)[] = [
"theme_colors",
"pronouns",
"communication_disabled_until",
+ "flags",
];
@Entity({
@@ -156,6 +157,9 @@ export class Member extends BaseClassWithoutId {
@Column({ type: "simple-json", nullable: true })
collectibles?: Collectibles;
+ @Column({ type: "int", default: 0 })
+ flags: number = 0;
+
@BeforeUpdate()
@BeforeInsert()
validate() {
diff --git a/src/util/migration/postgres/1772404321400-MemberFlags.ts b/src/util/migration/postgres/1772404321400-MemberFlags.ts
new file mode 100644
index 00000000..bc1bd68b
--- /dev/null
+++ b/src/util/migration/postgres/1772404321400-MemberFlags.ts
@@ -0,0 +1,13 @@
+import { MigrationInterface, QueryRunner } from "typeorm";
+
+export class MemberFlags1772404321400 implements MigrationInterface {
+ name = "MemberFlags1772404321400";
+
+ public async up(queryRunner: QueryRunner): Promise<void> {
+ await queryRunner.query(`ALTER TABLE "members" ADD "flags" integer NOT NULL DEFAULT '0'`);
+ }
+
+ public async down(queryRunner: QueryRunner): Promise<void> {
+ await queryRunner.query(`ALTER TABLE "members" DROP COLUMN "flags"`);
+ }
+}
\ No newline at end of file
|