Idea sandbox Idea sandbox
Popular ideas Popular ideas
Ideas in development Ideas in development
Implemented ideas Implemented ideas
Idea #15: Improving labelset access rights management

bug This idea was marked as already implemented the 24 October 10. Available starting 1.90.
Written by oddible the 29 Sep 09 at 17:47. Related project: 1.x all. Status: Already implemented
Rationale
From my understanding there is no way to create Array-type questions without using a Label Set. And Label Sets are global to the site. Therefore, if the Label Set doesn't exist I need to give my researchers access to Create / Edit Labels. This creates some problems:

1. A user may edit and change a label set that another user has in an active survey thus invalidating his results.

2. Users create SO MANY label sets that the list of existing label sets becomes functionally useless because it is impossible to find one that works for you (due to poor naming convention and overly specific label set creation).
(This issue is raised in a separate solution:
http://ideas.limesurvey.org/ideatorrent/idea/16/)


2
votes
closed
Solution #1: Some recommentations that would help:
Written by oddible the 29 Sep 09 at 17:47.
a) Separate the Label Set permission into two permissions: Create and Edit. That way users can create new ones but not mess up other people's existing ones.

b) Allow Label Set definitions that are User Specific or Survey Specific.

c) A button to copy labelsets to simplify the export/import alternative

d) locking a labelset (duplicate?) once a survey uses it for all but that survey's users with labelset rights

My only concern with these is creating too many duplicates of Label Sets.
0
votes
closed
Solution #2: Other ideas
Written by Kemmotar the 12 Oct 09 at 12:09.
Like oddible I think the best way to solve this problem is to change the way LimeSurvey manage LabelSet permissions.

Separate create/edit roles could be an good idea but I think this could be best used at group level instead on global level. With this solution one user could have edit role in his group but not in others.

- Create scenario: when one user create a labelset he has to set what group the LabelSet is associated with, chosen between groups in which the user is enrolled.

The rights are assigned in group page, adding another button beside the "Delete" one. This new button redirect to an another page in which the right (by now only this only one right, maybe other in the future) has to be set.

An user without administration role will view labelset in the list only if he has labelset edit role for that group.

In the database we have to modify LabelSet table adding two columns: "owner_id" and "ugid", which identify the labelset creator and the group associated to the labelset. Then we should create table lime_user_groups_rights, in which there are three columns: ugid [int], uid [int], edit_label[tinyint]. The latter identifies the editing right.

Kemmotar

Propose your solution


Duplicates


Comments
No comments.

Post your comment