diff --git a/database/migrations/0074-insert_communityuuid in_existing_users.ts b/database/migrations/0074-insert_communityuuid in_existing_users.ts new file mode 100644 index 000000000..eac93832d --- /dev/null +++ b/database/migrations/0074-insert_communityuuid in_existing_users.ts @@ -0,0 +1,17 @@ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/* eslint-disable @typescript-eslint/no-explicit-any */ + +export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { + // read the community uuid of the homeCommunity + const result = await queryFn(`SELECT c.community_uuid from communities as c WHERE c.foreign = 0`) + // and if uuid exists enter the home_community_uuid for all local users + if (result && result[0]) { + await queryFn( + `UPDATE users as u SET u.community_uuid = "${result[0].community_uuid}" WHERE u.foreign = 0 AND u.community_uuid IS NULL`, + ) + } +} + +export async function downgrade(queryFn: (query: string, values?: any[]) => Promise>) { + await queryFn('SELECT * FROM dual;') +}