Small fix for tag digit and undefined email
2 files changed, 14 insertions, 1 deletions
diff --git a/util/src/entities/Member.ts b/util/src/entities/Member.ts
index 8529398b..c2bc65c4 100644
--- a/util/src/entities/Member.ts
+++ b/util/src/entities/Member.ts
@@ -74,7 +74,13 @@ export class Member extends BaseClassWithoutId {
nick?: string;
setNick(val: string) {
- if (val && BannedWords.find(val)) throw FieldErrors({ nick: { message: "Bad nickname", code: "INVALID_NICKNAME" } });
+
+ if (val) {
+ val = val.split("\n").join("");
+ val = val.split("\t").join("");
+ if (BannedWords.find(val)) throw FieldErrors({ nick: { message: "Bad nickname", code: "INVALID_NICKNAME" } });
+ }
+
this.nick = val;
}
diff --git a/util/src/entities/User.ts b/util/src/entities/User.ts
index 230d6d82..5f864d8f 100644
--- a/util/src/entities/User.ts
+++ b/util/src/entities/User.ts
@@ -69,8 +69,10 @@ export class User extends BaseClass {
setDiscriminator(val: string) {
const number = Number(val);
+ if (val.length > 4) throw new Error("invalid discriminator");
if (isNaN(number)) throw new Error("invalid discriminator");
if (number <= 0 || number >= 10000) throw new Error("discriminator must be between 1 and 9999");
+ val = Number(val).toString()
this.discriminator = val.toString().padStart(4, "0");
}
@@ -137,6 +139,11 @@ export class User extends BaseClass {
@Column({ nullable: true, select: false })
email?: string; // email of the user
+ setEmail(val: string) {
+ if (!val.match(/([a-z\d.-]{3,})@([a-z\d.-]+).([a-z]{2,})/g)) throw FieldErrors({ email: { message: "Invalid email", code: "EMAIL_INVALID" } });
+ this.email = val;
+ }
+
@Column()
flags: string; // UserFlags
|