Überschriebenes Viewlet nochmals überschreibe n
Matthias Beyer <[email protected]>
| Newsgroups | gmane.comp.web.zope.german |
|---|---|
| Message-ID | <[email protected]> |
Hallo zusammen,
in meinem ThemeProduct "dd.theme" überschreibe ich das plone.logo
Viewlet um ein eigenes PT zu nutzen wie folgt:
<browser:viewlet
name="plone.logo"
manager="plone.app.layout.viewlets.interfaces.IPortalHeader"
layer=".interfaces.IThemeSpecific"
class=".viewlets.DynaLogoViewlet"
permission="zope2.View"/>
Das selbe ThemeProduct soll nun auch innerhalb einer anderen PloneSite
genutzt werden, aber nicht das eben angepasste LogoViewlet. Stattdessen
soll wieder das Orignale, von Plone mitgelieferte, LogoViewlet genutzt
werden. Am ThemeProduct "dd.theme" soll nichts verändert werden. Also
habe ich ein weiteres Product "dd.policy" erstellt und versucht die
initial überschriebene Konfiguration erneut zu überschreiben um wieder
den Ausgangszustand herzustellen, bin aber gescheitert.
buildout.cfg:
eggs =
Plone
dd.theme
dd.policy
zcml =
dd.theme
dd.policy
dd.policy-overrides
dd.policy overrides.zcml:
<browser:viewlet
name="plone.logo"
manager="plone.app.layout.viewlets.interfaces.IPortalHeader"
class="plone.app.layout.viewlets.common.LogoViewlet"
permission="zope2.View"/>
Ergebnis: Plone startet ordnungsgemäß, ignoriert aber die Anweisungen.
Wenn ich innerhalb der "dd.policy" configure.zcml die Anweisung
<includeOverrides file="overrides.zcml"/>
hinzufüge, dann:
raise ConfigurationConflictError(conflicts)
zope.configuration.config.ConfigurationConflictError: Conflicting
configuration actions
For: ('viewlet', <InterfaceClass zope.interface.Interface>,
<InterfaceClass zope.publisher.interfaces.browser.IDefaultBrowserLayer>,
<InterfaceClass zope.browser.interfaces.IBrowserView>, <InterfaceClass
plone.app.layout.viewlets.interfaces.IPortalHeader>, u'plone.logo')
File
".../buildout-cache/eggs/plone.app.layout-2.0.9-py2.6.egg/plone/app/layout/viewlets/configure.zcml",
line 133.4-138.10
<browser:viewlet
name="plone.logo"
manager=".interfaces.IPortalHeader"
class=".common.LogoViewlet"
permission="zope2.View"
/>
File ".../dd.theme/dd/theme/browser/configure.zcml", line 88.1-93.27
<browser:viewlet
name="plone.logo"
manager="plone.app.layout.viewlets.interfaces.IPortalHeader"
class=".viewlets.DynaLogoViewlet"
permission="zope2.View"/>
File ".../dd.policy/dd/policy/overrides.zcml", line 9.1-13.27
<browser:viewlet
name="plone.logo"
manager="plone.app.layout.viewlets.interfaces.IPortalHeader"
class="plone.app.layout.viewlets.common.LogoViewlet"
permission="zope2.View"/>
Nutze Plone4
Danke für Hilfe. Grüße, Matthias
_______________________________________________
zope mailing list
[email protected]
https://mail.dzug.org/mailman/listinfo/zope