[Checkins] SVN: bluebream/trunk/ Create a sample application by default

Baiju M baiju.m.mail at gmail.com
Mon Jan 11 22:35:22 EST 2010


Log message for revision 108044:
  Create a sample application by default
  

Changed:
  U   bluebream/trunk/CHANGES.txt
  U   bluebream/trunk/src/bluebream/project_template/etc/site.zcml_tmpl
  U   bluebream/trunk/src/bluebream/project_template/setup.py_tmpl
  A   bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/app.py
  U   bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/configure.zcml_tmpl
  U   bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/ftesting.zcml_tmpl
  A   bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/interfaces.py
  U   bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/securitypolicy.zcml_tmpl
  U   bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/views.py
  U   bluebream/trunk/src/bluebream/tests/bluebream.txt

-=-
Modified: bluebream/trunk/CHANGES.txt
===================================================================
--- bluebream/trunk/CHANGES.txt	2010-01-12 01:18:03 UTC (rev 108043)
+++ bluebream/trunk/CHANGES.txt	2010-01-12 03:35:21 UTC (rev 108044)
@@ -5,6 +5,8 @@
 ------------------
 
 - Use `zope` ZCML namespace as default in configure.zcml
+- Documentation improvements
+- Create a sample application by default
 
 0.1.7 (2010-01-10)
 ------------------

Modified: bluebream/trunk/src/bluebream/project_template/etc/site.zcml_tmpl
===================================================================
--- bluebream/trunk/src/bluebream/project_template/etc/site.zcml_tmpl	2010-01-12 01:18:03 UTC (rev 108043)
+++ bluebream/trunk/src/bluebream/project_template/etc/site.zcml_tmpl	2010-01-12 03:35:21 UTC (rev 108044)
@@ -4,23 +4,36 @@
   <include package="zope.component" file="meta.zcml" />
   <include package="zope.security" file="meta.zcml" />
   <include package="zope.publisher" file="meta.zcml" />
+  <include package="zope.i18n" file="meta.zcml" />
   <include package="zope.browserresource" file="meta.zcml" />
   <include package="zope.browsermenu" file="meta.zcml" />
   <include package="zope.browserpage" file="meta.zcml" />
   <include package="zope.securitypolicy" file="meta.zcml" />
   <include package="zope.principalregistry" file="meta.zcml" />
   <include package="zope.app.publication" file="meta.zcml" />
+  <include package="zope.app.form.browser" file="meta.zcml" />
+  <include package="zope.app.container.browser" file="meta.zcml" />
 
+  <include package="zope.publisher" />
   <include package="zope.component" />
   <include package="zope.traversing" />
   <include package="zope.site" />
   <include package="zope.annotation" />
   <include package="zope.container" />
   <include package="zope.componentvocabulary" />
+  <include package="zope.formlib" />
   <include package="zope.app.appsetup" />
   <include package="zope.app.security" />
   <include package="zope.app.publication" />
+  <include package="zope.app.form.browser" />
+  <include package="zope.app.basicskin" />
+  <include package="zope.browsermenu" />
   <include package="zope.principalregistry" />
+  <include package="zope.authentication" />
+  <include package="zope.securitypolicy" />
+  <include package="zope.login" />
+  <include package="zope.app.zcmlfiles" file="menus.zcml" />
+  <include package="zope.app.authentication" />
 
   <include package="${namespace_package}.${main_package}" file="securitypolicy.zcml" />
   <include package="${namespace_package}.${main_package}" file="application.zcml" />

Modified: bluebream/trunk/src/bluebream/project_template/setup.py_tmpl
===================================================================
--- bluebream/trunk/src/bluebream/project_template/setup.py_tmpl	2010-01-12 01:18:03 UTC (rev 108043)
+++ bluebream/trunk/src/bluebream/project_template/setup.py_tmpl	2010-01-12 03:35:21 UTC (rev 108044)
@@ -52,6 +52,8 @@
                         'z3c.testsetup',
                         'zope.app.testing',
                         'zope.testbrowser',
