Murray Cumming wrote: > What is the gnome_slots portlet? > > In the current version from svn when I try installing the theme I get the following error, with full traceback:
2008-03-04 12:41:12 ERROR Zope.SiteErrorLog http://localhost:8080/wgo/prefs_install_products_form Traceback (innermost last): Module ZPublisher.Publish, line 119, in publish Module ZPublisher.mapply, line 88, in mapply Module ZPublisher.Publish, line 42, in call_object Module Shared.DC.Scripts.Bindings, line 313, in __call__ Module Shared.DC.Scripts.Bindings, line 350, in _bindAndExec Module Products.CMFCore.FSPageTemplate, line 216, in _exec Module Products.CMFCore.FSPageTemplate, line 155, in pt_render Module Products.PageTemplates.PageTemplate, line 89, in pt_render Module zope.pagetemplate.pagetemplate, line 117, in pt_render - Warning: Macro expansion failed - Warning: exceptions.KeyError: 'scripts' Module zope.tal.talinterpreter, line 271, in __call__ Module zope.tal.talinterpreter, line 346, in interpret Module zope.tal.talinterpreter, line 891, in do_useMacro Module zope.tal.talinterpreter, line 346, in interpret Module zope.tal.talinterpreter, line 536, in do_optTag_tal Module zope.tal.talinterpreter, line 521, in do_optTag Module zope.tal.talinterpreter, line 516, in no_tag Module zope.tal.talinterpreter, line 346, in interpret Module zope.tal.talinterpreter, line 891, in do_useMacro Module zope.tal.talinterpreter, line 346, in interpret Module zope.tal.talinterpreter, line 536, in do_optTag_tal Module zope.tal.talinterpreter, line 521, in do_optTag Module zope.tal.talinterpreter, line 516, in no_tag Module zope.tal.talinterpreter, line 346, in interpret Module zope.tal.talinterpreter, line 957, in do_defineSlot Module zope.tal.talinterpreter, line 346, in interpret Module zope.tal.talinterpreter, line 854, in do_condition Module Products.PageTemplates.Expressions, line 211, in evaluateBoolean Module zope.tales.tales, line 696, in evaluate - URL: file:/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/src/gnome.theme/gnome/theme/skins/gnome_theme_custom_templates/main_template.pt - Line 125, Column 8 - Expression: <PathExpr standard:u'here/gnome_slots'> - Names: {'container': <PloneSite at /wgo>, 'context': <PloneSite at /wgo>, 'default': <object object at 0xb7d70540>, 'here': <PloneSite at /wgo>, 'loop': {}, 'nothing': None, 'options': {'args': ()}, 'repeat': <Products.PageTemplates.Expressions.SafeMapping object at 0xd87062c>, 'request': <HTTPRequest, URL=http://localhost:8080/wgo/prefs_install_products_form>, 'root': <Application at >, 'template': <FSPageTemplate at /wgo/prefs_install_products_form>, 'traverse_subpath': [], 'user': <PropertiedUser 'admin'>} Module zope.tales.expressions, line 217, in __call__ Module Products.PageTemplates.Expressions, line 153, in _eval Module zope.tales.expressions, line 124, in _eval Module Products.PageTemplates.Expressions, line 80, in boboAwareZopeTraverse Module OFS.Traversable, line 301, in restrictedTraverse Module OFS.Traversable, line 284, in unrestrictedTraverse - __traceback_info__: ([], 'gnome_slots') KeyError: 'gnome_slots' 2008-03-04 12:41:12 ERROR root Exception while rendering an error message Traceback (most recent call last): File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/OFS/SimpleItem.py", line 227, in raise_standardErrorMessage v = s(**kwargs) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/plone/CMFCore/FSPythonScript.py", line 140, in __call__ return Script.__call__(self, *args, **kw) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/Shared/DC/Scripts/Bindings.py", line 313, in __call__ return self._bindAndExec(args, kw, None) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/Shared/DC/Scripts/Bindings.py", line 350, in _bindAndExec return self._exec(bound_data, args, kw) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/plone/CMFCore/FSPythonScript.py", line 196, in _exec result = f(*args, **kw) File "Script (Python)", line 34, in standard_error_message File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/Shared/DC/Scripts/Bindings.py", line 313, in __call__ return self._bindAndExec(args, kw, None) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/Shared/DC/Scripts/Bindings.py", line 350, in _bindAndExec return self._exec(bound_data, args, kw) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/plone/CMFCore/FSPageTemplate.py", line 216, in _exec result = self.pt_render(extra_context=bound_names) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/plone/CMFCore/FSPageTemplate.py", line 155, in pt_render result = FSPageTemplate.inheritedAttribute('pt_render')( File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/Products/PageTemplates/PageTemplate.py", line 89, in pt_render return super(PageTemplate, self).pt_render(c, source=source) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/zope/pagetemplate/pagetemplate.py", line 117, in pt_render strictinsert=0, sourceAnnotations=sourceAnnotations)() File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/zope/tal/talinterpreter.py", line 271, in __call__ self.interpret(self.program) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/zope/tal/talinterpreter.py", line 346, in interpret handlers[opcode](self, args) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/zope/tal/talinterpreter.py", line 891, in do_useMacro self.interpret(macro) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/zope/tal/talinterpreter.py", line 346, in interpret handlers[opcode](self, args) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/zope/tal/talinterpreter.py", line 536, in do_optTag_tal self.do_optTag(stuff) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/zope/tal/talinterpreter.py", line 521, in do_optTag return self.no_tag(start, program) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/zope/tal/talinterpreter.py", line 516, in no_tag self.interpret(program) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/zope/tal/talinterpreter.py", line 346, in interpret handlers[opcode](self, args) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/zope/tal/talinterpreter.py", line 957, in do_defineSlot self.interpret(block) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/zope/tal/talinterpreter.py", line 346, in interpret handlers[opcode](self, args) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/zope/tal/talinterpreter.py", line 854, in do_condition if not self.tal or self.engine.evaluateBoolean(condition): File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/Products/PageTemplates/Expressions.py", line 211, in evaluateBoolean value = self.evaluate(expr) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/zope/tales/tales.py", line 696, in evaluate return expression(self) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/zope/tales/expressions.py", line 217, in __call__ return self._eval(econtext) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/Products/PageTemplates/Expressions.py", line 153, in _eval ob = self._subexprs[-1](econtext) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/zope/tales/expressions.py", line 124, in _eval ob = self._traverser(ob, element, econtext) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/Products/PageTemplates/Expressions.py", line 80, in boboAwareZopeTraverse object = object.restrictedTraverse(name) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/OFS/Traversable.py", line 301, in restrictedTraverse return self.unrestrictedTraverse(path, default, restricted=True) File "/home/jaime/Projects/gnome-web/gnomeweb-plone/wgo.buildout/parts/zope2/lib/python/OFS/Traversable.py", line 284, in unrestrictedTraverse raise e KeyError: 'gnome_slots' This refers to the information in the template gnomeweb-plone/wgo.buildout/src/gnome.theme/gnome/theme/skins/gnome_theme_custom_templates/main_template.pt Line 125. I tried installing the theme without it - it will install but is a very ugly/basic theme, nothing like the screenshots. Here is the offending gnome_slots section <div id="sidebar" metal:define-slot="column_gnome_slots" tal:condition="here/gnome_slots"> <metal:portlets define-slot="portlets_gnome_slots"> <metal:gnomeportlets use-macro="here/gnome_slots_column/macros/slots"> This instruction gets the portlets (boxes) for the column aside the content region. </metal:gnomeportlets> </metal:portlets> </div> I've had a quick look around and I notice in gnome.theme/gnome/theme/config.py, the gnome slots portlets are defined GNOMESLOTS = ( 'here/portlet_gnome_sidenav/macros/portlet', 'here/portlet_review/macros/portlet', 'here/portlet_gnome_example/macros/portlet', 'here/portlet_calendar/macros/portlet', 'here/portlet_events/macros/portlet', 'here/portlet_recent/macros/portlet', ) and the template for the slots is: gnomeweb-plone/wgo.buildout/src/gnome.theme/gnome/theme/skins/gnome_theme_templates/gnome_slots_column.pt >> I'm gonna create some patches if not tomorrow/wed and send in the stuff >> I have now. It's a restructure of the entire theme; so in the meantime >> incase anyone else wants to finish that bit (when I say portlet I'm >> talking about the theming around the data smack dab in the middle). It >> shouldn't be that hard.. but getting the view correct will be the >> standard tedious test and refresh. >> I'll be interested to try out your patches and see if I can continue on getting it to look like the screenshots while you're away. Jaime. _______________________________________________ gnome-web-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/gnome-web-list
