fucking postgres
This commit is contained in:
parent
6c4023724f
commit
6bf4637a03
@ -98,11 +98,11 @@ router.patch(
|
|||||||
|
|
||||||
const guild = await Guild.findOneOrFail({
|
const guild = await Guild.findOneOrFail({
|
||||||
where: { id: guild_id },
|
where: { id: guild_id },
|
||||||
select: { channelOrdering: true },
|
select: { channel_ordering: true },
|
||||||
});
|
});
|
||||||
|
|
||||||
// The channels not listed for this query
|
// The channels not listed for this query
|
||||||
const notMentioned = guild.channelOrdering.filter(
|
const notMentioned = guild.channel_ordering.filter(
|
||||||
(x) => !body.find((c) => c.id == x),
|
(x) => !body.find((c) => c.id == x),
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -159,7 +159,10 @@ router.patch(
|
|||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
|
|
||||||
await Guild.update({ id: guild_id }, { channelOrdering: notMentioned });
|
await Guild.update(
|
||||||
|
{ id: guild_id },
|
||||||
|
{ channel_ordering: notMentioned },
|
||||||
|
);
|
||||||
|
|
||||||
return res.sendStatus(204);
|
return res.sendStatus(204);
|
||||||
},
|
},
|
||||||
|
@ -273,7 +273,7 @@ export async function onIdentify(this: WebSocket, data: Payload) {
|
|||||||
return perms.has("VIEW_CHANNEL");
|
return perms.has("VIEW_CHANNEL");
|
||||||
})
|
})
|
||||||
.map((channel) => {
|
.map((channel) => {
|
||||||
channel.position = member.guild.channelOrdering.indexOf(
|
channel.position = member.guild.channel_ordering.indexOf(
|
||||||
channel.id,
|
channel.id,
|
||||||
);
|
);
|
||||||
return channel;
|
return channel;
|
||||||
|
@ -215,7 +215,7 @@ export class Channel extends BaseClass {
|
|||||||
where: { id: channel.guild_id },
|
where: { id: channel.guild_id },
|
||||||
select: {
|
select: {
|
||||||
features: !opts?.skipNameChecks,
|
features: !opts?.skipNameChecks,
|
||||||
channelOrdering: true,
|
channel_ordering: true,
|
||||||
id: true,
|
id: true,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
@ -472,27 +472,27 @@ export class Channel extends BaseClass {
|
|||||||
if (!guild)
|
if (!guild)
|
||||||
guild = await Guild.findOneOrFail({
|
guild = await Guild.findOneOrFail({
|
||||||
where: { id: guild_id },
|
where: { id: guild_id },
|
||||||
select: { channelOrdering: true },
|
select: { channel_ordering: true },
|
||||||
});
|
});
|
||||||
|
|
||||||
return guild.channelOrdering.findIndex((id) => channel_id == id);
|
return guild.channel_ordering.findIndex((id) => channel_id == id);
|
||||||
}
|
}
|
||||||
|
|
||||||
static async getOrderedChannels(guild_id: string, guild?: Guild) {
|
static async getOrderedChannels(guild_id: string, guild?: Guild) {
|
||||||
if (!guild)
|
if (!guild)
|
||||||
guild = await Guild.findOneOrFail({
|
guild = await Guild.findOneOrFail({
|
||||||
where: { id: guild_id },
|
where: { id: guild_id },
|
||||||
select: { channelOrdering: true },
|
select: { channel_ordering: true },
|
||||||
});
|
});
|
||||||
|
|
||||||
const channels = await Promise.all(
|
const channels = await Promise.all(
|
||||||
guild.channelOrdering.map((id) =>
|
guild.channel_ordering.map((id) =>
|
||||||
Channel.findOneOrFail({ where: { id } }),
|
Channel.findOneOrFail({ where: { id } }),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
return channels.reduce((r, v) => {
|
return channels.reduce((r, v) => {
|
||||||
v.position = (guild as Guild).channelOrdering.indexOf(v.id);
|
v.position = (guild as Guild).channel_ordering.indexOf(v.id);
|
||||||
r[v.position] = v;
|
r[v.position] = v;
|
||||||
return r;
|
return r;
|
||||||
}, [] as Array<Channel>);
|
}, [] as Array<Channel>);
|
||||||
|
@ -298,7 +298,7 @@ export class Guild extends BaseClass {
|
|||||||
premium_progress_bar_enabled: boolean = false;
|
premium_progress_bar_enabled: boolean = false;
|
||||||
|
|
||||||
@Column({ select: false, type: "simple-array" })
|
@Column({ select: false, type: "simple-array" })
|
||||||
channelOrdering: string[];
|
channel_ordering: string[];
|
||||||
|
|
||||||
static async createGuild(body: {
|
static async createGuild(body: {
|
||||||
name?: string;
|
name?: string;
|
||||||
@ -327,7 +327,7 @@ export class Guild extends BaseClass {
|
|||||||
description: "",
|
description: "",
|
||||||
welcome_channels: [],
|
welcome_channels: [],
|
||||||
},
|
},
|
||||||
channelOrdering: [],
|
channel_ordering: [],
|
||||||
|
|
||||||
afk_timeout: Config.get().defaults.guild.afkTimeout,
|
afk_timeout: Config.get().defaults.guild.afkTimeout,
|
||||||
default_message_notifications:
|
default_message_notifications:
|
||||||
@ -430,20 +430,20 @@ export class Guild extends BaseClass {
|
|||||||
if (!guild)
|
if (!guild)
|
||||||
guild = await Guild.findOneOrFail({
|
guild = await Guild.findOneOrFail({
|
||||||
where: { id: guild_id },
|
where: { id: guild_id },
|
||||||
select: { channelOrdering: true },
|
select: { channel_ordering: true },
|
||||||
});
|
});
|
||||||
|
|
||||||
let position;
|
let position;
|
||||||
if (typeof insertPoint == "string")
|
if (typeof insertPoint == "string")
|
||||||
position = guild.channelOrdering.indexOf(insertPoint) + 1;
|
position = guild.channel_ordering.indexOf(insertPoint) + 1;
|
||||||
else position = insertPoint;
|
else position = insertPoint;
|
||||||
|
|
||||||
guild.channelOrdering.remove(channel_id);
|
guild.channel_ordering.remove(channel_id);
|
||||||
|
|
||||||
guild.channelOrdering.splice(position, 0, channel_id);
|
guild.channel_ordering.splice(position, 0, channel_id);
|
||||||
await Guild.update(
|
await Guild.update(
|
||||||
{ id: guild_id },
|
{ id: guild_id },
|
||||||
{ channelOrdering: guild.channelOrdering },
|
{ channel_ordering: guild.channel_ordering },
|
||||||
);
|
);
|
||||||
return position;
|
return position;
|
||||||
}
|
}
|
||||||
@ -452,7 +452,7 @@ export class Guild extends BaseClass {
|
|||||||
return {
|
return {
|
||||||
...this,
|
...this,
|
||||||
unavailable: this.unavailable == false ? undefined : true,
|
unavailable: this.unavailable == false ? undefined : true,
|
||||||
channelOrdering: undefined,
|
channel_ordering: undefined,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -11,7 +11,7 @@ export class guildChannelOrdering1696420827239 implements MigrationInterface {
|
|||||||
);
|
);
|
||||||
|
|
||||||
await queryRunner.query(
|
await queryRunner.query(
|
||||||
`ALTER TABLE guilds ADD channelOrdering text NOT NULL DEFAULT '[]'`,
|
`ALTER TABLE guilds ADD channel_ordering text NOT NULL DEFAULT '[]'`,
|
||||||
);
|
);
|
||||||
|
|
||||||
for (const guild_id of guilds.records.map((x) => x.id)) {
|
for (const guild_id of guilds.records.map((x) => x.id)) {
|
||||||
@ -26,7 +26,7 @@ export class guildChannelOrdering1696420827239 implements MigrationInterface {
|
|||||||
channels.sort((a, b) => a.position - b.position);
|
channels.sort((a, b) => a.position - b.position);
|
||||||
|
|
||||||
await queryRunner.query(
|
await queryRunner.query(
|
||||||
`UPDATE guilds SET channelOrdering = ? WHERE id = ?`,
|
`UPDATE guilds SET channel_ordering = ? WHERE id = ?`,
|
||||||
[JSON.stringify(channels.map((x) => x.id)), guild_id],
|
[JSON.stringify(channels.map((x) => x.id)), guild_id],
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -11,7 +11,7 @@ export class guildChannelOrdering1696420827239 implements MigrationInterface {
|
|||||||
);
|
);
|
||||||
|
|
||||||
await queryRunner.query(
|
await queryRunner.query(
|
||||||
`ALTER TABLE guilds ADD channelOrdering text NOT NULL DEFAULT '[]'`,
|
`ALTER TABLE guilds ADD channel_ordering text NOT NULL DEFAULT '[]'`,
|
||||||
);
|
);
|
||||||
|
|
||||||
for (const guild_id of guilds.records.map((x) => x.id)) {
|
for (const guild_id of guilds.records.map((x) => x.id)) {
|
||||||
@ -26,7 +26,7 @@ export class guildChannelOrdering1696420827239 implements MigrationInterface {
|
|||||||
channels.sort((a, b) => a.position - b.position);
|
channels.sort((a, b) => a.position - b.position);
|
||||||
|
|
||||||
await queryRunner.query(
|
await queryRunner.query(
|
||||||
`UPDATE guilds SET channelOrdering = ? WHERE id = ?`,
|
`UPDATE guilds SET channel_ordering = ? WHERE id = ?`,
|
||||||
[JSON.stringify(channels.map((x) => x.id)), guild_id],
|
[JSON.stringify(channels.map((x) => x.id)), guild_id],
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -11,7 +11,7 @@ export class guildChannelOrdering1696420827239 implements MigrationInterface {
|
|||||||
);
|
);
|
||||||
|
|
||||||
await queryRunner.query(
|
await queryRunner.query(
|
||||||
`ALTER TABLE guilds ADD channelOrdering text NOT NULL DEFAULT '[]'`,
|
`ALTER TABLE guilds ADD channel_ordering text NOT NULL DEFAULT '[]'`,
|
||||||
);
|
);
|
||||||
|
|
||||||
for (const guild_id of guilds.records.map((x) => x.id)) {
|
for (const guild_id of guilds.records.map((x) => x.id)) {
|
||||||
@ -26,7 +26,7 @@ export class guildChannelOrdering1696420827239 implements MigrationInterface {
|
|||||||
channels.sort((a, b) => a.position - b.position);
|
channels.sort((a, b) => a.position - b.position);
|
||||||
|
|
||||||
await queryRunner.query(
|
await queryRunner.query(
|
||||||
`UPDATE guilds SET channelOrdering = $1 WHERE id = $2`,
|
`UPDATE guilds SET channel_ordering = $1 WHERE id = $2`,
|
||||||
[JSON.stringify(channels.map((x) => x.id)), guild_id],
|
[JSON.stringify(channels.map((x) => x.id)), guild_id],
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user