+                        'zope.login',
+                        'zope.app.zcmlfiles',
                         ],
       entry_points = """
       [paste.app_factory]

Added: bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/app.py
===================================================================
--- bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/app.py	                        (rev 0)
+++ bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/app.py	2010-01-12 03:35:21 UTC (rev 108044)
@@ -0,0 +1,12 @@
+from zope.interface import implements
+from zope.container.btree import BTreeContainer
+
+from interfaces import ISampleApplication
+
+
+class SampleApplication(BTreeContainer):
+
+    implements(ISampleApplication)
+    name = u""
+    description = u""
+

Modified: bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/configure.zcml_tmpl
===================================================================
--- bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/configure.zcml_tmpl	2010-01-12 01:18:03 UTC (rev 108043)
+++ bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/configure.zcml_tmpl	2010-01-12 03:35:21 UTC (rev 108044)
@@ -15,4 +15,25 @@
      class=".views.RootDefaultView"
      />
 
+  <class class=".app.SampleApplication">
+    <implements
+       interface="zope.annotation.interfaces.IAttributeAnnotatable"
+       />
+    <implements
+       interface="zope.container.interfaces.IContentContainer" 
+       />
+    <require
+       permission="zope.ManageContent"
+       interface=".interfaces.ISampleApplication"
+       set_schema=".interfaces.ISampleApplication"
+       />
+  </class>
+
+  <browser:page
+     for="zope.site.interfaces.IRootFolder"
+     name="add"
+     permission="zope.Public"
+     class=".views.AddSampleApplication"
+     />
+
 </configure>

Modified: bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/ftesting.zcml_tmpl
===================================================================
--- bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/ftesting.zcml_tmpl	2010-01-12 01:18:03 UTC (rev 108043)
+++ bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/ftesting.zcml_tmpl	2010-01-12 03:35:21 UTC (rev 108044)
@@ -23,9 +23,6 @@
   <include package="zope.app.publication" />
   <include package="zope.principalregistry" />
 
-  <include package="${namespace_package}.${main_package}" file="securitypolicy.zcml" />
-  <include package="${namespace_package}.${main_package}" file="application.zcml" />
-
   <!-- Typical functional testing security setup -->
   <securityPolicy
       component="zope.securitypolicy.zopepolicy.ZopeSecurityPolicy"
@@ -51,4 +48,7 @@
   <grantAll role="zope.Manager" />
   <grant role="zope.Manager" principal="zope.mgr" />
 
+  <include package="${namespace_package}.${main_package}" file="securitypolicy.zcml" />
+  <include package="${namespace_package}.${main_package}" file="application.zcml" />
+
 </configure>

Added: bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/interfaces.py
===================================================================
--- bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/interfaces.py	                        (rev 0)
+++ bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/interfaces.py	2010-01-12 03:35:21 UTC (rev 108044)
@@ -0,0 +1,18 @@
+from zope.container.interfaces import IContainer
+from zope.schema import TextLine
+from zope.schema import Text
+
+class ISampleApplication(IContainer):
+    """The main application container."""
+
+    name = TextLine(
+        title=u"Name",
+        description=u"Name of application.",
+        default=u"",
+        required=True)
+
+    description = Text(
+        title=u"Description",
+        description=u"The name of application container.",
+        default=u"",
+        required=False)

Modified: bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/securitypolicy.zcml_tmpl
===================================================================
--- bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/securitypolicy.zcml_tmpl	2010-01-12 01:18:03 UTC (rev 108043)
+++ bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/securitypolicy.zcml_tmpl	2010-01-12 03:35:21 UTC (rev 108044)
@@ -7,21 +7,42 @@
 
   <include package="zope.securitypolicy" />
 
-  <securityPolicy
-      component="zope.securitypolicy.zopepolicy.ZopeSecurityPolicy"
-      />
+  <securityPolicy 
+     component="zope.securitypolicy.zopepolicy.ZopeSecurityPolicy" />
 
-  <role
-      id="zope.Anonymous"
-      title="Everybody"
-      description="All users have this role implicitly"
-      />
-  <role id="zope.Manager" title="Site Manager" />
-  <role id="zope.Member" title="Site Member" />
+  <unauthenticatedPrincipal
+     id="zope.anybody"
+     title="Unauthenticated User" />
 
-  <!-- Replace the following directive if you don't want public access -->
+  <unauthenticatedGroup
+     id="zope.Anybody"
+     title="Unauthenticated Users" />
+
+  <authenticatedGroup
+     id="zope.Authenticated"
+     title="Authenticated Users" />
+
+  <everybodyGroup
+     id="zope.Everybody"
+     title="All Users" />
+
+  <role id="zope.Anonymous" title="Everybody"
+        description="All users have this role implicitly" />
   <grant permission="zope.View" role="zope.Anonymous" />
 
+  <role id="zope.Manager" title="Site Manager" />
   <grantAll role="zope.Manager" />
 
+  <principal
+     id="zope.manager"
+     title="Manager"
+     login="admin"
+     password="admin"
+     password_manager="Plain Text"
+     />
+
+  <grant
+     role="zope.Manager"
+     principal="zope.manager" />
+
 </configure>

Modified: bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/views.py
===================================================================
--- bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/views.py	2010-01-12 01:18:03 UTC (rev 108043)
+++ bluebream/trunk/src/bluebream/project_template/src/+namespace_package+/+main_package+/views.py	2010-01-12 03:35:21 UTC (rev 108044)
@@ -1,5 +1,23 @@
 from zope.publisher.browser import BrowserView
+from zope.container.interfaces import INameChooser
+from zope.formlib import form
 
+from interfaces import ISampleApplication
+from app import SampleApplication
+
+class AddSampleApplication(form.AddForm):
+
+    form_fields = form.Fields(ISampleApplication)
+
+    def createAndAdd(self, data):
+        name = data['name']
+        description = data.get('description')
+        namechooser = INameChooser(self.context)
+        app = SampleApplication()
+        name = namechooser.chooseName(name, app)
+        self.context[name] = app
+
+
 class RootDefaultView(BrowserView):
 
     def __call__(self):

Modified: bluebream/trunk/src/bluebream/tests/bluebream.txt
===================================================================
--- bluebream/trunk/src/bluebream/tests/bluebream.txt	2010-01-12 01:18:03 UTC (rev 108043)
+++ bluebream/trunk/src/bluebream/tests/bluebream.txt	2010-01-12 03:35:21 UTC (rev 108044)
@@ -59,9 +59,11 @@
         Creating ./sample/src/test_name/test_main/
         Copying README.txt_tmpl to ./sample/src/test_name/test_main/README.txt
         Copying __init__.py to ./sample/src/test_name/test_main/__init__.py
+        Copying app.py to ./sample/src/test_name/test_main/app.py
         Copying application.zcml_tmpl to ./sample/src/test_name/test_main/application.zcml
         Copying configure.zcml_tmpl to ./sample/src/test_name/test_main/configure.zcml
         Copying ftesting.zcml_tmpl to ./sample/src/test_name/test_main/ftesting.zcml
+        Copying interfaces.py to ./sample/src/test_name/test_main/interfaces.py
         Copying securitypolicy.zcml_tmpl to ./sample/src/test_name/test_main/securitypolicy.zcml
         Copying startup.py to ./sample/src/test_name/test_main/startup.py
         Copying tests.py_tmpl to ./sample/src/test_name/test_main/tests.py



More information about the checkins mailing list