Exemplo n.º 1
0
        public Role[] GetUserRoles(string username)
        {
            List <Role> roles = new List <Role>();

            string[] temp_roles = PermissionManagementAgent.GetUserRoles(username);

            foreach (string da_roleName in temp_roles)
            {
                Leadtools.Medical.PermissionsManagement.DataAccessLayer.Role da_role = PermissionManagementAgent.GetRole(da_roleName);
                if (null != da_role)
                {
                    roles.Add(TranslateRole(da_role));
                }

                //also look in built-in roles
                {
                    Role r = RolesBuiltInTable.Instance.Find(da_roleName);
                    if (null != r)
                    {
                        roles.Add(r);
                    }
                }
            }

            if (IsAdmin(username, ""))
            {
                if (!roles.Contains(RolesBuiltInTable.Instance.Admin, new RoleComparer()))
                {
                    roles.Add(RolesBuiltInTable.Instance.Admin);
                }
            }

            return(roles.ToArray());
        }
Exemplo n.º 2
0
        public Role GetRole(string roleName)
        {
            Role roleBuiltIn = GetBuiltInRole(roleName);

            if (null != roleBuiltIn)
            {
                return(roleBuiltIn);
            }

            Leadtools.Medical.PermissionsManagement.DataAccessLayer.Role da_role = PermissionManagementAgent.GetRole(roleName);
            if (null != da_role)
            {
                return(TranslateRole(da_role));
            }

            return(null);
        }
Exemplo n.º 3
0
        Leadtools.Medical.PermissionsManagement.DataAccessLayer.Role TranslateRole(Role r1)
        {
            Leadtools.Medical.PermissionsManagement.DataAccessLayer.Role r2 = new Leadtools.Medical.PermissionsManagement.DataAccessLayer.Role();
            r2.Name        = r1.Name;
            r2.Description = r1.Description;
            List <string> AssignedPermissions = new List <string>();

            if (null != r1.AssignedPermissions)
            {
                foreach (string p1 in r1.AssignedPermissions)
                {
                    AssignedPermissions.Add(p1);
                }
            }
            r2.AssignedPermissions = AssignedPermissions.ToArray();
            return(r2);
        }
Exemplo n.º 4
0
        Role TranslateRole(Leadtools.Medical.PermissionsManagement.DataAccessLayer.Role r1)
        {
            Role r2 = new Role();

            r2.Name                = r1.Name;
            r2.Description         = r1.Description;
            r2.AssignedPermissions = new List <string>();
            if (null != r1.AssignedPermissions)
            {
                foreach (string p1 in r1.AssignedPermissions)
                {
                    Permission permission = PermissionsTable.Instance.Find(p1);
                    if (null != permission)
                    {
                        r2.AssignedPermissions.Add(permission.Name);
                    }
                }
            }
            return(r2);
        }