def _process_mass_form(f):
    "Pre-process request to handle mass action form for Messages"

    def wrap(request, *args, **kwargs):
        "Wrap"
        user = request.user.profile
        if 'massform' in request.POST:
            for key in request.POST:
                if 'mass-message' in key:
                    try:
                        message = Message.objects.get(pk=request.POST[key])
                        form = MassActionForm(
                            user, request.POST, instance=message)
                        if form.is_valid() and user.has_permission(message, mode='w'):
                            form.save()
                    except Exception:
                        pass
            try:
                form = MassActionForm(request.user.profile, request.POST)
                if form.is_valid():
                    form.save()
            except Exception:
                pass

        return f(request, *args, **kwargs)

    wrap.__doc__ = f.__doc__
    wrap.__name__ = f.__name__

    return wrap
dataset/ETHPy150Open treeio/treeio/treeio/messaging/views.py/_process_mass_form/original