diff --git a/network-api/networkapi/highlights/models.py b/network-api/networkapi/highlights/models.py index 65c8f8522cf..5e48b0a11e5 100644 --- a/network-api/networkapi/highlights/models.py +++ b/network-api/networkapi/highlights/models.py @@ -9,6 +9,8 @@ from wagtail.images.edit_handlers import ImageChooserPanel from wagtail.snippets.models import register_snippet +from wagtail_localize.fields import TranslatableField + from networkapi.utility.images import get_image_upload_path @@ -98,6 +100,13 @@ class Highlight(TranslatableMixin, SortableMixin): FieldPanel("expires"), ] + translatable_fields = [ + TranslatableField('title'), + TranslatableField('description'), + TranslatableField('link_label'), + TranslatableField('footer'), + ] + objects = HighlightQuerySet.as_manager() class Meta(TranslatableMixin.Meta): diff --git a/network-api/networkapi/wagtailpages/donation_modal.py b/network-api/networkapi/wagtailpages/donation_modal.py index 08ae987da16..1e01e1908df 100644 --- a/network-api/networkapi/wagtailpages/donation_modal.py +++ b/network-api/networkapi/wagtailpages/donation_modal.py @@ -5,6 +5,8 @@ from wagtail.snippets.models import register_snippet from modelcluster.fields import ParentalKey +from wagtail_localize.fields import TranslatableField + @register_snippet class DonationModal(TranslatableMixin, models.Model): @@ -41,6 +43,13 @@ class DonationModal(TranslatableMixin, models.Model): default="No thanks", ) + translatable_fields = [ + TranslatableField('header'), + TranslatableField('body'), + TranslatableField('donate_text'), + TranslatableField('dismiss_text'), + ] + def to_simple_dict(self): keys = ['name', 'header', 'body', 'donate_text', 'dismiss_text'] values = map(lambda k: getattr(self, k), keys) diff --git a/network-api/networkapi/wagtailpages/pagemodels/base.py b/network-api/networkapi/wagtailpages/pagemodels/base.py index 24b810ab210..db9bb78f33e 100644 --- a/network-api/networkapi/wagtailpages/pagemodels/base.py +++ b/network-api/networkapi/wagtailpages/pagemodels/base.py @@ -539,6 +539,12 @@ class FocusArea(TranslatableMixin, models.Model): PageChooserPanel('page'), ] + translatable_fields = [ + SynchronizedField('interest_icon'), + TranslatableField('name'), + TranslatableField('description'), + ] + def __str__(self): return self.name diff --git a/network-api/networkapi/wagtailpages/pagemodels/campaigns.py b/network-api/networkapi/wagtailpages/pagemodels/campaigns.py index 41a3938313f..09d26ad2616 100644 --- a/network-api/networkapi/wagtailpages/pagemodels/campaigns.py +++ b/network-api/networkapi/wagtailpages/pagemodels/campaigns.py @@ -68,6 +68,12 @@ class Signup(TranslatableMixin, CTA): default=False, ) + translatable_fields = [ + # Fields from the CTA model + TranslatableField('header'), + TranslatableField('description'), + ] + class Meta(TranslatableMixin.Meta): verbose_name = 'signup snippet' @@ -177,6 +183,22 @@ class Petition(TranslatableMixin, CTA): default='Thank you for signing too!', ) + translatable_fields = [ + # This models fields + SynchronizedField('requires_country_code'), + SynchronizedField('requires_postal_code'), + TranslatableField('comment_requirements'), + TranslatableField('checkbox_1'), + TranslatableField('checkbox_2'), + SynchronizedField('share_twitter'), + SynchronizedField('share_facebook'), + SynchronizedField('share_email'), + TranslatableField('thank_you'), + # Fields from the CTA model + TranslatableField('header'), + TranslatableField('description'), + ] + class Meta(TranslatableMixin.Meta): verbose_name = 'petition snippet' diff --git a/network-api/networkapi/wagtailpages/pagemodels/products.py b/network-api/networkapi/wagtailpages/pagemodels/products.py index ff842ad42a1..8c94dad7ecf 100644 --- a/network-api/networkapi/wagtailpages/pagemodels/products.py +++ b/network-api/networkapi/wagtailpages/pagemodels/products.py @@ -108,6 +108,12 @@ class BuyersGuideProductCategory(TranslatableMixin, models.Model): blank=True, ) + translatable_fields = [ + TranslatableField('name'), + TranslatableField('description'), + SynchronizedField('slug'), + ] + @property def published_product_page_count(self): return ProductPage.objects.filter(product_categories__category=self).live().count() @@ -275,6 +281,13 @@ class Update(TranslatableMixin, index.Indexed, models.Model): index.SearchField('title', partial_match=True), ] + translatable_fields = [ + SynchronizedField('source'), + SynchronizedField('title'), + SynchronizedField('author'), + SynchronizedField('snippet'), + ] + def __str__(self): return self.title diff --git a/network-api/networkapi/wagtailpages/translation.py b/network-api/networkapi/wagtailpages/translation.py index 6556d10f945..6591822a441 100644 --- a/network-api/networkapi/wagtailpages/translation.py +++ b/network-api/networkapi/wagtailpages/translation.py @@ -1,3 +1,5 @@ +# TODO: REmove this and other translation.py files. +# They aren't needed but keep coming back when we merge master into our localization branch from .models import ( ModularPage, MiniSiteNameSpace,