diff --git a/src/agenda_culturel/forms.py b/src/agenda_culturel/forms.py index d85115a..df8e694 100644 --- a/src/agenda_culturel/forms.py +++ b/src/agenda_culturel/forms.py @@ -99,9 +99,12 @@ class TagForm(ModelForm): class Meta: model = Tag fields = ["name", "description", "in_included_suggestions", "in_excluded_suggestions", "principal"] - widgets = { - "name": HiddenInput() - } + + def __init__(self, *args, **kwargs): + super().__init__(*args, **kwargs) + if "name" in kwargs["initial"]: + self.fields["name"].widget = HiddenInput() + class TagRenameForm(Form): required_css_class = 'required' diff --git a/src/agenda_culturel/templates/agenda_culturel/tag_form.html b/src/agenda_culturel/templates/agenda_culturel/tag_form.html index d0177e2..9318542 100644 --- a/src/agenda_culturel/templates/agenda_culturel/tag_form.html +++ b/src/agenda_culturel/templates/agenda_culturel/tag_form.html @@ -8,7 +8,7 @@ {% endblock %} -{% block title %}{% block og_title %}Renseignement de l'étiquette {{ form.name.value }}{% endblock %}{% endblock %} +{% block title %}{% block og_title %}{% if form.name.value %}Renseignement de l'étiquette {{ form.name.value }}{% else %}Création d'une étiquette{% endif %}{% endblock %}{% endblock %} {% block fluid %}{% endblock %} diff --git a/src/agenda_culturel/templatetags/utils_extra.py b/src/agenda_culturel/templatetags/utils_extra.py index 03cc148..afa69dd 100644 --- a/src/agenda_culturel/templatetags/utils_extra.py +++ b/src/agenda_culturel/templatetags/utils_extra.py @@ -16,14 +16,24 @@ register = template.Library() @register.filter def is_facebook_url(url): + if url is None: + return False obj = urlparse(url) - return obj.hostname.endswith("facebook.com") + if obj and obj.hostname: + return obj.hostname.endswith("facebook.com") + else: + return url @register.filter def hostname_or_socialmedia(url): + return url + if url is None: + return None obj = urlparse(url) + if obj is None: + return url hostname = obj.hostname - if hostname.endswith("facebook.com"): + if hostname and hostname.endswith("facebook.com"): if "event" in url: return _("facebook event")