[Checkins] SVN: z3ext.layout/trunk/ Fixed bug with multple nameless pagelet

Nikolay Kim fafhrd at datacom.kz
Fri Oct 3 03:43:57 EDT 2008


Log message for revision 91686:
  Fixed bug with multple nameless pagelet

Changed:
  U   z3ext.layout/trunk/CHANGES.txt
  U   z3ext.layout/trunk/src/z3ext/layout/README.txt
  U   z3ext.layout/trunk/src/z3ext/layout/pagelet.txt
  U   z3ext.layout/trunk/src/z3ext/layout/zcml.py

-=-
Modified: z3ext.layout/trunk/CHANGES.txt
===================================================================
--- z3ext.layout/trunk/CHANGES.txt	2008-10-03 00:45:10 UTC (rev 91685)
+++ z3ext.layout/trunk/CHANGES.txt	2008-10-03 07:43:54 UTC (rev 91686)
@@ -2,6 +2,12 @@
 CHANGES
 =======
 
+1.4.6 (2008-10-03)
+------------------
+
+- Fixed bug with multple nameless pagelet
+
+
 1.4.5 (2008-08-18)
 ------------------
 

Modified: z3ext.layout/trunk/src/z3ext/layout/README.txt
===================================================================
--- z3ext.layout/trunk/src/z3ext/layout/README.txt	2008-10-03 00:45:10 UTC (rev 91685)
+++ z3ext.layout/trunk/src/z3ext/layout/README.txt	2008-10-03 07:43:54 UTC (rev 91686)
@@ -95,13 +95,11 @@
 
   >>> print view()
   <html>
-    <body>
-      <div id="portal">
-        <div id="workspace">
-          <div id="content">root</div>
-        </div>
-      </div>
-    </body>
+     <body>
+        <div id="portal">
+          <div id="workspace">
+          <div id="content">root</div></div></div>
+     </body>
   </html>
 
 All 3 our layout rendered. view rendered inside nameless layout then in
@@ -117,9 +115,7 @@
     <body>
       <div id="portal">
         <div id="workspace">
-          <div id="content">folder1</div>
-        </div>
-      </div>
+        <div id="content">folder1</div></div></div>
     </body>
   </html>
 
@@ -136,9 +132,7 @@
     <body>
       <div id="portal">
         <div id="workspace">
-          <div id="content">folder1_1_1</div>
-        </div>
-      </div>
+          <div id="content">folder1_1_1</div></div></div>
     </body>
   </html>
 
@@ -180,12 +174,10 @@
           <tr>
             <td id="column1">Column1</td>
             <td id="column2">
-              <div id="content">folder1</div>
-            </td>
+              <div id="content">folder1</div></td>
             <td id="column3">Column3</td>
           </tr>
-        </table>
-      </div>
+        </table></div>
     </body>
   </html>
 
@@ -199,12 +191,10 @@
           <tr>
             <td id="column1">Column1</td>
             <td id="column2">
-              <div id="content">folder1_1</div>
-            </td>
+              <div id="content">folder1_1</div></td>
             <td id="column3">Column3</td>
           </tr>
-        </table>
-      </div>
+        </table></div>
     </body>
   </html>
 
@@ -217,12 +207,10 @@
           <tr>
             <td id="column1">Column1</td>
             <td id="column2">
-              <div id="content">folder1_1_1</div>
-            </td>
+              <div id="content">folder1_1_1</div></td>
             <td id="column3">Column3</td>
           </tr>
-        </table>
-      </div>
+        </table></div>
     </body>
   </html>
 
@@ -259,13 +247,10 @@
                 <div id="content1_1">
                   <h1>Folder1_1</h1>
                   <div>folder1_1</div>
-                </div>
-              </div>
-            </td>
+                </div></div></td>
             <td id="column3">Column3</td>
           </tr>
-        </table>
-      </div>
+        </table></div>
      </body>
   </html>
 
@@ -305,14 +290,10 @@
                     <div id="content1_1_1">
                       <h1>Folder1_1_1</h1>
                       <div>folder1_1_1</div>
-                    </div>
-                  </div>
-                </div>
-              </div>
-            </td>
+                    </div></div>
+                </div></div></td>
             <td id="column3">Column3</td>
           </tr>
-        </table>
-      </div>
+        </table></div>
     </body>
   </html>

Modified: z3ext.layout/trunk/src/z3ext/layout/pagelet.txt
===================================================================
--- z3ext.layout/trunk/src/z3ext/layout/pagelet.txt	2008-10-03 00:45:10 UTC (rev 91685)
+++ z3ext.layout/trunk/src/z3ext/layout/pagelet.txt	2008-10-03 07:43:54 UTC (rev 91686)
@@ -225,18 +225,36 @@
 
 Pagelet without name
 
-  >>> class IMyPagelet(interface.Interface):
+  >>> class IMyPagelet1(interface.Interface):
   ...     pass
 
+  >>> class IMyPagelet2(interface.Interface):
+  ...     pass
+
+  >>> template2 = os.path.join(temp_dir, 'pagelet2.pt')
+  >>> open(template2, 'w').write('''<div>My pagelet2</div>''')
+
   >>> context = xmlconfig.string("""
   ... <configure xmlns:z3ext="http://namespaces.zope.org/z3ext">
   ...   <z3ext:pagelet
   ...       template="%s"
-  ...       provides="z3ext.layout.TESTS.IMyPagelet"
+  ...       provides="z3ext.layout.TESTS.IMyPagelet1"
   ...       permission="zope.Public" />
+  ...   <z3ext:pagelet
+  ...       template="%s"
+  ...       provides="z3ext.layout.TESTS.IMyPagelet2"
+  ...       permission="zope.Public" />
   ... </configure>
-  ... """%template, context)
+  ... """%(template, template2), context)
 
-  >>> pagelet = component.queryMultiAdapter((object(), TestRequest()), IMyPagelet)
-  >>> IMyPagelet.providedBy(pagelet)
+  >>> pagelet = component.queryMultiAdapter((object(), TestRequest()), IMyPagelet1)
+  >>> IMyPagelet1.providedBy(pagelet)
   True
+  >>> pagelet.render()
+  u'<div>My pagelet</div>'
+  
+  >>> pagelet = component.queryMultiAdapter((object(), TestRequest()), IMyPagelet2)
+  >>> IMyPagelet2.providedBy(pagelet)
+  True
+  >>> pagelet.render()
+  u'<div>My pagelet2</div>'
\ No newline at end of file

Modified: z3ext.layout/trunk/src/z3ext/layout/zcml.py
===================================================================
--- z3ext.layout/trunk/src/z3ext/layout/zcml.py	2008-10-03 00:45:10 UTC (rev 91685)
+++ z3ext.layout/trunk/src/z3ext/layout/zcml.py	2008-10-03 07:43:54 UTC (rev 91686)
@@ -330,7 +330,7 @@
     # register pagelet
     for iface in provides:
         _context.action(
-            discriminator = ('z3ext:pagelet', for_, layer, name),
+            discriminator = ('z3ext:pagelet', for_, layer, name, iface),
             callable = handler,
             args = ('registerAdapter',
                     new_class, (for_, layer), iface, name, _context.info))



More information about the Checkins mailing list