I am using SharePoint 2013 and have added JavaScript to the default NEW item form so that I can restrict what specific Permissions Groups can input on my Issue log list.
However, my syntax is not working. The following script only allows my administration (user group) full rights and seems to ignore the Owner (user group).
Can anyone help?
<script language="javascript" src="https://collaboration.louise.com/teams/00005/script/SPServices.js"></script>
<script>
$(document).ready(function () {
if(checkrole('Owners' && 'Administration')) {
// Issue Summary - *Show*
$('nobr:contains("Issue Summary")').closest('tr').show();
// Description - *Show*
$('nobr:contains("Description")').closest('tr').show();
// Data Domain - *Show*
$("select[Title='Data Domain']").closest('tr').show();
// Issue ID - *Show*
$('nobr:contains("Issue ID")').closest('tr').show();
// Work Package ID - *Show*
$('nobr:contains("Work Package ID")').closest('tr').show();
// Issue Score - *Show*
$('nobr:contains("Issue Score")').closest('tr').show();
// Priority - *Show*
$('nobr:contains("Priority")').closest('tr').show();
}
else {
// Issue Score - *Hide*
$('nobr:contains("Issue Score")').closest('tr').hide();
// Priority - *Hide*
$('nobr:contains("Priority")').closest('tr').hide();
}
function checkrole(groupname) {
var IsvalidRet = false;
$().SPServices({
operation: "GetGroupCollectionFromUser",
userLoginName: $().SPServices.SPGetCurrentUser(),
async: false,
completefunc: function (xData, Status) {
if ($(xData.responseXML).find("Group[Name='"+groupname+"']").length == 1) {
IsvalidRet = true;
}
}
});
return IsvalidRet;
}
});
</script>