Change waffle flag logic (merge conflict)

This commit is contained in:
zandercymatics 2024-09-09 09:07:50 -06:00
parent 67f79a75ff
commit 6f1adc1573
No known key found for this signature in database
GPG key ID: FF4636ABEC9682B7
3 changed files with 24 additions and 22 deletions

View file

@ -71,6 +71,8 @@ def portfolio_permissions(request):
"has_edit_members_portfolio_permission": False, "has_edit_members_portfolio_permission": False,
"portfolio": None, "portfolio": None,
"has_organization_feature_flag": False, "has_organization_feature_flag": False,
"has_organization_requests_flag": False,
"has_organization_members_flag": False,
} }
try: try:
portfolio = request.session.get("portfolio") portfolio = request.session.get("portfolio")
@ -92,6 +94,8 @@ def portfolio_permissions(request):
"has_edit_members_portfolio_permission": request.user.has_edit_members_portfolio_permission(portfolio), "has_edit_members_portfolio_permission": request.user.has_edit_members_portfolio_permission(portfolio),
"portfolio": portfolio, "portfolio": portfolio,
"has_organization_feature_flag": True, "has_organization_feature_flag": True,
"has_organization_requests_flag": request.user.has_organization_requests_flag(),
"has_organization_members_flag": request.user.has_organization_members_flag(),
} }
return default_context return default_context

View file

@ -197,26 +197,20 @@ class User(AbstractUser):
portfolio, UserPortfolioPermissionChoices.VIEW_ALL_DOMAINS portfolio, UserPortfolioPermissionChoices.VIEW_ALL_DOMAINS
) or self._has_portfolio_permission(portfolio, UserPortfolioPermissionChoices.VIEW_MANAGED_DOMAINS) ) or self._has_portfolio_permission(portfolio, UserPortfolioPermissionChoices.VIEW_MANAGED_DOMAINS)
def has_domain_requests_portfolio_permission(self, portfolio): def has_organization_requests_flag(self):
# BEGIN
# Note code below is to add organization_request feature
request = HttpRequest() request = HttpRequest()
request.user = self request.user = self
has_organization_requests_flag = flag_is_active(request, "organization_requests") return flag_is_active(request, "organization_requests")
if not has_organization_requests_flag:
return False def has_organization_members_flag(self):
# END request = HttpRequest()
return self._has_portfolio_permission( request.user = self
portfolio, UserPortfolioPermissionChoices.VIEW_ALL_REQUESTS return flag_is_active(request, "organization_members")
) or self._has_portfolio_permission(portfolio, UserPortfolioPermissionChoices.VIEW_CREATED_REQUESTS)
def has_view_members_portfolio_permission(self, portfolio): def has_view_members_portfolio_permission(self, portfolio):
# BEGIN # BEGIN
# Note code below is to add organization_request feature # Note code below is to add organization_request feature
request = HttpRequest() if not self.has_organization_members_flag():
request.user = self
has_organization_members_flag = flag_is_active(request, "organization_members")
if not has_organization_members_flag:
return False return False
# END # END
return self._has_portfolio_permission(portfolio, UserPortfolioPermissionChoices.VIEW_MEMBERS) return self._has_portfolio_permission(portfolio, UserPortfolioPermissionChoices.VIEW_MEMBERS)
@ -224,10 +218,7 @@ class User(AbstractUser):
def has_edit_members_portfolio_permission(self, portfolio): def has_edit_members_portfolio_permission(self, portfolio):
# BEGIN # BEGIN
# Note code below is to add organization_request feature # Note code below is to add organization_request feature
request = HttpRequest() if not self.has_organization_members_flag():
request.user = self
has_organization_members_flag = flag_is_active(request, "organization_members")
if not has_organization_members_flag:
return False return False
# END # END
return self._has_portfolio_permission(portfolio, UserPortfolioPermissionChoices.EDIT_MEMBERS) return self._has_portfolio_permission(portfolio, UserPortfolioPermissionChoices.EDIT_MEMBERS)
@ -237,6 +228,11 @@ class User(AbstractUser):
return self._has_portfolio_permission(portfolio, UserPortfolioPermissionChoices.VIEW_ALL_DOMAINS) return self._has_portfolio_permission(portfolio, UserPortfolioPermissionChoices.VIEW_ALL_DOMAINS)
def has_any_requests_portfolio_permission(self, portfolio): def has_any_requests_portfolio_permission(self, portfolio):
# BEGIN
# Note code below is to add organization_request feature
if not self.has_organization_requests_flag():
return False
# END
return self._has_portfolio_permission( return self._has_portfolio_permission(
portfolio, UserPortfolioPermissionChoices.VIEW_ALL_REQUESTS portfolio, UserPortfolioPermissionChoices.VIEW_ALL_REQUESTS
) or self._has_portfolio_permission(portfolio, UserPortfolioPermissionChoices.EDIT_REQUESTS) ) or self._has_portfolio_permission(portfolio, UserPortfolioPermissionChoices.EDIT_REQUESTS)

View file

@ -51,7 +51,8 @@
Domain groups Domain groups
</a> </a>
</li> --> </li> -->
{% if has_organization_requests_flag %}
<li class="usa-nav__primary-item"> <li class="usa-nav__primary-item">
<!-- user hasone of the view permissions plus the edit permission, show the dropdown --> <!-- user hasone of the view permissions plus the edit permission, show the dropdown -->
{% if has_edit_request_portfolio_permission %} {% if has_edit_request_portfolio_permission %}
@ -89,16 +90,17 @@
Domain requests Domain requests
</a> </a>
{% endif %} {% endif %}
</li> </li>
{% endif %}
{% if has_organization_members_flag %}
{% if has_view_members_portfolio_permission %}
<li class="usa-nav__primary-item"> <li class="usa-nav__primary-item">
<a href="#" class="usa-nav-link"> <a href="#" class="usa-nav-link">
Members Members
</a> </a>
</li> </li>
{% endif %} {% endif %}
<li class="usa-nav__primary-item"> <li class="usa-nav__primary-item">
{% url 'organization' as url %} {% url 'organization' as url %}
<!-- Move the padding from the a to the span so that the descenders do not get cut off --> <!-- Move the padding from the a to the span so that the descenders do not get cut off -->