[Zope-CMF] Re: undo_form -> no content

Dieter Maurer dieter at handshake.de
Thu Aug 4 14:14:01 EDT 2005


Florent Guillaume wrote at 2005-8-4 17:03 +0200:
>I'm willing to fix it if someone explains *why* the patch is needed.
>What code actually adds a username and space in the path. Is that part of
>what's written in the transaction description? Is it something CMF adds?

It is "Zope.App.startup.TransactionManager.recordMetaData".

In Zope 2.7.2 (thus, a bit old but maybe still valid), the
code looks like:

        auth_user=request_get('AUTHENTICATED_USER',None)
        if auth_user is not None:
            try:
                auth_folder = auth_user.aq_parent
            except AttributeError:
                # Most likely some product forgot to call __of__()
                # on the user object.
                LOG('AccessControl', WARNING,
                    'A user object of type %s has no aq_parent.'
                    % str(type(auth_user)))
                auth_path = request_get('AUTHENTICATION_PATH')
            else:
                auth_path = '/'.join(auth_folder.getPhysicalPath()[1:-1])

            T.setUser(auth_user.getId(), auth_path)

with "ZODB.Transaction.setUser(user_name, path='/')" defined by
        self.user="%s %s" % (path, user_name)

Thus, if "path" is empty, you get " <user_name>".

-- 
Dieter


More information about the Zope-CMF mailing list