diff --git a/backend/api/conferences/types.py b/backend/api/conferences/types.py index 2f1076cd67..f776e1425f 100644 --- a/backend/api/conferences/types.py +++ b/backend/api/conferences/types.py @@ -149,7 +149,7 @@ def from_django_model(cls, instance, info): class Conference: id: strawberry.ID - name: str = strawberry.field(resolver=make_localized_resolver("name")) + name: str introduction: str = strawberry.field( resolver=make_localized_resolver("introduction") ) diff --git a/backend/conferences/migrations/0055_change_conference_name_to_charfield.py b/backend/conferences/migrations/0055_change_conference_name_to_charfield.py new file mode 100644 index 0000000000..d2a7c1de46 --- /dev/null +++ b/backend/conferences/migrations/0055_change_conference_name_to_charfield.py @@ -0,0 +1,18 @@ +# Generated manually to change conference name from I18nCharField to CharField + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('conferences', '0054_conference_frontend_revalidate_secret_and_more'), + ] + + operations = [ + migrations.AlterField( + model_name='conference', + name='name', + field=models.CharField(max_length=100, verbose_name='name'), + ), + ] \ No newline at end of file diff --git a/backend/conferences/models/conference.py b/backend/conferences/models/conference.py index e04db0665a..a4864268d7 100644 --- a/backend/conferences/models/conference.py +++ b/backend/conferences/models/conference.py @@ -6,7 +6,7 @@ from timezone_field import TimeZoneField from helpers.models import GeoLocalizedModel -from i18n.fields import I18nCharField, I18nTextField +from i18n.fields import I18nTextField from .deadline import Deadline, DeadlineStatus @@ -24,7 +24,7 @@ class Conference(GeoLocalizedModel, TimeFramedModel, TimeStampedModel): null=True, ) - name = I18nCharField(_("name"), max_length=100) + name = models.CharField(_("name"), max_length=100) code = models.CharField(_("code"), max_length=100, unique=True) timezone = TimeZoneField() logo = models.ImageField(_("logo"), upload_to=get_upload_to, blank=True) diff --git a/backend/conferences/tests/factories.py b/backend/conferences/tests/factories.py index 9946f9f50e..de6450297f 100644 --- a/backend/conferences/tests/factories.py +++ b/backend/conferences/tests/factories.py @@ -24,7 +24,7 @@ class ConferenceFactory(DjangoModelFactory): organizer = factory.SubFactory(OrganizerFactory) - name = LanguageFactory("name") + name = factory.Faker("word") code = factory.Sequence(lambda n: "code{}".format(n)) introduction = LanguageFactory("sentence") diff --git a/backend/conferences/tests/test_models.py b/backend/conferences/tests/test_models.py index 0680a43757..34ebaaded9 100644 --- a/backend/conferences/tests/test_models.py +++ b/backend/conferences/tests/test_models.py @@ -1,7 +1,6 @@ from conferences.tests.factories import ConferenceFactory from pytest import mark -from i18n.strings import LazyI18nString from conferences.models.conference import get_upload_to pytestmark = mark.django_db @@ -9,7 +8,7 @@ def test_conference_to_str(): assert "Ciao Mondo " == str( - ConferenceFactory(name=LazyI18nString({"en": "Ciao Mondo"}), code="ep1") + ConferenceFactory(name="Ciao Mondo", code="ep1") ) diff --git a/backend/grants/tasks.py b/backend/grants/tasks.py index 8c19e6e282..d3147d80e1 100644 --- a/backend/grants/tasks.py +++ b/backend/grants/tasks.py @@ -157,7 +157,7 @@ def _new_send_grant_email( ): conference = grant.conference user = grant.user - conference_name = grant.conference.name.localize("en") + conference_name = grant.conference.name email_template = EmailTemplate.objects.for_conference(conference).get_by_identifier( template_identifier diff --git a/backend/grants/tests/test_tasks.py b/backend/grants/tests/test_tasks.py index 8be25fef7f..ede9a1f29a 100644 --- a/backend/grants/tests/test_tasks.py +++ b/backend/grants/tests/test_tasks.py @@ -33,7 +33,7 @@ def test_send_grant_reply_rejected_email(): recipient=user, placeholders={ "user_name": "Marco Acierno", - "conference_name": grant.conference.name.localize("en"), + "conference_name": grant.conference.name, }, ) @@ -67,7 +67,7 @@ def test_send_grant_reply_waiting_list_email(settings): recipient=user, placeholders={ "user_name": "Marco Acierno", - "conference_name": grant.conference.name.localize("en"), + "conference_name": grant.conference.name, "grants_update_deadline": "1 March 2023", "reply_url": "https://pycon.it/grants/reply/", }, @@ -101,7 +101,7 @@ def test_handle_grant_reply_sent_reminder(settings): recipient=user, placeholders={ "user_name": "Marco Acierno", - "conference_name": grant.conference.name.localize("en"), + "conference_name": grant.conference.name, "start_date": "2 May", "end_date": "6 May", "deadline_date_time": "1 February 2023 23:59 UTC", @@ -144,7 +144,7 @@ def test_handle_grant_approved_ticket_travel_accommodation_reply_sent(settings): recipient=user, placeholders={ "user_name": "Marco Acierno", - "conference_name": grant.conference.name.localize("en"), + "conference_name": grant.conference.name, "start_date": "2 May", "end_date": "6 May", "travel_amount": "680", @@ -218,7 +218,7 @@ def test_handle_grant_approved_ticket_only_reply_sent(settings): recipient=user, placeholders={ "user_name": "Marco Acierno", - "conference_name": grant.conference.name.localize("en"), + "conference_name": grant.conference.name, "start_date": "2 May", "end_date": "6 May", "deadline_date_time": "1 February 2023 23:59 UTC", @@ -262,7 +262,7 @@ def test_handle_grant_approved_travel_reply_sent(settings): recipient=user, placeholders={ "user_name": "Marco Acierno", - "conference_name": grant.conference.name.localize("en"), + "conference_name": grant.conference.name, "start_date": "2 May", "end_date": "6 May", "deadline_date_time": "1 February 2023 23:59 UTC", @@ -295,7 +295,7 @@ def test_send_grant_reply_waiting_list_update_email(settings): "it": "Update Grants in Waiting List", }, ) - conference_name = grant.conference.name.localize("en") + conference_name = grant.conference.name with patch("grants.tasks.EmailTemplate") as mock_email_template: send_grant_reply_waiting_list_update_email( diff --git a/backend/schedule/tasks.py b/backend/schedule/tasks.py index 302ec22ad5..ad0fbb3169 100644 --- a/backend/schedule/tasks.py +++ b/backend/schedule/tasks.py @@ -44,7 +44,7 @@ def send_schedule_invitation_email(*, schedule_item_id, is_reminder): submission_title = submission.title.localize(language_code) speaker = User.objects.get(id=speaker_id) - conference_name = conference.name.localize("en") + conference_name = conference.name email_template = EmailTemplate.objects.for_conference(conference).get_by_identifier( EmailTemplateIdentifier.proposal_scheduled @@ -81,7 +81,7 @@ def send_submission_time_slot_changed_email(*, schedule_item_id): proposal_speaker = User.objects.get(id=speaker_id) conference = schedule_item.conference - conference_name = schedule_item.conference.name.localize("en") + conference_name = schedule_item.conference.name email_template = EmailTemplate.objects.for_conference(conference).get_by_identifier( EmailTemplateIdentifier.proposal_scheduled_time_changed @@ -188,7 +188,7 @@ def send_speaker_communication_email( email_template.send_email( recipient=user, placeholders={ - "conference_name": conference.name.localize("en"), + "conference_name": conference.name, "user_name": get_name(user, "there"), "body": body.replace("\n", "
"), "subject": subject, diff --git a/backend/schedule/tests/test_tasks.py b/backend/schedule/tests/test_tasks.py index 1b9b63a907..0707548084 100644 --- a/backend/schedule/tests/test_tasks.py +++ b/backend/schedule/tests/test_tasks.py @@ -224,7 +224,7 @@ def test_send_speaker_communication_email_to_speakers_without_ticket( recipient=user, placeholders={ "user_name": "Marco Acierno", - "conference_name": conference.name.localize("en"), + "conference_name": conference.name, "body": "test body", "subject": "test subject", }, @@ -265,7 +265,7 @@ def test_send_speaker_communication_email_to_everyone( placeholders={ "user_name": "Marco Acierno", "body": "test body", - "conference_name": conference.name.localize("en"), + "conference_name": conference.name, "subject": "test subject", }, ) diff --git a/backend/schedule/tests/test_views.py b/backend/schedule/tests/test_views.py index 3290e6d16d..a4a03d32e2 100644 --- a/backend/schedule/tests/test_views.py +++ b/backend/schedule/tests/test_views.py @@ -130,7 +130,7 @@ def test_user_schedule_item_favourites_calendar(client): calendar = icalendar.Calendar.from_ical(response.content) assert ( calendar.get("x-wr-calname") - == f"Your {conference.name.localize('en')}'s Schedule" + == f"Your {conference.name}'s Schedule" ) assert len(calendar.subcomponents) == 2 @@ -148,7 +148,7 @@ def test_user_schedule_item_favourites_calendar(client): assert ( event_schedule_item_1.get("summary") - == f"[{conference.name.localize('en')}] {schedule_item_1.title}" + == f"[{conference.name}] {schedule_item_1.title}" ) assert event_schedule_item_1.get("location") == "Room Name" assert ( diff --git a/backend/schedule/video_upload.py b/backend/schedule/video_upload.py index b2d30ccd84..47c8c61bed 100644 --- a/backend/schedule/video_upload.py +++ b/backend/schedule/video_upload.py @@ -40,7 +40,7 @@ def create_video_info(schedule_item: ScheduleItem) -> VideoInfo: "abstract": schedule_item.abstract, "slug": schedule_item.slug, "elevator_pitch": schedule_item.elevator_pitch, - "conference_name": schedule_item.conference.name.localize("en"), + "conference_name": schedule_item.conference.name, "hashtags": " ".join([f"#{tag}" for tag in tags]), } diff --git a/backend/schedule/views.py b/backend/schedule/views.py index 3680e00443..ba4d7e945b 100644 --- a/backend/schedule/views.py +++ b/backend/schedule/views.py @@ -29,7 +29,7 @@ def user_schedule_item_favourites_calendar(request, conference_id, hash_user_id) .values_list("schedule_item_id", flat=True) ) - conference_name = conference.name.localize("en") + conference_name = conference.name conference_code = conference.code conference_timezone = conference.timezone diff --git a/backend/sponsors/tasks.py b/backend/sponsors/tasks.py index 4878e7ae5f..9de9e6c2da 100644 --- a/backend/sponsors/tasks.py +++ b/backend/sponsors/tasks.py @@ -24,7 +24,7 @@ def send_sponsor_brochure(sponsor_lead_id): recipient_email=sponsor_lead.email, placeholders={ "brochure_url": brochure_url, - "conference_name": conference.name.localize("en"), + "conference_name": conference.name, }, ) diff --git a/backend/sponsors/tests/test_tasks.py b/backend/sponsors/tests/test_tasks.py index 55f4890293..8173e12761 100644 --- a/backend/sponsors/tests/test_tasks.py +++ b/backend/sponsors/tests/test_tasks.py @@ -23,7 +23,7 @@ def test_send_sponsor_brochure_task(): recipient_email=sponsor_lead.email, placeholders={ "brochure_url": f"https://admin.pycon.it{view_brochure_path}?sig={signature}", - "conference_name": sponsor_lead.conference.name.localize("en"), + "conference_name": sponsor_lead.conference.name, }, ) diff --git a/backend/submissions/admin.py b/backend/submissions/admin.py index 72944c9a74..ea274ef643 100644 --- a/backend/submissions/admin.py +++ b/backend/submissions/admin.py @@ -357,7 +357,7 @@ def apply_and_notify_status_change(modeladmin, request, queryset): for submission in objs: submission.status = submission.pending_status placeholders = { - "conference_name": conference.name.localize("en"), + "conference_name": conference.name, "proposal_title": submission.title.localize("en"), "proposal_type": submission.type.name, "speaker_name": get_name(submission.speaker, "there"), diff --git a/backend/submissions/tasks.py b/backend/submissions/tasks.py index 7831613d30..87fc0954fc 100644 --- a/backend/submissions/tasks.py +++ b/backend/submissions/tasks.py @@ -69,7 +69,7 @@ def send_proposal_rejected_email(proposal_id): conference = proposal.conference language_code = proposal.languages.first().code - conference_name = proposal.conference.name.localize(language_code) + conference_name = proposal.conference.name email_template = EmailTemplate.objects.for_conference(conference).get_by_identifier( EmailTemplateIdentifier.proposal_rejected @@ -96,7 +96,7 @@ def send_proposal_in_waiting_list_email(proposal_id): conference = proposal.conference language_code = proposal.languages.first().code - conference_name = proposal.conference.name.localize(language_code) + conference_name = proposal.conference.name email_template = EmailTemplate.objects.for_conference(conference).get_by_identifier( EmailTemplateIdentifier.proposal_in_waiting_list diff --git a/backend/submissions/tests/test_admin.py b/backend/submissions/tests/test_admin.py index e89ec8817e..0079b50a56 100644 --- a/backend/submissions/tests/test_admin.py +++ b/backend/submissions/tests/test_admin.py @@ -114,7 +114,7 @@ def test_apply_and_notify_status_change(rf, mocker): email_template=proposal_accepted_template, conference=conference, placeholders={ - "conference_name": conference.name.localize("en"), + "conference_name": conference.name, "proposal_title": accepted_submission.title.localize("en"), "proposal_type": accepted_submission.type.name, "speaker_name": "Marco", @@ -126,7 +126,7 @@ def test_apply_and_notify_status_change(rf, mocker): email_template=proposal_rejected_template, conference=conference, placeholders={ - "conference_name": conference.name.localize("en"), + "conference_name": conference.name, "proposal_title": rejected_submission.title.localize("en"), "proposal_type": rejected_submission.type.name, "speaker_name": "Jane", @@ -138,7 +138,7 @@ def test_apply_and_notify_status_change(rf, mocker): email_template=proposal_in_waiting_list_template, conference=conference, placeholders={ - "conference_name": conference.name.localize("en"), + "conference_name": conference.name, "proposal_title": waiting_list_proposal.title.localize("en"), "proposal_type": waiting_list_proposal.type.name, "speaker_name": "John",