diff --git a/bedrock/firefox/templates/firefox/whatsnew/whatsnew-fx135-eu.html b/bedrock/firefox/templates/firefox/whatsnew/whatsnew-fx135-eu.html new file mode 100644 index 00000000000..c1543dfd7fe --- /dev/null +++ b/bedrock/firefox/templates/firefox/whatsnew/whatsnew-fx135-eu.html @@ -0,0 +1,45 @@ +{# + This Source Code Form is subject to the terms of the Mozilla Public + License, v. 2.0. If a copy of the MPL was not distributed with this + file, You can obtain one at https://mozilla.org/MPL/2.0/. +#} + +{% extends "firefox/whatsnew/base.html" %} + +{% block page_css %} + {{ css_bundle('firefox_whatsnew_135') }} +{% endblock %} + +{% set utm_params = 'utm_source=www.mozilla.org&utm_medium=referral&utm_campaign=wnp135-shortcuts' %} + +{% if LANG == 'de' %} + {% set main_title = 'Ein Zoom auf die Funktionen von Firefox' %} + {% set main_tagline = 'Navigiere dich mit Firefox schnell durchs Web und nutze cmd/Strg + und cmd/Strg -, um unkompliziert Inhalte zu vergrößern oder zu verkleinern.' %} + {% set main_cta = 'Entdecke weitere Tastenkombinationen' %} +{% elif LANG == 'fr' %} + {% set main_title = 'Zoomez sur les fonctionnalités de Firefox' %} + {% set main_tagline = 'Naviguez sur Firefox rapidement avec cmd/ctrl + et cmd/ctrl - pour facilement redimensionner le contenu d’une page web.' %} + {% set main_cta = 'Découvrir plus de raccourcis' %} +{% else %} + {% set main_title = 'Zoom in to Firefox functions' %} + {% set main_tagline = 'Navigate Firefox quickly and use cmd/ctrl + and cmd/ctrl - to easily resize content, making it larger or smaller.' %} + {% set main_cta = 'Find more shortcuts' %} +{% endif %} + +{% set main_cta_link = 'https://support.mozilla.org/kb/keyboard-shortcuts-perform-firefox-tasks-quickly?' + utm_params %} + +{% block wnp_content %} +
+
+ +

{{ main_title }}

+

{{ main_tagline | safe }}

+ {{ main_cta }} +
+
+ + +{% endblock %} diff --git a/bedrock/firefox/tests/test_base.py b/bedrock/firefox/tests/test_base.py index 77160917ab0..6bb9c36072d 100644 --- a/bedrock/firefox/tests/test_base.py +++ b/bedrock/firefox/tests/test_base.py @@ -1164,6 +1164,46 @@ def test_fx_134_0_0_es_es(self, render_mock): # end 134.0 whatsnew tests + # begin 135.0 whatsnew tests + + @override_settings(DEV=True) + def test_fx_135_0_0_fr(self, render_mock): + """Should use whatsnew-fx135-eu.html template for fr locale""" + req = self.rf.get("/firefox/whatsnew/") + req.locale = "fr" + self.view(req, version="135.0") + template = render_mock.call_args[0][1] + assert template == ["firefox/whatsnew/whatsnew-fx135-eu.html"] + + @override_settings(DEV=True) + def test_fx_135_0_0_de(self, render_mock): + """Should use whatsnew-fx135-eu.html template for de locale""" + req = self.rf.get("/firefox/whatsnew/") + req.locale = "de" + self.view(req, version="135.0") + template = render_mock.call_args[0][1] + assert template == ["firefox/whatsnew/whatsnew-fx135-eu.html"] + + @override_settings(DEV=True) + def test_fx_135_0_0_en_gb(self, render_mock): + """Should use whatsnew-fx135-eu.html template for en-GB locale""" + req = self.rf.get("/firefox/whatsnew/") + req.locale = "en-GB" + self.view(req, version="135.0") + template = render_mock.call_args[0][1] + assert template == ["firefox/whatsnew/whatsnew-fx135-eu.html"] + + @override_settings(DEV=True) + def test_fx_135_0_0_es_es(self, render_mock): + """Should use default WNP template for other locales""" + req = self.rf.get("/firefox/whatsnew/") + req.locale = "es-ES" + self.view(req, version="135.0") + template = render_mock.call_args[0][1] + assert template == ["firefox/whatsnew/index.html"] + + # end 135.0 whatsnew tests + @patch("bedrock.firefox.views.l10n_utils.render", return_value=HttpResponse()) class TestFirstRun(TestCase): diff --git a/bedrock/firefox/views.py b/bedrock/firefox/views.py index b6d6ebf664f..24a537a42bb 100644 --- a/bedrock/firefox/views.py +++ b/bedrock/firefox/views.py @@ -505,6 +505,7 @@ class WhatsnewView(L10nTemplateView): "firefox/whatsnew/whatsnew-fx134-gb.html": ["firefox/whatsnew/whatsnew"], "firefox/whatsnew/whatsnew-fx134-de.html": ["firefox/whatsnew/whatsnew"], "firefox/whatsnew/whatsnew-fx134-fr.html": ["firefox/whatsnew/whatsnew"], + "firefox/whatsnew/whatsnew-fx135-eu.html": ["firefox/whatsnew/whatsnew"], } # specific templates that should not be rendered in @@ -616,6 +617,11 @@ def get_template_names(self): template = "firefox/whatsnew/index.html" else: template = "firefox/whatsnew/index.html" + elif version.startswith("135."): + if locale in ["de", "fr", "en-GB"]: + template = "firefox/whatsnew/whatsnew-fx135-eu.html" + else: + template = "firefox/whatsnew/index.html" elif version.startswith("134."): if locale == "en-US": template = "firefox/whatsnew/whatsnew-fx134-us.html" diff --git a/media/css/firefox/whatsnew/whatsnew-135.scss b/media/css/firefox/whatsnew/whatsnew-135.scss new file mode 100644 index 00000000000..371a9698b5e --- /dev/null +++ b/media/css/firefox/whatsnew/whatsnew-135.scss @@ -0,0 +1,25 @@ +// This Source Code Form is subject to the terms of the Mozilla Public +// License, v. 2.0. If a copy of the MPL was not distributed with this +// file, You can obtain one at https://mozilla.org/MPL/2.0/. + +@import 'includes/base'; +@import '~@mozilla-protocol/core/protocol/css/includes/lib'; +@import '~@mozilla-protocol/core/protocol/css/components/notification-bar'; +@import 'includes/dark-mode'; +@import 'includes/mofo-donate-cta'; + +.mzp-l-content.mzp-t-content-sm { + max-width: 450px; // protocol is 432px, we need slightly bigger +} + +.wnp-content-main { + text-align: center; +} + +.wnp-main-title { + line-height: 1.01; +} + +.wnp-main-image { + margin-bottom: $spacing-lg; +} diff --git a/media/img/l10n/de/firefox/wnp-135/shortcuts.svg b/media/img/l10n/de/firefox/wnp-135/shortcuts.svg new file mode 100644 index 00000000000..06c1aa23f4e --- /dev/null +++ b/media/img/l10n/de/firefox/wnp-135/shortcuts.svg @@ -0,0 +1 @@ + diff --git a/media/img/l10n/en-US/firefox/wnp-135/shortcuts.svg b/media/img/l10n/en-US/firefox/wnp-135/shortcuts.svg new file mode 100644 index 00000000000..23b957e004b --- /dev/null +++ b/media/img/l10n/en-US/firefox/wnp-135/shortcuts.svg @@ -0,0 +1 @@ + diff --git a/media/static-bundles.json b/media/static-bundles.json index 863e8488944..f03a0341de6 100644 --- a/media/static-bundles.json +++ b/media/static-bundles.json @@ -441,6 +441,12 @@ ], "name": "firefox_whatsnew_135beta" }, + { + "files": [ + "css/firefox/whatsnew/whatsnew-135.scss" + ], + "name": "firefox_whatsnew_135" + }, { "files": [ "css/firefox/firefox-20th/firefox-20th.scss"