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

Reply via email to