Skip to content.

Etria Lists

 

[quills-dev] Back-porting workflow-aware configuration to Quills 1.7

Tim Hicks tim at sitefusion.co.uk
Wed Jun 25 13:36:48 UTC 2008


Jan Hackel wrote:
> On Thursday 22 May 2008 23:05:40 Tim Hicks wrote:
>> Jan Hackel wrote:
>>> The first problem is easy to be fixed, one must simply remove the
>>> statement review_state = 'published' from the catalog query (e.g. in
>>> Product.Quills.Weblog.getEntries).
>> Tom Hicks answered:
>> We already have this configurable-per-blog setup on QuillsEnabled.  See
>> the getEntries method at
>> <http://dev.plone.org/collective/browser/Products.QuillsEnabled/trunk/Produ
>> cts/QuillsEnabled/adapters/folder.py>. The equivalent change should be made
>> on Products.Quills (trunk), as well.  Can you do that?
> 
> I backported it. It was very little afford because almost all code already is 
> there in quills.app. Yet, one problem still remains which I do not know how 
> to resolve: 
> 
> quills.app.browser defines a configuration edit form like:
> 
>       <page
>           for="quills.core.interfaces.IWeblog"
>           name="config_view"
>           class="quills.core.browser.weblogconfig.WeblogConfigEditForm"
>           permission="zope2.ChangeConfig"
>           />
> 
> In package Product.Quills.browser I would like to redefine this like this:
> 
>       <page
>           for="quills.core.interfaces.IWeblog"
>           name="config_view"          	
> cass="quills.app.browser.weblogconfig.StateAwareWeblogConfigEditForm"
>           permission="zope2.ChangeConfig"
>           />
> 
> This conflicts with the former definition, because it is a page for the same 
> interface and name.
> 
> I see a few possible solutions here:
> 
> 1) Somehow redefining the former page definition by the latter. This would be 
> best, though I do not how to archive this -- if it can be archived at all.
> 
> 2) Renaming the latter, e.g. to "enhanced_config_view". This seems awkward to 
> me, plus it required some more code changes.
> 
> 3) Modifying quills.app by either introducing workflow-aware configuration 
> there, or by deleting the former mentioned view definition there leaving it 
> to derived packages like Product.Quills. 

Hi Jan,

Glad to see you working on this.  Without thinking about this very much, 
I'd say solution 3 makes most sense.  quills.app is supposed to be a 
library to help implement Products.Quills and Products.QuillsEnabled.  I 
have put as much stuff as possible in there that can be shared, but if 
things start getting in the way, they should just be moved to a better 
place.

The only proviso is that when changing quills.app, please be sure to run 
tests for *both* Products.Quills and Products.QuillsEnabled before 
checking in.

Cheers,

Tim


More information about the quills-dev mailing list