[Checkins] SVN: zf.zscp/trunk/src/zf/zscp/ Started adding formlib views for package information

Roger Ineichen roger at projekt01.ch
Mon Apr 10 06:47:16 EDT 2006


Log message for revision 66770:
  Started adding formlib views for package information
  

Changed:
  U   zf.zscp/trunk/src/zf/zscp/configure.zcml
  U   zf.zscp/trunk/src/zf/zscp/package.py
  A   zf.zscp/trunk/src/zf/zscp/package.zcml
  U   zf.zscp/trunk/src/zf/zscp/repository.py
  U   zf.zscp/trunk/src/zf/zscp/website/browser/configure.zcml
  A   zf.zscp/trunk/src/zf/zscp/website/browser/package.py
  A   zf.zscp/trunk/src/zf/zscp/website/browser/package.zcml
  U   zf.zscp/trunk/src/zf/zscp/website/browser/repository.py
  U   zf.zscp/trunk/src/zf/zscp/website/repository.zcml

-=-
Modified: zf.zscp/trunk/src/zf/zscp/configure.zcml
===================================================================
--- zf.zscp/trunk/src/zf/zscp/configure.zcml	2006-04-10 10:24:36 UTC (rev 66769)
+++ zf.zscp/trunk/src/zf/zscp/configure.zcml	2006-04-10 10:47:15 UTC (rev 66770)
@@ -4,6 +4,7 @@
 
   <include package=".doc" />  
   <include package=".skin" />  
-  <include package=".website" />  
+  <include package=".website" /> 
+  <include file="package.zcml" />  
 
 </configure>

Modified: zf.zscp/trunk/src/zf/zscp/package.py
===================================================================
--- zf.zscp/trunk/src/zf/zscp/package.py	2006-04-10 10:24:36 UTC (rev 66769)
+++ zf.zscp/trunk/src/zf/zscp/package.py	2006-04-10 10:47:15 UTC (rev 66770)
@@ -17,13 +17,15 @@
 """
 __docformat__ = "reStructuredText"
 import zope.interface
+from zope.app.container.interfaces import IContained
 
 from zf.zscp import interfaces
 
 class Package(object):
     """Package Implementation."""
-    zope.interface.implements(interfaces.IPackage)
+    zope.interface.implements(interfaces.IPackage, IContained)
 
+    __parent__ = __name__ = None
     name = None
     publication = None
     releases = None

Added: zf.zscp/trunk/src/zf/zscp/package.zcml
===================================================================
--- zf.zscp/trunk/src/zf/zscp/package.zcml	2006-04-10 10:24:36 UTC (rev 66769)
+++ zf.zscp/trunk/src/zf/zscp/package.zcml	2006-04-10 10:47:15 UTC (rev 66770)
@@ -0,0 +1,21 @@
+<configure
+    xmlns="http://namespaces.zope.org/zope"
+    i18n_domain="zf.zscp">
+
+  <class class="zf.zscp.package.Package">
+    <require
+        permission="zope.Public"
+        attributes="__name__ __parent__ name publication releases 
+                    certifications"
+        />
+    <require
+        permission="zope.Public"
+        set_attributes="__name__ __parent__"
+        />
+    <require
+        permission="zope.ManageContent"
+        set_attributes="name publication releases certifications"
+        />
+  </class>  
+
+</configure>


Property changes on: zf.zscp/trunk/src/zf/zscp/package.zcml
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: zf.zscp/trunk/src/zf/zscp/repository.py
===================================================================
--- zf.zscp/trunk/src/zf/zscp/repository.py	2006-04-10 10:24:36 UTC (rev 66769)
+++ zf.zscp/trunk/src/zf/zscp/repository.py	2006-04-10 10:47:15 UTC (rev 66770)
@@ -171,6 +171,10 @@
         pkg.certifications = certification.processXML(cert_file)
         cert_file.close()
 
+        # set IContained information
+        pkg.__parent__ = self
+        pkg.__name__ = key
+
         return pkg
 
     def keys(self):

Modified: zf.zscp/trunk/src/zf/zscp/website/browser/configure.zcml
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/browser/configure.zcml	2006-04-10 10:24:36 UTC (rev 66769)
+++ zf.zscp/trunk/src/zf/zscp/website/browser/configure.zcml	2006-04-10 10:47:15 UTC (rev 66770)
@@ -4,6 +4,7 @@
     i18n_domain="zf.zscp">
 
   <include file="site.zcml" />
+  <include file="package.zcml" />
   <include file="repository.zcml" />
 
 </configure>

Added: zf.zscp/trunk/src/zf/zscp/website/browser/package.py
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/browser/package.py	2006-04-10 10:24:36 UTC (rev 66769)
+++ zf.zscp/trunk/src/zf/zscp/website/browser/package.py	2006-04-10 10:47:15 UTC (rev 66770)
@@ -0,0 +1,35 @@
+##############################################################################
+#
+# Copyright (c) 2005 Zope Corporation and Contributors.
+# All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.1 (ZPL).  A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE.
+#
+##############################################################################
+"""
+
+$Id$
+"""
+
+from zope.formlib import form
+from zf.zscp.interfaces import IPublication
+from zf.zscp.interfaces import IRelease
+from zf.zscp.interfaces import ICertification
+
+
+class PackageEditForm(form.EditForm):
+    """Edit a package and it's sub forms."""
+
+    form_fields = form.Fields(IPublication, prefix='publication')
+    form_fields += form.Fields(IRelease, prefix='release')
+    form_fields += form.Fields(ICertification, prefix='certification')
+
+    def update(self):
+        result = super(PackageEditForm, self).update()
+        if result is None:
+            self.context.__parent__.update()


