Hassan Alirezaei wrote:

In my own skin I'm using
<span tal:replace="request/principal/title">User</span>

with no problem for either zcml principals nor pau principals.
Thanks Darryl, I got it working. <span> did the trick!


I thought It did work Darryl But I had a small mistake in the template so the whole request/principal/title was not even parsed. Now that I fix it again with:

<span tal:replace="request/principal/title">User</span>

it still doesn't work. when I print the Principal object itself (request/principal) i get

<security proxied zope.app.security.principalregistry.Principal instance at 0xb669fccc>

for the zope.manager and

<security proxied zope.app.authentication.principalfolder.Principal instance at 0xb596d22c>

for the PAU manager which is different as expectedly different of course.
*****************************************************************************************************************
once again to the original problem, when I upload the following ZPT page through the ZMI,

----------------------
<html metal:use-macro="context/@@standard_macros/page"> </html>
--------------------

I get the following error when viewing it while logged in with a PAU principal:

--------------------
File "/usr/local/Zope-3.3.0c1/lib/python/zope/tales/expressions.py", line 217, in __call__
   return self._eval(econtext)
File "/usr/local/Zope-3.3.0c1/lib/python/zope/tales/expressions.py", line 194, in _eval
   ob = self._subexprs[-1](econtext)
File "/usr/local/Zope-3.3.0c1/lib/python/zope/tales/expressions.py", line 124, in _eval
   ob = self._traverser(ob, element, econtext)
File "/usr/local/Zope-3.3.0c1/lib/python/zope/app/pagetemplate/engine.py", line 68, in __call__
   request=request)
File "/usr/local/Zope-3.3.0c1/lib/python/zope/traversing/adapters.py", line 164, in traversePathElement
   return traversable.traverse(nm, further_path)
  - __traceback_info__: (Principal(u'isi.mas.hassy'), 'title')
File "/usr/local/Zope-3.3.0c1/lib/python/zope/traversing/adapters.py", line 52, in traverse
   raise TraversalError(subject, name)
  - __traceback_info__: (Principal(u'isi.mas.hassy'), 'title', [])
TraversalError: (Principal(u'isi.mas.hassy'), 'title')
-------------------

here is how I refer to the request/principal/title   :

---------------------------------------
      <div id="userDetails" metal:define-slot="user_details">
        <metal:block define-macro="logged_user">
          <span tal:omit-tag="" i18n:translate="">User:</span>
          <span replace="request/principal/title">User</span>
        </metal:block>
        <metal:block define-slot="login_logout">
          <metal:macro define-macro="login_logout">
            <tal:block content="structure context/@@login_logout" />
          </metal:macro>
        </metal:block>
      </div>
-------------------------------------

using <span replace="request/principal/title">User</span> will work quite fine on every normal page I have and I can get the title for all the principals (ZCML and PAU)

but when I upload the ZPT and look at it, ONLY ZCML users render without any problem. unauthenticated user in the ZCML also can not render.


Thank you again for any help.

Regards,
Hassan



_______________________________________________
Zope3-users mailing list
Zope3-users@zope.org
http://mail.zope.org/mailman/listinfo/zope3-users

Reply via email to