Hi,

Marco wrote:
> Hello,
> 
> I am trying to grant a certain member the right to manage certain
> vocabularies.
> 
> 1. Therefore I created a global role and assigned it to the member.
> 2. I assigned the permission "Manage Vocabulary" to that role at the site
> level.
> 3. In portal_actions I changed the permission of action_manage_vocabulary
> to "Manage Vocabulary" and set the condition to "python: member and
> portal.portal_membership.checkPermission('Manage Vocabulary',
> portal.portal_actions)"

Si far so good :)

> That way I achieved that the action Vocabulary is displayed for that user.
> But if it is selected only the front page is displayed.
> 
> I also added the role to the write_ACL of the vocabulary "Subject" to allow
> the user to change it.
> 
> I think that there is some thing missing in between to allow the display of
> the vocabulary entry view to such a non-manager.
> 
> In the corresponding log entry the URL is irritating me. Why is the site
> name "site" three times in it?
> 
> 2006-09-01T18:05:58 ERROR Zope.SiteErrorLog
> https://machine/site/site/site/cpsdirectory_entry_view
> Traceback (innermost last):
>   Module ZPublisher.Publish, line 115, in publish
>   Module ZPublisher.mapply, line 88, in mapply
>   Module ZPublisher.Publish, line 41, in call_object
>   Module Shared.DC.Scripts.Binsites, line 311, in __call__
>   Module Shared.DC.Scripts.Binsites, line 348, in _bindAndExec
>   Module Products.CMFCore.FSPageTemplate, line 195, in _exec
>   Module Products.CMFCore.FSPageTemplate, line 134, in pt_render
>   Module Products.PageTemplates.PageTemplate, line 104, in pt_render
>    - <FSPageTemplate at /site/cpsdirectory_entry_view>
>   Module TAL.TALInterpreter, line 238, in __call__
>   Module TAL.TALInterpreter, line 281, in interpret
>   Module TAL.TALInterpreter, line 511, in do_setGlobal_tal
>   Module Products.PageTemplates.TALES, line 221, in evaluate
>    - URL: file:CPSDirectory/skins/cps_directory/cpsdirectory_entry_view.pt
>    - Line 1, Column 0
>    - Expression: standard:'request/id'
>    - Names:
>       {'container': <CPSDefaultSite at /site used for /site>,
>        'context': <CPSDefaultSite at /site used for /site>,
>        'default': <Products.PageTemplates.TALES.Default instance at
> 0x40d6da2c>,
>        'here': <CPSDefaultSite at /site used for /site>,
>        'loop': <Products.PageTemplates.TALES.SafeMapping object at
> 0x4a3ddb4c>,
>        'modules': <Products.PageTemplates.ZRPythonExpr._SecureModuleImporter
> instance at 0x40d9b90c>,
>        'nothing': None,
>        'options': {'args': ()},
>        'repeat': <Products.PageTemplates.TALES.SafeMapping object at
> 0x4a3ddb4c>,
>        'request': <HTTPRequest,
> URL=https://machine/site/site/site/cpsdirectory_entry_view>,
>        'root': <Application at >,
>        'template': <FSPageTemplate at /site/cpsdirectory_entry_view>,
>        'traverse_subpath': [],
>        'user': <CPSUser deradmin>}
>   Module Products.PageTemplates.Expressions, line 185, in __call__
>   Module Products.PageTemplates.Expressions, line 173, in _eval
>   Module Products.PageTemplates.Expressions, line 127, in _eval
>    - __traceback_info__: request
>   Module Products.PageTemplates.Expressions, line 320, in restrictedTraverse
>    - __traceback_info__: {'path': ['id'], 'TraversalRequestNameStack': []}
>   Module ZPublisher.HTTPRequest, line 1213, in __getitem__
> KeyError: 'id'
> 
> I hope you can help me further. Thank you in advance.

It doesn't seem to be a vocabulary issue but rather a variable missing
in the request. What's your URL ?

        J.

-- 
Julien Anguenot | Nuxeo R&D (Paris, France)
Open Source ECM - www.nuxeo.com
CPS Platform - http://www.cps-project.org
Mobile: +33 (0) 6 72 57 57 66

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
cps-devel mailing list
http://lists.nuxeo.com/mailman/listinfo/cps-devel

Reply via email to