From 9ff86dd745229a24bfff5858d6f659a549f633c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9rome=20Perrin?= <jerome@nexedi.com> Date: Tue, 23 Oct 2007 16:24:16 +0000 Subject: [PATCH] Document_checkConversionFormatPermission: make sure Owner can get his own document in original format Document_convert: honor getSourceReference to set the returned filename git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@17137 20353a03-c40f-0410-a6d1-a30d3c3de9de --- .../erp5_dms/Document_checkConversionFormatPermission.xml | 2 +- .../portal_skins/erp5_dms/Document_convert.xml | 8 +++++++- bt5/erp5_dms/bt/revision | 2 +- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Document_checkConversionFormatPermission.xml b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Document_checkConversionFormatPermission.xml index 6c50e5f084..0fa07da083 100644 --- a/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Document_checkConversionFormatPermission.xml +++ b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Document_checkConversionFormatPermission.xml @@ -76,7 +76,7 @@ role_list = user.getRolesInContext(context)\n \n # Users involved in the document may view it in editable mode\n if "Associate" in role_list or "Assignee" in role_list or\\\n - "Assignor" in role_list or "Manager" in role_list:\n + "Assignor" in role_list or "Manager" in role_list or "Owner" in role_list:\n return 1\n \n # Reject original format\n diff --git a/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Document_convert.xml b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Document_convert.xml index c9e1ee8f64..2ccfc0b2f0 100644 --- a/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Document_convert.xml +++ b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Document_convert.xml @@ -79,7 +79,13 @@ response = request.RESPONSE\n data = context.index_html(request, response, format=format, force=force)\n typ = response.headers.get(\'content-type\')\n \n -filename = \'%s.%s\' % ((filename or context.title_or_id(), format))\n +if not filename:\n + filename = context.getSourceReference()\n + if filename and \'.\' in filename:\n + filename = filename[:filename.rindex(\'.\')]\n + else:\n + filename = context.title_or_id()\n +filename = \'%s.%s\' % ((filename, format))\n if typ == \'application/zip\':\n filename += \'.zip\'\n \n diff --git a/bt5/erp5_dms/bt/revision b/bt5/erp5_dms/bt/revision index 02d9616fbc..0e46c90894 100644 --- a/bt5/erp5_dms/bt/revision +++ b/bt5/erp5_dms/bt/revision @@ -1 +1 @@ -697 \ No newline at end of file +698 \ No newline at end of file -- 2.30.9