feature: start to lay groundwork for reactions
This commit is contained in:
parent
10b3e9ff72
commit
6500d9a9be
4 changed files with 56 additions and 5 deletions
|
|
@ -8,6 +8,7 @@ import { INVITE_CODE, INVITE_CODES, VALIDATE_INVITE_CODE } from '../../../../../
|
|||
export const PRECHECKS: PRECHECK_TABLE = {};
|
||||
|
||||
const INVITE_CODES_ALLOWED_PER_MINUTE = parseInt(Deno.env.get('INVITE_CODES_ALLOWED_PER_MINUTE') ?? '3', 10);
|
||||
const DEFAULT_INVITE_EXPIRE_TIME: number = 28 * 24 * 60 * 60 * 1_000; // 28 days max invite length
|
||||
|
||||
// GET /api/users/:user_id/invites - get invites this user has created
|
||||
// query parameters:
|
||||
|
|
@ -94,6 +95,8 @@ export async function POST(req: Request, meta: Record<string, any>): Promise<Res
|
|||
invite_code.code = `${full_lurid.substring(0, 14).replace(/-/g, ' ')}${full_lurid.substring(39).replace(/-/g, ' ')}`;
|
||||
}
|
||||
|
||||
invite_code.timestamps.expires = invite_code.timestamps.expires ?? new Date(new Date(now).valueOf() + DEFAULT_INVITE_EXPIRE_TIME).toISOString();
|
||||
|
||||
const errors = VALIDATE_INVITE_CODE(invite_code);
|
||||
if (errors) {
|
||||
return Response.json({
|
||||
|
|
|
|||
|
|
@ -128,7 +128,8 @@ export async function POST(req: Request, meta: Record<string, any>): Promise<Res
|
|||
code: root_invite_code_secret,
|
||||
creator_id: new_user_id,
|
||||
timestamps: {
|
||||
created: now
|
||||
created: now,
|
||||
expires: new Date(new Date(now).valueOf() + 1_000).toISOString()
|
||||
}
|
||||
};
|
||||
|
||||
|
|
@ -151,7 +152,7 @@ export async function POST(req: Request, meta: Record<string, any>): Promise<Res
|
|||
code: secret_code
|
||||
})).shift()?.load();
|
||||
|
||||
const is_expired = invite_code?.timestamps.expires ? now <= invite_code.timestamps.expires : false;
|
||||
const is_expired = now >= (invite_code?.timestamps.expires ?? '0000-01-01T00:00:00.000Z');
|
||||
const is_used = (await SIGNUPS.find({
|
||||
referring_invite_code_id: invite_code?.id
|
||||
}, {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue