diff --git a/aircox/templates/aircox/base.html b/aircox/templates/aircox/base.html
index 42be5ce..6316705 100644
--- a/aircox/templates/aircox/base.html
+++ b/aircox/templates/aircox/base.html
@@ -113,6 +113,7 @@ Usefull context:
{% block headings %}
{% block title %}{{ title|default:"" }}{% endblock %}
+ {% include "aircox/edit-link.html" %}
{% spaceless %}
diff --git a/aircox/templates/aircox/edit-link.html b/aircox/templates/aircox/edit-link.html
new file mode 100644
index 0000000..8eb0415
--- /dev/null
+++ b/aircox/templates/aircox/edit-link.html
@@ -0,0 +1,20 @@
+{% load aircox i18n %}
+{% block user-actions-container %}
+{% has_perm page page.program.change_permission_codename simple=True as can_edit %}
+{% if user.is_authenticated and can_edit %}
+{% with request.resolver_match.view_name as view_name %}
+
+ {% if view_name in 'program-edit,bla' %}
+
+ {% else %}
+
+ {% translate 'Edit' %} 🖉
+
+ {% endif %}
+{% endwith %}
+{% endif %}
+{% endblock %}
diff --git a/aircox/templatetags/aircox.py b/aircox/templatetags/aircox.py
index c163683..60af794 100644
--- a/aircox/templatetags/aircox.py
+++ b/aircox/templatetags/aircox.py
@@ -136,3 +136,8 @@ def do_verbose_name(obj, plural=False):
if isinstance(obj, str):
return obj
return obj._meta.verbose_name_plural if plural else obj._meta.verbose_name
+
+
+@register.filter(name="edit_view")
+def do_edit_view(obj):
+ return "%s-edit" % obj.split("-")[0]