From a6921fd4132c54b6e307f52be55c09b5414170f7 Mon Sep 17 00:00:00 2001 From: Kazuhiko Shiozaki <kazuhiko@nexedi.com> Date: Thu, 17 Dec 2015 14:12:07 +0100 Subject: [PATCH] fixup! erp5_discussion: add predecessor handling to enable showing discussion related to document --- .../WebSection_createNewDiscussionThread.xml | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/WebSection_createNewDiscussionThread.xml b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/WebSection_createNewDiscussionThread.xml index 08753161aa..57582e2ca2 100644 --- a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/WebSection_createNewDiscussionThread.xml +++ b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/WebSection_createNewDiscussionThread.xml @@ -62,7 +62,7 @@ person = portal.ERP5Site_getAuthenticatedMemberPersonValue()\n \n version = \'001\'\n language = portal.Localizer.get_selected_language()\n -has_website = context.getWebSiteValue()\n +has_website = context.getWebSiteValue() is not None\n \n try:\n user_assignment_dict = portal.ERP5Site_getPersonAssignmentDict()\n @@ -76,13 +76,13 @@ if site_list in MARKER:\n site_list = user_assignment_dict[\'site_list\']\n \n # set predicate settings for current Web Section\n -if has_website is not None:\n +if has_website:\n membership_criterion_category_list = context.getMembershipCriterionCategoryList()\n multimembership_criterion_base_category_list = context.getMultimembershipCriterionBaseCategoryList()\n \n reference = context.Base_generateReferenceFromString(title)\n \n -if has_website is not None:\n +if has_website:\n existing_document = context.getDocumentValue(reference)\n existing_web_section_list = portal.portal_catalog(id=reference, portal_type=[\'Web Site\', \'Web Section\'])\n existing_module_list = portal.portal_catalog(id=reference, parent_uid=portal.getUid())\n @@ -106,7 +106,7 @@ create_kw = dict(title = title,\n group_list=group_list,\n site_list=site_list)\n \n -if has_website is not None:\n +if has_website:\n for base_category in multimembership_criterion_base_category_list:\n #create_kw[\'%s_list\' %base_category] = [x for x in membership_criterion_category_list if x.startswith(base_category)]\n category_list.extend([x for x in membership_criterion_category_list if x.startswith(base_category)])\n @@ -120,10 +120,12 @@ discussion_thread = portal.discussion_thread_module.newContent(\n discussion_thread.setCategoryList(category_list)\n \n # predecessor\n -if predecessor is not None:\n +if predecessor is None:\n + redirect_url = context.getAbsoluteUrl()\n +else:\n predecessor_object = context.restrictedTraverse(predecessor)\n predecessor_portal_type = predecessor_object.getPortalType()\n - predecessor_absolute_url = predecessor_object.getAbsoluteUrl()\n + redirect_url = predecessor_object.getAbsoluteUrl()\n \n # predecessor will only be set on document = web section default page\n if predecessor_portal_type == \'Web Section\':\n @@ -198,7 +200,7 @@ if send_notification_text not in (\'\', None):\n message_text_format=notification_message.getContentType(),\n store_as_event=False)\n \n -return context.Base_redirect(redirect_url=predecessor_absolute_url or context.getAbsoluteUrl(),\n +return context.Base_redirect(redirect_url=redirect_url,\n keep_items = dict(portal_status_message=context.Base_translateString(portal_status_message),\n thread_relative_url=discussion_thread.getRelativeUrl()))\n </string> </value> -- 2.30.9