def wiki_revision_delete_handler(sender, instance, **kwargs): # If a revision is somehow deleted, but the article still has a current # revision update LatestArtcileRevision to match that one if instance.article and instance.article.current_revision: LatestArticleRevision.copy_article_revision( instance.article.current_revision )
def wiki_article_handler(sender, instance, created, **kwargs): revision = instance.current_revision if revision: # Copy the revision, but if it is deleted remove LatestArticleRevisions if not revision.deleted: LatestArticleRevision.copy_article_revision(revision) else: LatestArticleRevision.purge(instance)
def wiki_revision_handler(sender, instance, created, **kwargs): # Add wiki article edit to user's Activity Stream if instance.user: action.send(instance.user, verb='edited the wiki article', target=instance.article) # Create/Update LatestArticleRevision LatestArticleRevision.copy_article_revision(instance)