diff --git a/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/ERP5Site_getKnowledgePadListForUser.xml b/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/ERP5Site_getKnowledgePadListForUser.xml index 182c2004ee6ad99c7ced6950fec5abe1a332b6cf..16c574b0a17909db9adaea8b02fac2baabf76864 100644 --- a/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/ERP5Site_getKnowledgePadListForUser.xml +++ b/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/ERP5Site_getKnowledgePadListForUser.xml @@ -56,23 +56,31 @@ isAnonymousKnowledgePadUsed = request.get(\'is_anonymous_knowledge_pad_used\', 0 \n def filterKnowledgePadListForContext(results, mode, \n default_pad_group):\n + filtered_results = []\n + append = filtered_results.append\n # in Web Mode we can have a temporary object created based on current language, document by reference\n real_context = context.Base_getRealContext()\n real_context_url = real_context.getRelativeUrl()\n if mode == \'erp5_front\':\n # leave only those not having a publication_section as \n # this means belonging to root\n - results = filter(lambda x: x.getPublicationSection() is None and \\\n - x.getGroup() is None, results)\n + for x in results:\n + x = x.getObject()\n + if x.getPublicationSection() is None and x.getGroup() is None:\n + append(x)\n elif mode == \'web_front\':\n # Web Site must at least one Pad referenced by context\n - results = filter(lambda x: real_context_url in x.getPublicationSectionList() and \\\n - x.getGroup() is None, results)\n + for x in results:\n + x = x.getObject()\n + if real_context_url in x.getPublicationSectionList() and x.getGroup() is None:\n + append(x)\n elif mode == \'web_section\':\n # Web Sections, Web Pages can "reuse" tabs\n - results = filter(lambda x: real_context_url in x.getPublicationSectionList() or \\\n - x.getGroup() == default_pad_group, results)\n - return results\n + for x in results:\n + x = x.getObject()\n + if real_context_url in x.getPublicationSectionList() and x.getGroup() == default_pad_group:\n + append(x)\n + return filtered_results\n \n \n kw = {\'portal_type\': \'Knowledge Pad\',\n @@ -99,9 +107,11 @@ active_pad, results = \\\n if active_pad is not None and active_pad.getValidationState() != \'deleted\':\n found = False\n new_results = []\n + active_pad_path = active_pad.getPath()\n for brain in results:\n new_results.append(brain)\n - if brain.getObject() == active_pad: found = True\n + if brain.getPath() == active_pad_path:\n + found = True\n results = new_results\n if not found:\n # append it only if not from Catalog results\n diff --git a/bt5/erp5_knowledge_pad/bt/revision b/bt5/erp5_knowledge_pad/bt/revision index 475fbacb43f1e37932f5cd9aa9ba871e283891c2..5d5ad96f9fa59e86a02bf299511221da15f5511a 100644 --- a/bt5/erp5_knowledge_pad/bt/revision +++ b/bt5/erp5_knowledge_pad/bt/revision @@ -1 +1 @@ -763 \ No newline at end of file +764 \ No newline at end of file