Commit 811127a8 authored by Jean-Paul Smets's avatar Jean-Paul Smets

Numerous bug fixes and improvements.

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@13355 20353a03-c40f-0410-a6d1-a30d3c3de9de
parent 06de7a8b
...@@ -42,7 +42,7 @@ ...@@ -42,7 +42,7 @@
</item> </item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>generate_site</string> </value> <value> <string>generate_section</string> </value>
</item> </item>
<item> <item>
<key> <string>permissions</string> </key> <key> <string>permissions</string> </key>
...@@ -58,7 +58,7 @@ ...@@ -58,7 +58,7 @@
</item> </item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>Generate Web Site Structure from Categories</string> </value> <value> <string>Generation Web Section Structure from Category</string> </value>
</item> </item>
<item> <item>
<key> <string>visible</string> </key> <key> <string>visible</string> </key>
...@@ -81,7 +81,7 @@ ...@@ -81,7 +81,7 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>text</string> </key> <key> <string>text</string> </key>
<value> <string>string:${object_url}/WebSite_viewGenerateSectionFromCategoryListDialog</string> </value> <value> <string>string:${object_url}/WebSection_viewGenerateSectionFromCategoryDialog</string> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
......
...@@ -48,7 +48,7 @@ ...@@ -48,7 +48,7 @@
<key> <string>permissions</string> </key> <key> <string>permissions</string> </key>
<value> <value>
<tuple> <tuple>
<string>View</string> <string>Manage portal</string>
</tuple> </tuple>
</value> </value>
</item> </item>
......
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.CMFCore.ActionInformation</string>
<string>ActionInformation</string>
</tuple>
<none/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>__ac_local_roles__</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>action</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>category</string> </key>
<value> <string>object_action</string> </value>
</item>
<item>
<key> <string>condition</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>icon</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>generate_section</string> </value>
</item>
<item>
<key> <string>permissions</string> </key>
<value>
<tuple>
<string>Manage portal</string>
</tuple>
</value>
</item>
<item>
<key> <string>priority</string> </key>
<value> <float>10.0</float> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Generation Web Section Structure from Category</string> </value>
</item>
<item>
<key> <string>visible</string> </key>
<value> <int>1</int> </value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<tuple>
<tuple>
<string>Products.CMFCore.Expression</string>
<string>Expression</string>
</tuple>
<none/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>text</string> </key>
<value> <string>string:${object_url}/WebSection_viewGenerateSectionFromCategoryDialog</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
...@@ -88,9 +88,7 @@ ...@@ -88,9 +88,7 @@
</item> </item>
<item> <item>
<key> <string>description</string> </key> <key> <string>description</string> </key>
<value> <value> <string></string> </value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>fallback_base_category</string> </key> <key> <string>fallback_base_category</string> </key>
......
...@@ -64,10 +64,6 @@ ...@@ -64,10 +64,6 @@
<name>Add CMF Caching Policy Managers</name> <name>Add CMF Caching Policy Managers</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='tuple'>
<name>Add CMF Calendar Tools</name>
<role>Manager</role>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>Add CMF Core Tools</name> <name>Add CMF Core Tools</name>
<role>Manager</role> <role>Manager</role>
...@@ -76,22 +72,17 @@ ...@@ -76,22 +72,17 @@
<name>Add CMF Default Tools</name> <name>Add CMF Default Tools</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='tuple'> <permission type='list'>
<name>Add CMF Report Tools</name> <name>Add CMF Groups Tools</name>
<role>Manager</role>
</permission> </permission>
<permission type='tuple'> <permission type='tuple'>
<name>Add CMF Setup Tools</name> <name>Add CMF Report Tools</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='tuple'> <permission type='tuple'>
<name>Add CMF Sites</name> <name>Add CMF Sites</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='tuple'>
<name>Add CMF Unique Id Tools</name>
<role>Manager</role>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>Add CMFActivity Tools</name> <name>Add CMFActivity Tools</name>
<role>Manager</role> <role>Manager</role>
...@@ -104,10 +95,6 @@ ...@@ -104,10 +95,6 @@
<name>Add CMFMailIn Tools</name> <name>Add CMFMailIn Tools</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='tuple'>
<name>Add Configured CMF Sites</name>
<role>Manager</role>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>Add Content Type Registrys</name> <name>Add Content Type Registrys</name>
<role>Manager</role> <role>Manager</role>
...@@ -208,6 +195,18 @@ ...@@ -208,6 +195,18 @@
<name>Add Formulator Forms</name> <name>Add Formulator Forms</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='list'>
<name>Add GroupUserFolder</name>
</permission>
<permission type='list'>
<name>Add GroupUserFolders</name>
</permission>
<permission type='list'>
<name>Add Groups</name>
</permission>
<permission type='list'>
<name>Add KZMailmans</name>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>Add LocalContents</name> <name>Add LocalContents</name>
<role>Manager</role> <role>Manager</role>
...@@ -224,10 +223,16 @@ ...@@ -224,10 +223,16 @@
<name>Add MailHost objects</name> <name>Add MailHost objects</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='list'>
<name>Add Mailman List Member</name>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>Add MessageCatalogs</name> <name>Add MessageCatalogs</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='list'>
<name>Add MimetypesRegistry Tools</name>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>Add Page Templates</name> <name>Add Page Templates</name>
<role>Manager</role> <role>Manager</role>
...@@ -248,6 +253,9 @@ ...@@ -248,6 +253,9 @@
<name>Add Plugin Registrys</name> <name>Add Plugin Registrys</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='list'>
<name>Add PortalTransforms Tools</name>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>Add Python Scripts</name> <name>Add Python Scripts</name>
<role>Manager</role> <role>Manager</role>
...@@ -300,9 +308,8 @@ ...@@ -300,9 +308,8 @@
<name>Add Z MySQL Database Connections</name> <name>Add Z MySQL Database Connections</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='tuple'> <permission type='list'>
<name>Add Z MySQL Database Deferred Connections</name> <name>Add Z MySQL Deferred Database Connections</name>
<role>Manager</role>
</permission> </permission>
<permission type='tuple'> <permission type='tuple'>
<name>Add ZCatalogs</name> <name>Add ZCatalogs</name>
...@@ -330,10 +337,6 @@ ...@@ -330,10 +337,6 @@
<role>Author</role> <role>Author</role>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='tuple'>
<name>Add portal events</name>
<role>Manager</role>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>Add portal folders</name> <name>Add portal folders</name>
<role>Assignor</role> <role>Assignor</role>
...@@ -348,6 +351,12 @@ ...@@ -348,6 +351,12 @@
<name>Add portal topics</name> <name>Add portal topics</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='list'>
<name>Add secure MailHost objects</name>
</permission>
<permission type='list'>
<name>Admin KZMailman</name>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>Change Browser Id Manager</name> <name>Change Browser Id Manager</name>
<role>Manager</role> <role>Manager</role>
...@@ -392,6 +401,9 @@ ...@@ -392,6 +401,9 @@
<name>Change Lock Information</name> <name>Change Lock Information</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='list'>
<name>Change Mailman List Options</name>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>Change Page Templates</name> <name>Change Page Templates</name>
<role>Manager</role> <role>Manager</role>
...@@ -445,10 +457,6 @@ ...@@ -445,10 +457,6 @@
<name>Change permissions</name> <name>Change permissions</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='tuple'>
<name>Change portal events</name>
<role>Manager</role>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>Change portal topics</name> <name>Change portal topics</name>
<role>Manager</role> <role>Manager</role>
...@@ -459,6 +467,7 @@ ...@@ -459,6 +467,7 @@
</permission> </permission>
<permission type='tuple'> <permission type='tuple'>
<name>Copy or Move</name> <name>Copy or Move</name>
<role>Author</role>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='tuple'> <permission type='tuple'>
...@@ -473,6 +482,9 @@ ...@@ -473,6 +482,9 @@
<name>Define permissions</name> <name>Define permissions</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='list'>
<name>Delete Groups</name>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>Delete objects</name> <name>Delete objects</name>
<role>Assignor</role> <role>Assignor</role>
...@@ -498,6 +510,9 @@ ...@@ -498,6 +510,9 @@
<name>FTP access</name> <name>FTP access</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='list'>
<name>Get Mailman List Members</name>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>Import/Export objects</name> <name>Import/Export objects</name>
<role>Manager</role> <role>Manager</role>
...@@ -571,6 +586,9 @@ ...@@ -571,6 +586,9 @@
<name>Manage ZCatalogIndex Entries</name> <name>Manage ZCatalogIndex Entries</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='list'>
<name>Manage extensions</name>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>Manage languages</name> <name>Manage languages</name>
<role>Manager</role> <role>Manager</role>
...@@ -616,6 +634,9 @@ ...@@ -616,6 +634,9 @@
<name>Query Vocabulary</name> <name>Query Vocabulary</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='list'>
<name>Remove Mailman List Member</name>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>Reply to item</name> <name>Reply to item</name>
<role>Manager</role> <role>Manager</role>
...@@ -640,6 +661,9 @@ ...@@ -640,6 +661,9 @@
<name>Search for principals</name> <name>Search for principals</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='list'>
<name>Set Group Ownership</name>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>Set own password</name> <name>Set own password</name>
<role>Manager</role> <role>Manager</role>
...@@ -672,6 +696,9 @@ ...@@ -672,6 +696,9 @@
<name>Use Factories</name> <name>Use Factories</name>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='list'>
<name>Use external editor</name>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>Use mailhost services</name> <name>Use mailhost services</name>
<role>Manager</role> <role>Manager</role>
...@@ -685,6 +712,9 @@ ...@@ -685,6 +712,9 @@
<role>Author</role> <role>Author</role>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='list'>
<name>View Groups</name>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>View History</name> <name>View History</name>
<role>Assignee</role> <role>Assignee</role>
...@@ -694,6 +724,9 @@ ...@@ -694,6 +724,9 @@
<role>Author</role> <role>Author</role>
<role>Manager</role> <role>Manager</role>
</permission> </permission>
<permission type='list'>
<name>View KZMailman</name>
</permission>
<permission type='tuple'> <permission type='tuple'>
<name>View ZMailMessage</name> <name>View ZMailMessage</name>
<role>Manager</role> <role>Manager</role>
......
...@@ -150,6 +150,9 @@ ...@@ -150,6 +150,9 @@
<permission type='list'> <permission type='list'>
<name>Add Groups</name> <name>Add Groups</name>
</permission> </permission>
<permission type='list'>
<name>Add KZMailmans</name>
</permission>
<permission type='list'> <permission type='list'>
<name>Add LocalContents</name> <name>Add LocalContents</name>
</permission> </permission>
...@@ -162,9 +165,15 @@ ...@@ -162,9 +165,15 @@
<permission type='list'> <permission type='list'>
<name>Add MailHost objects</name> <name>Add MailHost objects</name>
</permission> </permission>
<permission type='list'>
<name>Add Mailman List Member</name>
</permission>
<permission type='list'> <permission type='list'>
<name>Add MessageCatalogs</name> <name>Add MessageCatalogs</name>
</permission> </permission>
<permission type='list'>
<name>Add MimetypesRegistry Tools</name>
</permission>
<permission type='list'> <permission type='list'>
<name>Add Page Templates</name> <name>Add Page Templates</name>
</permission> </permission>
...@@ -180,6 +189,9 @@ ...@@ -180,6 +189,9 @@
<permission type='list'> <permission type='list'>
<name>Add Plugin Registrys</name> <name>Add Plugin Registrys</name>
</permission> </permission>
<permission type='list'>
<name>Add PortalTransforms Tools</name>
</permission>
<permission type='list'> <permission type='list'>
<name>Add Python Scripts</name> <name>Add Python Scripts</name>
</permission> </permission>
...@@ -220,7 +232,7 @@ ...@@ -220,7 +232,7 @@
<name>Add Z MySQL Database Connections</name> <name>Add Z MySQL Database Connections</name>
</permission> </permission>
<permission type='list'> <permission type='list'>
<name>Add Z MySQL Database Deferred Connections</name> <name>Add Z MySQL Deferred Database Connections</name>
</permission> </permission>
<permission type='list'> <permission type='list'>
<name>Add ZCatalogs</name> <name>Add ZCatalogs</name>
...@@ -252,6 +264,9 @@ ...@@ -252,6 +264,9 @@
<permission type='list'> <permission type='list'>
<name>Add secure MailHost objects</name> <name>Add secure MailHost objects</name>
</permission> </permission>
<permission type='list'>
<name>Admin KZMailman</name>
</permission>
<permission type='list'> <permission type='list'>
<name>Change Browser Id Manager</name> <name>Change Browser Id Manager</name>
</permission> </permission>
...@@ -285,6 +300,9 @@ ...@@ -285,6 +300,9 @@
<permission type='list'> <permission type='list'>
<name>Change Lock Information</name> <name>Change Lock Information</name>
</permission> </permission>
<permission type='list'>
<name>Change Mailman List Options</name>
</permission>
<permission type='list'> <permission type='list'>
<name>Change Page Templates</name> <name>Change Page Templates</name>
</permission> </permission>
...@@ -363,6 +381,9 @@ ...@@ -363,6 +381,9 @@
<permission type='list'> <permission type='list'>
<name>FTP access</name> <name>FTP access</name>
</permission> </permission>
<permission type='list'>
<name>Get Mailman List Members</name>
</permission>
<permission type='list'> <permission type='list'>
<name>Import/Export objects</name> <name>Import/Export objects</name>
</permission> </permission>
...@@ -450,6 +471,9 @@ ...@@ -450,6 +471,9 @@
<permission type='list'> <permission type='list'>
<name>Query Vocabulary</name> <name>Query Vocabulary</name>
</permission> </permission>
<permission type='list'>
<name>Remove Mailman List Member</name>
</permission>
<permission type='list'> <permission type='list'>
<name>Reply to item</name> <name>Reply to item</name>
</permission> </permission>
...@@ -515,6 +539,9 @@ ...@@ -515,6 +539,9 @@
<permission type='list'> <permission type='list'>
<name>View History</name> <name>View History</name>
</permission> </permission>
<permission type='list'>
<name>View KZMailman</name>
</permission>
<permission type='list'> <permission type='list'>
<name>View ZMailMessage</name> <name>View ZMailMessage</name>
</permission> </permission>
......
...@@ -82,7 +82,10 @@ ...@@ -82,7 +82,10 @@
<key> <string>group_list</string> </key> <key> <string>group_list</string> </key>
<value> <value>
<tuple> <tuple>
<string>document</string>
<string>web_document</string> <string>web_document</string>
<string>recent_document</string>
<string>my_document</string>
</tuple> </tuple>
</value> </value>
</item> </item>
......
...@@ -75,10 +75,7 @@ ...@@ -75,10 +75,7 @@
"""\n """\n
# Retrieve the edit action\n # Retrieve the edit action\n
edit_method = getattr(context, form_action)\n edit_method = getattr(context, form_action)\n
base_value = edit_method(form_id, **kw)\n base_value = edit_method(form_id, editable_mode=editable_mode, ignore_layout=ignore_layout, **kw)\n
\n
redir="%s?editable_mode:int=1" % edit_document_url\n
context.REQUEST[\'RESPONSE\'].redirect(redir)\n
</string> </value> </string> </value>
</item> </item>
<item> <item>
...@@ -101,7 +98,7 @@ context.REQUEST[\'RESPONSE\'].redirect(redir)\n ...@@ -101,7 +98,7 @@ context.REQUEST[\'RESPONSE\'].redirect(redir)\n
</item> </item>
<item> <item>
<key> <string>_params</string> </key> <key> <string>_params</string> </key>
<value> <string>form_id, form_action, edit_document_url, **kw</string> </value> <value> <string>form_id, form_action, edit_document_url, editable_mode=1, ignore_layout=0, **kw</string> </value>
</item> </item>
<item> <item>
<key> <string>errors</string> </key> <key> <string>errors</string> </key>
...@@ -121,7 +118,7 @@ context.REQUEST[\'RESPONSE\'].redirect(redir)\n ...@@ -121,7 +118,7 @@ context.REQUEST[\'RESPONSE\'].redirect(redir)\n
<dictionary> <dictionary>
<item> <item>
<key> <string>co_argcount</string> </key> <key> <string>co_argcount</string> </key>
<value> <int>3</int> </value> <value> <int>5</int> </value>
</item> </item>
<item> <item>
<key> <string>co_varnames</string> </key> <key> <string>co_varnames</string> </key>
...@@ -130,15 +127,14 @@ context.REQUEST[\'RESPONSE\'].redirect(redir)\n ...@@ -130,15 +127,14 @@ context.REQUEST[\'RESPONSE\'].redirect(redir)\n
<string>form_id</string> <string>form_id</string>
<string>form_action</string> <string>form_action</string>
<string>edit_document_url</string> <string>edit_document_url</string>
<string>editable_mode</string>
<string>ignore_layout</string>
<string>kw</string> <string>kw</string>
<string>getattr</string> <string>getattr</string>
<string>context</string> <string>context</string>
<string>edit_method</string> <string>edit_method</string>
<string>_apply_</string> <string>_apply_</string>
<string>base_value</string> <string>base_value</string>
<string>redir</string>
<string>_getattr_</string>
<string>_getitem_</string>
</tuple> </tuple>
</value> </value>
</item> </item>
...@@ -150,7 +146,10 @@ context.REQUEST[\'RESPONSE\'].redirect(redir)\n ...@@ -150,7 +146,10 @@ context.REQUEST[\'RESPONSE\'].redirect(redir)\n
<item> <item>
<key> <string>func_defaults</string> </key> <key> <string>func_defaults</string> </key>
<value> <value>
<none/> <tuple>
<int>1</int>
<int>0</int>
</tuple>
</value> </value>
</item> </item>
<item> <item>
......
...@@ -74,11 +74,9 @@ ...@@ -74,11 +74,9 @@
The view_document_url is used to define the URL to return to\n The view_document_url is used to define the URL to return to\n
after editing the document.\n after editing the document.\n
"""\n """\n
# Retrieve the edit action\n
edit_method = getattr(context, form_action)\n edit_method = getattr(context, form_action)\n
base_value = edit_method(form_id, **kw)\n base_value = edit_method(form_id, editable_mode=0, ignore_layout=ignore_layout, **kw)\n
\n
redir="%s?editable_mode:int=0" % view_document_url\n
context.REQUEST[\'RESPONSE\'].redirect(redir)\n
</string> </value> </string> </value>
</item> </item>
<item> <item>
...@@ -101,7 +99,7 @@ context.REQUEST[\'RESPONSE\'].redirect(redir)\n ...@@ -101,7 +99,7 @@ context.REQUEST[\'RESPONSE\'].redirect(redir)\n
</item> </item>
<item> <item>
<key> <string>_params</string> </key> <key> <string>_params</string> </key>
<value> <string>form_id, form_action, view_document_url, **kw</string> </value> <value> <string>form_id, form_action, view_document_url, editable_mode=0, ignore_layout=0, **kw</string> </value>
</item> </item>
<item> <item>
<key> <string>errors</string> </key> <key> <string>errors</string> </key>
...@@ -121,7 +119,7 @@ context.REQUEST[\'RESPONSE\'].redirect(redir)\n ...@@ -121,7 +119,7 @@ context.REQUEST[\'RESPONSE\'].redirect(redir)\n
<dictionary> <dictionary>
<item> <item>
<key> <string>co_argcount</string> </key> <key> <string>co_argcount</string> </key>
<value> <int>3</int> </value> <value> <int>5</int> </value>
</item> </item>
<item> <item>
<key> <string>co_varnames</string> </key> <key> <string>co_varnames</string> </key>
...@@ -130,15 +128,14 @@ context.REQUEST[\'RESPONSE\'].redirect(redir)\n ...@@ -130,15 +128,14 @@ context.REQUEST[\'RESPONSE\'].redirect(redir)\n
<string>form_id</string> <string>form_id</string>
<string>form_action</string> <string>form_action</string>
<string>view_document_url</string> <string>view_document_url</string>
<string>editable_mode</string>
<string>ignore_layout</string>
<string>kw</string> <string>kw</string>
<string>getattr</string> <string>getattr</string>
<string>context</string> <string>context</string>
<string>edit_method</string> <string>edit_method</string>
<string>_apply_</string> <string>_apply_</string>
<string>base_value</string> <string>base_value</string>
<string>redir</string>
<string>_getattr_</string>
<string>_getitem_</string>
</tuple> </tuple>
</value> </value>
</item> </item>
...@@ -150,7 +147,10 @@ context.REQUEST[\'RESPONSE\'].redirect(redir)\n ...@@ -150,7 +147,10 @@ context.REQUEST[\'RESPONSE\'].redirect(redir)\n
<item> <item>
<key> <string>func_defaults</string> </key> <key> <string>func_defaults</string> </key>
<value> <value>
<none/> <tuple>
<int>0</int>
<int>0</int>
</tuple>
</value> </value>
</item> </item>
<item> <item>
......
...@@ -71,15 +71,16 @@ ...@@ -71,15 +71,16 @@
<value> <string encoding="cdata"><![CDATA[ <value> <string encoding="cdata"><![CDATA[
"""\n """\n
This script repeats publication section category items\n This script repeats publication section items\n
in such way that it is possible to select multiple\n in such way that it is possible to select multiple\n
publication section categories for the same document\n publication sections for a single web page.\n
"""\n """\n
# Initialise result\n # Initialise result\n
sub_field_list = []\n sub_field_list = []\n
\n \n
# Maximum size of the MultiListField\n # Maximum size of the MultiListField\n
default_sub_field_property_dict.update({\n default_sub_field_property_dict.update({\n
\'title\': \'Publication\',\n
\'required\': 0,\n \'required\': 0,\n
\'field_type\': \'ListField\',\n \'field_type\': \'ListField\',\n
\'size\': 1,\n \'size\': 1,\n
...@@ -95,7 +96,11 @@ for i in range(1):\n ...@@ -95,7 +96,11 @@ for i in range(1):\n
z += 1\n z += 1\n
sub_field_list.append(new_dict)\n sub_field_list.append(new_dict)\n
\n \n
section_list = context.getPublicationSectionList()\n \n
# WARNING This code is very dangerous and ad hoc\n
# But it was the only way to make parallel list field\n
# work in this case \n
section_list = context.aq_parent.aq_parent.getPublicationSectionList()\n
section_list.reverse()\n section_list.reverse()\n
for value in section_list:\n for value in section_list:\n
new_dict = default_sub_field_property_dict.copy()\n new_dict = default_sub_field_property_dict.copy()\n
...@@ -105,7 +110,7 @@ for value in section_list:\n ...@@ -105,7 +110,7 @@ for value in section_list:\n
z += 1\n z += 1\n
sub_field_list.append(new_dict)\n sub_field_list.append(new_dict)\n
\n \n
new_dict[\'title\'] = default_sub_field_property_dict[\'title\']\n new_dict[\'title\'] = \'Publication Section\'\n
sub_field_list.reverse()\n sub_field_list.reverse()\n
return sub_field_list\n return sub_field_list\n
...@@ -169,7 +174,6 @@ return sub_field_list\n ...@@ -169,7 +174,6 @@ return sub_field_list\n
<string>context</string> <string>context</string>
<string>section_list</string> <string>section_list</string>
<string>value</string> <string>value</string>
<string>_getitem_</string>
</tuple> </tuple>
</value> </value>
</item> </item>
......
...@@ -63,7 +63,7 @@ ...@@ -63,7 +63,7 @@
<list> <list>
<string>left (Page Properties)</string> <string>left (Page Properties)</string>
<string>right (Publication)</string> <string>right (Publication)</string>
<string>center (Description)</string> <string>center</string>
<string>bottom (Content)</string> <string>bottom (Content)</string>
</list> </list>
</value> </value>
...@@ -81,7 +81,7 @@ ...@@ -81,7 +81,7 @@
</value> </value>
</item> </item>
<item> <item>
<key> <string>center (Description)</string> </key> <key> <string>center</string> </key>
<value> <value>
<list> <list>
<string>my_description</string> <string>my_description</string>
......
...@@ -69,16 +69,19 @@ ...@@ -69,16 +69,19 @@
<item> <item>
<key> <string>_body</string> </key> <key> <string>_body</string> </key>
<value> <string>"""\n <value> <string>"""\n
This scripts browses recursively a selected list of base categories\n This scripts browses recursively a to generate a mirror structure\n
to generate a mirror structure at the Web Site level in the for\n within the current Web Section. It sets predicate parameters\n
of Web Sections.\n on all categories excluding itself.\n
\n \n
category_list -- list of categories to use\n category -- the category to use\n
"""\n """\n
from ZODB.POSException import ConflictError\n
\n
translateString = context.Base_translateString\n translateString = context.Base_translateString\n
category_tool = context.portal_categories\n category_tool = context.portal_categories\n
global section_count\n global section_count\n
section_count = 0\n section_count = 0\n
failed_list = []\n
\n \n
valid_char = "abcdefghijklmnopqrstuvwxyz0123456789-_"\n valid_char = "abcdefghijklmnopqrstuvwxyz0123456789-_"\n
\n \n
...@@ -91,36 +94,67 @@ def getNiceID(s):\n ...@@ -91,36 +94,67 @@ def getNiceID(s):\n
s = s.replace(\'_\', \'-\')\n s = s.replace(\'_\', \'-\')\n
return s\n return s\n
\n \n
def createWebSectionFromCategoryValue(container, category):\n def createWebSectionFromCategoryValue(container, category, section_id=None):\n
global section_count\n global section_count\n
# Create a nice URI\n if section_id is None:\n
# If the ID is a number, use the title\n try:\n
if category.hasCodification():\n # Check if this category looks like an int\n
section_id = getNiceID(category.getCodification())\\\n section_id = int(category.getId())\n
# Looks like an int, so it should be converted into\n
# something nicer based on the reference or on the title\n
if category.hasReference():\n
section_id = getNiceID(category.getReference())\\\n
or getNiceID(category.getTitle()) or getNiceID(category.getId())\n
if category.hasShortTitle():\n
section_id = getNiceID(category.getShortTitle())\\\n
or getNiceID(category.getTitle()) or getNiceID(category.getId())\n or getNiceID(category.getTitle()) or getNiceID(category.getId())\n
else:\n else:\n
section_id = getNiceID(category.getTitle()) or getNiceID(category.getId())\n section_id = getNiceID(category.getTitle()) or getNiceID(category.getId())\n
except ValueError:\n
# It is not an int, so it can be used as is\n
section_id = category.getId()\n
# Create a new Web Section if necessary\n # Create a new Web Section if necessary\n
new_section = None\n
if section_id not in container.contentIds():\n if section_id not in container.contentIds():\n
section_count += 1\n section_count += 1\n
try:\n
# If we are not browsing a standard Category tree, we\n
# must add a trailing base_category_id\n
if category.getPortalType() not in (\'Category\', \'Base Category\'):\n
category_url = \'%s/%s\' % (base_category_id, category.getRelativeUrl())\n
else:\n
category_url = category.getRelativeUrl()\n
new_section = container.newContent( portal_type = \'Web Section\'\n new_section = container.newContent( portal_type = \'Web Section\'\n
, id = section_id\n , id = section_id\n
, title = category.getTitle()\n , title = category.getTitle()\n
, description = category.getDescription()\n , description = category.getDescription()\n
, visible = True\n , visible = True\n
, membership_criterion_base_category = (category.getBaseCategory().getId(),)\n , membership_criterion_base_category = (base_category_id,)\n
, membership_criterion_category = (category.getRelativeUrl(),)\n , membership_criterion_category = (category_url,)\n
)\n )\n
except ConflictError:\n
raise\n
except:\n
failed_list.append(category.getRelativeUrl())\n
else:\n else:\n
new_section = container[section_id]\n new_section = container[section_id]\n
# If we are not browsing a standard Category tree, we\n
# must add a trailing base_category_id\n
if category.getPortalType() not in (\'Category\', \'Base Category\'):\n
category_url = \'%s/%s\' % (base_category_id, category.getRelativeUrl())\n
else:\n
category.getRelativeUrl()\n
if update_existing:\n if update_existing:\n
new_section.edit(title = category.getTitle()\n new_section.edit(title = category.getTitle()\n
, description = category.getDescription()\n , description = category.getDescription()\n
, visible = True\n , visible = True\n
, membership_criterion_base_category = (category.getBaseCategory().getId(),)\n , membership_criterion_base_category = (base_category_id,)\n
, membership_criterion_category = (category.getRelativeUrl(),)\n , membership_criterion_category = (category_url,)\n
)\n )\n
# Call the function recursively\n # Call the function recursively\n
if new_section is not None:\n
# It is possible to browse objects which are not categories\n
# ex. Projects\n
for sub_category in category.contentValues():\n for sub_category in category.contentValues():\n
createWebSectionFromCategoryValue(new_section, sub_category)\n createWebSectionFromCategoryValue(new_section, sub_category)\n
# Remove sections which have no counterpart in categories\n # Remove sections which have no counterpart in categories\n
...@@ -129,8 +163,17 @@ def createWebSectionFromCategoryValue(container, category):\n ...@@ -129,8 +163,17 @@ def createWebSectionFromCategoryValue(container, category):\n
pass\n pass\n
\n \n
# Call the recursive section generator for each category\n # Call the recursive section generator for each category\n
for my_category in category_list:\n my_category_value = category_tool.restrictedTraverse(category)\n
createWebSectionFromCategoryValue(context, category_tool[my_category])\n base_category_id = my_category_value.getBaseCategory().getId()\n
createWebSectionFromCategoryValue(context, my_category_value, section_id=section_id)\n
\n
# Warn about failures if any\n
if failed_list:\n
return context.Base_redirect(form_id,\n
keep_items = dict(portal_status_message = translateString("Generated ${section_count} sections for the Web Site. Failed with ${failed_text}",\n
mapping = dict(section_count = section_count,\n
failed_text = \', \'.join(failed_list)))))\n
\n
\n \n
return context.Base_redirect(form_id,\n return context.Base_redirect(form_id,\n
keep_items = dict(portal_status_message = translateString("Generated ${section_count} sections for the Web Site.",\n keep_items = dict(portal_status_message = translateString("Generated ${section_count} sections for the Web Site.",\n
...@@ -157,7 +200,7 @@ return context.Base_redirect(form_id,\n ...@@ -157,7 +200,7 @@ return context.Base_redirect(form_id,\n
</item> </item>
<item> <item>
<key> <string>_params</string> </key> <key> <string>_params</string> </key>
<value> <string>category_list, update_existing=0, remove_missing=0, form_id=\'view\', **kw</string> </value> <value> <string>category, section_id, update_existing=0, remove_missing=0, form_id=\'view\', **kw</string> </value>
</item> </item>
<item> <item>
<key> <string>errors</string> </key> <key> <string>errors</string> </key>
...@@ -177,28 +220,32 @@ return context.Base_redirect(form_id,\n ...@@ -177,28 +220,32 @@ return context.Base_redirect(form_id,\n
<dictionary> <dictionary>
<item> <item>
<key> <string>co_argcount</string> </key> <key> <string>co_argcount</string> </key>
<value> <int>4</int> </value> <value> <int>5</int> </value>
</item> </item>
<item> <item>
<key> <string>co_varnames</string> </key> <key> <string>co_varnames</string> </key>
<value> <value>
<tuple> <tuple>
<string>category_list</string> <string>category</string>
<string>section_id</string>
<string>update_existing</string> <string>update_existing</string>
<string>remove_missing</string> <string>remove_missing</string>
<string>form_id</string> <string>form_id</string>
<string>kw</string> <string>kw</string>
<string>ZODB.POSException</string>
<string>ConflictError</string>
<string>_getattr_</string> <string>_getattr_</string>
<string>context</string> <string>context</string>
<string>translateString</string> <string>translateString</string>
<string>category_tool</string> <string>category_tool</string>
<string>section_count</string> <string>section_count</string>
<string>failed_list</string>
<string>valid_char</string> <string>valid_char</string>
<string>getNiceID</string> <string>getNiceID</string>
<string>None</string>
<string>base_category_id</string>
<string>createWebSectionFromCategoryValue</string> <string>createWebSectionFromCategoryValue</string>
<string>_getiter_</string> <string>my_category_value</string>
<string>my_category</string>
<string>_getitem_</string>
<string>dict</string> <string>dict</string>
</tuple> </tuple>
</value> </value>
...@@ -220,7 +267,7 @@ return context.Base_redirect(form_id,\n ...@@ -220,7 +267,7 @@ return context.Base_redirect(form_id,\n
</item> </item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>WebSite_generateSectionFromCategoryList</string> </value> <value> <string>WebSection_generateSectionFromCategory</string> </value>
</item> </item>
<item> <item>
<key> <string>warnings</string> </key> <key> <string>warnings</string> </key>
......
...@@ -105,7 +105,12 @@ current_section = context.getWebSectionValue()\n ...@@ -105,7 +105,12 @@ current_section = context.getWebSectionValue()\n
reference_list = context.getAggregateReferenceList()\n reference_list = context.getAggregateReferenceList()\n
if not reference_list: return None # Quick return\n if not reference_list: return None # Quick return\n
\n \n
return context.getDocumentValue(name=reference_list)\n # We should only display those documents which are shared\n
# to some extend. This list takes into account some common\n
# state IDs used in ERP5.\n
return context.getDocumentValue(name=reference_list,\n
validation_state=[\'released\', \'published\', \'shared\',\n
\'public\', \'validated\', ])\n
</string> </value> </string> </value>
</item> </item>
<item> <item>
......
...@@ -96,14 +96,19 @@ portal_catalog = portal.portal_catalog\n ...@@ -96,14 +96,19 @@ portal_catalog = portal.portal_catalog\n
valid_portal_type_list = [\'Web Page\', ]\n valid_portal_type_list = [\'Web Page\', ]\n
\n \n
# Find the applicable language\n # Find the applicable language\n
language = portal.Localizer.get_selected_language()\n if kw.has_key(\'language\'):\n
language = kw[\'language\']\n
del kw[\'language\']\n
else:\n
language = portal.Localizer.get_selected_language()\n
\n \n
# Search the catalog for all documents matching the reference\n # Search the catalog for all documents matching the reference\n
# this will only return documents which are accessible by the user\n # this will only return documents which are accessible by the user\n
web_page_list = portal_catalog(reference=name, portal_type=valid_portal_type_list,\n web_page_list = portal_catalog(reference=name, portal_type=valid_portal_type_list,\n
language=language,\n language=language,\n
order_by=[(\'version\', \'descending\')],\n order_by=[(\'version\', \'descending\')],\n
group_by=(\'reference\',))\n group_by=(\'reference\',),\n
**kw)\n
\n \n
try:\n try:\n
# Try to get the first page on the list\n # Try to get the first page on the list\n
...@@ -113,7 +118,8 @@ except IndexError:\n ...@@ -113,7 +118,8 @@ except IndexError:\n
# Search again without the language\n # Search again without the language\n
web_page_list = portal_catalog(reference=name, portal_type=\'Web Page\', \n web_page_list = portal_catalog(reference=name, portal_type=\'Web Page\', \n
order_by=[(\'version\', \'descending\')],\n order_by=[(\'version\', \'descending\')],\n
group_by=(\'reference\',))\n group_by=(\'reference\',),\n
**kw)\n
try:\n try:\n
# Try to get the first page on the list\n # Try to get the first page on the list\n
web_page = web_page_list[0]\n web_page = web_page_list[0]\n
...@@ -146,7 +152,7 @@ return web_page\n ...@@ -146,7 +152,7 @@ return web_page\n
</item> </item>
<item> <item>
<key> <string>_params</string> </key> <key> <string>_params</string> </key>
<value> <string>name,portal=None</string> </value> <value> <string>name, portal=None, **kw</string> </value>
</item> </item>
<item> <item>
<key> <string>errors</string> </key> <key> <string>errors</string> </key>
...@@ -174,14 +180,17 @@ return web_page\n ...@@ -174,14 +180,17 @@ return web_page\n
<tuple> <tuple>
<string>name</string> <string>name</string>
<string>portal</string> <string>portal</string>
<string>kw</string>
<string>None</string> <string>None</string>
<string>_getattr_</string> <string>_getattr_</string>
<string>context</string> <string>context</string>
<string>portal_catalog</string> <string>portal_catalog</string>
<string>valid_portal_type_list</string> <string>valid_portal_type_list</string>
<string>_getitem_</string>
<string>language</string> <string>language</string>
<string>_write_</string>
<string>_apply_</string>
<string>web_page_list</string> <string>web_page_list</string>
<string>_getitem_</string>
<string>web_page</string> <string>web_page</string>
<string>IndexError</string> <string>IndexError</string>
</tuple> </tuple>
......
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.ERP5Form.Form</string>
<string>ERP5Form</string>
</tuple>
<none/>
</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/>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>_owner</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>action</string> </key>
<value> <string>WebSection_generateSectionFromCategory</string> </value>
</item>
<item>
<key> <string>encoding</string> </key>
<value> <string>UTF-8</string> </value>
</item>
<item>
<key> <string>enctype</string> </key>
<value> <string>multipart/form-data</string> </value>
</item>
<item>
<key> <string>group_list</string> </key>
<value>
<list>
<string>left</string>
<string>right</string>
<string>center</string>
<string>bottom</string>
<string>hidden</string>
</list>
</value>
</item>
<item>
<key> <string>groups</string> </key>
<value>
<dictionary>
<item>
<key> <string>bottom</string> </key>
<value>
<list/>
</value>
</item>
<item>
<key> <string>center</string> </key>
<value>
<list/>
</value>
</item>
<item>
<key> <string>hidden</string> </key>
<value>
<list/>
</value>
</item>
<item>
<key> <string>left</string> </key>
<value>
<list>
<string>your_category</string>
<string>your_section_id</string>
<string>your_update_existing</string>
<string>your_remove_missing</string>
</list>
</value>
</item>
<item>
<key> <string>right</string> </key>
<value>
<list/>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>WebSection_viewGenerateSectionFromCategoryDialog</string> </value>
</item>
<item>
<key> <string>method</string> </key>
<value> <string>POST</string> </value>
</item>
<item>
<key> <string>name</string> </key>
<value> <string>WebSite_viewGenerateSectionFromCategoryList</string> </value>
</item>
<item>
<key> <string>pt</string> </key>
<value> <string>form_dialog</string> </value>
</item>
<item>
<key> <string>row_length</string> </key>
<value> <int>4</int> </value>
</item>
<item>
<key> <string>stored_encoding</string> </key>
<value> <string>UTF-8</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Generate Web Section Structure from Category</string> </value>
</item>
<item>
<key> <string>unicode_mode</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>update_action</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
...@@ -5,16 +5,22 @@ ...@@ -5,16 +5,22 @@
<tuple> <tuple>
<tuple> <tuple>
<string>Products.Formulator.StandardFields</string> <string>Products.Formulator.StandardFields</string>
<string>MultiCheckBoxField</string> <string>StringField</string>
</tuple> </tuple>
<none/> <none/>
</tuple> </tuple>
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_owner</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>your_category_list</string> </value> <value> <string>your_category</string> </value>
</item> </item>
<item> <item>
<key> <string>message_values</string> </key> <key> <string>message_values</string> </key>
...@@ -29,8 +35,8 @@ ...@@ -29,8 +35,8 @@
<value> <string>Input is required but no input given.</string> </value> <value> <string>Input is required but no input given.</string> </value>
</item> </item>
<item> <item>
<key> <string>unknown_selection</string> </key> <key> <string>too_long</string> </key>
<value> <string>You selected an item that was not in the list.</string> </value> <value> <string>Too much input was given.</string> </value>
</item> </item>
</dictionary> </dictionary>
</value> </value>
...@@ -55,6 +61,14 @@ ...@@ -55,6 +61,14 @@
<key> <string>description</string> </key> <key> <string>description</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item>
<key> <string>display_maxwidth</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>display_width</string> </key>
<value> <string></string> </value>
</item>
<item> <item>
<key> <string>editable</string> </key> <key> <string>editable</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
...@@ -68,7 +82,7 @@ ...@@ -68,7 +82,7 @@
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>extra_item</string> </key> <key> <string>extra</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
...@@ -76,19 +90,19 @@ ...@@ -76,19 +90,19 @@
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>items</string> </key> <key> <string>max_length</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>orientation</string> </key> <key> <string>required</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>required</string> </key> <key> <string>title</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>title</string> </key> <key> <string>truncate</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
...@@ -96,7 +110,7 @@ ...@@ -96,7 +110,7 @@
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>view_separator</string> </key> <key> <string>whitespace_preserve</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -122,6 +136,14 @@ ...@@ -122,6 +136,14 @@
<key> <string>description</string> </key> <key> <string>description</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item>
<key> <string>display_maxwidth</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>display_width</string> </key>
<value> <string></string> </value>
</item>
<item> <item>
<key> <string>editable</string> </key> <key> <string>editable</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
...@@ -135,7 +157,7 @@ ...@@ -135,7 +157,7 @@
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>extra_item</string> </key> <key> <string>extra</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
...@@ -143,13 +165,7 @@ ...@@ -143,13 +165,7 @@
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>items</string> </key> <key> <string>max_length</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>orientation</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
...@@ -160,12 +176,16 @@ ...@@ -160,12 +176,16 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item>
<key> <string>truncate</string> </key>
<value> <string></string> </value>
</item>
<item> <item>
<key> <string>unicode</string> </key> <key> <string>unicode</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>view_separator</string> </key> <key> <string>whitespace_preserve</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -185,13 +205,19 @@ ...@@ -185,13 +205,19 @@
</item> </item>
<item> <item>
<key> <string>default</string> </key> <key> <string>default</string> </key>
<value> <value> <string></string> </value>
<list/>
</value>
</item> </item>
<item> <item>
<key> <string>description</string> </key> <key> <string>description</string> </key>
<value> <string>Select base categories to use for the structure of this Web Site</string> </value> <value> <string>Enter here the root category from which we should create a section and subsections.</string> </value>
</item>
<item>
<key> <string>display_maxwidth</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>display_width</string> </key>
<value> <int>40</int> </value>
</item> </item>
<item> <item>
<key> <string>editable</string> </key> <key> <string>editable</string> </key>
...@@ -206,7 +232,7 @@ ...@@ -206,7 +232,7 @@
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>extra_item</string> </key> <key> <string>extra</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
...@@ -214,14 +240,8 @@ ...@@ -214,14 +240,8 @@
<value> <int>0</int> </value> <value> <int>0</int> </value>
</item> </item>
<item> <item>
<key> <string>items</string> </key> <key> <string>max_length</string> </key>
<value> <value> <string></string> </value>
<list/>
</value>
</item>
<item>
<key> <string>orientation</string> </key>
<value> <string>vertical</string> </value>
</item> </item>
<item> <item>
<key> <string>required</string> </key> <key> <string>required</string> </key>
...@@ -229,19 +249,19 @@ ...@@ -229,19 +249,19 @@
</item> </item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>Categories</string> </value> <value> <string>Category</string> </value>
</item>
<item>
<key> <string>truncate</string> </key>
<value> <int>0</int> </value>
</item> </item>
<item> <item>
<key> <string>unicode</string> </key> <key> <string>unicode</string> </key>
<value> <int>0</int> </value> <value> <int>0</int> </value>
</item> </item>
<item> <item>
<key> <string>view_separator</string> </key> <key> <string>whitespace_preserve</string> </key>
<value> <string encoding="cdata"><![CDATA[ <value> <int>0</int> </value>
<br />
]]></string> </value>
</item> </item>
</dictionary> </dictionary>
</value> </value>
...@@ -249,23 +269,4 @@ ...@@ -249,23 +269,4 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<tuple>
<tuple>
<string>Products.Formulator.TALESField</string>
<string>TALESMethod</string>
</tuple>
<none/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_text</string> </key>
<value> <string>here/WebSite_getBaseCategoryItemList</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData> </ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.Formulator.StandardFields</string>
<string>StringField</string>
</tuple>
<none/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_owner</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>your_section_id</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>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>Too much input was given.</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>display_maxwidth</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>display_width</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>hidden</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>max_length</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>required</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>truncate</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>
</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> <string></string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>display_maxwidth</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>display_width</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>hidden</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>max_length</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>required</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>truncate</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>
</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></string> </value>
</item>
<item>
<key> <string>default</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>Enter here the ID of the root section (ex. group_section)</string> </value>
</item>
<item>
<key> <string>display_maxwidth</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>display_width</string> </key>
<value> <int>20</int> </value>
</item>
<item>
<key> <string>editable</string> </key>
<value> <int>1</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>hidden</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>max_length</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>required</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Section ID</string> </value>
</item>
<item>
<key> <string>truncate</string> </key>
<value> <int>0</int> </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>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
...@@ -12,6 +12,10 @@ ...@@ -12,6 +12,10 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item> <item>
<key> <string>__ac_local_roles__</string> </key> <key> <string>__ac_local_roles__</string> </key>
<value> <value>
......
...@@ -12,6 +12,10 @@ ...@@ -12,6 +12,10 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item> <item>
<key> <string>__ac_local_roles__</string> </key> <key> <string>__ac_local_roles__</string> </key>
<value> <value>
......
...@@ -12,6 +12,10 @@ ...@@ -12,6 +12,10 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item> <item>
<key> <string>__ac_local_roles__</string> </key> <key> <string>__ac_local_roles__</string> </key>
<value> <value>
......
...@@ -12,6 +12,10 @@ ...@@ -12,6 +12,10 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item> <item>
<key> <string>__ac_local_roles__</string> </key> <key> <string>__ac_local_roles__</string> </key>
<value> <value>
......
...@@ -12,6 +12,10 @@ ...@@ -12,6 +12,10 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item> <item>
<key> <string>__ac_local_roles__</string> </key> <key> <string>__ac_local_roles__</string> </key>
<value> <value>
......
...@@ -12,6 +12,10 @@ ...@@ -12,6 +12,10 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item> <item>
<key> <string>__ac_local_roles__</string> </key> <key> <string>__ac_local_roles__</string> </key>
<value> <value>
......
...@@ -12,6 +12,10 @@ ...@@ -12,6 +12,10 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item> <item>
<key> <string>__ac_local_roles__</string> </key> <key> <string>__ac_local_roles__</string> </key>
<value> <value>
......
...@@ -12,6 +12,10 @@ ...@@ -12,6 +12,10 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item> <item>
<key> <string>__ac_local_roles__</string> </key> <key> <string>__ac_local_roles__</string> </key>
<value> <value>
......
...@@ -12,6 +12,10 @@ ...@@ -12,6 +12,10 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item> <item>
<key> <string>__ac_local_roles__</string> </key> <key> <string>__ac_local_roles__</string> </key>
<value> <value>
......
...@@ -12,6 +12,10 @@ ...@@ -12,6 +12,10 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item> <item>
<key> <string>__ac_local_roles__</string> </key> <key> <string>__ac_local_roles__</string> </key>
<value> <value>
......
...@@ -12,6 +12,10 @@ ...@@ -12,6 +12,10 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item> <item>
<key> <string>__ac_local_roles__</string> </key> <key> <string>__ac_local_roles__</string> </key>
<value> <value>
......
...@@ -12,6 +12,10 @@ ...@@ -12,6 +12,10 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item> <item>
<key> <string>__ac_local_roles__</string> </key> <key> <string>__ac_local_roles__</string> </key>
<value> <value>
......
...@@ -12,6 +12,10 @@ ...@@ -12,6 +12,10 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item> <item>
<key> <string>__ac_local_roles__</string> </key> <key> <string>__ac_local_roles__</string> </key>
<value> <value>
......
...@@ -12,6 +12,10 @@ ...@@ -12,6 +12,10 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item> <item>
<key> <string>__ac_local_roles__</string> </key> <key> <string>__ac_local_roles__</string> </key>
<value> <value>
......
...@@ -12,6 +12,10 @@ ...@@ -12,6 +12,10 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item> <item>
<key> <string>__ac_local_roles__</string> </key> <key> <string>__ac_local_roles__</string> </key>
<value> <value>
......
...@@ -68,9 +68,7 @@ ...@@ -68,9 +68,7 @@
</item> </item>
<item> <item>
<key> <string>_body</string> </key> <key> <string>_body</string> </key>
<value> <string encoding="cdata"><![CDATA[ <value> <string>"""\n
"""\n
Create new Content by cloning an existing document\n Create new Content by cloning an existing document\n
or by creating a new document.\n or by creating a new document.\n
\n \n
...@@ -125,7 +123,6 @@ if clone:\n ...@@ -125,7 +123,6 @@ if clone:\n
original_id = getattr(context, \'original_id\', None) or context.getId()\n original_id = getattr(context, \'original_id\', None) or context.getId()\n
# This is required for objects acquired in Web Section\n # This is required for objects acquired in Web Section\n
clipboard = directory.manage_copyObjects(ids=[original_id])\n clipboard = directory.manage_copyObjects(ids=[original_id])\n
#context.log("Kev test clipboard >>>>>", repr(clipboard))\n
paste_result = directory.manage_pasteObjects(cb_copy_data=clipboard)\n paste_result = directory.manage_pasteObjects(cb_copy_data=clipboard)\n
new_object = directory[paste_result[0][\'new_id\']]\n new_object = directory[paste_result[0][\'new_id\']]\n
message_kind = \'clone\'\n message_kind = \'clone\'\n
...@@ -139,20 +136,20 @@ else:\n ...@@ -139,20 +136,20 @@ else:\n
form_id = \'view\'\n form_id = \'view\'\n
message_kind = \'new\'\n message_kind = \'new\'\n
\n \n
# Clone properties to the new object\n # Set properties to the new object\n
edit_kw = {}\n edit_kw = {}\n
property_id_list = new_object.propertyIds()\n property_id_list = new_object.propertyIds()\n
from Products.ERP5Type.Log import log\n
log(\'propertyIds\', property_id_list)\n
for (key, val) in form_data.items():\n for (key, val) in form_data.items():\n
if key in ACCEPTABLE_FORM_ID_LIST and key in property_id_list:\n if key in ACCEPTABLE_FORM_ID_LIST and key[len(\'clone_\'):] in property_id_list:\n
edit_kw[key] = val\n edit_kw[key[len(\'clone_\'):]] = val\n
new_object.edit(**edit_kw)\n new_object.edit(**edit_kw)\n
\n \n
if not editable_mode: form_id = \'view\'\n if not editable_mode: form_id = \'view\'\n
return new_object.Base_redirect(form_id, editable_mode=1,\n return new_object.Base_redirect(form_id, editable_mode=1,\n
keep_items={\'portal_status_message\': translateString("Created %s ${portal_type} with reference \'${reference}\' and version \'${version} [${language}]\'." % message_kind, mapping = kw)})\n keep_items={\'portal_status_message\': translateString("Created %s ${portal_type} with reference \'${reference}\' and version \'${version} [${language}]\'." % message_kind, mapping = kw)})\n
</string> </value>
]]></string> </value>
</item> </item>
<item> <item>
<key> <string>_code</string> </key> <key> <string>_code</string> </key>
...@@ -170,6 +167,14 @@ return new_object.Base_redirect(form_id, editable_mode=1,\n ...@@ -170,6 +167,14 @@ return new_object.Base_redirect(form_id, editable_mode=1,\n
<key> <string>_params</string> </key> <key> <string>_params</string> </key>
<value> <string>clone=1, form_id, editable_mode=0</string> </value> <value> <string>clone=1, form_id, editable_mode=0</string> </value>
</item> </item>
<item>
<key> <string>_proxy_roles</string> </key>
<value>
<tuple>
<string>Manager</string>
</tuple>
</value>
</item>
<item> <item>
<key> <string>errors</string> </key> <key> <string>errors</string> </key>
<value> <value>
...@@ -221,9 +226,12 @@ return new_object.Base_redirect(form_id, editable_mode=1,\n ...@@ -221,9 +226,12 @@ return new_object.Base_redirect(form_id, editable_mode=1,\n
<string>module</string> <string>module</string>
<string>edit_kw</string> <string>edit_kw</string>
<string>property_id_list</string> <string>property_id_list</string>
<string>Products.ERP5Type.Log</string>
<string>log</string>
<string>_getiter_</string> <string>_getiter_</string>
<string>key</string> <string>key</string>
<string>val</string> <string>val</string>
<string>len</string>
</tuple> </tuple>
</value> </value>
</item> </item>
......
...@@ -87,7 +87,7 @@ portal_type = context.getPortalType()\n ...@@ -87,7 +87,7 @@ portal_type = context.getPortalType()\n
request = context.REQUEST\n request = context.REQUEST\n
current_web_section = request.current_web_section\n current_web_section = request.current_web_section\n
current_web_section_pt = current_web_section.getPortalType()\n current_web_section_pt = current_web_section.getPortalType()\n
action_dict = request.get(\'actions\', {}) # actions needs to be renamed to action_dict\n action_dict = request.get(\'actions\', {}) # XXX actions needs to be renamed to action_dict\n
exchange_action_list = action_dict.get(\'object_exchange\', [])\n exchange_action_list = action_dict.get(\'object_exchange\', [])\n
button_action_list = action_dict.get(\'object_button\', [])\n button_action_list = action_dict.get(\'object_button\', [])\n
portal_url = context.portal_url()\n portal_url = context.portal_url()\n
...@@ -100,14 +100,20 @@ editable_absolute_url = getattr(context, \'editable_absolute_url\', absolute_url ...@@ -100,14 +100,20 @@ editable_absolute_url = getattr(context, \'editable_absolute_url\', absolute_url
\n \n
\n \n
# Append a button to edit the current document\n # Append a button to edit the current document\n
if not request.form.get(\'editable_mode\', 0): result.append(dict(\n if not request.form.get(\'editable_mode\', 0):\n
# The title is called Edit only if the document can be edited\n
if context.portal_membership.checkPermission(\'Modify portal content\', context):\n
edit_title = translateString("Edit ${portal_type}", mapping=dict(portal_type=portal_type))\n
else:\n
edit_title = translateString("Access ${portal_type} details", mapping=dict(portal_type=portal_type))\n
result.append(dict(\n
url = "%s/view?editable_mode:int=1&%s" % (editable_absolute_url, http_parameters),\n url = "%s/view?editable_mode:int=1&%s" % (editable_absolute_url, http_parameters),\n
icon = context.getIcon() or \'file_icon.gif\',\n icon = context.getIcon() or \'file_icon.gif\',\n
title = translateString("Edit ${portal_type}", mapping=dict(portal_type=portal_type)),\n title = edit_title,\n
label = "%s Icon" % portal_type,\n label = "%s Icon" % portal_type,\n
))\n ))\n
else: result.append(dict(\n else: result.append(dict(\n
url = "%s/view?editable_mode=&%s" % (editable_absolute_url, http_parameters),\n url = "%s/view?editable_mode:int=0&%s" % (absolute_url, http_parameters),\n
icon = context.getIcon() or \'file_icon.gif\',\n icon = context.getIcon() or \'file_icon.gif\',\n
title = translateString("View ${portal_type}", mapping=dict(portal_type=portal_type)),\n title = translateString("View ${portal_type}", mapping=dict(portal_type=portal_type)),\n
label = "%s Icon" % portal_type,\n label = "%s Icon" % portal_type,\n
...@@ -205,6 +211,7 @@ return result\n ...@@ -205,6 +211,7 @@ return result\n
<string>getattr</string> <string>getattr</string>
<string>editable_absolute_url</string> <string>editable_absolute_url</string>
<string>dict</string> <string>dict</string>
<string>edit_title</string>
<string>_getiter_</string> <string>_getiter_</string>
<string>action</string> <string>action</string>
<string>_getitem_</string> <string>_getitem_</string>
......
...@@ -49,7 +49,6 @@ ...@@ -49,7 +49,6 @@
<value> <string encoding="cdata"><![CDATA[ <value> <string encoding="cdata"><![CDATA[
<div class="related_docs">\n <div class="related_docs">\n
<div class="title">History:</div>\n
<table id="#workflow_history" tal:define="history here/Base_getWorkflowEventInfoList">\n <table id="#workflow_history" tal:define="history here/Base_getWorkflowEventInfoList">\n
<tr tal:repeat="event history">\n <tr tal:repeat="event history">\n
<td tal:content="python: here.Base_FormatDate(event[\'date\'])"/>\n <td tal:content="python: here.Base_FormatDate(event[\'date\'])"/>\n
......
...@@ -73,7 +73,7 @@ ...@@ -73,7 +73,7 @@
</item> </item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>Document_viewWikiRelationListWidget</string> </value> <value> <string>Document_viewImplicitRelationListWidget</string> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
......
...@@ -59,12 +59,16 @@ ...@@ -59,12 +59,16 @@
<div class="tabbertab">\n <div class="tabbertab">\n
<h2>Contribute</h2>\n <h2>Contribute</h2>\n
<div class="fieldset">\n <div class="fieldset">\n
<div tal:define="search_type_list here/ERP5Site_getSearchableDocumentTypeList">\n <div>\n
<label for="doctype" i18n:translate="" i18n:domain="ui">Type</label>\n <label for="doctype" i18n:translate="" i18n:domain="ui">Type</label>\n
<select size="1" name="doctype" id="doctype" onchange="toggleMakeTemplateButton(this);">\n <select size="1" name="doctype" id="doctype" onchange="toggleMakeTemplateButton(this);">\n
<option value="" i18n:translate="" i18n:domain="ui">-- Select Document Type --</option>\n <option value="" i18n:translate="" i18n:domain="ui">-- Select Document Type --</option>\n
<option value="Memo" value="" i18n:translate="" i18n:domain="ui">Memo</option>\n <tal:block tal:repeat="ptype here/getPortalTemplateDocumentTypeList">\n
<option value="Report" value="" i18n:translate="" i18n:domain="ui">Report</option>\n <option \n
tal:content="ptype" tal:attributes="value ptype"\n
value="" i18n:translate="" i18n:domain="ui">Report</option>\n
</tal:block>\n
<option value="" i18n:translate="" i18n:domain="ui">-- Any other Documents Type --</option>\n
</select>\n </select>\n
<input type="file" name="datafile" size="30" />\n <input type="file" name="datafile" size="30" />\n
</div>\n </div>\n
...@@ -112,101 +116,51 @@ ...@@ -112,101 +116,51 @@
</div>\n </div>\n
\n \n
<div class="tabbertab"\n <div class="tabbertab"\n
tal:define="user here/ERP5Site_getCurrentUserValue"\n tal:define="user here/ERP5Site_getCurrentUserValue">\n
>\n
<h2 value="" i18n:translate="" i18n:domain="ui">File</h2>\n <h2 value="" i18n:translate="" i18n:domain="ui">File</h2>\n
\n \n
<div class="filebox" id="administration">\n <tal:block tal:repeat="file_group python:[\n
<ul>\n dict(\n
<li class="listheader" value="" i18n:translate="" i18n:domain="ui">Administration:</li>\n portal_type_list = here.getPortalTicketTypeList(),\n
<ul>\n id = \'ticket\',\n
<li tal:condition="python:here.ERP5Site_isNewContentAllowed(\'Medical Claim\', user)">\n title = \'Forms and Requests:\',\n
<span tal:define="impl python:False; title string:Medical Claim;">\n ),\n
<span metal:use-macro="here/au_macros/macros/file_feature">\n dict(\n
</span>\n portal_type_list = here.getPortalNodeTypeList(),\n
</span>\n id = \'node\',\n
</li>\n title = \'People and Projects:\',\n
<li tal:condition="python:here.ERP5Site_isNewContentAllowed(\'Leave Request\', user)">\n ),\n
<span tal:define="impl python:False; title string:Leave Request;">\n dict(\n
<span metal:use-macro="here/au_macros/macros/file_feature">\n portal_type_list = here.getPortalWebDocumentTypeList(),\n
</span>\n id = \'web\',\n
</span>\n title = \'Online Content:\',\n
</li>\n ),\n
<li tal:condition="python:here.ERP5Site_isNewContentAllowed(\'Travel Request\', user)">\n dict(\n
<span tal:define="impl python:False; title string:Travel Request;">\n portal_type_list = here.getPortalFileDocumentTypeList() + here.getPortalTemplateDocumentTypeList(),\n
<span metal:use-macro="here/au_macros/macros/file_feature">\n id = \'content\',\n
</span>\n title = \'Offline Content:\',\n
</span>\n ),\n
</li>\n ]">\n
<li tal:condition="python:here.ERP5Site_isNewContentAllowed(\'Passport Request\', user)">\n \n
<span tal:define="impl python:False; title string:Passport Request;">\n <div class="filebox" id="administration" tal:attributes="id file_group/id">\n
<span metal:use-macro="here/au_macros/macros/file_feature">\n
</span>\n
</span>\n
</li>\n
<li tal:condition="python:here.ERP5Site_isNewContentAllowed(\'External Library File\', user)">\n
<a href="ERP?portal_type=External Library File" value="" i18n:translate="" i18n:domain="ui">Library File</a>\n
</li>\n
</ul>\n
</ul>\n
</div>\n
\n
<div class="filebox" id="conference">\n
<ul>\n
<li class="listheader" value="" i18n:translate="" i18n:domain="ui">Conference:</li>\n
<ul>\n <ul>\n
<li tal:condition="python:here.ERP5Site_isNewContentAllowed(\'Conference\', user)">\n <li class="listheader" value="" tal:content="file_group/title"\n
<span tal:define="impl python:True; title string:Conference;">\n i18n:translate="" i18n:domain="ui">Forms and Requests:</li>\n
<span metal:use-macro="here/au_macros/macros/file_feature">\n <ul tal:condition="not:file_group/portal_type_list">\n
</span>\n <i i18n:translate="" i18n:domain="ui">Not available</i>\n
</span>\n
</li>\n
<li tal:condition="python:here.ERP5Site_isNewContentAllowed(\'Event\', user)">\n
<span tal:define="impl python:False; title string:Event;">\n
<span metal:use-macro="here/au_macros/macros/file_feature">\n
</span>\n
</span>\n
</li>\n
<li tal:condition="python:here.ERP5Site_isNewContentAllowed(\'Participant\', user)">\n
<span tal:define="impl python:False; title string:Participant;">\n
<span metal:use-macro="here/au_macros/macros/file_feature">\n
</span>\n
</span>\n
</li>\n
</ul>\n
</ul>\n </ul>\n
</div>\n <ul tal:condition="file_group/portal_type_list">\n
\n <tal:block tal:repeat="portal_type file_group/portal_type_list">\n
<div class="filebox" id="web">\n <li tal:condition="python:here.ERP5Site_isNewContentAllowed(portal_type, user)">\n
<ul>\n <a tal:content="portal_type"\n
<li class="listheader" value="" i18n:translate="" i18n:domain="ui">Web:</li>\n tal:attributes="href string:ERP5Site_newContent?portal_type=${portal_type}">Toto</a>\n
<ul>\n
<li tal:condition="python:here.ERP5Site_isNewContentAllowed(\'News\', user)">\n
<span tal:define="impl python:True; title string:News;">\n
<span metal:use-macro="here/au_macros/macros/file_feature">\n
</span>\n
</span>\n
</li>\n
<li tal:condition="python:here.ERP5Site_isNewContentAllowed(\'Web Page\', user)">\n
<a href="WebPage_createNewForGroup" value="" i18n:translate="" i18n:domain="ui">Web Page</a>\n
</li>\n </li>\n
</tal:block>\n
</ul>\n </ul>\n
</ul>\n </ul>\n
</div>\n </div>\n
\n \n
<div class="filebox" id="contacs">\n </tal:block>\n
<ul>\n
<li class="listheader" value="" i18n:translate="" i18n:domain="ui">Contacts:</li>\n
<ul>\n
<li tal:condition="python:here.ERP5Site_isNewContentAllowed(\'Organisation\', user)">\n
<a href="ERP5Site_newContent?portal_type=Organisation" value="" i18n:translate="" i18n:domain="ui">Organisation</a>\n
</li>\n
<li tal:condition="python:here.ERP5Site_isNewContentAllowed(\'Person\', user)">\n
<a href="ERP5Site_newContent?portal_type=Person" value="" i18n:translate="" i18n:domain="ui">Person</a>\n
</li>\n
</ul>\n
</ul>\n
</div>\n
\n \n
<div class="clear"></div>\n <div class="clear"></div>\n
</div>\n </div>\n
......
...@@ -55,7 +55,11 @@ Description:\n ...@@ -55,7 +55,11 @@ Description:\n
-->\n -->\n
\n \n
<tal:block metal:define-macro="main">\n <tal:block metal:define-macro="main">\n
<tal:block metal:use-macro="here/global_definitions_au/macros/main"/>\n <tal:block tal:define="global web_site_url web_site_url | nothing"/>\n
<tal:block tal:condition="not:web_site_url">\n
<tal:block metal:use-macro="here/global_definitions/macros/header_definitions"/>\n
</tal:block>\n
\n
<div class="tabber" id="mytabber1">\n <div class="tabber" id="mytabber1">\n
\n \n
<div class="tabbertab">\n <div class="tabbertab">\n
...@@ -68,38 +72,47 @@ Description:\n ...@@ -68,38 +72,47 @@ Description:\n
<tal:block metal:define-macro="search_type_option_list">\n <tal:block metal:define-macro="search_type_option_list">\n
<option value="" selected value="" i18n:translate="" i18n:domain="ui">Everything</option>\n <option value="" selected value="" i18n:translate="" i18n:domain="ui">Everything</option>\n
<option value="all" selected value="" i18n:translate="" i18n:domain="ui">All Documents</option>\n <option value="all" selected value="" i18n:translate="" i18n:domain="ui">All Documents</option>\n
<tal:block tal:repeat="portal_item here/ERP5Site_getSearchableDocumentTypeItemList">\n <tal:block tal:repeat="ptype here/getPortalDocumentTypeList">\n
<option tal:attributes="value python:portal_item[1]"\n <option tal:attributes="value ptype" tal:content="python:ptype"\n
tal:content="python:portal_item[0]">Standard Type</option>\n i18n:translate="" i18n:domain="ui">Standard Type</option>\n
</tal:block>\n </tal:block>\n
<option value="" i18n:translate="" i18n:domain="ui">-- Directory --</option>\n <option value="" i18n:translate="" i18n:domain="ui">-- Directory --</option>\n
<option value="Person" i18n:translate="" i18n:domain="ui">Person</option>\n <option value="Person" i18n:translate="" i18n:domain="ui">Person</option>\n
<option value="Organisation" i18n:translate="" i18n:domain="ui">Organisation</option>\n <option value="Organisation" i18n:translate="" i18n:domain="ui">Organisation</option>\n
<option value="" i18n:translate="" i18n:domain="ui">-- Quick Search --</option>\n <option value="" i18n:translate="" i18n:domain="ui">-- Quick Search --</option>\n
<tal:block tal:repeat="portal_item here/ERP5Site_getQuickSearchableTypeItemList">\n <option tal:repeat="ptype here/ERP5Site_getQuickSearchableTypeList"\n
<option tal:attributes="value python:portal_item[1]"\n tal:attributes="value ptype" tal:content="python:ptype"\n
tal:content="python:portal_item[0]">Standard Type</option>\n i18n:translate="" i18n:domain="ui">Standard Type</option>\n
</tal:block>\n
</tal:block>\n </tal:block>\n
</select>\n </select>\n
<input type="submit" name="searches/WebSite_viewQuickSearchResultList:method" value="Search"/>\n <input type="submit" name="search_area/WebSite_viewQuickSearchResultList:method" value="Search"/>\n
</div>\n </div>\n
<div class="searchOptions">\n <div class="searchOptions">\n
<a tal:attributes="href string: ${site_url}/searches/WebSite_viewAdvancedSearch" i18n:translate="" i18n:domain="ui">Advanced Search</a> | <a href="javascript:void 0" onclick="javascript:openTips();" value="" i18n:translate="" i18n:domain="ui">Search Tips</a>\n <a tal:attributes="href string: ${web_site_url}/search_area/WebSite_viewAdvancedSearch" i18n:translate="" i18n:domain="ui">Advanced Search</a> | <a href="javascript:void 0" onclick="javascript:openTips();" value="" i18n:translate="" i18n:domain="ui">Search Tips</a>\n
</div>\n </div>\n
</div>\n </div>\n
<div class="clear"></div>\n <div class="clear"></div>\n
</div>\n </div>\n
\n \n
<div class="tabbertab">\n <div class="tabbertab"\n
tal:define="section_list python:here.contentValues(portal_type=\'Web Section\', sort_on=\'int_index\');\n
section_list python:filter(lambda x:x.isVisible(), section_list);\n
half_count python:len(section_list) / 2">\n
<h2 value="" i18n:translate="" i18n:domain="ui">Browse</h2>\n <h2 value="" i18n:translate="" i18n:domain="ui">Browse</h2>\n
\n \n
<div style="width:250px;float:left;" class="tabbertabcont">\n <div style="width:50%;float:left;" class="tabbertabcont">\n
<tal:block tal:repeat="section python:section_list[0:half_count]">\n
<ul>\n <ul>\n
<li value="" i18n:translate="" i18n:domain="ui">Departments and Divisions:</li>\n <li value="" i18n:translate=""\n
i18n:domain="ui" tal:content="section/getTitle">Departments and Divisions:</li>\n
<ul>\n <ul>\n
<li tal:repeat="root_section here/group_section/contentValues">\n <li tal:repeat="root_section section/contentValues">\n
<span tal:content="root_section/getTitle" onclick="toggleSection(this)" toggle="yes" style="cursor:pointer;"/>\n <a tal:content="root_section/getTitle"\n
tal:condition="python:not len(root_section.contentValues())"\n
tal:attributes="href root_section/absolute_url"/>\n
<span tal:content="root_section/getTitle"\n
tal:condition="python:len(root_section.contentValues())"\n
onclick="toggleSection(this)" toggle="yes" style="cursor:pointer;"/>\n
<div style="display:none;visibility:hidden">\n <div style="display:none;visibility:hidden">\n
<ul>\n <ul>\n
<li tal:repeat="section root_section/contentValues"><a href="#" tal:content="section/getTitle"\n <li tal:repeat="section root_section/contentValues"><a href="#" tal:content="section/getTitle"\n
...@@ -109,21 +122,23 @@ Description:\n ...@@ -109,21 +122,23 @@ Description:\n
</li>\n </li>\n
</ul>\n </ul>\n
</ul>\n </ul>\n
\n </tal:block>\n
<ul>\n
<li value="" i18n:translate="" i18n:domain="ui">Programmes:</li>\n
<ul>\n
<li tal:repeat="section here/source_project_section/contentValues"><a href="#" tal:content="section/getTitle"\n
tal:attributes="href section/absolute_url">Theme</a></li>\n
</ul>\n
</ul>\n
</div>\n </div>\n
<div style="width:250px;float:right;" class="tabbertabcont">\n \n
<tal:block >\n
<div style="width:50%;float:right;" class="tabbertabcont">\n
<tal:block tal:repeat="section python:section_list[half_count:]">\n
<ul>\n <ul>\n
<li value="" i18n:translate="" i18n:domain="ui">Offices:</li>\n <li value="" i18n:translate=""\n
i18n:domain="ui" tal:content="section/getTitle">Departments and Divisions:</li>\n
<ul>\n <ul>\n
<li tal:repeat="root_section here/site_section/contentValues">\n <li tal:repeat="root_section section/contentValues">\n
<span tal:content="root_section/getTitle" onclick="toggleSection(this)" toggle="yes" style="cursor:pointer;"/>\n <a tal:content="root_section/getTitle"\n
tal:condition="python:not len(root_section.contentValues())"\n
tal:attributes="href root_section/absolute_url"/>\n
<span tal:content="root_section/getTitle"\n
tal:condition="python:len(root_section.contentValues())"\n
onclick="toggleSection(this)" toggle="yes" style="cursor:pointer;"/>\n
<div style="display:none;visibility:hidden">\n <div style="display:none;visibility:hidden">\n
<ul>\n <ul>\n
<li tal:repeat="section root_section/contentValues"><a href="#" tal:content="section/getTitle"\n <li tal:repeat="section root_section/contentValues"><a href="#" tal:content="section/getTitle"\n
...@@ -133,8 +148,10 @@ Description:\n ...@@ -133,8 +148,10 @@ Description:\n
</li>\n </li>\n
</ul>\n </ul>\n
</ul>\n </ul>\n
</tal:block>\n
</div>\n </div>\n
\n </tal:block>\n
\n
<div class="clear"></div>\n <div class="clear"></div>\n
</div>\n </div>\n
\n \n
...@@ -145,9 +162,9 @@ Description:\n ...@@ -145,9 +162,9 @@ Description:\n
<tal:block i18n:translate="" i18n:domain="ui">in</tal:block>\n <tal:block i18n:translate="" i18n:domain="ui">in</tal:block>\n
<select size="1" class="input" name="query_portal_type">\n <select size="1" class="input" name="query_portal_type">\n
<option value="all" selected value="" i18n:translate="" i18n:domain="ui">Any Documents</option>\n <option value="all" selected value="" i18n:translate="" i18n:domain="ui">Any Documents</option>\n
<option tal:repeat="portal_type_item here/ERP5Site_getSearchableDocumentTypeItemList"\n <option tal:repeat="ptype here/getPortalDocumentTypeList"\n
tal:content="python:portal_type_item[0]"\n tal:attributes="value ptype" tal:content="python:ptype"\n
tal:attributes="value python:portal_type_item[1]"/>\n i18n:translate="" i18n:domain="ui">Standard Type</option>\n
</select>\n </select>\n
<input type="submit" name="WebSite_postQueryWithType:method" value="Send Query to Expert"/>\n <input type="submit" name="WebSite_postQueryWithType:method" value="Send Query to Expert"/>\n
<div class="clear"></div>\n <div class="clear"></div>\n
...@@ -155,7 +172,6 @@ Description:\n ...@@ -155,7 +172,6 @@ Description:\n
</div>\n </div>\n
\n \n
</div>\n </div>\n
\n
</tal:block> </tal:block>
]]></string> </value> ]]></string> </value>
......
...@@ -12,6 +12,10 @@ ...@@ -12,6 +12,10 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item> <item>
<key> <string>__ac_local_roles__</string> </key> <key> <string>__ac_local_roles__</string> </key>
<value> <value>
......
...@@ -12,6 +12,10 @@ ...@@ -12,6 +12,10 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item> <item>
<key> <string>__ac_local_roles__</string> </key> <key> <string>__ac_local_roles__</string> </key>
<value> <value>
......
...@@ -12,6 +12,10 @@ ...@@ -12,6 +12,10 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item> <item>
<key> <string>__ac_local_roles__</string> </key> <key> <string>__ac_local_roles__</string> </key>
<value> <value>
......
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>OFS.Image</string>
<string>Image</string>
</tuple>
<none/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_Cacheable__manager_id</string> </key>
<value> <string>style_cache</string> </value>
</item>
<item>
<key> <string>__ac_local_roles__</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>__name__</string> </key>
<value> <string>send_by_mail</string> </value>
</item>
<item>
<key> <string>_owner</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>image/png</string> </value>
</item>
<item>
<key> <string>data</string> </key>
<value> <string encoding="base64">iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAABGdBTUEAALGPC/xhBQAAAAZiS0dE
AP8A/wD/oL2nkwAAAAlwSFlzAAALDwAACw8BkvkDpQAAAAd0SU1FB9ICBQ8sINc/uI0AAAMaSURB
VHicjZRPbBR1FMc/M/vb6WzdP9WlCy4pptZqTQMqlVKCVhNNQE01NKa9GE+9ePNQOBAucjCGA144
eSBojKFGOSgEmyilAbG2EbWuPSCKWLO4XZbtTnd2Z3bmNz8Pu4Wlocbv5Xt633zfe9/3tKOHDqrK
ShlPgZQe0pPYbhVNabS0hMndyFEuW5itrWjS5uPJCwnABiRNEKWSxeDuXhLJOB2dfZhxHRE2MQwD
PME3pz/jyZ1PIcwUb4+9CbAL+A6wmoV0GXj0PfM8pUKJ6spvxBMpWsMGIhRl/seLiFCCjR29zTVx
IMQa6IamE2ldYXDvCL8vLLLwwyyIKPOzl8n9cZ0XhnYAsHXsfc6W0mvr7wiF9HC9x4hD/95XuZHN
czVznvzSIv17XkaZHaRfO8i+d8cJPdpHcmD0U+C+ta70WuCivAj4HlETnntxD9d+zaL5JZJtMTa/
sp83joxzfuE6ycHttGzfTXJgdBFINYsJpdRdFu1yHgQMDo2QHj7M8Hv7OZv5C7eiU73lEdvWi0AA
ZAszE2lgCZC6XXHRqCIRSL/K99NTbOzsYcvwYWqlHCffGqfw0QQttYDIpvu5eeID7MvTACQHRrOr
zoRdsQEdAN9xKC4VSG24QvbUAQDcADpfP0LEEHT3pLgIFGYmxhpZqgFdgKVrKGRgEfLLIAQ7d3Vy
5ZeruE4R8KhUqgBoyicqbo/EbmRpCpgHHD0Rj6JUAoRECDDaHia3VOTC6S/Bd4iZ9Rkqt0bgB6tC
knogiw2WutJ0wsoikAH2cp65qUn2jTzLrbxFZnYay64HONAgZor1c6SjgADfd7g0+TVdj3QQb99C
+4PtLGT+5AHDAyBuGhRcf10hkfsnz0pZMnvmC7q3PU5Xz2PU3IAnnt7KzzNzfHXqDACZ48fWFQHQ
laoyd26STekNJFMxKss3kX4RgO7eh7CsZS69089Px4Z4KZFt3tjd13/t7zwffv4toVAYxw1wfRff
91FK4dR8pPQQn5yDsGBzW2J1Y/MNvg2N+jUPNFj7T/91WNzjjWjU0xht8P8Rkvdq7V9ThElbOQcK
RAAAAABJRU5ErkJggg==</string> </value>
</item>
<item>
<key> <string>height</string> </key>
<value> <int>18</int> </value>
</item>
<item>
<key> <string>precondition</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>size</string> </key>
<value> <int>925</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>18</int> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
...@@ -36,7 +36,7 @@ ...@@ -36,7 +36,7 @@
<key> <string>actbox_url</string> </key> <key> <string>actbox_url</string> </key>
<value> <string encoding="cdata"><![CDATA[ <value> <string encoding="cdata"><![CDATA[
Base_viewSearchResultList?validation_state=draft&reset=1 Base_viewSearchResultList?validation_state=draft&portal_type=%(portal_type)s&reset=1
]]></string> </value> ]]></string> </value>
</item> </item>
......
541 538
\ No newline at end of file \ No newline at end of file
...@@ -8,6 +8,7 @@ Web Page | send_email ...@@ -8,6 +8,7 @@ Web Page | send_email
Web Page | view Web Page | view
Web Page | view_editor Web Page | view_editor
Web Page | web_view Web Page | web_view
Web Section | generate_section
Web Section | history Web Section | history
Web Section | list Web Section | list
Web Section | metadata Web Section | metadata
...@@ -20,7 +21,7 @@ Web Section | web_view ...@@ -20,7 +21,7 @@ Web Section | web_view
Web Site Module | list_ui Web Site Module | list_ui
Web Site Module | sort_on Web Site Module | sort_on
Web Site Module | view Web Site Module | view
Web Site | generate_site Web Site | generate_section
Web Site | history Web Site | history
Web Site | metadata Web Site | metadata
Web Site | new_default_page Web Site | new_default_page
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment