Allow Welsh characters in SMS

- This brings in the latest version of notifications-utils which
allows Welsh characters in SMS templates.
- Updated the pricing page to show the new prices for SMS with certain
Welsh characters
This commit is contained in:
Katie Smith
2019-05-03 15:13:39 +01:00
parent 00e7ccadad
commit 5be6b41195
7 changed files with 41 additions and 18 deletions

View File

@@ -5,7 +5,7 @@ from notifications_utils.recipients import (
InvalidEmailError,
validate_email_address,
)
from notifications_utils.sanitise_text import SanitiseGSM
from notifications_utils.sanitise_text import SanitiseSMS
from wtforms import ValidationError
from wtforms.validators import Email
@@ -79,14 +79,14 @@ class NoCommasInPlaceHolders:
raise ValidationError(self.message)
class OnlyGSMCharacters:
class OnlySMSCharacters:
def __call__(self, form, field):
non_gsm_characters = sorted(list(SanitiseGSM.get_non_compatible_characters(field.data)))
if non_gsm_characters:
non_sms_characters = sorted(list(SanitiseSMS.get_non_compatible_characters(field.data)))
if non_sms_characters:
raise ValidationError(
'You cant use {} in text messages. {} wont show up properly on everyones phones.'.format(
formatted_list(non_gsm_characters, conjunction='or', before_each='', after_each=''),
('It' if len(non_gsm_characters) == 1 else 'They')
formatted_list(non_sms_characters, conjunction='or', before_each='', after_each=''),
('It' if len(non_sms_characters) == 1 else 'They')
)
)