     transaction: (t, cb) ->
         async.waterfall [(cb2) =>
             async.forEach @req, (update, cb3) =>
+                # First, we complete subscriptions node items
+
                 m = update.node.match(NODE_OWNER_TYPE_REGEXP)
                 # Fill in missing subscriptions node items
                 if update.type is 'items' and m?[2] is 'subscriptions'

            if err
                return cb err

            affiliations = rsm.cropResults affiliations, 'user'
            cb null, affiliations


                   listeners.indexOf(update.user) < 0
                    listeners.push update.user

            cb2 null, listeners
        , (listeners, cb2) =>
            moderatorListeners = []
            otherListeners = []
            async.forEach listeners, (listener, cb3) =>
                t.getAffiliation @req.node, listener, (err, affiliation) ->
                    if err
                        return cb3 err

                    if canModerate affiliation
                        moderatorListeners.push listener
                    else
                        otherListeners.push listener
                    cb3()
            , (err) =>
                cb2 err, moderatorListeners, otherListeners
        , (moderatorListeners, otherListeners, cb2) =>
            # Send out through backends
            if moderatorListeners.length > 0
                for listener in moderatorListeners
                    notification = Object.create(@req)
                    notification.listener = listener
                    @router.notify notification
            if otherListeners.length > 0
                req = @req.filter (update) ->
                    switch update.type
                        when 'subscription'
                            @filterSubscription update
                        when 'affiliation'
                            @filterAffiliation update
                        else
                            yes
                # Any left after filtering? Don't send empty
                # notification when somebody got banned.
                if req.length > 0
                    for listener in moderatorListeners
                        notification = Object.create(req)
                        notification.listener = listener
                        @router.notify notification
            cb2()
        ], cb

class ModeratorNotify extends ModelOperation
