To get the current user logged in SharePoint group name.
If you trying to iterate all the SharePoint groups the user may get access denied error.
Note: CSOM doesn't have impersonation facelity.
Here we can get only the specific group and find to get the logged user name
ExecuteOrDelayUntilScriptLoaded(IsCurrentUserHasContribPerms, 'SP.js'); function IsCurrentUserHasContribPerms() { IsCurrentUserMemberOfGroup("Members", function (isCurrentUserInGroup) { if(isCurrentUserInGroup) { // The current user is in the [Members] group! } }); } function IsCurrentUserMemberOfGroup(groupName, OnComplete) { var currentContext = new SP.ClientContext.get_current(); var currentWeb = currentContext.get_web(); var currentUser = currentContext.get_web().get_currentUser(); currentContext.load(currentUser); var allGroups = currentWeb.get_siteGroups(); currentContext.load(allGroups); var group = allGroups.getByName(groupName); currentContext.load(group); var groupUsers = group.get_users(); currentContext.load(groupUsers); currentContext.executeQueryAsync(OnSuccess,OnFailure); function OnSuccess(sender, args) { var userInGroup = false; var groupUserEnumerator = groupUsers.getEnumerator(); var OwnergroupUserEnumerator = OwnergroupUsers.getEnumerator(); var statusval= $("select[title='ApprovalStatus'] option:selected").val(); while (OwnergroupUserEnumerator.moveNext()) { var OwnergroupUser = OwnergroupUserEnumerator.get_current(); if (OwnergroupUser.get_id() == currentUser.get_id()) { userInGroup = true; break; } } OnComplete(userInGroup); } function OnFailure(sender, args) { OnComplete(false); } }
0 comments: