سؤال

I have a Sharepoint site with a library that has rating enabled. I noticed that users with edit permissions can rate content, but users granted only with "Read" cannot. I would like to have users that are permitted only to view the documents and edit just the rating.

Is it possible without some complicated scripts? I don't have the privileges and knowledge to apply those. I don't have Sharepoint Designer - I can only use web-based user interface.

هل كانت مفيدة؟

المحلول

To my understanding, when you enable rating feature in a list/library, Rating (0-5) column, a Number of Ratings column is also added to the list. Hence these columns will be associated with each list item. Technically, when a user (consider the user has contribute access) gives a rating to a document, the columns related to rating feature gets updated, which means the item is getting updated/edited. So obviously when a user has only Read permission, the user cannot edit/update a list item. So it is not practically possible to edit an item with Read access. So how to solve the riddle? You have got few workarounds to fix it up.

Approach 1: Making changes in the permissions like adding a edit base permission to Read permission level or granting the users edit access directly or through any group. But I know all these ideas will have lots of compliance risk. So lets drop it.

Approach 2: When something is not achievable through OOTB features, the only option is customization. I have seen some cool implementations for rating feature in this blog.

Approach 3: This is my idea which you can try. Disable the rating settings in your list (say List A). Create a dummy column named 'Custom Rating' which will not hold any values directly in the list but it will act as a gate way to input the rating and display the rating. Create another list (say List B) in which all the users who has read access in List A will have Edit access in this list. Write a JavaScript which will display the rating stars image in the List A view in that Custom Rating column, this can be achieved using the Client site rendering/JS link concept. On click of each image an item will be created or updated in the List B with the user id and item id as unique keys. So whenever an item is rated in List A by a user with read access, the java script will be triggered and ratings will be stored in List B.

نصائح أخرى

Create a group add the user with edit permission. You can give the unique permission level to that library or document.

Go to Read Permission level in Site Permission and check for Read permission if there is an option for rating enabled..If it is unchecked, check it and then try. Read permission ideally have the permission to rate

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى sharepoint.stackexchange
scroll top