diff --git a/src/pretix/control/forms/organizer.py b/src/pretix/control/forms/organizer.py index 6317aa12e..b4b43775f 100644 --- a/src/pretix/control/forms/organizer.py +++ b/src/pretix/control/forms/organizer.py @@ -298,6 +298,7 @@ class OrganizerSettingsForm(SettingsForm): 'giftcard_expiry_years', 'locales', 'region', + 'meta_noindex', 'event_team_provisioning', 'primary_color', 'theme_color_success', diff --git a/src/pretix/control/templates/pretixcontrol/event/settings.html b/src/pretix/control/templates/pretixcontrol/event/settings.html index cec8e4ac1..2185e33a5 100644 --- a/src/pretix/control/templates/pretixcontrol/event/settings.html +++ b/src/pretix/control/templates/pretixcontrol/event/settings.html @@ -231,7 +231,10 @@ {% bootstrap_field sform.display_net_prices layout="control" %} {% bootstrap_field sform.show_variations_expanded layout="control" %} {% bootstrap_field sform.hide_sold_out layout="control" %} - {% bootstrap_field sform.meta_noindex layout="control" %} + {% url "control:organizer.edit" organizer=request.organizer.slug as org_url %} + {% propagated request.event org_url "meta_noindex" %} + {% bootstrap_field sform.meta_noindex layout="control" %} + {% endpropagated %} {% if sform.frontpage_subevent_ordering %} {% bootstrap_field sform.frontpage_subevent_ordering layout="control" %} {% endif %} diff --git a/src/pretix/control/templates/pretixcontrol/organizers/edit.html b/src/pretix/control/templates/pretixcontrol/organizers/edit.html index 1c81eee19..d1e6a8361 100644 --- a/src/pretix/control/templates/pretixcontrol/organizers/edit.html +++ b/src/pretix/control/templates/pretixcontrol/organizers/edit.html @@ -45,6 +45,7 @@ {% bootstrap_field sform.event_list_type layout="control" %} {% bootstrap_field sform.event_list_availability layout="control" %} {% bootstrap_field sform.organizer_link_back layout="control" %} + {% bootstrap_field sform.meta_noindex layout="control" %}
{% trans "Localization" %} diff --git a/src/pretix/presale/templates/pretixpresale/organizers/base.html b/src/pretix/presale/templates/pretixpresale/organizers/base.html index 4619cdc4b..d58ae1ce8 100644 --- a/src/pretix/presale/templates/pretixpresale/organizers/base.html +++ b/src/pretix/presale/templates/pretixpresale/organizers/base.html @@ -7,6 +7,13 @@ {% block thetitle %} {% block title %}{% endblock %}{% if url_name != "organizer.index" %} :: {% endif %}{{ organizer.name }} {% endblock %} +{% block custom_header %} + {% if organizer.settings.meta_noindex %} + + {% endif %} + + {{ block.super }} +{% endblock %} {% block above %} {% if organizer.settings.locales|length > 1 or request.organizer.settings.customer_accounts %} {% if organizer.settings.theme_color_background|upper != "#FFFFFF" or organizer.settings.organizer_logo_image_large %} diff --git a/src/pretix/presale/views/event.py b/src/pretix/presale/views/event.py index 14efb8778..3a292a6e1 100644 --- a/src/pretix/presale/views/event.py +++ b/src/pretix/presale/views/event.py @@ -635,6 +635,8 @@ class EventIcalDownload(EventViewMixin, View): resp['Content-Disposition'] = 'attachment; filename="{}-{}-{}.ics"'.format( event.organizer.slug, event.slug, subevent.pk if subevent else '0', ) + if event.settings.meta_noindex: + resp['X-Robots-Tag'] = 'noindex' return resp diff --git a/src/pretix/presale/views/organizer.py b/src/pretix/presale/views/organizer.py index e8ef4b018..9fd209e28 100644 --- a/src/pretix/presale/views/organizer.py +++ b/src/pretix/presale/views/organizer.py @@ -765,4 +765,6 @@ class OrganizerIcalDownload(OrganizerViewMixin, View): resp['Content-Disposition'] = 'attachment; filename="{}.ics"'.format( request.organizer.slug ) + if request.organizer.settings.meta_noindex: + resp['X-Robots-Tag'] = 'noindex' return resp