stable

Clone or download

Read-only

Extract docman file download from the rest of the docman plugin "routing"

This will allow us to re-use the same approach than the one used when uploading file from the REST API but for downloading file. In order to achieve that, the way links are generated within the document manager plugin has been regrouped in only one place. No functionnal changes. Part of request #13133: A REST API user can not download a document manager file Change-Id: I8d11a4126ecb450b20e3f68550f2fa4c61657207

Modified Files

Name
M plugins/docman/include/Docman_Controller.class.php +6 −2 Go to diff View file
M plugins/docman/include/Docman_Item.class.php +4 −1 Go to diff View file
M plugins/docman/include/Docman_ItemAction.class.php +10 −5 Go to diff View file
M plugins/docman/include/Docman_PermissionsManager.class.php +10 −0 Go to diff View file
M plugins/docman/include/Docman_ReportColumn.class.php +12 −8 Go to diff View file
M plugins/docman/include/Docman_SOAPActions.class.php +10 −12 Go to diff View file
M plugins/docman/include/Docman_Widget_Embedded.class.php +2 −7 Go to diff View file
A plugins/docman/include/Download/DocmanFileDownloadController.php +124 −0 Go to diff View file
A plugins/docman/include/Download/DocmanFileDownloadResponseGenerator.php +78 −0 Go to diff View file
A plugins/docman/include/Download/FileDoesNotExistException.php +35 −0 Go to diff View file
A plugins/docman/include/Download/FileDownloadException.php +29 −0 Go to diff View file
A plugins/docman/include/Download/UserCannotAccessFileException.php +34 −0 Go to diff View file
A plugins/docman/include/Download/VersionNotFoundException.php +37 −0 Go to diff View file
M plugins/docman/include/REST/v1/ItemRepresentationVisitor.php +12 −19 Go to diff View file
M plugins/docman/include/docmanPlugin.class.php +13 −0 Go to diff View file
A plugins/docman/include/view/DocmanViewURLBuilder.php +91 −0 Go to diff View file
M plugins/docman/include/view/Docman_View_Admin.class.php +26 −17 Go to diff View file
M plugins/docman/include/view/Docman_View_Admin_Metadata.class.php +4 −6 Go to diff View file
M plugins/docman/include/view/Docman_View_Admin_MetadataDetails.class.php +5 −8 Go to diff View file
M plugins/docman/include/view/Docman_View_Admin_MetadataDetailsUpdateLove.class.php +8 −12 Go to diff View file
M plugins/docman/include/view/Docman_View_Admin_Obsolete.class.php +11 −8 Go to diff View file
M plugins/docman/include/view/Docman_View_Admin_Permissions.class.php +21 −12 Go to diff View file
M plugins/docman/include/view/Docman_View_Browse.class.php +3 −6 Go to diff View file
M plugins/docman/include/view/Docman_View_Display.class.php +6 −4 Go to diff View file
M plugins/docman/include/view/Docman_View_Docman.class.php +4 −2 Go to diff View file
M plugins/docman/include/view/Docman_View_Download.class.php +11 −29 Go to diff View file
M plugins/docman/include/view/Docman_View_Embedded.class.php +19 −14 Go to diff View file
M plugins/docman/include/view/Docman_View_Icons.class.php +16 −15 Go to diff View file
M plugins/docman/include/view/Docman_View_ItemDetailsSection.class.php +6 −3 Go to diff View file
M plugins/docman/include/view/Docman_View_ItemDetailsSectionActions.class.php +32 −16 Go to diff View file
M plugins/docman/include/view/Docman_View_ItemDetailsSectionApproval.class.php +43 −35 Go to diff View file
M plugins/docman/include/view/Docman_View_ItemDetailsSectionHistory.class.php +28 −22 Go to diff View file
M plugins/docman/include/view/Docman_View_ItemDetailsSectionProperties.class.php +8 −6 Go to diff View file
M plugins/docman/include/view/Docman_View_ItemTreeUlVisitor.class.php +20 −13 Go to diff View file
M plugins/docman/include/view/Docman_View_RedirectAfterCrud.class.php +20 −11 Go to diff View file
M plugins/docman/include/view/Docman_View_Table.class.php +0 −2 Go to diff View file
M plugins/docman/include/view/Docman_View_View.class.php +1 −75 Go to diff View file
A plugins/docman/include/view/ItemActionURLVisitor.php +77 −0 Go to diff View file
A plugins/docman/phpunit/Download/DocmanFileDownloadControllerTest.php +203 −0 Go to diff View file
A plugins/docman/phpunit/Download/DocmanFileDownloadResponseGeneratorTest.php +148 −0 Go to diff View file
M plugins/docman/site-content/en_US/docman.tab +0 −1 Go to diff View file
M plugins/docman/site-content/fr_FR/LC_MESSAGES/tuleap-docman.po +6 −0 Go to diff View file
M plugins/docman/site-content/fr_FR/docman.tab +0 −1 Go to diff View file
M plugins/docman/tests/rest/Docman/DocmanItemsTest.php +6 −7 Go to diff View file
M src/common/Request/DispatchableWithProject.php +2 −2 Go to diff View file