[Checkins] SVN: zf.zscp/trunk/src/zf/zscp/ Work on package views

Roger Ineichen roger at projekt01.ch
Tue Apr 11 04:43:35 EDT 2006


Log message for revision 66834:
  Work on package views

Changed:
  A   zf.zscp/trunk/src/zf/zscp/doc/packages_search.pt
  A   zf.zscp/trunk/src/zf/zscp/doc/packages_tips.pt
  A   zf.zscp/trunk/src/zf/zscp/doc/regulations_intro.pt
  A   zf.zscp/trunk/src/zf/zscp/doc/repository_intro.pt
  U   zf.zscp/trunk/src/zf/zscp/website/browser/package.py
  U   zf.zscp/trunk/src/zf/zscp/website/browser/package.zcml
  A   zf.zscp/trunk/src/zf/zscp/website/browser/package_certifications.pt
  A   zf.zscp/trunk/src/zf/zscp/website/browser/package_classifiers.pt
  U   zf.zscp/trunk/src/zf/zscp/website/browser/package_index.pt
  A   zf.zscp/trunk/src/zf/zscp/website/browser/package_info.pt
  A   zf.zscp/trunk/src/zf/zscp/website/browser/package_releases.pt
  U   zf.zscp/trunk/src/zf/zscp/website/browser/site.zcml

-=-
Added: zf.zscp/trunk/src/zf/zscp/doc/packages_search.pt
===================================================================
--- zf.zscp/trunk/src/zf/zscp/doc/packages_search.pt	2006-04-11 08:30:10 UTC (rev 66833)
+++ zf.zscp/trunk/src/zf/zscp/doc/packages_search.pt	2006-04-11 08:43:34 UTC (rev 66834)
@@ -0,0 +1,11 @@
+<html metal:use-macro="context/@@standard_macros/view"
+    i18n:domain="zf.zscp">
+  <body>
+  <div metal:fill-slot="body" tal:define="global pageversion string: 0.8">
+
+		<div id="documentFirstHeading">Package Search</div>
+	  
+  </div>
+  </body>
+
+</html>
\ No newline at end of file


Property changes on: zf.zscp/trunk/src/zf/zscp/doc/packages_search.pt
___________________________________________________________________
Name: svn:eol-style
   + native

Added: zf.zscp/trunk/src/zf/zscp/doc/packages_tips.pt
===================================================================
--- zf.zscp/trunk/src/zf/zscp/doc/packages_tips.pt	2006-04-11 08:30:10 UTC (rev 66833)
+++ zf.zscp/trunk/src/zf/zscp/doc/packages_tips.pt	2006-04-11 08:43:34 UTC (rev 66834)
@@ -0,0 +1,11 @@
+<html metal:use-macro="context/@@standard_macros/view"
+    i18n:domain="zf.zscp">
+  <body>
+  <div metal:fill-slot="body" tal:define="global pageversion string: 0.8">
+
+		<div id="documentFirstHeading">Package Search Tips</div> 
+	  	  	  
+  </div>
+  </body>
+
+</html>
\ No newline at end of file


Property changes on: zf.zscp/trunk/src/zf/zscp/doc/packages_tips.pt
___________________________________________________________________
Name: svn:eol-style
   + native

