mirror of
https://github.com/cisagov/manage.get.gov.git
synced 2025-08-16 06:24:12 +02:00
adding request to a few flag_is_active instances
This commit is contained in:
parent
fbb4ee927b
commit
833b698bf2
2 changed files with 11 additions and 2 deletions
|
@ -3,6 +3,7 @@ import logging
|
||||||
from django.contrib.auth.models import AbstractUser
|
from django.contrib.auth.models import AbstractUser
|
||||||
from django.db import models
|
from django.db import models
|
||||||
from django.db.models import Q
|
from django.db.models import Q
|
||||||
|
from django.http import HttpRequest
|
||||||
|
|
||||||
from registrar.models import DomainInformation, UserDomainRole
|
from registrar.models import DomainInformation, UserDomainRole
|
||||||
from registrar.models.utility.portfolio_helper import UserPortfolioPermissionChoices, UserPortfolioRoleChoices
|
from registrar.models.utility.portfolio_helper import UserPortfolioPermissionChoices, UserPortfolioRoleChoices
|
||||||
|
@ -358,8 +359,12 @@ class User(AbstractUser):
|
||||||
for invitation in PortfolioInvitation.objects.filter(
|
for invitation in PortfolioInvitation.objects.filter(
|
||||||
email__iexact=self.email, status=PortfolioInvitation.PortfolioInvitationStatus.INVITED
|
email__iexact=self.email, status=PortfolioInvitation.PortfolioInvitationStatus.INVITED
|
||||||
):
|
):
|
||||||
|
# need to create a bogus request and assign user to it, in order to pass request
|
||||||
|
# to flag_is_active
|
||||||
|
request = HttpRequest()
|
||||||
|
request.user = self
|
||||||
only_single_portfolio = (
|
only_single_portfolio = (
|
||||||
not flag_is_active(None, "multiple_portfolios") and self.get_first_portfolio() is None
|
not flag_is_active(request, "multiple_portfolios") and self.get_first_portfolio() is None
|
||||||
)
|
)
|
||||||
if only_single_portfolio or flag_is_active(None, "multiple_portfolios"):
|
if only_single_portfolio or flag_is_active(None, "multiple_portfolios"):
|
||||||
try:
|
try:
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
from django.db import models
|
from django.db import models
|
||||||
from django.forms import ValidationError
|
from django.forms import ValidationError
|
||||||
|
from django.http import HttpRequest
|
||||||
from waffle import flag_is_active
|
from waffle import flag_is_active
|
||||||
from registrar.models.utility.portfolio_helper import UserPortfolioPermissionChoices, UserPortfolioRoleChoices
|
from registrar.models.utility.portfolio_helper import UserPortfolioPermissionChoices, UserPortfolioRoleChoices
|
||||||
from .utility.time_stamped_model import TimeStampedModel
|
from .utility.time_stamped_model import TimeStampedModel
|
||||||
|
@ -99,7 +100,10 @@ class UserPortfolioPermission(TimeStampedModel):
|
||||||
|
|
||||||
# Check if a user is set without accessing the related object.
|
# Check if a user is set without accessing the related object.
|
||||||
has_user = bool(self.user_id)
|
has_user = bool(self.user_id)
|
||||||
if not flag_is_active(None, "multiple_portfolios") and self.pk is None and has_user:
|
# Have to create a bogus request to set the user and pass to flag_is_active
|
||||||
|
request = HttpRequest()
|
||||||
|
request.user = self.user
|
||||||
|
if not flag_is_active(request, "multiple_portfolios") and self.pk is None and has_user:
|
||||||
existing_permissions = UserPortfolioPermission.objects.filter(user=self.user)
|
existing_permissions = UserPortfolioPermission.objects.filter(user=self.user)
|
||||||
if existing_permissions.exists():
|
if existing_permissions.exists():
|
||||||
raise ValidationError(
|
raise ValidationError(
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue