update user modify for unique usernames

This commit is contained in:
Puyodead1
2023-06-14 11:37:17 -04:00
committed by Rory&
parent 9a415989b1
commit 08fcec36ba
6 changed files with 80 additions and 31 deletions
+1 -1
View File
@@ -19,4 +19,4 @@
export class UserConfiguration {
blockedContains: string[] = ["discord", "clyde", "spacebar", "steam", "community", "support", "ticket"];
blockedEquals: string[] = ["everyone", "here"];
}
}
@@ -18,6 +18,7 @@
export class UserLimits {
maxGuilds: number = 1048576;
minUsername: number = 2;
maxUsername: number = 32;
maxFriends: number = 5000;
maxBio: number = 190;
+6 -7
View File
@@ -32,7 +32,6 @@ import { ChannelType, PrivateUserProjection, PublicUser, PublicUserProjection, U
export enum PublicUserEnum {
username,
global_name,
legacy_username,
discriminator,
id,
public_flags,
@@ -195,7 +194,7 @@ export class User extends BaseClass {
// TODO: I don't like this method?
validate() {
if (this.discriminator) {
if (this.discriminator && this.discriminator !== "0") {
const discrim = Number(this.discriminator);
if (isNaN(discrim) || !(typeof discrim == "number") || !Number.isInteger(discrim) || discrim <= 0 || discrim >= 10000)
throw FieldErrors({
@@ -273,9 +272,8 @@ export class User extends BaseClass {
public get tag(): string {
const { uniqueUsernames } = Config.get().general;
// if uniqueUsernames is enabled, global_name should be set
return uniqueUsernames
? (this.global_name as string)
? this.username
: `${this.username}#${this.discriminator}`;
}
@@ -325,7 +323,7 @@ export class User extends BaseClass {
});
const user = User.create({
username: username,
username: uniqueUsernames ? username.toLowerCase() : username,
discriminator,
id: id || Snowflake.generate(),
email: email,
@@ -334,8 +332,9 @@ export class User extends BaseClass {
valid_tokens_since: new Date(),
},
settings: settings,
premium_since: Config.get().defaults.user.premium ? new Date() : undefined,
premium_since: Config.get().defaults.user.premium
? new Date()
: undefined,
rights: Config.get().register.defaultRights,
premium: Config.get().defaults.user.premium ?? false,
premium_type: Config.get().defaults.user.premiumType ?? 0,