From c6742cd69487dbe6660c09c7c959eebc340db4d7 Mon Sep 17 00:00:00 2001 From: Nick Smith Date: Fri, 4 Jul 2014 11:06:55 +0100 Subject: [PATCH] Register permissions for images, docs, and registered snippets --- wagtail/wagtaildocs/wagtail_hooks.py | 9 +++++++++ wagtail/wagtailimages/wagtail_hooks.py | 9 +++++++++ wagtail/wagtailsnippets/wagtail_hooks.py | 9 +++++++++ 3 files changed, 27 insertions(+) diff --git a/wagtail/wagtaildocs/wagtail_hooks.py b/wagtail/wagtaildocs/wagtail_hooks.py index a6e00f8db..10622fbce 100644 --- a/wagtail/wagtaildocs/wagtail_hooks.py +++ b/wagtail/wagtaildocs/wagtail_hooks.py @@ -3,6 +3,8 @@ from django.conf.urls import include, url from django.core import urlresolvers from django.utils.html import format_html, format_html_join from django.utils.translation import ugettext_lazy as _ +from django.contrib.contenttypes.models import ContentType +from django.contrib.auth.models import Permission from wagtail.wagtailcore import hooks from wagtail.wagtailadmin.menu import MenuItem @@ -43,3 +45,10 @@ def editor_js(): urlresolvers.reverse('wagtaildocs_chooser') ) hooks.register('insert_editor_js', editor_js) + + +def register_permissions(): + document_content_type = ContentType.objects.get(app_label='wagtaildocs', model='document') + document_permissions = Permission.objects.filter(content_type = document_content_type) + return document_permissions +hooks.register('register_permissions', register_permissions) diff --git a/wagtail/wagtailimages/wagtail_hooks.py b/wagtail/wagtailimages/wagtail_hooks.py index 611e18990..912b6bbf4 100644 --- a/wagtail/wagtailimages/wagtail_hooks.py +++ b/wagtail/wagtailimages/wagtail_hooks.py @@ -3,6 +3,8 @@ from django.conf.urls import include, url from django.core import urlresolvers from django.utils.html import format_html, format_html_join from django.utils.translation import ugettext_lazy as _ +from django.contrib.auth.models import Permission +from django.contrib.contenttypes.models import ContentType from wagtail.wagtailcore import hooks from wagtail.wagtailadmin.menu import MenuItem @@ -43,3 +45,10 @@ def editor_js(): urlresolvers.reverse('wagtailimages_chooser') ) hooks.register('insert_editor_js', editor_js) + + +def register_permissions(): + image_content_type = ContentType.objects.get(app_label='wagtailimages', model='image') + image_permissions = Permission.objects.filter(content_type = image_content_type) + return image_permissions +hooks.register('register_permissions', register_permissions) diff --git a/wagtail/wagtailsnippets/wagtail_hooks.py b/wagtail/wagtailsnippets/wagtail_hooks.py index 501f29b31..36ebdaca4 100644 --- a/wagtail/wagtailsnippets/wagtail_hooks.py +++ b/wagtail/wagtailsnippets/wagtail_hooks.py @@ -3,12 +3,14 @@ from django.conf.urls import include, url from django.core import urlresolvers from django.utils.html import format_html from django.utils.translation import ugettext_lazy as _ +from django.contrib.auth.models import Permission from wagtail.wagtailcore import hooks from wagtail.wagtailadmin.menu import MenuItem from wagtail.wagtailsnippets import urls from wagtail.wagtailsnippets.permissions import user_can_edit_snippets +from wagtail.wagtailsnippets.models import get_snippet_content_types def register_admin_urls(): @@ -36,3 +38,10 @@ def editor_js(): urlresolvers.reverse('wagtailsnippets_choose_generic') ) hooks.register('insert_editor_js', editor_js) + + +def register_permissions(): + snippet_content_types = get_snippet_content_types() + snippet_permissions = Permission.objects.filter(content_type__in=snippet_content_types) + return snippet_permissions +hooks.register('register_permissions', register_permissions)