Skip to content

Commit dd7b147

Browse files
committed
Changed onboarding stages nums, added OnboardingStage enum
1 parent c1866ae commit dd7b147

3 files changed

Lines changed: 18 additions & 3 deletions

File tree

users/constants.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
1+
from enum import Enum
2+
13
from django.conf import settings
24

5+
6+
class OnboardingStage(Enum):
7+
intro = 0
8+
skills = 1
9+
account_type = 2
10+
completed = None
11+
12+
313
ADMIN = 0
414
MEMBER = 1
515
MENTOR = 2

users/models.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
MENTOR,
1212
VERBOSE_ROLE_TYPES,
1313
VERBOSE_USER_TYPES,
14+
OnboardingStage,
1415
)
1516
from users.managers import (
1617
CustomUserManager,
@@ -88,9 +89,9 @@ class CustomUser(AbstractUser):
8889
null=True,
8990
blank=True,
9091
editable=False,
91-
default=0,
92+
default=OnboardingStage.intro.value,
9293
verbose_name="Стадия онбординга",
93-
help_text="0 - не пройден, 1, 2 и 3 - номера стадий онбординга, null(пустое) - онбординг пройден",
94+
help_text="0, 1, 2 - номера стадий онбординга, null(пустое) - онбординг пройден",
9495
)
9596
verification_date = models.DateField(
9697
null=True,

users/views.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
VERBOSE_ROLE_TYPES,
3636
VERBOSE_USER_TYPES,
3737
VERIFY_EMAIL_REDIRECT_URL,
38+
OnboardingStage,
3839
)
3940
from users.models import UserAchievement, LikesOnProject
4041
from users.permissions import IsAchievementOwnerOrReadOnly
@@ -354,7 +355,10 @@ def put(self, request: Request, pk):
354355
data={"error": "Wrong onboarding stage number!"},
355356
)
356357
# if the user was on the last stage and passed it
357-
if request.user.onboarding_stage == 3 and new_stage is None:
358+
if (
359+
request.user.onboarding_stage == OnboardingStage.account_type.value
360+
and new_stage == OnboardingStage.completed.value
361+
):
358362
VerificationTasks.create(request.user)
359363

360364
request.user.onboarding_stage = new_stage

0 commit comments

Comments
 (0)