[Erp5-report] r26762 - in /erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style: SkinTemplat...

nobody at svn.erp5.org nobody at svn.erp5.org
Thu Apr 30 18:28:16 CEST 2009


Author: fabien
Date: Thu Apr 30 18:28:16 2009
New Revision: 26762

URL: http://svn.erp5.org?rev=26762&view=rev
Log:
improve page navigation. Now it use a separate template, so we are able to have
the same page navigation on all listbox styles.

Make it working with gadgets
fix name and title on some buttons
force to table style in table page template
force to search style in search page template

Added:
    erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/page_navigation_render.xml
Modified:
    erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asHTML.xml
    erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asSearchStyleHTML.xml
    erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asStandardHTML.xml
    erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asTableStyleHTML.xml
    erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/bt/revision

Modified: erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asHTML.xml
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asHTML.xml?rev=26762&r1=26761&r2=26762&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asHTML.xml [utf8] (original)
+++ erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asHTML.xml [utf8] Thu Apr 30 18:28:16 2009
@@ -59,8 +59,8 @@
               show_select_column here/showSelectColumn;\n
               show_anchor_column here/showAnchorColumn;\n
               show_search_line here/showSearchLine;\n
-              list_style request/list_style | nothing;\n
               is_web_mode request/is_web_mode | nothing;\n
