Feature #7554

Private documents

Added by Victor Costache over 9 years ago. Updated over 8 years ago.

Status:NewStart date:2011-02-05
Priority:NormalDue date:
Assignee:-% Done:


Target version:-


Similar functionality to #7412 (private issues) applied to Documents.

TestPrivateDocumentsResults.txt Magnifier (1.42 KB) Preethi Sriram, 2011-11-02 18:58

20111017193453_add_is_private_to_documents.rb Magnifier (229 Bytes) Preethi Sriram, 2011-11-02 18:58

20111018230249_add_assigned_to_id_to_documents.rb Magnifier (205 Bytes) Preethi Sriram, 2011-11-02 18:58

20111018230420_add_author_id_to_documents.rb Magnifier (221 Bytes) Preethi Sriram, 2011-11-02 18:58

20111028205848_add_documents_visibility_to_roles.rb Magnifier (264 Bytes) Preethi Sriram, 2011-11-02 18:58

fix-private-documents.diff Magnifier (47 KB) Preethi Sriram, 2011-11-02 18:58


#1 Updated by Jean-Jacques Mérillon about 9 years ago

I am also very interested by Private documents

#2 Updated by Preethi Sriram over 8 years ago

I am working on this feature. I should have it tested and ready for a patch in two weeks.

#3 Updated by Preethi Sriram over 8 years ago

I have attached the db/migrate scripts to add columns is_private, assigned_user_id,author_id to Documents table and documents_visibility to roles. The diff file is the patch file for all the views/controllers/model/yml codebase. I ran the existing tests for unit and functional test scripts on Roles and Documents and have attached the test results (no failures). Translations for yml files are in English as I am not familiar with other locales.
It should behave very similar to issues_visibility roles and permissions.

#4 Updated by Terence Mill over 8 years ago

Can u explain what use cases this will satisfy?

#5 Updated by Preethi Sriram over 8 years ago

These are the use cases I tested in development.
Created Test Project-
Created two accounts-
1)One as redmine-admin, added role as manager for the project and updated documents_visibility permission for manager to "all" on Roles Permissions.
2)The second account preethi, added role as a developer and updated documents_visibility permission for developer to "default" on Roles Permissions.
3)Logged in as redmine-admin/manager for the project-and created some private documents- so developer/preethi should not be able to view it when logged in. (Assigned userid and author as redmine-admin)
4)Logged in as Developer-Preethi and checked to make sure none of manager's private documents are visible. Because default permission is set to view any documents that are marked "not private" or ones assigned to the user or ones authored by the user. No private documents of Manager shows on the list
5)Created private documents for Developer-Preethi and assigned_id as Developer-Preethi.
6)Logged in as redmine-admine/manager and because the permission is set to all (in my environment), all documents (private to developer/preethi are visible). Permissions behavior for "all" is coded similar to issues-visibility role-permissions.
7)Third Account-has permission "Own" for the project and is able to view documents assigned to or authored by them.

#6 Updated by Preethi Sriram over 8 years ago

Hi Terence,
I forgot to add two more use cases in my last update.
8)Created a tester user with two roles (developer,tester) for a project. Tester has more restrictive permission ("own"). Created documents as Tester and the only documents the tester gets to see are the ones assigned or authored to them. I am assuming here that "the more restrictive permission should apply", although this person is also a developer and can get "default" permission to view non private documents of others. If this is a wrong assumption let me know and I can resend the patch by adding an orderby clause in the query.
9)When no document_visibility permission is assigned to a user/role in a project, default permissions apply.

Also available in: Atom PDF