human
I wrote the below code

    def decorator(view_func):
        @wraps(view_func)
        def decorated(request, *args, **kwargs):
            if (not request.user.has_hue_permission(action, app)):
                raise PopupException((_('Permission    denied    (%(action)s/%(app)s).') % {'action': action, 'app': app}))
            return view_func(request, *args, **kwargs)
        return decorated
    return decorator

What's a good function header?
assistant
#Here's a good function header.

def hue_permission_required(action, app):