Property changes on: zf.zscp/trunk/src/zf/zscp/website/browser/package.py
___________________________________________________________________
Name: svn:keywords
   + Id
Name: svn:eol-style
   + native

Added: zf.zscp/trunk/src/zf/zscp/website/browser/package.zcml
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/browser/package.zcml	2006-04-10 10:24:36 UTC (rev 66769)
+++ zf.zscp/trunk/src/zf/zscp/website/browser/package.zcml	2006-04-10 10:47:15 UTC (rev 66770)
@@ -0,0 +1,13 @@
+<configure
+    xmlns:zope="http://namespaces.zope.org/zope"
+    xmlns="http://namespaces.zope.org/browser"
+    i18n_domain="zf.zscp">
+
+  <page
+      name="edit.html"
+      for="zf.zscp.interfaces.IPackage"
+      class=".package.PackageEditForm"
+      permission="zope.ManageContent"
+      />
+
+</configure>


Property changes on: zf.zscp/trunk/src/zf/zscp/website/browser/package.zcml
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: zf.zscp/trunk/src/zf/zscp/website/browser/repository.py
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/browser/repository.py	2006-04-10 10:24:36 UTC (rev 66769)
+++ zf.zscp/trunk/src/zf/zscp/website/browser/repository.py	2006-04-10 10:47:15 UTC (rev 66770)
@@ -46,6 +46,7 @@
         package = Package(packageName)
         publication = Publication()
         publication.name = data.get('name', u'')
+        publication.packageName = data.get('packageName', u'')
         publication.summary = data.get('summary', u'')
         publication.author = data.get('author', u'')
         publication.authorEmail = data.get('authorEmail', u'')

Modified: zf.zscp/trunk/src/zf/zscp/website/repository.zcml
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/repository.zcml	2006-04-10 10:24:36 UTC (rev 66769)
+++ zf.zscp/trunk/src/zf/zscp/website/repository.zcml	2006-04-10 10:47:15 UTC (rev 66770)
@@ -14,4 +14,19 @@
         />
   </class>
 
+  <adapter
+      factory="zope.app.container.traversal.ContainerTraversable"
+      provides="zope.app.traversing.interfaces.ITraversable"
+      for="zf.zscp.interfaces.IZSCPRepository"
+      />
+
+  <view
+      for="zf.zscp.interfaces.IZSCPRepository"
+      type="zope.publisher.interfaces.browser.IBrowserRequest"
+      provides="zope.publisher.interfaces.browser.IBrowserPublisher"
+      factory="zope.app.container.traversal.ItemTraverser"
+      permission="zope.Public"
+      allowed_interface="zope.publisher.interfaces.browser.IBrowserPublisher"
+      />
+
 </configure>



More information about the Checkins mailing list