in tree/master/cloud/src/solution/Microsoft.Legal.MatterCenter.Web/wwwroot/app/matter/matterusers.controller.js [1013:1109]
var validateAttornyUserRolesAndPermission1 = function (team, drpChangeString, mode) {
var isValid = false;
var raRolePresent = false;
var fcPermissionPresent = false;
if (!cm.globalSettings.isBackwardCompatible) {
for (var iUserCount = 0; iUserCount < cm.assignPermissionTeams.length; iUserCount++) {
for (var iCount = 0; iCount < cm.stampedMatterUsers.length; iCount++) {
if (cm.stampedMatterUsers[iCount].userName != team.assignedUser &&
cm.stampedMatterUsers[iCount].userName == cm.assignPermissionTeams[iUserCount].assignedUser) {
var role = $filter('filter')(cm.assignRoles, { name: cm.stampedMatterUsers[iCount].userRole });
var permission = $filter('filter')(cm.assignPermissions, { name: cm.stampedMatterUsers[iCount].userPermission });
cm.assignPermissionTeams[iUserCount].assignedPermission = permission[0];
cm.assignPermissionTeams[iUserCount].assignedRole = role[0];
cm.assignPermissionTeams[iUserCount].status = "success";
if (cm.stampedMatterUsers[iCount].userRole.toLowerCase() == "responsible attorney") {
raRolePresent = true;
}
if (cm.stampedMatterUsers[iCount].userPermission.toLowerCase() == "full control") {
fcPermissionPresent = true;
}
}
else if (cm.stampedMatterUsers[iCount].userName == team.assignedUser && mode != "delete") {
if (cm.stampedMatterUsers[iCount].userRole.toLowerCase() == team.assignedRole.name.toLowerCase()
&& cm.stampedMatterUsers[iCount].userPermission.toLowerCase() == team.assignedPermission.name.toLowerCase()) {
team.status = "success";
if (cm.stampedMatterUsers[iCount].userRole.toLowerCase() == "responsible attorney") {
raRolePresent = true;
}
if (cm.stampedMatterUsers[iCount].userPermission.toLowerCase() == "full control") {
fcPermissionPresent = true;
}
}
else {
if (team.assignedRole.name.toLowerCase() == "responsible attorney") {
raRolePresent = true;
}
if (team.assignedPermission.name.toLowerCase() == "full control") {
fcPermissionPresent = true;
}
}
}
}
}
if (raRolePresent && fcPermissionPresent) {
isValid = true;
}
}
else {
for (var iUserCount = 0; iUserCount < cm.assignPermissionTeams.length; iUserCount++) {
for (var iCount = 0; iCount < cm.stampedMatterUsers.length; iCount++) {
if (cm.stampedMatterUsers[iCount].userName != team.assignedUser &&
cm.stampedMatterUsers[iCount].userName == cm.assignPermissionTeams[iUserCount].assignedUser) {
var permission = $filter('filter')(cm.assignPermissions, { name: cm.stampedMatterUsers[iCount].userPermission });
cm.assignPermissionTeams[iUserCount].assignedPermission = permission[0];
cm.assignPermissionTeams[iUserCount].status = "success";
if (cm.stampedMatterUsers[iCount].userPermission.toLowerCase() == "full control") {
isValid = true;
}
}
else if (cm.stampedMatterUsers[iCount].userName == team.assignedUser && mode != "delete") {
if (cm.stampedMatterUsers[iCount].userPermission.toLowerCase() == team.assignedPermission.name.toLowerCase()) {
team.status = "success";
if (cm.stampedMatterUsers[iCount].userPermission.toLowerCase() == "full control") {
isValid = true;
}
}
}
}
}
}
if (team.teamUsers.length == 0) {
isValid = false;
drpChangeString = 'txtUser';
}
if (!isValid) {
cm.errTextMsg = cm.createContent.MsgMatterRoleAndPermission;
if (drpChangeString == 'userRole') {
cm.errorBorder = "roleUser" + team.assigneTeamRowNumber;
showErrorNotificationAssignTeams(cm.errTextMsg, team.assigneTeamRowNumber, "role");
}
if (drpChangeString == 'userParm') {
cm.errorBorder = "permUser" + team.assigneTeamRowNumber;
showErrorNotificationAssignTeams(cm.errTextMsg, team.assigneTeamRowNumber, "perm");
}
if (drpChangeString == 'txtUser') {
cm.errorBorder = "txtUser" + team.assigneTeamRowNumber;
showErrorNotificationAssignTeams(cm.errTextMsg, team.assigneTeamRowNumber, "user");
}
cm.errorPopUpBlock = true;
cm.errorStatus = true;
}
return isValid;
}