From ce0f6d61fc7111bbeada14fda84182d0250dafbf Mon Sep 17 00:00:00 2001 From: Ivan Tyagov <ivan@nexedi.com> Date: Wed, 2 Jun 2010 10:16:24 +0000 Subject: [PATCH] Improve showing threads listbox. Add specific web view for Post. git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@35890 20353a03-c40f-0410-a6d1-a30d3c3de9de --- .../portal_types/Discussion%20Post/view.xml | 6 +- .../Discussion%20Post/web_view.xml | 109 +++++++++++ .../DiscussionPost_getAuthorDict.xml | 6 +- .../DiscussionPost_viewAsWeb.xml | 173 ++++++++++++++++++ .../my_text_content.xml | 148 +++++++++++++++ .../DiscussionPost_viewAsWeb/my_title.xml | 93 ++++++++++ .../my_translated_validation_state_title.xml | 93 ++++++++++ .../my_subject_list.xml | 8 +- .../DiscussionThread_getLastPost.xml | 12 +- .../DiscussionThread_viewAuthorWidget.xml | 70 +++++++ .../DiscussionThread_viewLastPostWidget.xml | 76 ++++++++ .../ERP5Site_viewDiscussionThreadForm.xml | 8 +- .../{your_listbox.xml => listbox.xml} | 67 +++++-- .../listbox_author.xml | 148 +++++++++++++++ .../listbox_last_post.xml | 148 +++++++++++++++ .../listbox_modification_date.xml | 147 +++++++++++++++ .../your_add_new_thread_link.xml | 2 +- bt5/erp5_discussion/bt/revision | 2 +- .../bt/template_action_path_list | 1 + 19 files changed, 1292 insertions(+), 25 deletions(-) create mode 100644 bt5/erp5_discussion/ActionTemplateItem/portal_types/Discussion%20Post/web_view.xml create mode 100644 bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_viewAsWeb.xml create mode 100644 bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_viewAsWeb/my_text_content.xml create mode 100644 bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_viewAsWeb/my_title.xml create mode 100644 bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_viewAsWeb/my_translated_validation_state_title.xml create mode 100644 bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_viewAuthorWidget.xml create mode 100644 bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_viewLastPostWidget.xml rename bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/{your_listbox.xml => listbox.xml} (78%) create mode 100644 bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/listbox_author.xml create mode 100644 bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/listbox_last_post.xml create mode 100644 bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/listbox_modification_date.xml diff --git a/bt5/erp5_discussion/ActionTemplateItem/portal_types/Discussion%20Post/view.xml b/bt5/erp5_discussion/ActionTemplateItem/portal_types/Discussion%20Post/view.xml index 074204c0f8..41e0aad3be 100644 --- a/bt5/erp5_discussion/ActionTemplateItem/portal_types/Discussion%20Post/view.xml +++ b/bt5/erp5_discussion/ActionTemplateItem/portal_types/Discussion%20Post/view.xml @@ -35,7 +35,9 @@ </item> <item> <key> <string>description</string> </key> - <value> <string></string> </value> + <value> + <none/> + </value> </item> <item> <key> <string>icon</string> </key> @@ -95,7 +97,7 @@ <dictionary> <item> <key> <string>text</string> </key> - <value> <string>python: here.hasTextContent()</string> </value> + <value> <string>python:object is not None and not object.isWebMode()</string> </value> </item> </dictionary> </pickle> diff --git a/bt5/erp5_discussion/ActionTemplateItem/portal_types/Discussion%20Post/web_view.xml b/bt5/erp5_discussion/ActionTemplateItem/portal_types/Discussion%20Post/web_view.xml new file mode 100644 index 0000000000..c1a4879bf8 --- /dev/null +++ b/bt5/erp5_discussion/ActionTemplateItem/portal_types/Discussion%20Post/web_view.xml @@ -0,0 +1,109 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <global name="ActionInformation" module="Products.CMFCore.ActionInformation"/> + <tuple/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>action</string> </key> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> + </value> + </item> + <item> + <key> <string>categories</string> </key> + <value> + <tuple> + <string>action_type/object_web_view</string> + </tuple> + </value> + </item> + <item> + <key> <string>category</string> </key> + <value> <string>object_web_view</string> </value> + </item> + <item> + <key> <string>condition</string> </key> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> + </value> + </item> + <item> + <key> <string>description</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>icon</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>web_view</string> </value> + </item> + <item> + <key> <string>permissions</string> </key> + <value> + <tuple> + <string>View</string> + </tuple> + </value> + </item> + <item> + <key> <string>portal_type</string> </key> + <value> <string>Action Information</string> </value> + </item> + <item> + <key> <string>priority</string> </key> + <value> <float>2.0</float> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Web View</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> + <global name="Expression" module="Products.CMFCore.Expression"/> + <tuple/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>text</string> </key> + <value> <string>string:${object_url}/DiscussionPost_viewAsWeb</string> </value> + </item> + </dictionary> + </pickle> + </record> + <record id="3" aka="AAAAAAAAAAM="> + <pickle> + <tuple> + <global name="Expression" module="Products.CMFCore.Expression"/> + <tuple/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>text</string> </key> + <value> <string>python:object is not None and object.isWebMode()</string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_getAuthorDict.xml b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_getAuthorDict.xml index cce66693d1..f8ccfdb558 100644 --- a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_getAuthorDict.xml +++ b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_getAuthorDict.xml @@ -59,12 +59,12 @@ portal = context.getPortalObject()\n \n author = context.getSourceValue()\n -result = {\'author_url\': None,\n +result = {\'author_url\': \'#\',\n \'author_signature\': None,\n - \'author_title\': \'Unknown User\'}\n + \'author_title\': context.Base_translateString(\'Unknown User\')}\n \n if author is not None:\n - result[\'author_url\'] = author.getAbsoluteUrl()\n + result[\'author_url\'] = \'%s/view\' %author.getAbsoluteUrl()\n result[\'author_signature\'] = portal.ERP5Site_getUserPreferredForumSignature(author.getReference())\n result[\'author_title\'] = author.getTitle()\n \n diff --git a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_viewAsWeb.xml b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_viewAsWeb.xml new file mode 100644 index 0000000000..e737eb4f73 --- /dev/null +++ b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_viewAsWeb.xml @@ -0,0 +1,173 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <global name="ERP5Form" module="Products.ERP5Form.Form"/> + <tuple/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>_bind_names</string> </key> + <value> + <object> + <klass> + <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/> + </klass> + <tuple/> + <state> + <dictionary> + <item> + <key> <string>_asgns</string> </key> + <value> + <dictionary/> + </value> + </item> + </dictionary> + </state> + </object> + </value> + </item> + <item> + <key> <string>_objects</string> </key> + <value> + <tuple/> + </value> + </item> + <item> + <key> <string>action</string> </key> + <value> <string>Base_edit</string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>edit_order</string> </key> + <value> + <list/> + </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 (Document Reference)</string> + <string>right (Publication Information)</string> + <string>left</string> + <string>right</string> + <string>center</string> + <string>hidden</string> + <string>bottom</string> + </list> + </value> + </item> + <item> + <key> <string>groups</string> </key> + <value> + <dictionary> + <item> + <key> <string>bottom</string> </key> + <value> + <list> + <string>my_text_content</string> + </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/> + </value> + </item> + <item> + <key> <string>left (Document Reference)</string> </key> + <value> + <list> + <string>my_title</string> + </list> + </value> + </item> + <item> + <key> <string>right</string> </key> + <value> + <list/> + </value> + </item> + <item> + <key> <string>right (Publication Information)</string> </key> + <value> + <list> + <string>my_translated_validation_state_title</string> + </list> + </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>DiscussionPost_viewAsWeb</string> </value> + </item> + <item> + <key> <string>method</string> </key> + <value> <string>POST</string> </value> + </item> + <item> + <key> <string>name</string> </key> + <value> <string>Base_viewClassification</string> </value> + </item> + <item> + <key> <string>pt</string> </key> + <value> <string>form_view</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>Discussion Post</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> + <item> + <key> <string>update_action_title</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_viewAsWeb/my_text_content.xml b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_viewAsWeb/my_text_content.xml new file mode 100644 index 0000000000..a77c566426 --- /dev/null +++ b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_viewAsWeb/my_text_content.xml @@ -0,0 +1,148 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <global name="ProxyField" module="Products.ERP5Form.ProxyField"/> + <tuple/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>delegated_list</string> </key> + <value> + <list> + <string>css_class</string> + <string>editable</string> + <string>text_editor</string> + <string>title</string> + </list> + </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>my_text_content</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> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>field_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>css_class</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>field_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>text_editor</string> </key> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> + </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>css_class</string> </key> + <value> <string>page</string> </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>field_id</string> </key> + <value> <string>my_text_content</string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string>Base_viewFieldLibrary</string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string>Click to edit the target</string> </value> + </item> + <item> + <key> <string>text_editor</string> </key> + <value> <string>fck_editor</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Body</string> </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>python:(here.portal_preferences.getPreferredTextFormat() == \'text/html\' and here.portal_preferences.getPreferreTextEditor()) or \'text_area\'d</string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_viewAsWeb/my_title.xml b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_viewAsWeb/my_title.xml new file mode 100644 index 0000000000..55aeb32119 --- /dev/null +++ b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_viewAsWeb/my_title.xml @@ -0,0 +1,93 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <global name="ProxyField" module="Products.ERP5Form.ProxyField"/> + <tuple/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>delegated_list</string> </key> + <value> + <list/> + </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>my_title</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> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>field_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>field_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>field_id</string> </key> + <value> <string>my_title</string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string>Document_viewFieldLibrary</string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string>Click to edit the target</string> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_viewAsWeb/my_translated_validation_state_title.xml b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_viewAsWeb/my_translated_validation_state_title.xml new file mode 100644 index 0000000000..7946e536c5 --- /dev/null +++ b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionPost_viewAsWeb/my_translated_validation_state_title.xml @@ -0,0 +1,93 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <global name="ProxyField" module="Products.ERP5Form.ProxyField"/> + <tuple/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>delegated_list</string> </key> + <value> + <list/> + </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>my_translated_validation_state_title</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> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>field_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>field_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>field_id</string> </key> + <value> <string>my_translated_validation_state_title</string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string>Document_viewFieldLibrary</string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string>Click to edit the target</string> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThreadModule_viewCreateNewDiscussionThreadDialog/my_subject_list.xml b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThreadModule_viewCreateNewDiscussionThreadDialog/my_subject_list.xml index 4f9586098e..d83469f020 100644 --- a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThreadModule_viewCreateNewDiscussionThreadDialog/my_subject_list.xml +++ b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThreadModule_viewCreateNewDiscussionThreadDialog/my_subject_list.xml @@ -12,7 +12,9 @@ <item> <key> <string>delegated_list</string> </key> <value> - <list/> + <list> + <string>enabled</string> + </list> </value> </item> <item> @@ -72,6 +74,10 @@ <key> <string>values</string> </key> <value> <dictionary> + <item> + <key> <string>enabled</string> </key> + <value> <int>0</int> </value> + </item> <item> <key> <string>field_id</string> </key> <value> <string>my_subject_list</string> </value> diff --git a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_getLastPost.xml b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_getLastPost.xml index 3308446015..260451aeac 100644 --- a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_getLastPost.xml +++ b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_getLastPost.xml @@ -53,11 +53,15 @@ </item> <item> <key> <string>_body</string> </key> - <value> <string>post = context.searchFolder(portal_type=\'Discussion Post\', sort_on=[(\'creation_date\',\'descending\')])\n -if len(post) == 0:\n + <value> <string>"""\n + Get last Disccussion Post for a Discussion Thread.\n +"""\n +post_list = context.searchFolder(portal_type=\'Discussion Post\', \\\n + sort_on=[(\'creation_date\',\'descending\')])\n +if len(post_list) == 0:\n return None\n else:\n - return post[0].getObject()\n + return post_list[0].getObject()\n </string> </value> </item> <item> @@ -96,7 +100,7 @@ else:\n <tuple> <string>_getattr_</string> <string>context</string> - <string>post</string> + <string>post_list</string> <string>len</string> <string>None</string> <string>_getitem_</string> diff --git a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_viewAuthorWidget.xml b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_viewAuthorWidget.xml new file mode 100644 index 0000000000..a1effd829a --- /dev/null +++ b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_viewAuthorWidget.xml @@ -0,0 +1,70 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/> + <tuple/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>_bind_names</string> </key> + <value> + <object> + <klass> + <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/> + </klass> + <tuple/> + <state> + <dictionary> + <item> + <key> <string>_asgns</string> </key> + <value> + <dictionary> + <item> + <key> <string>name_subpath</string> </key> + <value> <string>traverse_subpath</string> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </state> + </object> + </value> + </item> + <item> + <key> <string>_text</string> </key> + <value> <string encoding="cdata"><![CDATA[ + +<tal:block tal:define="author_dict python: here.DiscussionPost_getAuthorDict()">\n + <a class="listbox-row-discussion-thread-author-link"\n + tal:attributes="href author_dict/author_url"\n + tal:content="author_dict/author_title"/>\n +</tal:block>\n + + +]]></string> </value> + </item> + <item> + <key> <string>content_type</string> </key> + <value> <string>text/html</string> </value> + </item> + <item> + <key> <string>expand</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>DiscussionThread_viewAuthorWidget</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_viewLastPostWidget.xml b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_viewLastPostWidget.xml new file mode 100644 index 0000000000..a186d2aaf9 --- /dev/null +++ b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_viewLastPostWidget.xml @@ -0,0 +1,76 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/> + <tuple/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>_bind_names</string> </key> + <value> + <object> + <klass> + <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/> + </klass> + <tuple/> + <state> + <dictionary> + <item> + <key> <string>_asgns</string> </key> + <value> + <dictionary> + <item> + <key> <string>name_subpath</string> </key> + <value> <string>traverse_subpath</string> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </state> + </object> + </value> + </item> + <item> + <key> <string>_text</string> </key> + <value> <string encoding="cdata"><![CDATA[ + +<tal:block tal:define="last_post here/DiscussionThread_getLastPost;\n + author_dict last_post/DiscussionPost_getAuthorDict">\n + <a class="listbox-row-discussion-thread-last-post-by-author-link"\n + tal:attributes="href author_dict/author_url"\n + tal:content="author_dict/author_title"/> \n + <a class="listbox-row-discussion-thread-last-post-link"\n + tal:attributes="href python: \'%s/view\' %last_post.absolute_url()"> \n + <img src="document_icon.gif" alt="Link To Post"/>\n + </a>\n + \n +</tal:block>\n + + +]]></string> </value> + </item> + <item> + <key> <string>content_type</string> </key> + <value> <string>text/html</string> </value> + </item> + <item> + <key> <string>expand</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>DiscussionThread_viewLastPostWidget</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm.xml b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm.xml index d71ed4a49b..e77554aad4 100644 --- a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm.xml +++ b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm.xml @@ -78,7 +78,7 @@ <key> <string>bottom</string> </key> <value> <list> - <string>your_listbox</string> + <string>listbox</string> </list> </value> </item> @@ -91,7 +91,10 @@ <item> <key> <string>hidden</string> </key> <value> - <list/> + <list> + <string>listbox_modification_date</string> + <string>listbox_author</string> + </list> </value> </item> <item> @@ -99,6 +102,7 @@ <value> <list> <string>your_add_new_thread_link</string> + <string>listbox_last_post</string> </list> </value> </item> diff --git a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/your_listbox.xml b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/listbox.xml similarity index 78% rename from bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/your_listbox.xml rename to bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/listbox.xml index 112bf4d0a4..e28ce25068 100644 --- a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/your_listbox.xml +++ b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/listbox.xml @@ -15,6 +15,8 @@ <list> <string>columns</string> <string>count_method</string> + <string>default_params</string> + <string>editable_columns</string> <string>list_method</string> <string>portal_types</string> <string>search</string> @@ -25,7 +27,7 @@ </item> <item> <key> <string>id</string> </key> - <value> <string>your_listbox</string> </value> + <value> <string>listbox</string> </value> </item> <item> <key> <string>message_values</string> </key> @@ -65,10 +67,6 @@ <key> <string>columns</string> </key> <value> <string></string> </value> </item> - <item> - <key> <string>count_method</string> </key> - <value> <string></string> </value> - </item> <item> <key> <string>field_id</string> </key> <value> <string></string> </value> @@ -117,19 +115,50 @@ <string>Title</string> </tuple> <tuple> - <string>modification_date</string> - <string>Modification Date</string> + <string>author</string> + <string>Author</string> </tuple> <tuple> - <string>validation_state</string> - <string>State</string> + <string>last_post</string> + <string>Last Post</string> + </tuple> + <tuple> + <string>modification_date</string> + <string>Modification Date</string> </tuple> </list> </value> </item> <item> <key> <string>count_method</string> </key> - <value> <string></string> </value> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> + </value> + </item> + <item> + <key> <string>default_params</string> </key> + <value> + <list/> + </value> + </item> + <item> + <key> <string>editable_columns</string> </key> + <value> + <list> + <tuple> + <string>modification_date</string> + <string>modification_date</string> + </tuple> + <tuple> + <string>author</string> + <string>Author</string> + </tuple> + <tuple> + <string>last_post</string> + <string>Last Post</string> + </tuple> + </list> + </value> </item> <item> <key> <string>field_id</string> </key> @@ -142,7 +171,7 @@ <item> <key> <string>list_method</string> </key> <value> - <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> + <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> </value> </item> <item> @@ -201,4 +230,20 @@ </dictionary> </pickle> </record> + <record id="3" aka="AAAAAAAAAAM="> + <pickle> + <tuple> + <global name="Method" module="Products.Formulator.MethodField"/> + <tuple/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>method_name</string> </key> + <value> <string>portal_catalog</string> </value> + </item> + </dictionary> + </pickle> + </record> </ZopeData> diff --git a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/listbox_author.xml b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/listbox_author.xml new file mode 100644 index 0000000000..039a4207cd --- /dev/null +++ b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/listbox_author.xml @@ -0,0 +1,148 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <global name="ProxyField" module="Products.ERP5Form.ProxyField"/> + <tuple/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>delegated_list</string> </key> + <value> + <list> + <string>css_class</string> + <string>default</string> + <string>editable</string> + <string>title</string> + </list> + </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>listbox_author</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> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>field_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <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>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>field_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <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>editable</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>field_id</string> </key> + <value> <string>my_label_field</string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string>Base_viewFieldLibrary</string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string>Click to edit the target</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Post Author</string> </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>cell/DiscussionThread_viewAuthorWidget</string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/listbox_last_post.xml b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/listbox_last_post.xml new file mode 100644 index 0000000000..856a4a076e --- /dev/null +++ b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/listbox_last_post.xml @@ -0,0 +1,148 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <global name="ProxyField" module="Products.ERP5Form.ProxyField"/> + <tuple/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>delegated_list</string> </key> + <value> + <list> + <string>css_class</string> + <string>default</string> + <string>editable</string> + <string>title</string> + </list> + </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>listbox_last_post</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> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>field_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <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>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>field_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <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>editable</string> </key> + <value> <int>1</int> </value> + </item> + <item> + <key> <string>field_id</string> </key> + <value> <string>my_label_field</string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string>Base_viewFieldLibrary</string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string>Click to edit the target</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Last Post Author</string> </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>cell/DiscussionThread_viewLastPostWidget</string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/listbox_modification_date.xml b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/listbox_modification_date.xml new file mode 100644 index 0000000000..56d42f10d5 --- /dev/null +++ b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/listbox_modification_date.xml @@ -0,0 +1,147 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <tuple> + <global name="ProxyField" module="Products.ERP5Form.ProxyField"/> + <tuple/> + </tuple> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>delegated_list</string> </key> + <value> + <list> + <string>date_only</string> + <string>default</string> + <string>editable</string> + <string>enabled</string> + <string>title</string> + </list> + </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>listbox_modification_date</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> + </dictionary> + </value> + </item> + <item> + <key> <string>overrides</string> </key> + <value> + <dictionary> + <item> + <key> <string>field_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>tales</string> </key> + <value> + <dictionary> + <item> + <key> <string>default</string> </key> + <value> + <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> + </value> + </item> + <item> + <key> <string>editable</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>field_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string></string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </value> + </item> + <item> + <key> <string>values</string> </key> + <value> + <dictionary> + <item> + <key> <string>date_only</string> </key> + <value> <int>0</int> </value> + </item> + <item> + <key> <string>default</string> </key> + <value> + <none/> + </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>field_id</string> </key> + <value> <string>my_date</string> </value> + </item> + <item> + <key> <string>form_id</string> </key> + <value> <string>Base_viewFieldLibrary</string> </value> + </item> + <item> + <key> <string>target</string> </key> + <value> <string>Click to edit the target</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>Modification Date</string> </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>cell/getModificationDate</string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/your_add_new_thread_link.xml b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/your_add_new_thread_link.xml index eecf03443a..71b3dde081 100644 --- a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/your_add_new_thread_link.xml +++ b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/ERP5Site_viewDiscussionThreadForm/your_add_new_thread_link.xml @@ -121,7 +121,7 @@ </item> <item> <key> <string>title</string> </key> - <value> <string>Editor Field</string> </value> + <value> <string>Add New Thread Link</string> </value> </item> </dictionary> </value> diff --git a/bt5/erp5_discussion/bt/revision b/bt5/erp5_discussion/bt/revision index 7c6ba0fe18..f0b5c72cad 100644 --- a/bt5/erp5_discussion/bt/revision +++ b/bt5/erp5_discussion/bt/revision @@ -1 +1 @@ -55 \ No newline at end of file +57 \ No newline at end of file diff --git a/bt5/erp5_discussion/bt/template_action_path_list b/bt5/erp5_discussion/bt/template_action_path_list index 244dbb7eea..d9f06073ff 100644 --- a/bt5/erp5_discussion/bt/template_action_path_list +++ b/bt5/erp5_discussion/bt/template_action_path_list @@ -1,5 +1,6 @@ Discussion Post | view Discussion Post | view_edit +Discussion Post | web_view Discussion Thread Module | newThread Discussion Thread Module | view Discussion Thread | add_discussion_post -- 2.30.9