Skip to content
This repository was archived by the owner on Aug 19, 2026. It is now read-only.
This repository was archived by the owner on Aug 19, 2026. It is now read-only.

Make roles configurable from the staff page #66

Description

@Struck713

In reference to this snippet:

    async (accessToken, refreshToken, profile, done) => {
        const hacksuMembershipURL = `https://discord.com/api/v10/users/@me/guilds/632634799303032852/member`;
        const data = await fetch(hacksuMembershipURL, { headers: {"Authorization": "Bearer " + accessToken } })
            .then(res => res.json())
            .catch(_ => null);
        
        const roles: string[] = data?.roles ?? [];
        if (roles.some(role => ROLES?.includes(role))) {
            return done(null, {...profile, isLeader: true});
        }
        return done(null, false);
    })

This is a quick hack to setup a bunch of discord roles that can access and manage the staff site. At some point I had plans to make it so this was configurable from the staff page. It would be an nice feature to have. I can probably implement this myself at some point if nobody picks this up.

Maybe this even leads to a "better auth management" solution for this platform: role management for all users, session management, forced password updates, etc..

EDIT: I guess it also makes sense to completely move to just using Discord for auth, since it's easier to manage the roles there

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions