[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