[z3-checkins] r7038 - z3/xicken/trunk/src/xicken

tseaver at codespeak.net tseaver at codespeak.net
Tue Oct 19 19:15:11 MEST 2004


Author: tseaver
Date: Tue Oct 19 19:15:06 2004
New Revision: 7038

Added:
   z3/xicken/trunk/src/xicken/xicken_site.pt
Modified:
   z3/xicken/trunk/src/xicken/browser.py
   z3/xicken/trunk/src/xicken/configure.zcml
   z3/xicken/trunk/src/xicken/xicken_macros.pt
Log:
Expose site title for editing, and use it in the page.

Dictum:  Mom should never have to ask, "What is this Xickens thing?"

Also, Xickens is *not* a CMS;  it is a content-management application.


Modified: z3/xicken/trunk/src/xicken/browser.py
==============================================================================
--- z3/xicken/trunk/src/xicken/browser.py	(original)
+++ z3/xicken/trunk/src/xicken/browser.py	Tue Oct 19 19:15:06 2004
@@ -59,6 +59,30 @@
     def redirectToFrontPage(self):
         self.request.response.redirect("FrontPage")
 
+    def updateSite(self):
+
+        if self.update_status:
+            return self.update_status
+
+        if 'SUBMIT' in self.request:
+
+            title = self.request.get('title')
+
+            if not title:
+                self.errors['title'] = _('Must supply title.')
+
+            if self.errors:
+                status = _("Could not save configuration.")
+                get_transaction().abort()
+            else:
+                self.context.title = title
+                notify(ObjectModifiedEvent(self.context))
+                status = _("Site configuration saved.")
+
+            self.update_status = status
+
+        return self.update_status
+
     def addPage(self):
         self.errors.clear()
 

Modified: z3/xicken/trunk/src/xicken/configure.zcml
==============================================================================
--- z3/xicken/trunk/src/xicken/configure.zcml	(original)
+++ z3/xicken/trunk/src/xicken/configure.zcml	Tue Oct 19 19:15:06 2004
@@ -56,6 +56,14 @@
 
  <browser:page
     for=".interfaces.IXickenSite"
+    name="edit.html"
+    class=".browser.XickenSiteView"
+    template="xicken_site.pt"
+    permission="zope.ManageContent"
+    />
+
+ <browser:page
+    for=".interfaces.IXickenSite"
     name="addPage.html"
     class=".browser.XickenSiteView"
     template="xicken_add.pt"
@@ -90,7 +98,7 @@
     name="edit.html"
     class=".browser.XickenPageView"
     template="xicken_edit.pt"
-    permission="zope.View"
+    permission="zope.ManageContent"
     />
 
  <browser:resource

Modified: z3/xicken/trunk/src/xicken/xicken_macros.pt
==============================================================================
--- z3/xicken/trunk/src/xicken/xicken_macros.pt	(original)
+++ z3/xicken/trunk/src/xicken/xicken_macros.pt	Tue Oct 19 19:15:06 2004
@@ -35,6 +35,10 @@
          <a tal:attributes="href string:${view/site_url}/@@removePage.html?page=${context/__name__}">
             Remove 
         </a></li>
+        <li id="config_action">
+         <a tal:attributes="href string:${view/site_url}/@@edit.html">
+            Site 
+        </a></li>
     </div>
 
     <div id="contentnav">

Added: z3/xicken/trunk/src/xicken/xicken_site.pt
==============================================================================
--- (empty file)
+++ z3/xicken/trunk/src/xicken/xicken_site.pt	Tue Oct 19 19:15:06 2004
@@ -0,0 +1,21 @@
+<tal:process tal:define="status view/updateSite;
+                         errors view/errors;
+                        "
+><html metal:use-macro="context/@@macros.html/xicken">
+<body>
+
+  <div metal:fill-slot="content">
+   <form action="#"
+         tal:attributes="action string:${view/site_url}/@@edit.html;
+                        "
+   >
+   <input type="text" name="title" value="FRONT PAGE"
+          tal:attributes="value view/context/title;"
+   />
+   <input type="submit" name="SUBMIT" value="Save!" /> <br />
+   </form>
+
+  </div>
+
+</body>
+</html></tal:process>


More information about the z3-checkins mailing list