+              list_style python:request.get(\'list_style\', is_web_mode and \'table\' or None);\n
               is_gadget_mode request/is_gadget_mode | nothing;">\n
   <!-- ListBox starts here.  -->\n
   <input type="hidden" name="list_selection_name" value="default" tal:attributes="value selection_name" />\n
@@ -142,10 +142,10 @@
   <tal:block tal:condition="python: list_style == \'search\'">\n
     <span metal:use-macro="real_context/ListBox_asSearchStyleHTML/macros/main"/>\n
   </tal:block>\n
-  <tal:block tal:condition="python: list_style != \'search\' and is_web_mode">\n
+  <tal:block tal:condition="python: list_style == \'table\'">\n
     <span metal:use-macro="real_context/ListBox_asTableStyleHTML/macros/main"/>\n
   </tal:block>\n
-  <tal:block tal:condition="python: list_style != \'search\' and not is_web_mode">\n
+  <tal:block tal:condition="python: list_style not in (\'search\', \'table\')">\n
     <span metal:use-macro="real_context/ListBox_asStandardHTML/macros/main"/>\n
   </tal:block>\n
 </tal:block>\n

Modified: erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asSearchStyleHTML.xml
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asSearchStyleHTML.xml?rev=26762&r1=26761&r2=26762&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asSearchStyleHTML.xml [utf8] (original)
+++ erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asSearchStyleHTML.xml [utf8] Thu Apr 30 18:28:16 2009
@@ -319,7 +319,8 @@
 \n
               <tal:block tal:repeat="p python: range(0, here.total_pages)">\n
                 <a tal:condition="is_gadget_mode"\n
-                   tal:define = "params python: {\'setPage:method\':\'\', \'list_start\': p*listbox_max_lines}"\n
+                   tal:define = "params python: {\'setPage:method\':\'\',\n
+                   \'list_start\': p*listbox_max_lines, \'list_style\':\'search\'}"\n
                    style="cursor:pointer;"\n
                    tal:content="python: p+1"\n
                    tal:attributes="class python: p == here.current_page and \'selected\' or nothing;\n

Modified: erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asStandardHTML.xml
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asStandardHTML.xml?rev=26762&r1=26761&r2=26762&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asStandardHTML.xml [utf8] (original)
+++ erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asStandardHTML.xml [utf8] Thu Apr 30 18:28:16 2009
@@ -118,50 +118,9 @@
 <tal:block tal:condition="python: here.total_pages > 1">\n
               <tal:block tal:condition="not: is_gadget_mode">\n
                 <td style="white-space: nowrap; vertical-align: middle; text-align: center;">\n
-                  <tal:block tal:condition="python: here.current_page > 0">\n
-                  <input\n
-                    id="listbox_first_page" type="image" src="2leftarrowv.png"\n
-                    title="First Page" name="firstPage:method"\n
-                    class="listbox_first_page"\n
-                    tal:attributes="id string:${field_id}_first_page;\n
-                                    name string:${field_id}_firstPage:method;\n
-                                    src string:${portal_url_string}/images/2leftarrowv.png"\n
-                    i18n:domain="ui" i18n:attributes="title" />\n
-                  <input\n
-                    id="listbox_previous_page" type="image" src="1leftarrowv.png"\n
-                    title="Previous Page" name="previousPage:method"\n
-                    class="listbox_previous_page"\n
-                    tal:attributes="id string:${field_id}_previous_page;\n
-                                    name string:${field_id}_previousPage:method;\n
-                                    src string:${portal_url_string}/images/1leftarrowv.png"\n
-                    i18n:domain="ui" i18n:attributes="title" />\n
-                  </tal:block>\n
-                  <input id="listbox_set_page" name="page_start" onblur="this.value=this.defaultValue"\n
-                         tal:attributes="id string:${field_id}_set_page;\n
-                                         name string:${field_id}_page_start;\n
-                                         value python:here.current_page + 1;\n
-                                         size python:len(str(here.total_pages));\n
-                                         onkeyup string:submitFormOnEnter(event, this.form, \'${field_id}_setPage\')" />\n
-                  / <tal:block content="here/total_pages" />\n
-                  <tal:block tal:condition="python: here.current_page < here.total_pages - 1">\n
-                  <input\n
-                    id="listbox_next_page" type="image" src="1rightarrowv.png"\n
-                    title="Next Page" name="nextPage:method" class="listbox_next_page"\n
-                    tal:attributes="id string:${field_id}_next_page;\n
-                                    name string:${field_id}_nextPage:method;\n
-                                    src string:${portal_url_string}/images/1rightarrowv.png"\n
-                    i18n:domain="ui" i18n:attributes="title" />\n
-                  <input\n
-                    id="listbox_last_page" type="image" src="2rightarrowv.png"\n
-                    title="Last Page" name="lastPage:method" class="listbox_last_page"\n
-                    tal:attributes="id string:${field_id}_last_page;\n
-                                    name string:${field_id}_lastPage:method;\n
-                                    src string:${portal_url_string}/images/2rightarrowv.png"\n
-                    i18n:domain="ui" i18n:attributes="title" />\n
-                  </tal:block>\n
-                </td>\n
-              </tal:block> \n
-\n
+                  <tal:block metal:use-macro="real_context/page_navigation_render/macros/page_navigation" />\n
+                </td>\n
+              </tal:block>\n
               <tal:block tal:condition="is_gadget_mode">\n
                 <td style="white-space: nowrap; vertical-align: middle; text-align: center;">\n
                   <img tal:condition="python: here.current_page > 0"\n

Modified: erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asTableStyleHTML.xml
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asTableStyleHTML.xml?rev=26762&r1=26761&r2=26762&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asTableStyleHTML.xml [utf8] (original)
+++ erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/ListBox_asTableStyleHTML.xml [utf8] Thu Apr 30 18:28:16 2009
@@ -321,67 +321,34 @@
                 </tal:block>\n
               </tr>\n
               <tr tal:condition="python: int(here.total_size) > int(here.getMaxLineNumber())"\n
-                class="tfoot"\n
+                class="tfoot">\n
+                <td style="white-space: nowrap; vertical-align: middle;"\n
+                  tal:condition = "not: is_gadget_mode"\n
+                  tal:attributes="colspan python: len(here.getSelectedColumnList()) + bool(show_select_column)">\n
+                  <tal:block metal:use-macro="real_context/page_navigation_render/macros/page_navigation" />\n
+                </td>\n
+                <!-- Page navigation for gadget mode -->\n
+\n
+                <td class="pageNavigation"\n
+                    tal:condition = "is_gadget_mode"\n
                 tal:define="max_lines      python: here.getMaxLineNumber();\n
                               total_page     python: here.total_pages;\n
                               page_id        python: here.current_page;\n
                               current_page   python: page_id + 1;\n
                               previous_page  python: current_page - 1;\n
-                              next_page      python: current_page + 1;\n
-                              ">\n
-                <td class="pageNavigation"\n
-                    tal:condition = "not:is_gadget_mode"\n
+                              next_page      python: current_page + 1;"\n
                     tal:attributes="colspan python: len(here.getSelectedColumnList()) + bool(show_select_column)">\n
+\n
                   <tal:block tal:condition="python: current_page > 1">\n
-          \n
-                    <button title="First page: Page 1" name="firstPage:method"\n
-                            tal:attributes="id string:${field_id}_first_page;\n
-                                            name string:${field_id}_firstPage:method;">|&lt;</button>\n
-                    <button name="previousPage:method"\n
-                            tal:attributes="title python: \'Previous Page: page %s\' % previous_page;\n
-                                            id    string:${field_id}_previous_page;\n
-                                            name string:${field_id}_previousPage:method;">&lt;&lt;</button>\n
-                  </tal:block>\n
-                  <select\n
-                    name="list_start" title="Change Page" size="1"\n
-                    tal:attributes="id       string:${field_id}_page_selection;\n
-                                    name     string:${field_id}_list_start;\n
-                                    onChange string:submitAction(this.form, \'${context_url}/${field_id}_setPage\')"\n
-                    i18n:domain="ui" i18n:attributes="title">\n
-                    <option\n
-                      tal:repeat="p python: range(total_page)"\n
-                      tal:attributes="selected python: p == page_id;\n
-                                      value    python: p * max_lines"\n
-                      i18n:domain="ui" i18n:translate="">Page <tal:block tal:replace="python: p + 1" i18n:name="page">0</tal:block> of <tal:block tal:replace="total_page" i18n:name="total_pages">1</tal:block></option>\n
-                  </select>\n
-                  <tal:block tal:condition="python: current_page < total_page">\n
-                    <button\n
-                      name="nextPage:method"\n
-                      tal:attributes="title python: Base_translateString(\'Next page: Page ${next_page}\', mapping={\'next_page\': next_page});\n
-                                      id    string:${field_id}_next_page;\n
-                                      name string:${field_id}_nextPage:method;">&gt;&gt;</button>\n
-                    <button\n
-                      name="lastPage:method"\n
-                      tal:attributes="title python: Base_translateString(\'Last page: Page ${total_page}\', mapping={\'total_page\': total_page});\n
-                                      id    string:${field_id}_last_page;\n
-                                      name string:${field_id}_lastPage:method;">&gt;|</button>\n
-                  </tal:block>\n
-                </td>\n
-\n
-                <!-- Page navigation for gadget mode -->\n
-\n
-                <td class="pageNavigation"\n
-                    tal:condition = "is_gadget_mode"\n
-                    tal:attributes="colspan python: len(here.getSelectedColumnList()) + bool(show_select_column)">\n
-\n
-                  <tal:block tal:condition="python: current_page > 1">\n
-                    <button tal:define ="params python: {field_id+\'_firstPage:method\':\'\'}"\n
+                    <button tal:define ="params python: {field_id+\'_firstPage:method\':\'\', \'list_style\':\'table\'}"\n
                            title="First page: Page 1" name="firstPage"\n
+                           name = firstPage"\n
                            type = "button" \n
                            tal:attributes="id string:${field_id}_first_page;\n
                                            value string:|&lt;;\n
                                            onclick python: real_context.KnowledgePad_generateAjaxCall(context_url+\'/\'+form_id,box,dom_id,params)">|&lt;</button>\n
-                    <button tal:define ="params python: {field_id+\'_previousPage:method\':\'\'}"\n
+                    <button tal:define ="params python: {field_id+\'_previousPage:method\':\'\', \'list_style\':\'table\'}"\n
+                           title="Previous"\n
                            name="previous"\n
                            type="button"\n
                            tal:attributes="title python: \'Previous Page: page %s\' % previous_page;\n
@@ -389,8 +356,9 @@
                                            value string:&lt;&lt;;\n
                                            onclick python: real_context.KnowledgePad_generateAjaxCall(context_url+\'/\'+form_id,box,dom_id,params)">&lt;&lt;</button>\n
                   </tal:block>\n
-                  <select tal:define ="params python: {field_id+\'_setPage:method\':\'\',\'list_start\':\'this.value\'}"\n
+                  <select tal:define ="params python: {field_id+\'_setPage:method\':\'\',\'list_start\':\'this.value\',\'list_style\':\'table\'}"\n
                           title="Change Page" size="1"\n
+                          name="changePage"\n
                           tal:attributes=\'id string:${field_id}_page_selection;\n
                                           onChange python: real_context.KnowledgePad_generateAjaxCall(context_url+"/"+form_id,box,dom_id,params).replace("\\"this.value\\"","this.value")\'\n
                                           i18n:domain="ui" i18n:attributes="title">\n
@@ -401,13 +369,15 @@
                       i18n:domain="ui" i18n:translate="">Page <tal:block tal:replace="python: p + 1" i18n:name="page">0</tal:block> of <tal:block tal:replace="total_page" i18n:name="total_pages">1</tal:block></option>\n
                   </select>\n
                   <tal:block tal:condition="python: current_page < total_page">\n
-                    <button tal:define ="params python: {field_id+\'_nextPage:method\':\'\'}"\n
+                    <button tal:define ="params python: {field_id+\'_nextPage:method\':\'\',\'list_style\':\'table\'}"\n
+                           title="Next"\n
                            name="next"\n
                            type="button"\n
                            tal:attributes="title python: \'Next Page: page %s\' % next_page;\n
                                            id    string:${field_id}_next_page;\n
                                            onclick python: real_context.KnowledgePad_generateAjaxCall(context_url+\'/\'+form_id,box,dom_id,params)">&gt;&gt;</button>\n
-                    <button tal:define ="params python: {field_id+\'_lastPage:method\':\'\',\'total_size\':int(here.total_size)}"\n
+                    <button tal:define ="params python: {field_id+\'_lastPage:method\':\'\',\'total_size\':int(here.total_size), \'list_style\':\'table\'}"\n
+                           title="Last Page"\n
                            name="lastPage"\n
                            type="button"\n
                            tal:attributes="title python: Base_translateString(\'Last page: Page ${total_page}\', mapping={\'total_page\': total_page});\n
@@ -416,8 +386,6 @@
                   </tal:block>\n
                 </td>\n
               </tr>\n
-\n
-\n
           </table>\n
 \n
           <!-- Advanced Search footer -->\n

Added: erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/page_navigation_render.xml
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/page_navigation_render.xml?rev=26762&view=auto
==============================================================================
--- erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/page_navigation_render.xml (added)
+++ erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/SkinTemplateItem/portal_skins/erp5_xhtml_style/page_navigation_render.xml [utf8] Thu Apr 30 18:28:16 2009
@@ -1,0 +1,113 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_text</string> </key>
+            <value> <string encoding="cdata"><![CDATA[
+
+<tal:block tal:replace="nothing"\n
+           xmlns:tal="http://xml.zope.org/namespaces/tal"\n
+           xmlns:metal="http://xml.zope.org/namespaces/metal"\n
+           xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
+  <tal:block metal:define-macro="page_navigation">\n
+    <tal:block tal:condition="python: here.current_page > 0">\n
+      <input\n
+        id="listbox_first_page" type="image" src="2leftarrowv.png"\n
+        title="First Page" name="firstPage:method"\n
+        class="listbox_first_page"\n
+        tal:attributes="id string:${field_id}_first_page;\n
+                        name string:${field_id}_firstPage:method;\n
+                        src string:${portal_url_string}/images/2leftarrowv.png"\n
+        i18n:domain="ui" i18n:attributes="title" />\n
+      <input\n
+        id="listbox_previous_page" type="image" src="1leftarrowv.png"\n
+        title="Previous Page" name="previousPage:method"\n
+        class="listbox_previous_page"\n
+        tal:attributes="id string:${field_id}_previous_page;\n
+                        name string:${field_id}_previousPage:method;\n
+                        src string:${portal_url_string}/images/1leftarrowv.png"\n
+        i18n:domain="ui" i18n:attributes="title" />\n
+      </tal:block>\n
+      <input id="listbox_set_page" name="page_start" onblur="this.value=this.defaultValue"\n
+             tal:attributes="id string:${field_id}_set_page;\n
+                             name string:${field_id}_page_start;\n
+                             value python:here.current_page + 1;\n
+                             size python:len(str(here.total_pages));\n
+                             onkeyup string:submitFormOnEnter(event, this.form, \'${field_id}_setPage\')" />\n
+      / <tal:block content="here/total_pages" />\n
+      <tal:block tal:condition="python: here.current_page < here.total_pages - 1">\n
+      <input\n
+        id="listbox_next_page" type="image" src="1rightarrowv.png"\n
+        title="Next Page" name="nextPage:method" class="listbox_next_page"\n
+        tal:attributes="id string:${field_id}_next_page;\n
+                        name string:${field_id}_nextPage:method;\n
+                        src string:${portal_url_string}/images/1rightarrowv.png"\n
+        i18n:domain="ui" i18n:attributes="title" />\n
+      <input\n
+        id="listbox_last_page" type="image" src="2rightarrowv.png"\n
+        title="Last Page" name="lastPage:method" class="listbox_last_page"\n
+        tal:attributes="id string:${field_id}_last_page;\n
+                        name string:${field_id}_lastPage:method;\n
+                        src string:${portal_url_string}/images/2rightarrowv.png"\n
+        i18n:domain="ui" i18n:attributes="title" />\n
+    </tal:block>\n
+  </tal:block>\n
+</tal:block>\n
+
+
+]]></string> </value>
+        </item>
+        <item>
+            <key> <string>content_type</string> </key>
+            <value> <string>text/html</string> </value>
+        </item>
+        <item>
+            <key> <string>expand</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>page_navigation_render</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>

Modified: erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/bt/revision
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/bt/revision?rev=26762&r1=26761&r2=26762&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/bt/revision [utf8] (original)
+++ erp5/trunk/products/ERP5/bootstrap/erp5_xhtml_style/bt/revision [utf8] Thu Apr 30 18:28:16 2009
@@ -1,1 +1,1 @@
-735
+736




More information about the Erp5-report mailing list