PROBLEM REPORT
The PloneControlpanel uses the standard expression context provided by Products.CMFCore.Expression.createExprContext. The available keys are:
data = {
'object_url': object_url,
'folder_url': folder.absolute_url(),
'portal_url': portal.absolute_url(),
'object': object,
'folder': folder,
'portal': portal,
'nothing': None,
'request': getattr(portal, 'REQUEST', None),
'modules': SecureModuleImporter,
'member': member,
'here': object,
}
This is limiting the available actions and conditions in situations where a different navigation root other than the Plone site is used (e.g. multi-lingual sites, sub sites using lineage).
The PloneBaseTool already extends the expression context with new keys:
plone_portal_state
plone_context_state
plone_tools
checkPermission
context
Other tools, such as the ActionsTool, use the extended expression context.
What I did:
Change the “Action” for the site control panel configlet from string:${portal_url}/@@site-controlpanel to string:${plone_portal_state/navigation_root_url}/@@site-controlpanel
What I expect to happen:
The @@overview-controlpanel view renders the site configlet with the portal url.
What actually happened:
A traceback with:
KeyError: 'plone_portal_state'
What version of Plone/ Addons I am using:
Plone 5.2.4 without any add-ons.
PROBLEM REPORT
The
PloneControlpaneluses the standard expression context provided byProducts.CMFCore.Expression.createExprContext. The available keys are:This is limiting the available actions and conditions in situations where a different navigation root other than the Plone site is used (e.g. multi-lingual sites, sub sites using lineage).
The
PloneBaseToolalready extends the expression context with new keys:plone_portal_stateplone_context_stateplone_toolscheckPermissioncontextOther tools, such as the
ActionsTool, use the extended expression context.What I did:
Change the “Action” for the site control panel configlet from
string:${portal_url}/@@site-controlpaneltostring:${plone_portal_state/navigation_root_url}/@@site-controlpanelWhat I expect to happen:
The
@@overview-controlpanelview renders the site configlet with the portal url.What actually happened:
A traceback with:
What version of Plone/ Addons I am using:
Plone 5.2.4 without any add-ons.