[z3-checkins] r40502 - in z3/NudgeNudge/trunk/src/nudgenudge: . app_templates

philikon at codespeak.net philikon at codespeak.net
Wed Mar 14 20:24:19 CET 2007


Author: philikon
Date: Wed Mar 14 20:24:17 2007
New Revision: 40502

Added:
   z3/NudgeNudge/trunk/src/nudgenudge/app_templates/index.pt   (contents, props changed)
Modified:
   z3/NudgeNudge/trunk/src/nudgenudge/app.py
Log:
Add first views


Modified: z3/NudgeNudge/trunk/src/nudgenudge/app.py
==============================================================================
--- z3/NudgeNudge/trunk/src/nudgenudge/app.py	(original)
+++ z3/NudgeNudge/trunk/src/nudgenudge/app.py	Wed Mar 14 20:24:17 2007
@@ -1,5 +1,36 @@
 import grok
+from zope import schema
 
 class NudgeNudge(grok.Application, grok.Container):
-    pass
+	pass
 
+grok.context(NudgeNudge)
+
+class Index(grok.View):
+	
+	def update(self, package=None):
+		self.results = []
+		if package:
+			self.results = (obj for obj in self.context.values() 
+							if obj.package_name == package)
+
+class CreateReview(grok.AddForm):
+	form_fields = grok.Fields(
+		package_name = schema.TextLine(title=u'Package name'),
+		for_display=True # TODO not honored
+	) + grok.Fields(
+		summary = schema.Text(title=u'Summary'),
+	)
+	
+	@grok.action('Create')
+	def create(self, package_name, summary):
+		r = Review(package_name)
+		# TODO disambiguate naming scheme
+		self.context[package_name] = r
+		# TODO send object created event
+		self.redirect(self.url(r))
+
+class Review(grok.Model):
+
+	def __init__(self, package_name):
+		self.package_name = package_name

Added: z3/NudgeNudge/trunk/src/nudgenudge/app_templates/index.pt
==============================================================================
--- (empty file)
+++ z3/NudgeNudge/trunk/src/nudgenudge/app_templates/index.pt	Wed Mar 14 20:24:17 2007
@@ -0,0 +1,28 @@
+<html>
+	<body>
+		
+		<div tal:condition="not:view/results">
+			<h1>Find a review of...</h1>
+		
+			<form action="" tal:attributes="action view/url" method="post">
+				<input type="text" name="package" />
+				<input type="submit" value="Find" />
+			</form>
+		</div>
+
+		<ul tal:condition="view/results">
+			<li tal:repeat="review view/results">
+				<a href="" tal:attributes="href python:view.url(review)"
+				   tal:content="review/package_name">review title goes here</a>
+			</li>
+		</ul>
+
+		<h1>Write a review of...</h1>
+		
+		<form action="createreview" method="post">
+			<input type="text" name="form.package_name" />
+			<input type="submit" value="Create" />
+		</form>
+
+	</body>
+</html>
\ No newline at end of file


More information about the z3-checkins mailing list