community-relations/src/commands/profile.ts

26 lines
1.1 KiB
TypeScript

import { Client, CmdContext, Command } from '../class';
import Profile_Bio from './profile_bio';
import Profile_GitHub from './profile_github';
import Profile_Gitlab from './profile_gitlab';
export default class Profile extends Command {
constructor(client: Client) {
super(client);
this.name = 'profile';
this.description = 'Manages your profile on CR.';
this.usage = `${this.client.config.prefix}profile <bio/github/gitlab> <new value>\n*Provide no value in subcommand to clear data.*`;
this.permissions = 0;
this.enabled = true;
this.subcmds = [Profile_Bio, Profile_GitHub, Profile_Gitlab];
}
public async run(ctx: CmdContext) {
if (!await this.client.db.mongo.Member.exists({ userID: ctx.message.author.id })) {
await this.client.db.mongo.Member.create({ userID: ctx.message.author.id });
}
this.error(ctx.message.channel, `Please specify a valid option to change. Choose from \`github\`, \`bio\` and \`gitlab\`. You can view your profile with \`${this.client.config.prefix}whois\`.`);
}
}