Added: zf.zscp/trunk/src/zf/zscp/doc/regulations_intro.pt
===================================================================
--- zf.zscp/trunk/src/zf/zscp/doc/regulations_intro.pt	2006-04-11 08:30:10 UTC (rev 66833)
+++ zf.zscp/trunk/src/zf/zscp/doc/regulations_intro.pt	2006-04-11 08:43:34 UTC (rev 66834)
@@ -0,0 +1,34 @@
+<html metal:use-macro="context/@@standard_macros/view" i18n:domain="zf.zscp">
+	<body>
+		<div metal:fill-slot="body" tal:define="global pageversion string: 0.8">
+			
+			<div id="documentFirstHeading">Regulations (1of 8) The Zope Software
+				Certification Program and the Common Repository</div>
+			<h3 class="itemOne itemHeading">Zope Community Process</h3>
+			<p>This section describes the process for Zope-related software to receive
+				quality certification.</p>
+			
+			<p>Historically, the Zope community had no development process. This was in
+				part because the development of Zope 2 was controlled by Digital Creations
+				(now Zope Corporation) and testing-automation tools were not available at
+				that time. Also, Zope 2 lacked the necessary documentation. All this lead to
+				an accepted misuse of the API and often low quality software.</p>
+			<p>With the advent of Zope 3, procedures were set in place to ensure the quality
+				and documentation of the code. Guided by eXtreme Programming practices,
+				sprints were organized to educate the Zope community about the project and
+				have high-productivity development time, proposals were introduced to
+				ensure the proper discussion of a feature before implementation, and tests
+				were required to ensure the overall quality of the code base. This
+				development process is called the Zope Community Process.</p>
+			<p>While the Zope Community Process provides an excellent method for
+				developing community-driven projects like Zope 3, it (a) does not show how
+				to produce simple high-quality packages, (b) measure the quality, and (c)
+				communicate the state of a package to outsiders. The goal of the Zope
+				Software Certification Program (ZSCP) is (a) to clearly define the levels
+				of software quality using a metric system and (b) to communicate this
+				information to our users, customers, and prospective customers.</p>
+			<a href="@@regulations_page02.html">Next Page: ...</a>
+			
+		</div>
+	</body>
+</html>
\ No newline at end of file


Property changes on: zf.zscp/trunk/src/zf/zscp/doc/regulations_intro.pt
___________________________________________________________________
Name: svn:eol-style
   + native

Added: zf.zscp/trunk/src/zf/zscp/doc/repository_intro.pt
===================================================================
--- zf.zscp/trunk/src/zf/zscp/doc/repository_intro.pt	2006-04-11 08:30:10 UTC (rev 66833)
+++ zf.zscp/trunk/src/zf/zscp/doc/repository_intro.pt	2006-04-11 08:43:34 UTC (rev 66834)
@@ -0,0 +1,35 @@
+<html metal:use-macro="context/@@standard_macros/view"
+    i18n:domain="zf.zscp">
+  <body>
+	<div metal:fill-slot="body" tal:define="global pageversion string: 0.8">
+		
+		<div id="documentFirstHeading">Layout of the Common Repository (1 of 8)</div>
+		<p>This section describes <em>one</em> open community-repository that
+			implements the ZSCP process.</p>
+		<h3 class="itemOne itemHeading">Definition</h3>
+		<p>The Common Repository is a Zope Foundation SVN repository for third-party Zope
+			packages, which are useful for a wide variety of applications, but that do not fit
+			into the Zope core distribution. Common examples for those packages include
+			advanced Javascript-based widgets, alternative templating systems,
+			specific content types, etc.</p>
+		<p>The existing <tt class="docutils literal">
+			<span class="pre">svn://svn.zope.org/repos/main</span></tt> will serve
+			as the Common Repository. Every package in the common repository <em>must</em>
+			conform at least to the layout as described in section 3.2. If a package wishes to
+			participate in the ZSCP, then it must also conform to the program's process. The
+			implementation details of the ZSCP process are provided in the sections
+			below.</p>
+		<p>The Common Repository is only <em>one</em> implementation of the ZSCP. While the
+			Common Repository implements the ZSCP guidelines and suggested automation
+			tools, the ZSCP process itself does <em>not</em> require the Common
+			Repository.</p>
+		<p>Unless otherwise stated, certified packages will automatically be released
+			with every new Zope release. This, on the other hand, will greatly simplify the
+			dependency tree for Common Repository based packages.</p>
+		
+		<a href="@@repository_page02.html">Next Page: Layout</a>
+		
+	</div>
+  </body>
+
+</html>
\ No newline at end of file


