generated from nhcarrigan/template
feat: separate admin and mod categories
This commit is contained in:
@@ -29,6 +29,7 @@ interface Guild {
|
|||||||
}
|
}
|
||||||
|
|
||||||
interface Stats {
|
interface Stats {
|
||||||
|
admin: Array<string>;
|
||||||
community: Array<string>;
|
community: Array<string>;
|
||||||
moderating: Array<string>;
|
moderating: Array<string>;
|
||||||
owned: Array<string>;
|
owned: Array<string>;
|
||||||
@@ -62,7 +63,8 @@ const printReport = (stats: Stats): void => {
|
|||||||
console.log(`Total Servers Joined: ${stats.total.toString()}\n`);
|
console.log(`Total Servers Joined: ${stats.total.toString()}\n`);
|
||||||
|
|
||||||
printList("Owned Servers", stats.owned, "π");
|
printList("Owned Servers", stats.owned, "π");
|
||||||
printList("Moderating (Non-Owned)", stats.moderating, "π‘οΈ ");
|
printList("Admin (Non-Owned)", stats.admin, "βοΈ ");
|
||||||
|
printList("Moderating (Non-Admin/Non-Owned)", stats.moderating, "π‘οΈ ");
|
||||||
printList("Partnered Servers", stats.partnered, "π€");
|
printList("Partnered Servers", stats.partnered, "π€");
|
||||||
printList("Verified Servers", stats.verified, "β
");
|
printList("Verified Servers", stats.verified, "β
");
|
||||||
printList("Community/Public Servers", stats.community, "π");
|
printList("Community/Public Servers", stats.community, "π");
|
||||||
@@ -78,6 +80,7 @@ const checkForPermission = (perms: bigint, permission: bigint): boolean => {
|
|||||||
const analyzeGuilds = (guilds: Array<Guild>): void => {
|
const analyzeGuilds = (guilds: Array<Guild>): void => {
|
||||||
// Arrays to store names instead of just counts
|
// Arrays to store names instead of just counts
|
||||||
const stats: Stats = {
|
const stats: Stats = {
|
||||||
|
admin: [],
|
||||||
community: [],
|
community: [],
|
||||||
moderating: [],
|
moderating: [],
|
||||||
owned: [],
|
owned: [],
|
||||||
@@ -96,18 +99,17 @@ const analyzeGuilds = (guilds: Array<Guild>): void => {
|
|||||||
stats.owned.push(name ?? "Unknown");
|
stats.owned.push(name ?? "Unknown");
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
const isAdmin = checkForPermission(perms, permissions.administrator);
|
||||||
* 2. Moderation
|
const hasModeratorPermissions
|
||||||
* We consider you a "Moderator" if you have specific mod permissions,
|
= isAdmin
|
||||||
* Even if you don't own the server.
|
|
||||||
*/
|
|
||||||
const isModerator
|
|
||||||
= checkForPermission(perms, permissions.administrator)
|
|
||||||
|| checkForPermission(perms, permissions.manageGuild)
|
|| checkForPermission(perms, permissions.manageGuild)
|
||||||
|| checkForPermission(perms, permissions.banMembers)
|
|| checkForPermission(perms, permissions.banMembers)
|
||||||
|| checkForPermission(perms, permissions.kickMembers)
|
|| checkForPermission(perms, permissions.kickMembers)
|
||||||
|| checkForPermission(perms, permissions.moderateMembers);
|
|| checkForPermission(perms, permissions.moderateMembers);
|
||||||
if (isModerator && owner !== true) {
|
|
||||||
|
if (isAdmin && owner !== true) {
|
||||||
|
stats.admin.push(name ?? id);
|
||||||
|
} else if (hasModeratorPermissions && owner !== true && !isAdmin) {
|
||||||
stats.moderating.push(name ?? id);
|
stats.moderating.push(name ?? id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user