Skip to content
This repository has been archived by the owner on Dec 17, 2020. It is now read-only.

Commit

Permalink
fire beforeupdateevent, version bump to 0.2
Browse files Browse the repository at this point in the history
  • Loading branch information
dobe committed May 5, 2007
1 parent 3360c0f commit e210138
Show file tree
Hide file tree
Showing 5 changed files with 29 additions and 5 deletions.
13 changes: 13 additions & 0 deletions CHANGES.txt
@@ -0,0 +1,13 @@
============================
Changes for z3c.viewtemplate
============================

Version 0.2 (2007-05-01)
========================

- Fire a BeforeUpdateEvent in the base views. This requires zope 3.4





6 changes: 5 additions & 1 deletion buildout.cfg
@@ -1,7 +1,11 @@
[buildout]
develop = .
parts = test
versions = versions

[test]
recipe = zc.recipe.testrunner
eggs = z3c.viewtemplate [test]
eggs = z3c.viewtemplate [test]

[versions]
zope.contentprovider = 3.4.0a1
2 changes: 1 addition & 1 deletion setup.py
Expand Up @@ -2,7 +2,7 @@
from setuptools import setup, find_packages

setup(name='z3c.viewtemplate',
version='0.1.1',
version='0.2',
author = "Zope Community",
author_email = "zope3-dev@zope.org",
description = open("README.txt").read(),
Expand Down
9 changes: 7 additions & 2 deletions src/z3c/viewtemplate/README.txt
Expand Up @@ -71,11 +71,16 @@ We register the factory on a view interface and a layer.
>>> template
<zope.app.pagetemplate.viewpagetemplatefile.ViewPageTemplateFile ...>

Now that we have a registered template for the default layer we can call our
view again.
Now that we have a registered template for the default layer we can
call our view again. The view is a contentprovider so a
BeforeUpdateEvent is fired before its update method is called.

>>> events = []
>>> component.provideHandler(events.append, (None,))
>>> print view()
<div>demo</div>
>>> events
[<zope.contentprovider.interfaces.BeforeUpdateEvent object at ...>]

Now we register a new template on the specific interface of our view.

Expand Down
4 changes: 3 additions & 1 deletion src/z3c/viewtemplate/baseview.py
Expand Up @@ -18,12 +18,13 @@

from zope import interface
from zope import component
from zope import event

from zope.pagetemplate.interfaces import IPageTemplate
from zope.publisher.browser import BrowserView

from z3c.viewtemplate.interfaces import ITemplatedContentProvider

from zope.contentprovider.interfaces import BeforeUpdateEvent

class TemplatedContentProvider(object):
interface.implements(ITemplatedContentProvider)
Expand All @@ -44,6 +45,7 @@ def render(self):
class BaseView(TemplatedContentProvider, BrowserView):

def __call__(self):
event.notify(BeforeUpdateEvent(self))
self.update()
return self.render()

0 comments on commit e210138

Please sign in to comment.