From 0a8cc24da505fd519fcc3c9d6b5e15bc7ce21b29 Mon Sep 17 00:00:00 2001 From: Nikhil <118773738+pablohashescobar@users.noreply.github.com> Date: Wed, 21 May 2025 20:34:52 +0530 Subject: [PATCH] chore: add validation fields in users (#7102) * chore: add validation fields in users * chore: make is email valid default value False --- ...0096_user_is_email_valid_user_masked_at.py | 23 +++++++++++++++++++ apiserver/plane/db/models/user.py | 6 +++++ 2 files changed, 29 insertions(+) create mode 100644 apiserver/plane/db/migrations/0096_user_is_email_valid_user_masked_at.py diff --git a/apiserver/plane/db/migrations/0096_user_is_email_valid_user_masked_at.py b/apiserver/plane/db/migrations/0096_user_is_email_valid_user_masked_at.py new file mode 100644 index 000000000..66635d89d --- /dev/null +++ b/apiserver/plane/db/migrations/0096_user_is_email_valid_user_masked_at.py @@ -0,0 +1,23 @@ +# Generated by Django 4.2.20 on 2025-05-21 13:43 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ("db", "0095_page_external_id_page_external_source"), + ] + + operations = [ + migrations.AddField( + model_name="user", + name="is_email_valid", + field=models.BooleanField(default=False), + ), + migrations.AddField( + model_name="user", + name="masked_at", + field=models.DateTimeField(null=True), + ), + ] diff --git a/apiserver/plane/db/models/user.py b/apiserver/plane/db/models/user.py index c6bf37d37..ad6e858ad 100644 --- a/apiserver/plane/db/models/user.py +++ b/apiserver/plane/db/models/user.py @@ -106,6 +106,12 @@ class User(AbstractBaseUser, PermissionsMixin): max_length=255, default="UTC", choices=USER_TIMEZONE_CHOICES ) + # email validation + is_email_valid = models.BooleanField(default=False) + + # masking + masked_at = models.DateTimeField(null=True) + USERNAME_FIELD = "email" REQUIRED_FIELDS = ["username"]