From afcbff4e9ec0dcb1900c3e8e5dc06d390a9e0276 Mon Sep 17 00:00:00 2001 From: Ivan Tyagov <ivan@nexedi.com> Date: Fri, 1 Aug 2008 15:17:02 +0000 Subject: [PATCH] Add navigation when browsing generated PDF thumbnails. Improve code structure. git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@22829 20353a03-c40f-0410-a6d1-a30d3c3de9de --- .../erp5_dms/PDF_renderHTMLPreviewAsImage.xml | 8 +- .../PDF_renderHTMLPreviewNavigation.xml | 129 +++++++ .../erp5_dms/PDF_viewHTMLPreviewAsImage.xml | 1 + .../PDF_viewHTMLPreviewAsImage/navigation.xml | 319 ++++++++++++++++++ bt5/erp5_dms/bt/revision | 2 +- 5 files changed, 456 insertions(+), 3 deletions(-) create mode 100644 bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/PDF_renderHTMLPreviewNavigation.xml create mode 100644 bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/PDF_viewHTMLPreviewAsImage/navigation.xml diff --git a/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/PDF_renderHTMLPreviewAsImage.xml b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/PDF_renderHTMLPreviewAsImage.xml index cc9ff16876..c317993a93 100644 --- a/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/PDF_renderHTMLPreviewAsImage.xml +++ b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/PDF_renderHTMLPreviewAsImage.xml @@ -51,10 +51,14 @@ <key> <string>_text</string> </key> <value> <string encoding="cdata"><![CDATA[ -<div tal:define="frame request/frame|python:here.PDF_getPageNumberFromSelectionIndex(request.get(\'selection_index\', 0));\n +<div class="pdf-preview-content"\n + tal:define="frame request/frame|\n + python:here.PDF_getPageNumberFromSelectionIndex(request.get(\'selection_index\', 0));\n display request/display|string:large;\n format request/format|string:jpg;">\n -<img src="" tal:attributes="src string:${here/absolute_url}/index_html?display=${display}&format=${format}&frame=${frame}">\n + <img src="" \n + tal:attributes="src\n + string:${here/absolute_url}/index_html?display=${display}&format=${format}&frame=${frame}">\n </div> ]]></string> </value> diff --git a/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/PDF_renderHTMLPreviewNavigation.xml b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/PDF_renderHTMLPreviewNavigation.xml new file mode 100644 index 0000000000..a9c6cd3a20 --- /dev/null +++ b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/PDF_renderHTMLPreviewNavigation.xml @@ -0,0 +1,129 @@ +<?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>__ac_local_roles__</string> </key> + <value> + <none/> + </value> + </item> + <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>_owner</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>_text</string> </key> + <value> <string encoding="cdata"><![CDATA[ + +<tal:block tal:define="current_thumbnail_index \n + request/frame|\n + python:here.PDF_getPageNumberFromSelectionIndex(request.get(\'selection_index\', 0));\n + selection_name request/selection_name;\n + all_thunmbnails python: here.PDF_countThumbnailList()[0][0];\n + next_thunmbnail_index python: current_thumbnail_index + 1;\n + previous_thunmbnail_index python: current_thumbnail_index - 1;\n + parent_doc_url here/absolute_url;\n + base_url string:\n + ${parent_doc_url}/PDF_viewHTMLPreviewAsImage?selection_name=${selection_name}&;">\n +\n + <div class="pdf-preview-navigation">\n + <!--\n + <span i18n:translate=""\n + i18n:domain="ui">Thumbnail</span>: \n + <span tal:content="current_thumbnail_index"/> of <span tal:content="all_thunmbnails"/>\n + -->\n +\n + <a href=""\n + tal:attributes="href string:${base_url}selection_index=0">\n + <img src="images/2leftarrowb.png" \n + i18n:translate="alt"\n + i18n:domain="ui"\n + alt="First"/>\n + </a>\n +\n + <a href=""\n + tal:condition="python: current_thumbnail_index >= 1"\n + tal:attributes="href string:${base_url}selection_index=${previous_thunmbnail_index}">\n + <img src="images/1leftarrowb.png" \n + i18n:translate="alt"\n + i18n:domain="ui"\n + alt="Previous"/>\n + </a>\n +\n + <a href=""\n + style="font-weight: bold;vertical-align:top;"\n + i18n:translate=""\n + i18n:domain="ui"\n + tal:attributes="href string:${parent_doc_url}/view">Exit Preview</a>\n +\n + <a href=""\n + i18n:translate=""\n + i18n:domain="ui"\n + tal:condition="python: all_thunmbnails > next_thunmbnail_index"\n + tal:attributes="href string:${base_url}selection_index=${next_thunmbnail_index}">\n + <img src="images/1rightarrowb.png" \n + i18n:translate="alt"\n + i18n:domain="ui"\n + alt="Next"/>\n + </a>\n +\n + <a href=""\n + i18n:translate=""\n + i18n:domain="ui"\n + tal:attributes="href string:${base_url}selection_index=${all_thunmbnails}">\n + <img src="images/2rightarrowb.png" \n + i18n:translate="alt"\n + i18n:domain="ui"\n + alt="Last"/>\n + </a>\n +\n +\n + </div>\n +</tal:block> + +]]></string> </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>PDF_renderHTMLPreviewNavigation</string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/PDF_viewHTMLPreviewAsImage.xml b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/PDF_viewHTMLPreviewAsImage.xml index 99d3b24128..3c0e6e2e77 100644 --- a/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/PDF_viewHTMLPreviewAsImage.xml +++ b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/PDF_viewHTMLPreviewAsImage.xml @@ -84,6 +84,7 @@ <key> <string>bottom</string> </key> <value> <list> + <string>navigation</string> <string>body</string> </list> </value> diff --git a/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/PDF_viewHTMLPreviewAsImage/navigation.xml b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/PDF_viewHTMLPreviewAsImage/navigation.xml new file mode 100644 index 0000000000..cb6ea418de --- /dev/null +++ b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/PDF_viewHTMLPreviewAsImage/navigation.xml @@ -0,0 +1,319 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <global name="EditorField" module="Products.ERP5Form.EditorField"/> + <tuple/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>_owner</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>navigation</string> </value> + </item> + <item> + <key> <string>message_values</string> </key> + <value> + <dictionary> + <item> + <key> <string>external_validator_failed</string> </key> + <value> <string>The input failed the external validator.</string> </value> + </item> + <item> + <key> <string>line_too_long</string> </key> + <value> <string>A line was too long.</string> </value> + </item> + <item> + <key> <string>required_not_found</string> </key> + <value> <string>Input is required but no input given.</string> </value> + </item> + <item> + <key> <string>too_long</string> </key> + <value> <string>You entered too many characters.</string> </value> + </item> + <item> + <key> <string>too_many_lines</string> </key> + <value> <string>You entered too many lines.</string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>height</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_length</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_linelength</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_lines</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>text_editor</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>width</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> + </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>height</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_length</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_linelength</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_lines</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>text_editor</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>width</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>alternate_name</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>css_class</string> </key> + <value> <string>hidden_label</string> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>enabled</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>external_validator</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>extra</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>height</string> </key> + <value> <int>5</int> </value> + </item> + <item> + <key> <string>hidden</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>max_length</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_linelength</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>max_lines</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>required</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>text_editor</string> </key> + <value> <string>text_area</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>body</string> </value> + </item> + <item> + <key> <string>unicode</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>whitespace_preserve</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>width</string> </key> + <value> <int>40</int> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> + <record id="2" aka="AAAAAAAAAAI="> + <pickle> + <tuple> + <global name="TALESMethod" module="Products.Formulator.TALESField"/> + <tuple/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>_text</string> </key> + <value> <string>here/PDF_renderHTMLPreviewNavigation</string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_dms/bt/revision b/bt5/erp5_dms/bt/revision index 17a2ddadb4..d17ea3a7d5 100644 --- a/bt5/erp5_dms/bt/revision +++ b/bt5/erp5_dms/bt/revision @@ -1 +1 @@ -907 \ No newline at end of file +908 \ No newline at end of file -- 2.30.9