Property changes on: zf.zscp/trunk/src/zf/zscp/doc/repository_intro.pt
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: zf.zscp/trunk/src/zf/zscp/website/browser/package.py
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/browser/package.py	2006-04-11 08:30:10 UTC (rev 66833)
+++ zf.zscp/trunk/src/zf/zscp/website/browser/package.py	2006-04-11 08:43:34 UTC (rev 66834)
@@ -24,6 +24,17 @@
 from zope.app.pagetemplate import ViewPageTemplateFile
 
 
+def listToString(inList):
+    outStr = u''
+    for item in inList:
+        outStr += item
+        outStr += u', '
+    if len(outStr) > 2:
+        # remove the last separator
+        outStr = outStr[:-2]
+    return outStr
+
+
 class PackageEditForm(form.EditForm):
     """Edit a package and it's sub forms."""
 
@@ -43,14 +54,101 @@
 
 
 
-class PackageIndex(page.Page):
-    """Detail view for a single package."""
+class PackageInfo(page.Page):
+    """Package info view."""
 
-    template = ViewPageTemplateFile('package_index.pt')
+    template = ViewPageTemplateFile('package_info.pt')
 
     def update(self):
-        pass
+        publication = self.context.publication
+        info = {}
+        info['packageName'] = publication.packageName
+        info['name'] = publication.name
+        info['summary'] = publication.summary
+        info['description'] = publication.description
+        info['homePage'] = publication.homePage
+        info['developersMailinglist'] = publication.developersMailinglist
+        info['usersMailinglist'] = publication.usersMailinglist
+        info['issueTracker'] = publication.issueTracker
+        info['repositoryLocation'] = publication.repositoryLocation
+        info['repositoryWebLocation'] = publication.repositoryWebLocation
+        info['certificationLevel'] = publication.certificationLevel
+        info['certificationDate'] = publication.certificationDate
+        info['metadataVersion'] = publication.metadataVersion
 
+        # list of strings converted to strings
+        info['author'] = listToString(publication.author)
+        info['authorEmail'] = listToString(publication.authorEmail)
+        info['license'] = listToString(publication.license)
+        info['platform'] = listToString(publication.platform)
+        info['classifier'] = listToString(publication.classifier)
+
+        self._info = info
+
+    @property
+    def info(self):
+        return self._info
+
     def __call__(self):
         self.update()
         return self.template()
+
+
+
+class PackageReleases(page.Page):
+    """Release view."""
+
+    template = ViewPageTemplateFile('package_releases.pt')
+
+    def update(self):
+        releases = self.context.releases
+        info = {}
+        self._info = info
+
+    @property
+    def info(self):
+        return self._info
+
+    def __call__(self):
+        self.update()
+        return self.template()
+
+
+
+class PackageClassifiers(page.Page):
+    """Classifier view."""
+
+    template = ViewPageTemplateFile('package_classifiers.pt')
+
+    def update(self):
+        certifications = self.context.certifications
+        info = {}
+        self._info = info
+
+    @property
+    def info(self):
+        return self._info
+
+    def __call__(self):
+        self.update()
+        return self.template()
+
+
+
+class PackageCertifications(page.Page):
+    """Certification view."""
+
+    template = ViewPageTemplateFile('package_certifications.pt')
+
+    def update(self):
+        publication = self.context.publication
+        info = {}
+        self._info = info
+
+    @property
+    def info(self):
+        return self._info
+
+    def __call__(self):
+        self.update()
+        return self.template()

Modified: zf.zscp/trunk/src/zf/zscp/website/browser/package.zcml
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/browser/package.zcml	2006-04-11 08:30:10 UTC (rev 66833)
+++ zf.zscp/trunk/src/zf/zscp/website/browser/package.zcml	2006-04-11 08:43:34 UTC (rev 66834)
@@ -13,9 +13,25 @@
   <page
       name="index.html"
       for="zf.zscp.interfaces.IPackage"
-      class=".package.PackageIndex"
+      class=".package.PackageInfo"
       permission="zope.Public"
       layer="zf.zscp.skin.IZSCPLayer"
       />
 
