mirror of
https://github.com/cisagov/manage.get.gov.git
synced 2025-07-27 21:16:28 +02:00
a little bit of linting
This commit is contained in:
parent
4e4e2c0d8e
commit
1fe97eb54e
8 changed files with 52 additions and 38 deletions
|
@ -1494,7 +1494,9 @@ class PortfolioInvitationAdmin(ListHeaderAdmin):
|
|||
requestor = request.user
|
||||
|
||||
requested_user = User.objects.filter(email=requested_email).first()
|
||||
permission_exists = UserPortfolioPermission.objects.filter(user=requested_user, portfolio=portfolio).exists()
|
||||
permission_exists = UserPortfolioPermission.objects.filter(
|
||||
user=requested_user, portfolio=portfolio
|
||||
).exists()
|
||||
try:
|
||||
if not requested_user or not permission_exists:
|
||||
send_portfolio_invitation_email(email=requested_email, requestor=requestor, portfolio=portfolio)
|
||||
|
@ -1511,14 +1513,21 @@ class PortfolioInvitationAdmin(ListHeaderAdmin):
|
|||
def _handle_exceptions(self, exception, request, obj):
|
||||
"""Handle exceptions raised during the process."""
|
||||
if isinstance(exception, EmailSendingError):
|
||||
logger.warning("Could not sent email invitation to %s for portfolio %s (EmailSendingError)", obj.email, obj.portfolio, exc_info=True)
|
||||
logger.warning(
|
||||
"Could not sent email invitation to %s for portfolio %s (EmailSendingError)",
|
||||
obj.email,
|
||||
obj.portfolio,
|
||||
exc_info=True,
|
||||
)
|
||||
messages.error(request, "Could not send email invitation. Portfolio invitation not saved.")
|
||||
elif isinstance(exception, MissingEmailError):
|
||||
messages.error(request, str(exception))
|
||||
logger.error(
|
||||
f"Can't send email to '{obj.email}' for portfolio '{obj.portfolio}'. No email exists for the requestor.",
|
||||
f"Can't send email to '{obj.email}' for portfolio '{obj.portfolio}'. "
|
||||
f"No email exists for the requestor.",
|
||||
exc_info=True,
|
||||
)
|
||||
|
||||
else:
|
||||
logger.warning("Could not send email invitation (Other Exception)", obj.portfolio, exc_info=True)
|
||||
messages.error(request, "Could not send email invitation. Portfolio invitation not saved.")
|
||||
|
|
|
@ -12,7 +12,6 @@ from registrar.models import (
|
|||
DomainInformation,
|
||||
Portfolio,
|
||||
SeniorOfficial,
|
||||
User,
|
||||
)
|
||||
from registrar.models.utility.portfolio_helper import UserPortfolioPermissionChoices, UserPortfolioRoleChoices
|
||||
|
||||
|
@ -111,9 +110,9 @@ class PortfolioSeniorOfficialForm(forms.ModelForm):
|
|||
return cleaned_data
|
||||
|
||||
|
||||
|
||||
class BasePortfolioMemberForm(forms.ModelForm):
|
||||
"""Base form for the PortfolioMemberForm and PortfolioInvitedMemberForm"""
|
||||
|
||||
required_star = '<abbr class="usa-hint usa-hint--required" title="required">*</abbr>'
|
||||
role = forms.ChoiceField(
|
||||
choices=[
|
||||
|
@ -180,7 +179,7 @@ class BasePortfolioMemberForm(forms.ModelForm):
|
|||
|
||||
class Meta:
|
||||
model = None
|
||||
fields = ["roles", "additional_permissions" ]
|
||||
fields = ["roles", "additional_permissions"]
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
"""
|
||||
|
@ -301,7 +300,7 @@ class PortfolioMemberForm(BasePortfolioMemberForm):
|
|||
|
||||
class Meta:
|
||||
model = UserPortfolioPermission
|
||||
fields = ["roles", "additional_permissions" ]
|
||||
fields = ["roles", "additional_permissions"]
|
||||
|
||||
|
||||
class PortfolioInvitedMemberForm(BasePortfolioMemberForm):
|
||||
|
@ -311,8 +310,7 @@ class PortfolioInvitedMemberForm(BasePortfolioMemberForm):
|
|||
|
||||
class Meta:
|
||||
model = PortfolioInvitation
|
||||
fields = ["roles", "additional_permissions" ]
|
||||
|
||||
fields = ["roles", "additional_permissions"]
|
||||
|
||||
|
||||
class PortfolioNewMemberForm(BasePortfolioMemberForm):
|
||||
|
@ -336,4 +334,3 @@ class PortfolioNewMemberForm(BasePortfolioMemberForm):
|
|||
class Meta:
|
||||
model = PortfolioInvitation
|
||||
fields = ["portfolio", "email", "roles", "additional_permissions"]
|
||||
|
||||
|
|
|
@ -7,7 +7,6 @@ from typing import Optional
|
|||
from django_fsm import FSMField, transition, TransitionNotAllowed # type: ignore
|
||||
|
||||
from django.db import models
|
||||
from django.urls import reverse
|
||||
from django.utils import timezone
|
||||
from typing import Any
|
||||
from registrar.models.host import Host
|
||||
|
|
|
@ -10,6 +10,7 @@ import logging
|
|||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class Portfolio(TimeStampedModel):
|
||||
"""
|
||||
Portfolio is used for organizing domains/domain-requests into
|
||||
|
|
|
@ -8,6 +8,7 @@ import logging
|
|||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class UserPortfolioRoleChoices(models.TextChoices):
|
||||
"""
|
||||
Roles make it easier for admins to look at
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
from django.conf import settings
|
||||
from registrar.models import DomainInvitation
|
||||
from registrar.models.portfolio_invitation import PortfolioInvitation
|
||||
from registrar.models.user_portfolio_permission import UserPortfolioPermission
|
||||
from registrar.utility.errors import (
|
||||
AlreadyDomainInvitedError,
|
||||
AlreadyDomainManagerError,
|
||||
|
@ -9,7 +7,7 @@ from registrar.utility.errors import (
|
|||
OutsideOrgMemberError,
|
||||
)
|
||||
from registrar.utility.waffle import flag_is_active_for_user
|
||||
from registrar.utility.email import send_templated_email, EmailSendingError
|
||||
from registrar.utility.email import send_templated_email
|
||||
import logging
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
|
|
@ -1128,7 +1128,10 @@ class DomainUsersView(DomainBaseView):
|
|||
for portfolio_invitation in portfolio_invitations:
|
||||
logger.info(portfolio_invitation)
|
||||
logger.info(portfolio_invitation.roles)
|
||||
if portfolio_invitation.roles and UserPortfolioRoleChoices.ORGANIZATION_ADMIN in portfolio_invitation.roles:
|
||||
if (
|
||||
portfolio_invitation.roles
|
||||
and UserPortfolioRoleChoices.ORGANIZATION_ADMIN in portfolio_invitation.roles
|
||||
):
|
||||
has_admin_flag = True
|
||||
break # Once we find one match, no need to check further
|
||||
|
||||
|
@ -1210,14 +1213,12 @@ class DomainAddUserView(DomainFormBaseView):
|
|||
|
||||
# Determine membership in a different organization
|
||||
member_of_a_different_org = (
|
||||
(existing_org_permission and existing_org_permission.portfolio != requestor_org) or
|
||||
(existing_org_invitation and existing_org_invitation.portfolio != requestor_org)
|
||||
)
|
||||
existing_org_permission and existing_org_permission.portfolio != requestor_org
|
||||
) or (existing_org_invitation and existing_org_invitation.portfolio != requestor_org)
|
||||
|
||||
# Determine membership in the same organization
|
||||
member_of_this_org = (
|
||||
(existing_org_permission and existing_org_permission.portfolio == requestor_org) or
|
||||
(existing_org_invitation and existing_org_invitation.portfolio == requestor_org)
|
||||
member_of_this_org = (existing_org_permission and existing_org_permission.portfolio == requestor_org) or (
|
||||
existing_org_invitation and existing_org_invitation.portfolio == requestor_org
|
||||
)
|
||||
|
||||
return member_of_a_different_org, member_of_this_org
|
||||
|
@ -1232,7 +1233,9 @@ class DomainAddUserView(DomainFormBaseView):
|
|||
# Get the requestor's organization
|
||||
requestor_org = UserPortfolioPermission.objects.filter(user=requestor).first().portfolio
|
||||
|
||||
member_of_a_different_org, member_of_this_org = self._get_org_membership(requestor_org, requested_email, requested_user)
|
||||
member_of_a_different_org, member_of_this_org = self._get_org_membership(
|
||||
requestor_org, requested_email, requested_user
|
||||
)
|
||||
|
||||
# determine portfolio of the domain (code currently is looking at requestor's portfolio)
|
||||
# if requested_email/user is not member or invited member of this portfolio
|
||||
|
@ -1299,7 +1302,12 @@ class DomainAddUserView(DomainFormBaseView):
|
|||
def _handle_exceptions(self, exception, email):
|
||||
"""Handle exceptions raised during the process."""
|
||||
if isinstance(exception, EmailSendingError):
|
||||
logger.warning("Could not send email invitation to %s for domain %s (EmailSendingError)", email, self.object, exc_info=True)
|
||||
logger.warning(
|
||||
"Could not send email invitation to %s for domain %s (EmailSendingError)",
|
||||
email,
|
||||
self.object,
|
||||
exc_info=True,
|
||||
)
|
||||
messages.warning(self.request, "Could not send email invitation.")
|
||||
elif isinstance(exception, OutsideOrgMemberError):
|
||||
logger.warning(
|
||||
|
@ -1342,6 +1350,7 @@ class DomainAddUserView(DomainFormBaseView):
|
|||
logger.warning("Could not send email invitation (Other Exception)", portfolio, exc_info=True)
|
||||
messages.warning(self.request, "Could not send email invitation.")
|
||||
|
||||
|
||||
class DomainInvitationCancelView(SuccessMessageMixin, DomainInvitationPermissionCancelView):
|
||||
object: DomainInvitation
|
||||
fields = []
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
import logging
|
||||
from django.conf import settings
|
||||
|
||||
from django.http import Http404, JsonResponse
|
||||
from django.shortcuts import get_object_or_404, redirect, render
|
||||
|
@ -577,14 +576,15 @@ class PortfolioAddMemberView(PortfolioMembersPermissionView, FormMixin):
|
|||
self._handle_exceptions(e, portfolio, requested_email)
|
||||
return redirect(self.get_success_url())
|
||||
|
||||
def get_success_url(self):
|
||||
"""Redirect to the members page."""
|
||||
return reverse("members")
|
||||
|
||||
def _handle_exceptions(self, exception, portfolio, email):
|
||||
"""Handle exceptions raised during the process."""
|
||||
if isinstance(exception, EmailSendingError):
|
||||
logger.warning("Could not sent email invitation to %s for portfolio %s (EmailSendingError)", email, portfolio, exc_info=True)
|
||||
logger.warning(
|
||||
"Could not sent email invitation to %s for portfolio %s (EmailSendingError)",
|
||||
email,
|
||||
portfolio,
|
||||
exc_info=True,
|
||||
)
|
||||
messages.warning(self.request, "Could not send email invitation.")
|
||||
elif isinstance(exception, MissingEmailError):
|
||||
messages.error(self.request, str(exception))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue