Find UserGroup and Filter Lookup Column According to Group Permission in SharePoint 2010

Introduction

This article introduces how to find or check a user group and filter Lookup column depending on group permission in SharePoint 2010 using spservices (jQuery).

Detailed Procedure

Step 1

Create a SharePoint site.

Step 2

Create a user group and add one user to the group, for example I have a user group Management and user Laxman vyavahare as shown bellow:

Creating User Group in SharePoint Site

Step 3

Create two lists, namely Status and FilterStatus.

  • The Status list contains the two column Title and Active (bool type) and add an item as in the following figure:

    Creating Status List in SharePoint Site
     
  • Create a FilterStatus list that contains 2 columns, Title and the other is a lookup column on status list as in the Figure.

    Creating FilterStatus List

Step 4

Click on the Add new item link button and see the lookup column; here you can see the following 4 options:

  • Approved
  • Rejected
  • Open
  • Closed

Filter Status

But the Management user group has only access for Approval and Rejection so how I can hide (or by filter lookup column) open and close status from the management user group.

Solution

Step 5

Open the FilterStatus list in the Designer and add the following lines of code on NewForm.aspx or EditForm.aspx page under the <script> tag as below:

 

  1. <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>  
  2. <script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/jquery.SPServices/0.7.1a/jquery.SPServices-0.7.1a.min.js"></script>  
  3. <script type="text/javascript">  
  4.   
  5. $(document).ready(function () {  
  6.     alert('hi');  
  7.     $().SPServices({   
  8.         operation: "GetGroupCollectionFromUser",   
  9.         userLoginName: $().SPServices.SPGetCurrentUser(),   
  10.         async: false,   
  11.         completefunc: function (xData, Status) {   
  12.             if ($(xData.responseXML).find("Group[Name='Management']").length == 1)  
  13.             {   
  14.                 alert("login inside of the Group user");   
  15.                 $().SPServices.SPFilterDropdown({  
  16.                     relationshipList: "Status",  
  17.                     relationshipListColumn: "Title",  
  18.                     columnName: "FilterStatus",  
  19.                     CAMLQuery: "<Neq><FieldRef Name='Active' /><Value Type='Boolean'>Yes</Value></Neq>",   
  20.                     completefunc: null,  
  21.                     debug: false  
  22.                 });  
  23.             }   
  24.             else {   
  25.                 alert("login outside of the Group user");   
  26.             }   
  27.         }   
  28.     }); /*close().SPServices({ */   
  29. }); /* close (document).ready(function() { */  
  30. </script>  

 

Step 6

Save both of the .aspx pages of the list and close the designer.

Step 7

Then open your FiltrStatus list and see the effect.

New Filter Status

Now the Management group has access for Approval and Rejection.

Up Next
    Ebook Download
    View all
    Learn
    View all