+  <page
+      name="releases.html"
+      for="zf.zscp.interfaces.IPackage"
+      class=".package.PackageReleases"
+      permission="zope.Public"
+      layer="zf.zscp.skin.IZSCPLayer"
+      />
+
+  <page
+      name="classifiers.html"
+      for="zf.zscp.interfaces.IPackage"
+      class=".package.PackageClassifiers"
+      permission="zope.Public"
+      layer="zf.zscp.skin.IZSCPLayer"
+      />
+
 </configure>

Added: zf.zscp/trunk/src/zf/zscp/website/browser/package_certifications.pt
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/browser/package_certifications.pt	2006-04-11 08:30:10 UTC (rev 66833)
+++ zf.zscp/trunk/src/zf/zscp/website/browser/package_certifications.pt	2006-04-11 08:43:34 UTC (rev 66834)
@@ -0,0 +1,45 @@
+<html metal:use-macro="context/@@standard_macros/view"
+    i18n:domain="zf.zscp">
+	<body>
+		<div metal:fill-slot="body"
+					tal:define="global pageversion string: 0.8;
+											info view/info">
+			
+			<div id="documentFirstHeading">Release Detail for: TODO</div>
+			<div id="package-wrapper">
+				<!-- begin package tabs -->
+				<div id="package-tabs">
+					<div id="tab-info" class="packageTab"><a href="index.html">Info</a>
+					</div>
+					<div id="tab-classifiers" class="packageTab"><a href="classifiers.html">
+						Classifiers</a>
+					</div>
+					<div id="tab-releases" class="packageTab"><a href="releases.html">
+						Releases</a>
+					</div>
+					<div id="tab-classifiers" class="packageTab selected"><a href="certifications.html">
+						Certifications</a>
+					</div>
+				</div>
+				<!-- end package tabs -->
+				<!-- begin package body -->
+				<div id="package-info" class="packageBody">
+					<div id="certifiedSilver" class="certSeal">&nbsp;
+					</div>
+					<div class="infoRow">
+						<label>Name:</label>
+						<div class="infoString">zope.search (Zope Search)</div>
+					</div>
+					<div class="infoRow">
+						<label>Description:</label>
+						<div class="infoString"> The Zope search package provides
+							generic user interface components, such as live search and
+							advanced search forms. </div>
+					</div>
+				</div>
+				<!-- end package body -->
+			</div>
+
+		</div>
+	</body>
+</html>
\ No newline at end of file


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

Added: zf.zscp/trunk/src/zf/zscp/website/browser/package_classifiers.pt
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/browser/package_classifiers.pt	2006-04-11 08:30:10 UTC (rev 66833)
+++ zf.zscp/trunk/src/zf/zscp/website/browser/package_classifiers.pt	2006-04-11 08:43:34 UTC (rev 66834)
@@ -0,0 +1,45 @@
+<html metal:use-macro="context/@@standard_macros/view"
+    i18n:domain="zf.zscp">
+	<body>
+		<div metal:fill-slot="body"
+					tal:define="global pageversion string: 0.8;
+											info view/info">
+			
+			<div id="documentFirstHeading">Classifier Detail for: TODO</div>
+			<div id="package-wrapper">
+				<!-- begin package tabs -->
+				<div id="package-tabs">
+					<div id="tab-info" class="packageTab"><a href="index.html">Info</a>
+					</div>
+					<div id="tab-classifiers" class="packageTab selected"><a href="classifiers.html">
+						Classifiers</a>
+					</div>
+					<div id="tab-releases" class="packageTab"><a href="releases.html">
+						Releases</a>
+					</div>
+					<div id="tab-classifiers" class="packageTab"><a href="certifications.html">
+						Certifications</a>
+					</div>
+				</div>
+				<!-- end package tabs -->
+				<!-- begin package body -->
+				<div id="package-info" class="packageBody">
+					<div id="certifiedSilver" class="certSeal">&nbsp;
+					</div>
+					<div class="infoRow">
+						<label>Name:</label>
+						<div class="infoString">zope.search (Zope Search)</div>
+					</div>
+					<div class="infoRow">
+						<label>Description:</label>
+						<div class="infoString"> The Zope search package provides
+							generic user interface components, such as live search and
+							advanced search forms. </div>
+					</div>
+				</div>
+				<!-- end package body -->
+			</div>
+
+		</div>
+	</body>
+</html>
\ No newline at end of file


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

