예제 #1
0
def rename_user_handler(sender, **kwargs):
    sender.attachment_set.update(
                                 user_name=sender.username,
                                 user_name_slug=sender.username_slug,
                                )

rename_user.connect(rename_user_handler, dispatch_uid="rename_user_attachments")


def delete_user_content_handler(sender, **kwargs):
    for attachment in sender.attachment_set.iterator():
        if attachment.post_id:
            attachment.delete_from_post()
        attachment.delete()

delete_user_content.connect(delete_user_content_handler, dispatch_uid="delete_user_attachments")


def move_forum_content_handler(sender, **kwargs):
    sender.attachment_set.update(forum=kwargs['move_to'])

move_forum_content.connect(move_forum_content_handler, dispatch_uid="move_forum_attachments")


def move_thread_handler(sender, **kwargs):
    sender.attachment_set.update(forum=kwargs['move_to'])

move_thread.connect(move_thread_handler, dispatch_uid="move_thread_attachments")


def move_post_handler(sender, **kwargs):
예제 #2
0
def delete_user_content_handler(sender, **kwargs):
    from misago.models import Thread

    threads = []
    for post in sender.post_set.distinct().values("thread_id").iterator():
        if not post["thread_id"] in threads:
            threads.append(post["thread_id"])

    sender.post_set.all().delete()

    for thread in Thread.objects.filter(id__in=threads).iterator():
        thread.sync()
        thread.save(force_update=True)


delete_user_content.connect(delete_user_content_handler, dispatch_uid="delete_user_posts")


def move_forum_content_handler(sender, **kwargs):
    Post.objects.filter(forum=sender).update(forum=kwargs["move_to"])


move_forum_content.connect(move_forum_content_handler, dispatch_uid="move_forum_posts")


def move_thread_handler(sender, **kwargs):
    Post.objects.filter(thread=sender).update(forum=kwargs["move_to"])


move_thread.connect(move_thread_handler, dispatch_uid="move_thread_posts")
예제 #3
0
                reported_post.reports = None
                reported_post.save(force_update=True)
                reported_post.thread.replies_reported -= 1
                reported_post.thread.save(force_update=True)


pre_delete.connect(report_delete_handler,
                   dispatch_uid="sync_post_reports_on_delete")


def delete_user_content_handler(sender, **kwargs):
    for thread in Thread.objects.filter(start_poster=sender):
        thread.delete()


delete_user_content.connect(delete_user_content_handler,
                            dispatch_uid="delete_user_threads")


def move_forum_content_handler(sender, **kwargs):
    Thread.objects.filter(forum=sender).update(forum=kwargs['move_to'])


move_forum_content.connect(move_forum_content_handler,
                           dispatch_uid="move_forum_threads")


def delete_user_handler(sender, instance, using, **kwargs):
    from misago.models import User
    if sender == User:
        for thread in instance.private_thread_set.all():
            thread.participants.remove(instance)
예제 #4
0
def delete_user_content_handler(sender, **kwargs):
    from misago.models import Thread

    threads = []
    for post in sender.post_set.distinct().values('thread_id').iterator():
        if not post['thread_id'] in threads:
            threads.append(post['thread_id'])

    sender.post_set.all().delete()

    for thread in Thread.objects.filter(id__in=threads):
        thread.sync()
        thread.save(force_update=True)


delete_user_content.connect(delete_user_content_handler,
                            dispatch_uid="delete_user_posts")


def move_forum_content_handler(sender, **kwargs):
    Post.objects.filter(forum=sender).update(forum=kwargs['move_to'])


move_forum_content.connect(move_forum_content_handler,
                           dispatch_uid="move_forum_posts")


def move_thread_handler(sender, **kwargs):
    Post.objects.filter(thread=sender).update(forum=kwargs['move_to'])


move_thread.connect(move_thread_handler, dispatch_uid="move_thread_posts")
예제 #5
0
            reported_post = thread.report_for
            if reported_post.reported:
                reported_post.reported = False
                reported_post.reports = None
                reported_post.save(force_update=True)
                reported_post.thread.replies_reported -= 1
                reported_post.thread.save(force_update=True)

pre_delete.connect(report_delete_handler, dispatch_uid="sync_post_reports_on_delete")


def delete_user_content_handler(sender, **kwargs):
    for thread in Thread.objects.filter(start_poster=sender):
        thread.delete()

delete_user_content.connect(delete_user_content_handler, dispatch_uid="delete_user_threads")


def move_forum_content_handler(sender, **kwargs):
    Thread.objects.filter(forum=sender).update(forum=kwargs['move_to'])

move_forum_content.connect(move_forum_content_handler, dispatch_uid="move_forum_threads")


def delete_user_handler(sender, instance, using, **kwargs):
    from misago.models import User
    if sender == User:
        for thread in instance.private_thread_set.all():
            thread.participants.remove(instance)
            if not thread.participants.count():
                thread.delete()
예제 #6
0
        user_name_slug=sender.username_slug,
    )


rename_user.connect(rename_user_handler,
                    dispatch_uid="rename_user_attachments")


def delete_user_content_handler(sender, **kwargs):
    for attachment in sender.attachment_set.iterator():
        if attachment.post_id:
            attachment.delete_from_post()
        attachment.delete()


delete_user_content.connect(delete_user_content_handler,
                            dispatch_uid="delete_user_attachments")


def move_forum_content_handler(sender, **kwargs):
    sender.attachment_set.update(forum=kwargs['move_to'])


move_forum_content.connect(move_forum_content_handler,
                           dispatch_uid="move_forum_attachments")


def move_thread_handler(sender, **kwargs):
    sender.attachment_set.update(forum=kwargs['move_to'])


move_thread.connect(move_thread_handler,