diff --git a/bt5/erp5_base/SkinTemplateItem/portal_skins/erp5_base/Person_getPersonDetailedContributionList.xml b/bt5/erp5_base/SkinTemplateItem/portal_skins/erp5_base/Person_getPersonDetailedContributionList.xml
index d12d8b71375e14c68a1b84effb17484a19b8d531..47aba639be0989f4533b0e3941e8edfdf3e5f73b 100644
--- a/bt5/erp5_base/SkinTemplateItem/portal_skins/erp5_base/Person_getPersonDetailedContributionList.xml
+++ b/bt5/erp5_base/SkinTemplateItem/portal_skins/erp5_base/Person_getPersonDetailedContributionList.xml
@@ -60,13 +60,21 @@ request = container.REQUEST\n
 from_date = request.get(\'from_date\', None)\n
 to_date = request.get(\'at_date\', None)\n
 aggregation_level = request.get(\'aggregation_level\', None)\n
+portal = context.getPortalObject()\n
+module_list = []\n
+for module_id in portal.objectIds(spec=(\'ERP5 Folder\',)):\n
+    module = portal.restrictedTraverse(module_id, None)\n
+    if module is not None:\n
+      if portal.portal_membership.checkPermission(\'View\', module):\n
+        module_list.append(module)\n
+module_list.sort(key=lambda x: x.getTitle())\n
 \n
 # build document portal type list\n
 portal_type_list = []\n
 extend = portal_type_list.extend\n
-for title, path in context.ERP5Site_getModuleItemList():\n
-  document_type_list = context.restrictedTraverse(path).allowedContentTypes()\n
-  extend([x.id for x in document_type_list])\n
+for module in module_list:\n
+  document_type_list = [r.getPortalType() for r in module.searchFolder(group_by=\'portal_type\', limit=None)]\n
+  extend(document_type_list)\n
 \n
 # compute sql params, we group and order by date and portal type\n
 if aggregation_level == "year":\n
@@ -203,16 +211,18 @@ return line_list\n
                             <string>from_date</string>
                             <string>to_date</string>
                             <string>aggregation_level</string>
+                            <string>context</string>
+                            <string>portal</string>
+                            <string>module_list</string>
+                            <string>_getiter_</string>
+                            <string>module_id</string>
+                            <string>module</string>
                             <string>portal_type_list</string>
                             <string>extend</string>
-                            <string>_getiter_</string>
-                            <string>context</string>
-                            <string>title</string>
-                            <string>path</string>
-                            <string>document_type_list</string>
                             <string>append</string>
                             <string>$append0</string>
-                            <string>x</string>
+                            <string>r</string>
+                            <string>document_type_list</string>
                             <string>sql_format</string>
                             <string>params</string>
                             <string>query</string>
diff --git a/bt5/erp5_base/bt/revision b/bt5/erp5_base/bt/revision
index 4754f24761375d44117927d26feadc16d867f3b6..a8114de9cfe66ff415376d115728191c625c1076 100644
--- a/bt5/erp5_base/bt/revision
+++ b/bt5/erp5_base/bt/revision
@@ -1 +1 @@
-461
\ No newline at end of file
+462
\ No newline at end of file