Modified: zf.zscp/trunk/src/zf/zscp/website/browser/package_index.pt
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/browser/package_index.pt	2006-04-11 08:30:10 UTC (rev 66833)
+++ zf.zscp/trunk/src/zf/zscp/website/browser/package_index.pt	2006-04-11 08:43:34 UTC (rev 66834)
@@ -1,7 +1,9 @@
 <html metal:use-macro="context/@@standard_macros/view"
     i18n:domain="zf.zscp">
 	<body>
-		<div metal:fill-slot="body" tal:define="global pageversion string: 0.8">
+		<div metal:fill-slot="body"
+					tal:define="global pageversion string: 0.8;
+											info view/info">
 			
 			<div id="documentFirstHeading">Package Detail for: TODO</div>
 			<div id="package-wrapper">

Added: zf.zscp/trunk/src/zf/zscp/website/browser/package_info.pt
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/browser/package_info.pt	2006-04-11 08:30:10 UTC (rev 66833)
+++ zf.zscp/trunk/src/zf/zscp/website/browser/package_info.pt	2006-04-11 08:43:34 UTC (rev 66834)
@@ -0,0 +1,92 @@
+<html metal:use-macro="context/@@standard_macros/view"
+    i18n:domain="zf.zscp">
+	<body>
+		<div metal:fill-slot="body"
+					tal:define="global pageversion string: 0.8;
+											info view/info">
+			
+			<div id="documentFirstHeading">Package Detail for: TODO</div>
+			<div id="package-wrapper">
+				<!-- begin package tabs -->
+				<div id="package-tabs">
+					<div id="tab-info" class="packageTab selected"><a href="index.html">Info</a>
+					</div>
+					<div id="tab-classifiers" class="packageTab"><a href="classifiers.html">
+						Classifiers</a>
+					</div>
+					<div id="tab-releases" class="packageTab"><a href="releases.html">
+						Releases</a>
+					</div>
+					<div id="tab-classifiers" class="packageTab"><a href="certifications.html">
+						Certifications</a>
+					</div>
+				</div>
+				<!-- end package tabs -->
+				<!-- begin package body -->
+				<div id="package-info" class="packageBody"
+							tal:define="packageName info/packageName;
+													name info/name;
+													certificationLevel info/certificationLevel;
+													certificationDate info/certificationDate;
+													summary info/summary;
+													license info/license;
+													author info/author;
+													homePage info/homePage;
+													description info/description">
+					
+					<!-- certification Seal (possible values: certified[Gold | Silver| Bronze]) -->
+					<div id="certifiedSilver" class="certSeal">&nbsp;
+					</div>
+					<div class="infoRow" tal:condition="python:packageName and name">
+						<label>Name:</label>
+						<div class="infoString">
+							<tal:block content="packageName">zope.search</tal:block>&nbsp;
+							(<tal:block content="name">Zope Search</tal:block>)
+						</div>
+					</div>
+					<div class="infoRow" tal:condition="python:certificationLevel and certificationDate">
+						<label>Certification:</label>
+						<div class="infoString">
+							<tal:block content="certificationLevel">Silver</tal:block>&nbsp;
+							(<tal:block content="certificationDate">January 31, 2006</tal:block>)
+						</div>
+					</div>
+					<div class="infoRow" tal:condition="summary">
+						<label>Summary:</label>
+						<div class="infoString"
+									tal:content="summary">Zope Search UI Package</div>
+					</div>
+					<div class="infoRow" tal:condition="license">
+						<label>License:</label>
+						<div class="infoString"
+									tal:content="license">ZPL</div>
+					</div>
+					<div class="infoRow" tal:condition="author">
+						<label>Author(s):</label>
+						<div class="infoString"
+									tal:content="author">Stephan Richter (stephan.richter
+							[at] tufts.edu)</div>
+					</div>
+					<div class="infoRow" tal:condition="homePage">
+						<label>Homepage:</label>
+						<div class="infoString"> <a
+								href="http://www.zope.org/Products/zope.search"
+									tal:content="info/homePage"
+									tal:attributes="href homePage">
+							http://www.zope.org/Products/zope.search</a>
+						</div>
+					</div>
+					<div class="infoRow" tal:condition="description">
+						<label>Description:</label>
+						<div class="infoString"
+									tal:content="description"> The Zope search package provides
+							generic user interface components, such as live search and
+							advanced search forms. </div>
+					</div>
+				</div>
+				<!-- end package body -->
+			</div>
+
+		</div>
+	</body>
+</html>
\ No newline at end of file


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

