def trigger_notification(comment, media_entry, request):
    '''
    Send out notifications about a new comment.
    '''
    subscriptions = CommentSubscription.query.filter_by(
        media_entry_id=media_entry.id).all()

    for subscription in subscriptions:
        if not subscription.notify:
            continue

        if comment.get_author == subscription.user:
            continue

        cn = CommentNotification(
            user_id=subscription.user_id,
            subject_id=comment.id)

        cn.save()

        if subscription.send_email:
            message = generate_comment_message(
                subscription.user,
                comment,
                media_entry,
                request)

            from mediagoblin.notifications.task import email_notification_task
            email_notification_task.apply_async([cn.id, message])
示例#2
0
def trigger_notification(comment, media_entry, request):
    '''
    Send out notifications about a new comment.
    '''
    subscriptions = CommentSubscription.query.filter_by(
        media_entry_id=media_entry.id).all()

    for subscription in subscriptions:
        if not subscription.notify:
            continue

        if comment.get_author == subscription.user:
            continue

        cn = CommentNotification(user_id=subscription.user_id,
                                 subject_id=comment.id)

        cn.save()

        if subscription.send_email:
            message = generate_comment_message(subscription.user, comment,
                                               media_entry, request)

            from mediagoblin.notifications.task import email_notification_task
            email_notification_task.apply_async([cn.id, message])
def fixture_add_comment_notification(entry_id, subject_id, user_id,
                                     seen=False):
    cn = CommentNotification(user_id=user_id,
                             seen=seen,
                             subject_id=subject_id)
    cn.save()

    cn = CommentNotification.query.filter_by(id=cn.id).first()

    Session.expunge(cn)

    return cn
示例#4
0
def fixture_add_comment_notification(entry_id,
                                     subject_id,
                                     user_id,
                                     seen=False):
    cn = CommentNotification(user_id=user_id, seen=seen, subject_id=subject_id)
    cn.save()

    cn = CommentNotification.query.filter_by(id=cn.id).first()

    Session.expunge(cn)

    return cn