mirror of
https://github.com/spacebarchat/server.git
synced 2024-11-09 12:12:35 +01:00
Merge branch 'master' into fix/password-mfacode-schemas
This commit is contained in:
commit
1d98b2ff5b
@ -54,6 +54,8 @@ export const NO_AUTHORIZATION_ROUTES = [
|
||||
/GET \/guilds\/\d+\/widget\.(json|png)/,
|
||||
// Connections
|
||||
/POST \/connections\/\w+\/callback/,
|
||||
// Image proxy
|
||||
/GET \/imageproxy\/[A-Za-z0-9+/]\/\d+x\d+\/.+/,
|
||||
];
|
||||
|
||||
export const API_PREFIX = /^\/api(\/v\d+)?/;
|
||||
|
@ -67,7 +67,12 @@ export async function ImageProxy(req: Request, res: Response) {
|
||||
if (!crypto.timingSafeEqual(Buffer.from(hash), Buffer.from(path[0])))
|
||||
throw new Error("Invalid signature");
|
||||
} catch {
|
||||
console.log("Invalid signature, expected " + hash + " got " + path[0]);
|
||||
console.log(
|
||||
"[ImageProxy] Invalid signature, expected " +
|
||||
hash +
|
||||
" but got " +
|
||||
path[0],
|
||||
);
|
||||
res.status(403).send("Invalid signature");
|
||||
return;
|
||||
}
|
||||
@ -75,7 +80,7 @@ export async function ImageProxy(req: Request, res: Response) {
|
||||
const abort = new AbortController();
|
||||
setTimeout(() => abort.abort(), 5000);
|
||||
|
||||
const request = await fetch(path.slice(2).join("/"), {
|
||||
const request = await fetch("https://" + path.slice(2).join("/"), {
|
||||
headers: {
|
||||
"User-Agent": "SpacebarImageProxy/1.0.0 (https://spacebar.chat)",
|
||||
},
|
||||
|
@ -179,6 +179,7 @@ router.get(
|
||||
|
||||
const pins = await Message.find({
|
||||
where: { channel_id: channel_id, pinned: true },
|
||||
relations: ["author"],
|
||||
});
|
||||
|
||||
res.send(pins);
|
||||
|
@ -68,7 +68,6 @@ async function getMembers(guild_id: string, range: [number, number]) {
|
||||
if (!Array.isArray(range) || range.length !== 2) {
|
||||
throw new Error("range is not a valid array");
|
||||
}
|
||||
// TODO: wait for typeorm to implement ordering for .find queries https://github.com/typeorm/typeorm/issues/2620
|
||||
|
||||
let members: Member[] = [];
|
||||
try {
|
||||
@ -82,11 +81,11 @@ async function getMembers(guild_id: string, range: [number, number]) {
|
||||
.leftJoinAndSelect("user.sessions", "session")
|
||||
.addSelect("user.settings")
|
||||
.addSelect(
|
||||
"CASE WHEN session.status = 'offline' THEN 0 ELSE 1 END",
|
||||
"CASE WHEN session.status IS NULL OR session.status = 'offline' OR session.status = 'invisible' THEN 0 ELSE 1 END",
|
||||
"_status",
|
||||
)
|
||||
.orderBy("role.position", "DESC")
|
||||
.addOrderBy("_status", "DESC")
|
||||
.orderBy("_status", "DESC")
|
||||
.addOrderBy("role.position", "DESC")
|
||||
.addOrderBy("user.username", "ASC")
|
||||
.offset(Number(range[0]) || 0)
|
||||
.limit(Number(range[1]) || 100)
|
||||
|
Loading…
Reference in New Issue
Block a user