diff --git a/app/enums.py b/app/enums.py index 34bf79f64..025a5c50b 100644 --- a/app/enums.py +++ b/app/enums.py @@ -36,7 +36,9 @@ class NotificationStatus(StrEnum): @classmethod def requested_statuses(cls): - return cls.sending_statuses() + cls.delivered_statuses() + cls.failure_statuses() + return ( + cls.sending_statuses() + cls.delivered_statuses() + cls.failure_statuses() + ) class NotificationType(StrEnum): @@ -44,6 +46,12 @@ class NotificationType(StrEnum): SMS = "sms" +class OrganizationType(StrEnum): + FEDERAL = "federal" + STATE = "state" + OTHER = "other" + + class ApiKeyType(StrEnum): NORMAL = "normal" TEAM = "team" @@ -80,10 +88,3 @@ class VerificationStatus(StrEnum): class AuthType(StrEnum): EMAIL_AUTH = "email_auth" SMS_AUTH = "sms_auth" - - -# TODO: -# class UserRole(StrEnum): -# ADMIN = "admin" -# USER = "user" -# GUEST = "guest" diff --git a/app/main/views/add_service.py b/app/main/views/add_service.py index f6ec2fe50..507be6629 100644 --- a/app/main/views/add_service.py +++ b/app/main/views/add_service.py @@ -2,6 +2,7 @@ from flask import current_app, redirect, render_template, session, url_for from flask_login import current_user from app import service_api_client +from app.enums import OrganizationType from app.formatters import email_safe from app.main import main from app.main.forms import CreateServiceForm @@ -46,7 +47,7 @@ def _create_example_template(service_id): def add_service(): default_organization_type = current_user.default_organization_type if default_organization_type is None: - default_organization_type = "federal" + default_organization_type = OrganizationType.FEDERAL form = CreateServiceForm( # This value is currently not useful but if it is not set it will result in a bug organization_type=default_organization_type diff --git a/app/models/organization.py b/app/models/organization.py index e9e30f460..f2dc1bf07 100644 --- a/app/models/organization.py +++ b/app/models/organization.py @@ -2,14 +2,15 @@ from collections import OrderedDict from werkzeug.utils import cached_property +from app.enums import OrganizationType from app.models import JSONModel, ModelList, SerialisedModelCollection, SortByNameMixin from app.notify_client.organizations_api_client import organizations_client class Organization(JSONModel, SortByNameMixin): - TYPE_FEDERAL = "federal" - TYPE_STATE = "state" - TYPE_OTHER = "other" + TYPE_FEDERAL = OrganizationType.FEDERAL + TYPE_STATE = OrganizationType.STATE + TYPE_OTHER = OrganizationType.OTHER TYPE_LABELS = OrderedDict( [ diff --git a/app/models/service.py b/app/models/service.py index e9bcf8a7d..c2f29a8fe 100644 --- a/app/models/service.py +++ b/app/models/service.py @@ -322,7 +322,7 @@ class Service(JSONModel, SortByNameMixin): @property def shouldnt_use_govuk_as_sms_sender(self): - return self.organization_type != Organization.TYPE_CENTRAL + return self.organization_type != Organization.TYPE_FEDERAL @cached_property def sms_senders(self):