diff --git a/network-api/networkapi/mozfest/factory.py b/network-api/networkapi/mozfest/factory.py index 790000222de..870bd0c25a5 100644 --- a/network-api/networkapi/mozfest/factory.py +++ b/network-api/networkapi/mozfest/factory.py @@ -51,6 +51,7 @@ class Meta: 'gathering of educators, activists, technologists, artists, and ' 'young people dedicated to creating a better, healthier open internet.') banner_video_url = Faker('url') + banner_cta_label = 'Watch last year\'s recap video' banner_heading_text = Faker('sentence', nb_words=6, variable_nb_words=True) banner_carousel = Faker('streamfield', fields=['banner_carousel']) diff --git a/network-api/networkapi/mozfest/migrations/0024_mozfesthomepage_banner_cta_label.py b/network-api/networkapi/mozfest/migrations/0024_mozfesthomepage_banner_cta_label.py new file mode 100644 index 00000000000..ed0ecc29bdc --- /dev/null +++ b/network-api/networkapi/mozfest/migrations/0024_mozfesthomepage_banner_cta_label.py @@ -0,0 +1,18 @@ +# Generated by Django 3.1.11 on 2021-10-28 21:22 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('mozfest', '0023_auto_20211019_0025'), + ] + + operations = [ + migrations.AddField( + model_name='mozfesthomepage', + name='banner_cta_label', + field=models.CharField(blank=True, help_text='The label for the CTA that scrolls down to the banner video when clicked', max_length=250), + ), + ] diff --git a/network-api/networkapi/mozfest/models.py b/network-api/networkapi/mozfest/models.py index 4b2713b762d..99627fadb6b 100644 --- a/network-api/networkapi/mozfest/models.py +++ b/network-api/networkapi/mozfest/models.py @@ -155,6 +155,13 @@ class MozfestHomepage(MozfestPrimaryPage): help_text='A banner heading specific to the homepage' ) + banner_cta_label = models.CharField( + max_length=250, + null=False, + blank=True, + help_text='The label for the CTA that scrolls down to the banner video when clicked', + ) + banner_guide_text = models.CharField( max_length=1000, blank=True, @@ -208,6 +215,7 @@ class MozfestHomepage(MozfestPrimaryPage): FieldPanel('cta_button_label'), FieldPanel('cta_button_destination'), FieldPanel('banner_heading'), + FieldPanel('banner_cta_label'), StreamFieldPanel('banner_carousel'), FieldPanel('banner_guide_text'), FieldPanel('banner_video_url'), @@ -219,7 +227,7 @@ class MozfestHomepage(MozfestPrimaryPage): content_panels = [ field for field in all_panels if field.field_name not in [ - 'banner', 'header', 'intro', 'banner_carousel', 'banner_guide_text', + 'banner', 'header', 'intro', 'banner_carousel', 'banner_guide_text', 'banner_cta_label', 'banner_video', 'banner_video_url', ] ] @@ -251,6 +259,7 @@ class MozfestHomepage(MozfestPrimaryPage): TranslatableField('cta_button_label'), SynchronizedField('cta_button_destination'), TranslatableField('banner_heading'), + TranslatableField('banner_cta_label'), TranslatableField('banner_guide_text'), SynchronizedField('banner_video_url'), TranslatableField('banner_carousel'), diff --git a/network-api/networkapi/mozfest/templates/fragments/hero/carousel_hero.html b/network-api/networkapi/mozfest/templates/fragments/hero/carousel_hero.html index 06a682bdcd1..90052a2d284 100644 --- a/network-api/networkapi/mozfest/templates/fragments/hero/carousel_hero.html +++ b/network-api/networkapi/mozfest/templates/fragments/hero/carousel_hero.html @@ -26,8 +26,8 @@