[Zope3-checkins] CVS: Zope3/src/zope/products/zwiki -
interfaces.py:1.2
Krishna M
kmuthyala at zeomega.com
Tue Dec 16 07:10:39 EST 2003
Update of /cvs-repository/Zope3/src/zope/products/zwiki
In directory cvs.zope.org:/tmp/cvs-serv30501
Modified Files:
interfaces.py
Log Message:
Modified the interface to limit the other objects to be created inside the wiki except the 'wiki page'
=== Zope3/src/zope/products/zwiki/interfaces.py 1.1 => 1.2 ===
--- Zope3/src/zope/products/zwiki/interfaces.py:1.1 Tue Dec 16 05:05:52 2003
+++ Zope3/src/zope/products/zwiki/interfaces.py Tue Dec 16 07:10:38 2003
@@ -21,18 +21,15 @@
from zope.schema import TextLine, List, SourceText
from zope.schema.vocabulary import VocabularyField
-from zope.app.interfaces.container import IContentContainer
-
+#from zope.app.interfaces.container import IContentContainer
+from zope.schema import Field
+from zope.app.interfaces.container import IContained
+from zope.app.container.constraints import ContainerTypesConstraint
+from zope.app.container.constraints import ItemTypePrecondition
+from zope.app.interfaces.container import IContainer
from zope.i18n import MessageIDFactory
-_ = MessageIDFactory('wiki')
-
-
-class IWiki(IContentContainer):
- """A simple Wiki Page container.
-
- A simple marker interface, so that we can define special views on
- Wikis."""
+_ = MessageIDFactory('wiki')
class IWikiPage(Interface):
"""A single Wiki Page content object.
@@ -101,6 +98,17 @@
returned.
"""
+class IWiki(IContainer):
+ def __setitem__(name, object):
+ """Add a poll"""
+ __setitem__.precondition = ItemTypePrecondition(IWikiPage)
+
+
+class IWikiContained(IContained):
+ __parent__ = Field(
+ constraint = ContainerTypesConstraint(IWiki))
+
+
class IMailSubscriptions(Interface):
"""This interface allows you to retrieve a list of E-mails for
More information about the Zope3-Checkins
mailing list