From 156cfb5820c0be3b4d93a80053dc0bad785e7654 Mon Sep 17 00:00:00 2001 From: mgabor <> Date: Fri, 12 Apr 2024 09:12:42 +0200 Subject: [PATCH] set readonly=true as default for new album shares --- server/src/entities/album-permission.entity.ts | 3 +-- .../migrations/1712905931092-SetReadonlyDefault.ts | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 server/src/migrations/1712905931092-SetReadonlyDefault.ts diff --git a/server/src/entities/album-permission.entity.ts b/server/src/entities/album-permission.entity.ts index c3e63a8c24..2f1ef8bf77 100644 --- a/server/src/entities/album-permission.entity.ts +++ b/server/src/entities/album-permission.entity.ts @@ -15,7 +15,6 @@ export class AlbumPermissionEntity { @ManyToOne(() => UserEntity, { onDelete: 'CASCADE', onUpdate: 'CASCADE', nullable: false }) users!: UserEntity; - // Readonly is false when migrating previous entries - @Column({ default: false }) + @Column({ default: true }) readonly!: boolean; } diff --git a/server/src/migrations/1712905931092-SetReadonlyDefault.ts b/server/src/migrations/1712905931092-SetReadonlyDefault.ts new file mode 100644 index 0000000000..821b1ca196 --- /dev/null +++ b/server/src/migrations/1712905931092-SetReadonlyDefault.ts @@ -0,0 +1,14 @@ +import { MigrationInterface, QueryRunner } from "typeorm"; + +export class SetReadonlyDefault1712905931092 implements MigrationInterface { + name = 'SetReadonlyDefault1712905931092' + + public async up(queryRunner: QueryRunner): Promise { + await queryRunner.query(`ALTER TABLE "albums_shared_users_users" ALTER COLUMN "readonly" SET DEFAULT true`); + } + + public async down(queryRunner: QueryRunner): Promise { + await queryRunner.query(`ALTER TABLE "albums_shared_users_users" ALTER COLUMN "readonly" SET DEFAULT false`); + } + +}