Delete the Specific Permission Level From the Site in SharePoint 2010 Using ECMAScript


Introduction

In this article you will see how to delete the specific permission level from the site in SharePoint 2010 using ECMAScript. I have a SharePoint site which has the following permission levels (Navigate to the SharePoint site. Click on Site Actions and then click on Site Settings. Click on Site Permissions in the Users and Permissions section. In the ribbon interface, click on Permission Levels).

abc.gif

nvj2.gif

Step 1 : Navigate to the SharePoint site (I have a site page created in my site where I am going to add the content editor web part).

Step 2 : Go to Site Actions, click on Edit Page

vj 1.gif

Step 3 :
Click on the Insert tab in the ribbon interface and then click on the Web Part button.

vj 2.gif

Step 4 : Select Media and Content in the Categories section and then click on Content Editor.
 

vj 3.gif

Step 5 : Click on Add

Step 6 :
The Content Editor web part will be added to the site page.

Step 7 : Click on the down arrow and then click on Edit Web Part.

vj 4.gif

Step 8 : Click on "Click here to add new content".

vj5.gif

Step 9 : Click on the Format Text tab in the ribbon interface and then click on HTML drop down.

vj 6.gif

Step 10 :
Click on Edit HTML source.

Step 11 : The HTML source window will pop up.

vj7.gif

Step 12 : Copy and paste the following script.

<script language="ecmascript" type="text/ecmascript">
    var roleDefinitionCollection;
    var roleDefinition;
    function permissionLevel()
    {
       var clientContext = new SP.ClientContext.get_current();
       if (clientContext != undefined && clientContext != null)
         {
            var web = clientContext.get_web();
            this.roleDefinitionCollection = web.get_roleDefinitions();
            this.roleDefinition = roleDefinitionCollection.getByName("editandadd");
           
roleDefinition.deleteObject();
            clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed));
         }
    }
    function onQuerySucceeded()
    {
    }
    function onQueryFailed(sender, args)
    {
        alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());
    }
</
script
>

<
input id="btnPermissionLevels" onclick="permissionLevel()" type="button" value="Delete Permission Level" />

Step 13 : Click on OK.

Step 14 : In the ribbon interface click on the Save & Close button.

vj8.gif

Step 15 : In the content editor web part you can find a button named
"Delete Permission Level", click on that button.

nvj3.gif

Reference

  1. SP.Web.get_roleDefinitions() Property - http://msdn.microsoft.com/en-us/library/ee553420.aspx
  2. SP.RoleDefinitionCollection.getByName(name) Method - http://msdn.microsoft.com/en-us/library/ee658432.aspx
  3. SP.RoleDefinition.deleteObject() Method - http://msdn.microsoft.com/en-us/library/ee659186.aspx

Summary

Thus in this article you have seen how to update the specific permission level in SharePoint 2010 using ECMAScript.