mirror of
https://github.com/Hopiu/wagtail.git
synced 2026-05-09 07:54:44 +00:00
Make sure pages are unpublished before delete
Fixes #570 Conflicts: wagtail/wagtailcore/models.py
This commit is contained in:
parent
67953bccea
commit
83d848d692
2 changed files with 9 additions and 4 deletions
|
|
@ -362,10 +362,6 @@ def delete(request, page_id):
|
|||
raise PermissionDenied
|
||||
|
||||
if request.POST:
|
||||
if page.live:
|
||||
# Unpublish the page
|
||||
page.unpublish()
|
||||
|
||||
parent_id = page.get_parent().id
|
||||
page.delete()
|
||||
|
||||
|
|
|
|||
|
|
@ -9,6 +9,8 @@ from modelcluster.models import ClusterableModel
|
|||
|
||||
from django.db import models, connection, transaction
|
||||
from django.db.models import get_model, Q
|
||||
from django.db.models.signals import pre_delete
|
||||
from django.dispatch.dispatcher import receiver
|
||||
from django.http import Http404
|
||||
from django.core.cache import cache
|
||||
from django.core.handlers.wsgi import WSGIRequest
|
||||
|
|
@ -894,6 +896,13 @@ def get_navigation_menu_items():
|
|||
return []
|
||||
|
||||
|
||||
@receiver(pre_delete, sender=Page)
|
||||
def unpublish_page_before_delete(sender, instance, **kwargs):
|
||||
# Make sure pages are unpublished before deleting
|
||||
if instance.live:
|
||||
instance.unpublish()
|
||||
|
||||
|
||||
class Orderable(models.Model):
|
||||
sort_order = models.IntegerField(null=True, blank=True, editable=False)
|
||||
sort_order_field = 'sort_order'
|
||||
|
|
|
|||
Loading…
Reference in a new issue