From aa16ad1ab1a2627ec98617dd7a5b4ddd94ca3740 Mon Sep 17 00:00:00 2001
From: Ivan Tyagov <ivan@nexedi.com>
Date: Tue, 30 Nov 2010 08:34:49 +0000
Subject: [PATCH] Make it possible to render an arbitrary number of columns
 (not hard coded to 3 any more).

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@40912 20353a03-c40f-0410-a6d1-a30d3c3de9de
---
 .../KnowledgePad_viewDashboardWidget.xml      | 43 ++++++-------------
 bt5/erp5_knowledge_pad/bt/revision            |  2 +-
 2 files changed, 13 insertions(+), 32 deletions(-)

diff --git a/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/KnowledgePad_viewDashboardWidget.xml b/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/KnowledgePad_viewDashboardWidget.xml
index a6107f16ca..b977817faf 100644
--- a/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/KnowledgePad_viewDashboardWidget.xml
+++ b/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/KnowledgePad_viewDashboardWidget.xml
@@ -36,8 +36,7 @@
             <key> <string>_text</string> </key>
             <value> <unicode encoding="cdata"><![CDATA[
 
-<div id="page_wrapper"  \n
-     tal:define="layout here/KnowledgePad_getBoxColumnLayout;\n
+<div tal:define="layout here/KnowledgePad_getBoxColumnLayout;\n
                  real_context python: options.get(\'real_context\', None);\n
                  cancel_url python: options.get(\'cancel_url\', None);\n
                  isAnon python: here.portal_membership.isAnonymousUser();\n
@@ -50,41 +49,23 @@
                                             \'portal-column\');"\n
      tal:attributes="id page_wrapper_id">\n
 \n
+    <!-- No gadgets message -->\n
     <span metal:use-macro="container/Base_viewKnowledgePadMacroLibrary/macros/add_new_gadget_message"/> \n
 \n
-    <div id="portal-column-0"\n
-         tal:attributes="class column_css_class"\n
-         tal:condition="python: columns>=1">\n
+    <!-- Render pad columns -->\n
+    <tal:block tal:repeat="column_index python: range(0, columns)">\n
+      <div tal:attributes="class column_css_class;\n
+                          id string:portal-column-${column_index}"\n
+           tal:condition="python: columns>=1+column_index">\n
 \n
-      <tal:block tal:condition="python: len(layout)>=1">\n
-        <span tal:replace="structure python:\n
-                             here.KnowledgePad_viewColumnWidget(section_layout=layout[0],\n
+        <tal:block tal:condition="python: len(layout)>=1+column_index"\n
+                   tal:replace="structure python:\n
+                               here.KnowledgePad_viewColumnWidget(section_layout=layout[column_index],\n
                                                                 real_context=real_context,\n
                                                                 cancel_url=cancel_url)"/>\n
-      </tal:block> \n
-    </div>\n
 \n
-    <div id="portal-column-1"\n
-         tal:attributes="class column_css_class"\n
-         tal:condition="python: columns>=2">\n
-      <tal:block tal:condition="python: len(layout)>=2">\n
-        <span tal:replace="structure python:\n
-                          here.KnowledgePad_viewColumnWidget(section_layout=layout[1],\n
-                                                             real_context=real_context,\n
-                                                             cancel_url=cancel_url)"/>\n
-      </tal:block>\n
-    </div>\n
-\n
-    <div id="portal-column-2"\n
-         tal:attributes="class column_css_class"\n
-         tal:condition="python: columns>=3">\n
-      <tal:block tal:condition="python: len(layout)>=3">\n
-        <span tal:replace="structure python:\n
-                          here.KnowledgePad_viewColumnWidget(section_layout=layout[2],\n
-                                                             real_context=real_context,\n
-                                                             cancel_url=cancel_url)"/>\n
-      </tal:block>\n
-    </div>\n
+      </div>\n
+    </tal:block>\n
 \n
 </div>\n
 
diff --git a/bt5/erp5_knowledge_pad/bt/revision b/bt5/erp5_knowledge_pad/bt/revision
index e78e423d29..b0c703c41a 100644
--- a/bt5/erp5_knowledge_pad/bt/revision
+++ b/bt5/erp5_knowledge_pad/bt/revision
@@ -1 +1 @@
-627
\ No newline at end of file
+628
\ No newline at end of file
-- 
2.30.9