Added: zf.zscp/trunk/src/zf/zscp/website/browser/package_releases.pt
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/browser/package_releases.pt	2006-04-11 08:30:10 UTC (rev 66833)
+++ zf.zscp/trunk/src/zf/zscp/website/browser/package_releases.pt	2006-04-11 08:43:34 UTC (rev 66834)
@@ -0,0 +1,45 @@
+<html metal:use-macro="context/@@standard_macros/view"
+    i18n:domain="zf.zscp">
+	<body>
+		<div metal:fill-slot="body"
+					tal:define="global pageversion string: 0.8;
+											info view/info">
+			
+			<div id="documentFirstHeading">Release Detail for: TODO</div>
+			<div id="package-wrapper">
+				<!-- begin package tabs -->
+				<div id="package-tabs">
+					<div id="tab-info" class="packageTab"><a href="index.html">Info</a>
+					</div>
+					<div id="tab-classifiers" class="packageTab"><a href="classifiers.html">
+						Classifiers</a>
+					</div>
+					<div id="tab-releases" class="packageTab selected"><a href="releases.html">
+						Releases</a>
+					</div>
+					<div id="tab-classifiers" class="packageTab"><a href="certifications.html">
+						Certifications</a>
+					</div>
+				</div>
+				<!-- end package tabs -->
+				<!-- begin package body -->
+				<div id="package-info" class="packageBody">
+					<div id="certifiedSilver" class="certSeal">&nbsp;
+					</div>
+					<div class="infoRow">
+						<label>Name:</label>
+						<div class="infoString">zope.search (Zope Search)</div>
+					</div>
+					<div class="infoRow">
+						<label>Description:</label>
+						<div class="infoString"> The Zope search package provides
+							generic user interface components, such as live search and
+							advanced search forms. </div>
+					</div>
+				</div>
+				<!-- end package body -->
+			</div>
+
+		</div>
+	</body>
+</html>
\ No newline at end of file


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

Modified: zf.zscp/trunk/src/zf/zscp/website/browser/site.zcml
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/browser/site.zcml	2006-04-11 08:30:10 UTC (rev 66833)
+++ zf.zscp/trunk/src/zf/zscp/website/browser/site.zcml	2006-04-11 08:43:34 UTC (rev 66834)
@@ -10,13 +10,6 @@
       permission="zope.ManageContent"
       />
 
-  <containerViews
-      for="zf.zscp.website.interfaces.IZSCPSite"
-      contents="zope.ManageContent"
-      index="zope.View"
-      add="zope.ManageContent"
-      />
-
   <page
       name="index.html"
       for="zf.zscp.website.interfaces.IZSCPSite"
@@ -26,6 +19,13 @@
       layer="zf.zscp.skin.IZSCPLayer"
       />
 
+  <containerViews
+      for="zf.zscp.website.interfaces.IZSCPSite"
+      contents="zope.ManageContent"
+      index="zope.View"
+      add="zope.ManageContent"
+      />
+
   <page
       name="packages.html"
       for="zf.zscp.website.interfaces.IZSCPSite"



More information about the Checkins mailing list