Beispiel #1
0
        public Boolean HasModulePermission(int userID, int roleId, int communityId, int moduleId, long RequiredPermission)
        {
            Boolean      iResponse    = false;
            Subscription subscription = GetActiveSubscription(userID, communityId);

            if (subscription != null)
            {
                ModuleDefinition module = (from cModule in Linq <CommunityModuleAssociation>()
                                           where cModule.Enabled && cModule.Service.Available && cModule.Community.Id == communityId && cModule.Service.Id == moduleId
                                           select cModule.Service).FirstOrDefault <ModuleDefinition>();

                if (module != null)
                {
                    //Find all Role perission for the input community and the input service
                    CommunityRoleModulePermission RolePermission = (from crmp in Linq <CommunityRoleModulePermission>()
                                                                    where crmp.Community.Id == communityId && crmp.Service == module && crmp.Role.Id == roleId
                                                                    select crmp).Skip(0).Take(1).ToList().FirstOrDefault();
                    if (RolePermission != null)
                    {
                        iResponse = PermissionHelper.CheckPermissionSoft(RequiredPermission, RolePermission.PermissionInt);
                    }
                }
            }
            return(iResponse);
        }
Beispiel #2
0
        private List <int> OldGetItemRepositoryMembersID(int CommunityID, long ItemID, int Permission)
        {
            List <int> iResponse = new List <int>();

            using (ISession session = NHSessionHelper.GetSession())
            {
                DataContext dc = new DataContext(session);
                try
                {
                    CommunityFile oItem = dc.GetById <CommunityFile>(ItemID);
                    if (oItem != null && ((CommunityID == 0 && oItem.CommunityOwner == null) || (CommunityID > 0 && oItem.CommunityOwner != null)))
                    {
                        List <int> AssignedCommunity = new List <int>();
                        AssignedCommunity = (from ca in session.Linq <CommunityFileCommunityAssignment>() where ca.AssignedTo == oItem.CommunityOwner && ca.File == oItem && ca.Inherited select ca.AssignedTo.Id).ToList <int>();
                        if (AssignedCommunity.Count > 0)
                        {
                            iResponse = GetPermissionMembersID(session, CommunityID, Services_File.Codex, Permission);
                        }
                        else
                        {
                            List <int> AssignedUsers      = new List <int>();
                            List <int> AssignedRoles      = new List <int>();
                            List <int> AssignedUsersTypes = new List <int>();
                            if (oItem.CommunityOwner == null)
                            {
                                AssignedUsersTypes = (from ca in session.Linq <CommunityFilePersonTypeAssignment>() where ca.File == oItem && ca.Inherited select ca.AssignedTo).ToList <int>();
                                if (AssignedUsersTypes.Count > 0)
                                {
                                    iResponse.AddRange(GetByRolePermissionMembersID(session, 0, Services_File.Codex, AssignedUsersTypes, Permission));
                                }
                            }
                            else
                            {
                                AssignedRoles = (from ca in session.Linq <CommunityFileRoleAssignment>() where ca.File == oItem && ca.Inherited select ca.AssignedTo.Id).ToList <int>();
                                if (AssignedRoles.Count > 0)
                                {
                                    iResponse.AddRange(GetByRolePermissionMembersID(session, oItem.CommunityOwner.Id, Services_File.Codex, AssignedRoles, Permission));
                                }
                            }
                            AssignedUsers = (from ca in session.Linq <CommunityFilePersonAssignment>() where ca.File == oItem && !iResponse.Contains <int>(ca.AssignedTo.Id) select ca.AssignedTo.Id).ToList <int>();
                            AssignedUsers = EvaluateRepositoryUsers(session, AssignedUsers, oItem.FolderId, oItem.CommunityOwner, Services_File.Codex, Permission);
                            if (AssignedUsers.Count > 0)
                            {
                                iResponse.AddRange(AssignedUsers);
                            }
                        }
                        if (PermissionHelper.CheckPermissionSoft((long)(Services_File.Base2Permission.AdminService) | (int)(Services_File.Base2Permission.Moderate), Permission))
                        {
                            List <int> AvailableMembersID = GetPermissionMembersID(session, CommunityID, Services_File.Codex, (int)(Services_File.Base2Permission.AdminService) | (int)(Services_File.Base2Permission.Moderate));
                            iResponse.AddRange((from Id in AvailableMembersID where iResponse.Contains(Id) == false select Id).ToList <int>());
                        }
                    }
                }
                catch (Exception ex)
                {
                }
            }
            return((from UserID in iResponse select UserID).Distinct().ToList <int>());
        }
Beispiel #3
0
 public ModuleTicket(long permission)
 {
     //ViewMyTickets = true;
     EditCategory      = PermissionHelper.CheckPermissionSoft((long)Base2Permission.EditCategory, permission);
     ManageCategory    = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ManageCategory, permission);
     ManagePermissions = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ManagePermissions, permission);
     Administration    = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Admin, permission);
 }
Beispiel #4
0
        private List <int> GetPersonTypesByService(string ServiceCode, List <int> AvailableTypes, long PermissionSearched)
        {
            List <int> types = new List <int>();

            foreach (int typeID in AvailableTypes)
            {
                int PermissionForPersonType = 0;
                switch (ServiceCode)
                {
                case "SRVBACH":
                    Services_Bacheca service = Services_Bacheca.Create();
                    service.Admin           = (typeID == (int)PersonTypeStandard.AdminSecondario || typeID == (int)PersonTypeStandard.SysAdmin || typeID == (int)PersonTypeStandard.Amministrativo);
                    service.Read            = (typeID != (int)PersonTypeStandard.Guest);
                    service.GrantPermission = (typeID == (int)PersonTypeStandard.AdminSecondario || typeID == (int)PersonTypeStandard.SysAdmin);
                    service.Write           = (typeID == (int)PersonTypeStandard.AdminSecondario || typeID == (int)PersonTypeStandard.SysAdmin || typeID == (int)PersonTypeStandard.Amministrativo);
                    PermissionForPersonType = service.ConvertToInt();
                    break;

                case "SRVQUST":
                    Services_Questionario serviceQuest = Services_Questionario.Create();
                    serviceQuest.Compila               = (typeID != (int)PersonTypeStandard.Guest);
                    serviceQuest.Admin                 = (typeID == (int)PersonTypeStandard.AdminSecondario || typeID == (int)PersonTypeStandard.SysAdmin || typeID == (int)PersonTypeStandard.Amministrativo);
                    serviceQuest.QuestionariSuInvito   = (typeID == (int)PersonTypeStandard.AdminSecondario || typeID == (int)PersonTypeStandard.SysAdmin || typeID == (int)PersonTypeStandard.Amministrativo);
                    serviceQuest.VisualizzaStatistiche = (typeID == (int)PersonTypeStandard.AdminSecondario || typeID == (int)PersonTypeStandard.SysAdmin || typeID == (int)PersonTypeStandard.Amministrativo);
                    serviceQuest.GrantPermission       = (typeID == (int)PersonTypeStandard.AdminSecondario || typeID == (int)PersonTypeStandard.SysAdmin);
                    serviceQuest.GestioneDomande       = (typeID == (int)PersonTypeStandard.AdminSecondario || typeID == (int)PersonTypeStandard.SysAdmin || typeID == (int)PersonTypeStandard.Amministrativo);
                    serviceQuest.CancellaQuestionario  = (typeID == (int)PersonTypeStandard.AdminSecondario || typeID == (int)PersonTypeStandard.SysAdmin || typeID == (int)PersonTypeStandard.Amministrativo);
                    serviceQuest.CopiaQuestionario     = (typeID == (int)PersonTypeStandard.AdminSecondario || typeID == (int)PersonTypeStandard.SysAdmin || typeID == (int)PersonTypeStandard.Amministrativo);
                    PermissionForPersonType            = serviceQuest.ConvertToInt();
                    break;

                case "SRVMATER":
                    Services_File serviceFile = Services_File.Create();

                    serviceFile.Admin           = (typeID == (int)PersonTypeStandard.AdminSecondario || typeID == (int)PersonTypeStandard.SysAdmin);
                    serviceFile.Change          = (typeID == (int)PersonTypeStandard.AdminSecondario || typeID == (int)PersonTypeStandard.SysAdmin);
                    serviceFile.Delete          = (typeID == (int)PersonTypeStandard.AdminSecondario || typeID == (int)PersonTypeStandard.SysAdmin);
                    serviceFile.GrantPermission = (typeID == (int)PersonTypeStandard.AdminSecondario || typeID == (int)PersonTypeStandard.SysAdmin);
                    serviceFile.Print           = (typeID != (int)PersonTypeStandard.Guest);

                    serviceFile.Read = (typeID != (int)PersonTypeStandard.Guest);

                    serviceFile.Upload      = (typeID == (int)PersonTypeStandard.AdminSecondario || typeID == (int)PersonTypeStandard.SysAdmin || typeID == (int)PersonTypeStandard.Amministrativo);
                    PermissionForPersonType = serviceFile.ConvertToInt();
                    break;

                default:
                    PermissionForPersonType = 0;
                    break;
                }
                if (PermissionHelper.CheckPermissionSoft(PermissionSearched, PermissionForPersonType))
                {
                    types.Add(typeID);
                }
            }
            return(types);
        }
Beispiel #5
0
 public ModuleGlossary(long permission)
 {
     ViewTerm       = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ListItems, permission);
     AddTerm        = PermissionHelper.CheckPermissionSoft((long)Base2Permission.AddItem, permission);
     EditTerm       = PermissionHelper.CheckPermissionSoft((long)Base2Permission.EditItem, permission);
     DeleteTerm     = PermissionHelper.CheckPermissionSoft((long)Base2Permission.DeleteItem, permission);
     Administration = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Admin, permission);
     ManageGlossary = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ManageGroup, permission);
 }
 public ModuleCommunityManagement(long permission)
 {
     Add    = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Add | (long)Base2Permission.Manage | (long)Base2Permission.AdminService, permission);
     Edit   = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Edit | (long)Base2Permission.Manage | (long)Base2Permission.AdminService, permission);
     Delete = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Edit | (long)Base2Permission.Manage | (long)Base2Permission.AdminService, permission);
     ManagementPermission = PermissionHelper.CheckPermissionSoft((long)Base2Permission.GrantPermission, permission);
     Manage         = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Manage | (long)Base2Permission.AdminService, permission);
     Administration = PermissionHelper.CheckPermissionSoft((long)Base2Permission.AdminService, permission);
 }
 public ModuleCertifications(long permission)
 {
     ViewMyCertifications = PermissionHelper.CheckPermissionSoft((long)Base2Permission.List, permission);
     //AddTemplate = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Add, permission);
     //EditTemplates = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Edit, permission);
     //EditBuiltInTemplates = PermissionHelper.CheckPermissionSoft((long)Base2Permission.EditBuiltIn, permission);
     //ManageTemplates = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Manage, permission);
     //DeleteTemplates = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Delete, permission);
 }
Beispiel #8
0
 public ModuleDocTemplate(long permission)
 {
     ViewTemplates        = PermissionHelper.CheckPermissionSoft((long)Base2Permission.List, permission);
     AddTemplate          = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Add, permission);
     EditTemplates        = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Edit, permission);
     EditBuiltInTemplates = PermissionHelper.CheckPermissionSoft((long)Base2Permission.EditBuiltIn, permission);
     ManageTemplates      = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Manage, permission);
     DeleteTemplates      = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Delete, permission);
 }
Beispiel #9
0
 public ModuleProjectManagement(long permission)
 {
     Administration        = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Administration, permission);
     CreatePublicProject   = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Administration | (long)Base2Permission.AddPublicProject, permission);
     CreatePersonalProject = true;   //PermissionHelper.CheckPermissionSoft((long)Base2Permission.ViewLessons | (long)Base2Permission.EditLesson | (long)Base2Permission.AdminService, permission);
     DownloadAllowed       = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ViewCommunityProjects | (long)Base2Permission.Administration, permission);
     ManagementPermission  = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ManagementPermission, permission);
     PrintTaskList         = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Administration | (long)Base2Permission.ViewCommunityProjects, permission);
     ViewTaskList          = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Administration | (long)Base2Permission.ViewCommunityProjects, permission);
 }
Beispiel #10
0
 public ModuleRequestForMembership(long permission)
 {
     ViewBaseForPapers     = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ListRequests, permission);
     AddSubmission         = PermissionHelper.CheckPermissionSoft((long)Base2Permission.AddSubmission, permission);
     CreateBaseForPaper    = PermissionHelper.CheckPermissionSoft((long)Base2Permission.AddRequest, permission);
     EditBaseForPaper      = PermissionHelper.CheckPermissionSoft((long)Base2Permission.EditRequest, permission);
     Administration        = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Admin, permission);
     ManageBaseForPapers   = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ManageRequests, permission);
     DeleteOwnBaseForPaper = PermissionHelper.CheckPermissionSoft((long)Base2Permission.DeleteRequest, permission);
 }
Beispiel #11
0
 public ModuleTags(long permission)
 {
     List                   = PermissionHelper.CheckPermissionSoft((long)Base2Permission.List, permission);
     Add                    = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Add, permission);
     Edit                   = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Edit, permission);
     DeleteOther            = PermissionHelper.CheckPermissionSoft(((long)Base2Permission.Administration | (long)Base2Permission.DeleteOther), permission);
     DeleteMy               = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Add, permission);
     Administration         = PermissionHelper.CheckPermissionSoft(((long)Base2Permission.Administration | (long)Base2Permission.Manage), permission);
     ManageModulePermission = PermissionHelper.CheckPermissionSoft(((long)Base2Permission.Administration | (long)Base2Permission.GrantPermission), permission);
 }
 public ModuleCallForPaper(long permission)
 {
     ViewCallForPapers     = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ListCalls, permission);
     AddSubmission         = PermissionHelper.CheckPermissionSoft((long)Base2Permission.AddSubmission, permission);
     CreateCallForPaper    = PermissionHelper.CheckPermissionSoft((long)Base2Permission.AddCall, permission);
     EditCallForPaper      = PermissionHelper.CheckPermissionSoft((long)Base2Permission.EditCall, permission);
     Administration        = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Admin, permission);
     ManageCallForPapers   = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ManageCalls, permission);
     DeleteOwnCallForPaper = PermissionHelper.CheckPermissionSoft((long)Base2Permission.DeleteCall, permission);
 }
Beispiel #13
0
        private List <int> GetPermissionMembersID(ISession session, int CommunityID, string ServiceCode, int Permission)
        {
            iCommunity community = session.Get <Community>(CommunityID);

            if (community == null && CommunityID == 0)
            {
                return(GetPortalPermissionMembersID(session, ServiceCode, Permission));
            }
            else if (community == null)
            {
                return(new List <int>());
            }

            iModuleDefinition CommunityModule;

            try
            {
                CommunityModule = (from cModule in session.Linq <CommunityModuleAssociation>()
                                   where cModule.Enabled && cModule.Service.Available && cModule.Community == community && cModule.Service.Code == ServiceCode
                                   select cModule.Service).FirstOrDefault <ModuleDefinition>();
            }
            catch (Exception ex)
            {
                CommunityModule = null;
            }

            if (CommunityModule == null)
            {
                return(new List <int>());
            }
            else
            {
                //Find all Role perission for the input community and the input service
                List <CommunityRoleModulePermission> RolePermissionList = (from crmp in session.Linq <CommunityRoleModulePermission>()
                                                                           where crmp.Community == community && crmp.Service == CommunityModule
                                                                           select crmp).ToList <CommunityRoleModulePermission>();
                // Find ONLY roles !
                List <int> RolesList = (from o in RolePermissionList
                                        where PermissionHelper.CheckPermissionSoft(Permission, o.PermissionInt)
                                        select o.Role.Id).ToList <int>();

                if (RolesList.Count == 0)
                {
                    return(new List <int>());
                }
                else
                {
                    List <int> UsersID = (from Subscription sub in session.Linq <Subscription>()
                                          where sub.Community == community && sub.Accepted && sub.Enabled && sub.Role.Id > 0 && RolesList.Contains(sub.Role.Id)
                                          select sub.Person.Id).ToList <int>();

                    return(UsersID);
                }
            }
        }
Beispiel #14
0
 public ModuleNoticeboard(long permission)
 {
     ViewCurrentMessage   = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ReadMessages | (long)Base2Permission.EditMessage | (long)Base2Permission.Management, permission);
     ViewOldMessage       = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ReadMessages | (long)Base2Permission.EditMessage | (long)Base2Permission.Management, permission);
     PrintMessage         = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ReadMessages | (long)Base2Permission.EditMessage | (long)Base2Permission.Management, permission);
     EditMessage          = PermissionHelper.CheckPermissionSoft((long)Base2Permission.EditMessage | (long)Base2Permission.Management, permission);
     DeleteMessage        = PermissionHelper.CheckPermissionSoft((long)Base2Permission.DeleteMessages | (long)Base2Permission.Management | (long)Base2Permission.Management, permission);
     RetrieveOldMessage   = PermissionHelper.CheckPermissionSoft((long)Base2Permission.EditMessage | (long)Base2Permission.Management | (long)Base2Permission.Management, permission);
     Administration       = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Management, permission);
     ManagementPermission = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Management | (long)Base2Permission.ManagePermission, permission);
 }
 public ModuleTemplateMessages(long permission)
 {
     List  = PermissionHelper.CheckPermissionSoft((long)Base2Permission.List, permission);
     Add   = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Add, permission);
     Edit  = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Edit, permission);
     Clone = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Clone, permission);
     DeleteOtherTemplates   = PermissionHelper.CheckPermissionSoft(((long)Base2Permission.Administration | (long)Base2Permission.DeleteOther), permission);
     DeleteMyTemplates      = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Add, permission);
     Administration         = PermissionHelper.CheckPermissionSoft(((long)Base2Permission.Administration | (long)Base2Permission.ManageTemplates), permission);
     ManageModulePermission = PermissionHelper.CheckPermissionSoft(((long)Base2Permission.Administration | (long)Base2Permission.GrantPermission), permission);
 }
Beispiel #16
0
 public ModuleCommunityDiary(long permission)
 {
     ViewDiaryItems       = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ViewLessons | (long)Base2Permission.EditLesson | (long)Base2Permission.AdminService, permission);
     Edit                 = PermissionHelper.CheckPermissionSoft((long)Base2Permission.EditLesson | (long)Base2Permission.AdminService, permission);
     PrintList            = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ViewLessons | (long)Base2Permission.EditLesson | (long)Base2Permission.AdminService, permission);
     ManagementPermission = PermissionHelper.CheckPermissionSoft((long)Base2Permission.GrantPermission, permission);
     UploadFile           = PermissionHelper.CheckPermissionSoft((long)Base2Permission.UploadFile | (long)Base2Permission.AddLesson | (long)Base2Permission.EditLesson | (long)Base2Permission.AdminService, permission);
     AddItem              = PermissionHelper.CheckPermissionSoft((long)Base2Permission.AddLesson | (long)Base2Permission.AdminService, permission);
     Administration       = PermissionHelper.CheckPermissionSoft((long)Base2Permission.AdminService, permission);
     DeleteItem           = PermissionHelper.CheckPermissionSoft((long)Base2Permission.DeleteLesson | (long)Base2Permission.AdminService, permission);
 }
Beispiel #17
0
        //private bool RepositoryUserIsInRole(ISession session, int UserID,int RoleID, long FatherID,int CommunityID, int Permission)
        //{
        //    bool iResponse = false;
        //    if (FatherID == 0)
        //        iResponse = true;
        //    else
        //    {
        //        while (FatherID > 0)
        //        {
        //            CommunityFile oFolder = session.Get<CommunityFile>(FatherID);
        //            if (oFolder != null)
        //            {
        //                iResponse = (from ca in session.Linq<CommunityFileCommunityAssignment>() where ca.AssignedTo == oFolder.CommunityOwner && ca.File == oFolder && ca.Deny == false select ca.AssignedTo.Id).Any();
        //                if (iResponse == false && CommunityID==0)
        //                    iResponse = (from ca in session.Linq<CommunityFilePersonTypeAssignment>() where ca.AssignedTo == RoleID && ca.File == oFolder && ca.Deny == false select ca.AssignedTo).Any();
        //                else if (iResponse == false && CommunityID > 0)
        //                    iResponse = (from ca in session.Linq<CommunityFileRoleAssignment>() where ca.AssignedTo.Id  == RoleID && ca.File == oFolder && ca.Deny == false select ca.AssignedTo).Any();

        //                if (!iResponse)
        //                    iResponse = (from ca in session.Linq<CommunityFilePersonAssignment>() where ca.AssignedTo.Id == UserID && ca.File == oFolder && ca.Deny == false select ca.AssignedTo).Any();
        //            }
        //            else
        //                iResponse = false;
        //            if (iResponse)
        //                FatherID = oFolder.FolderId;
        //            else
        //                FatherID = 0;
        //        }
        //    }
        //    return iResponse;
        //}
        private List <int> GetByRolePermissionMembersID(ISession session, int idCommunity, string moduleCode, List <int> AssignedRoles, int Permission)
        {
            iCommunity community = session.Get <Community>(idCommunity);

            if (community == null && idCommunity == 0)
            {
                return(GetByTypePermissionMembersID(session, moduleCode, AssignedRoles, Permission));
            }
            else if (community == null)
            {
                return(new List <int>());
            }

            iModuleDefinition CommunityModule;

            try
            {
                CommunityModule = (from cModule in session.Linq <CommunityModuleAssociation>()
                                   where cModule.Enabled && cModule.Service.Available && cModule.Community == community && cModule.Service.Code == moduleCode
                                   select cModule.Service).FirstOrDefault <ModuleDefinition>();
            }
            catch (Exception ex)
            {
                CommunityModule = null;
            }

            if (CommunityModule == null)
            {
                return(new List <int>());
            }
            else
            {
                //Find all Role perission for the input community and the input service
                List <CommunityRoleModulePermission> RolePermissionList = (from crmp in session.Linq <CommunityRoleModulePermission>()
                                                                           where crmp.Community == community && crmp.Service == CommunityModule && AssignedRoles.Contains(crmp.Role.Id)
                                                                           select crmp).ToList <CommunityRoleModulePermission>();
                // Find ONLY roles !
                List <int> RolesList = (from o in RolePermissionList
                                        where PermissionHelper.CheckPermissionSoft(Permission, o.PermissionInt)
                                        select o.Role.Id).ToList <int>();

                if (RolesList.Count == 0)
                {
                    return(new List <int>());
                }
                else
                {
                    return((from LazySubscription sub in session.Linq <LazySubscription>()
                            where sub.IdCommunity == idCommunity && sub.Accepted && sub.Enabled && sub.IdRole > 0 && RolesList.Contains(sub.IdRole)
                            select sub.IdPerson).ToList().Distinct().ToList());
                }
            }
        }
Beispiel #18
0
 public ModuleDashboard(long permission)
 {
     List                   = PermissionHelper.CheckPermissionSoft((long)Base2Permission.List, permission);
     Add                    = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Add, permission);
     Edit                   = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Edit, permission);
     Clone                  = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Clone, permission);
     DeleteOther            = PermissionHelper.CheckPermissionSoft(((long)Base2Permission.Administration | (long)Base2Permission.DeleteOther), permission);
     DeleteMy               = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Add, permission);
     Administration         = PermissionHelper.CheckPermissionSoft(((long)Base2Permission.Administration), permission);
     ManageTiles            = PermissionHelper.CheckPermissionSoft(((long)Base2Permission.Administration | (long)Base2Permission.ManageTiles), permission);
     ManageModulePermission = PermissionHelper.CheckPermissionSoft(((long)Base2Permission.Administration | (long)Base2Permission.GrantPermission), permission);
 }
Beispiel #19
0
 public ModuleCommunityMembersManagement(long permission)
 {
     AddUser            = PermissionHelper.CheckPermissionSoft((long)Base2Permission.AddUser | (long)Base2Permission.Manage | (long)Base2Permission.Administration, permission);
     EditSubscription   = PermissionHelper.CheckPermissionSoft((long)Base2Permission.EditSubscription | (long)Base2Permission.Manage | (long)Base2Permission.Administration, permission);
     DeleteSubscription = PermissionHelper.CheckPermissionSoft((long)Base2Permission.DeleteSubscription | (long)Base2Permission.Manage | (long)Base2Permission.Administration, permission);
     Manage             = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Manage | (long)Base2Permission.Administration, permission);
     EditPermission     = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ManagementPermission | (long)Base2Permission.Administration, permission);
     Administration     = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Administration, permission);
     PrintList          = PermissionHelper.CheckPermissionSoft((long)Base2Permission.PrintList | (long)Base2Permission.Manage | (long)Base2Permission.Administration, permission);
     LoadList           = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ListSubscriptions | (long)Base2Permission.Manage | (long)Base2Permission.Administration, permission);
     ViewExtendedInfo   = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Administration | (long)Base2Permission.Manage, permission);
 }
Beispiel #20
0
 public ModuleRepository(long permission)
 {
     UploadFile             = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Upload, permission);
     EditMyFiles            = PermissionHelper.CheckPermissionSoft((long)Base2Permission.EditMyFiles, permission);
     DeleteMyFiles          = PermissionHelper.CheckPermissionSoft((long)Base2Permission.DeleteMyFiles, permission);
     ViewMyStatistics       = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ViewMyStatistics, permission);
     ManageModulePermission = PermissionHelper.CheckPermissionSoft(((long)Base2Permission.Administration | (long)Base2Permission.ManageModulePermission), permission);
     Administration         = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Administration, permission);
     ManageItems            = PermissionHelper.CheckPermissionSoft(((long)Base2Permission.Administration | (long)Base2Permission.Manage), permission);
     ViewItemsList          = PermissionHelper.CheckPermissionSoft(((long)Base2Permission.Administration | (long)Base2Permission.Manage | (long)Base2Permission.ViewList | (long)Base2Permission.DownloadOrPlay), permission);
     EditOthersFiles        = PermissionHelper.CheckPermissionSoft(((long)Base2Permission.Administration | (long)Base2Permission.EditOthersFiles | (long)Base2Permission.Manage), permission);
     DownloadOrPlay         = PermissionHelper.CheckPermissionSoft(((long)Base2Permission.Administration | (long)Base2Permission.DownloadOrPlay), permission);
     ViewStatistics         = PermissionHelper.CheckPermissionSoft(((long)Base2Permission.Administration | (long)Base2Permission.ViewStatistics), permission);
 }
Beispiel #21
0
        public ModuleGlossaryNew(long permission)
        {
            Administration = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Admin, permission);
            ManageGlossary = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ManageGroup, permission);
            ViewTerm       = Administration || ManageGlossary || PermissionHelper.CheckPermissionSoft((long)Base2Permission.ListItems, permission);
            AddTerm        = Administration || ManageGlossary || PermissionHelper.CheckPermissionSoft((long)Base2Permission.AddItem, permission);
            EditTerm       = Administration || ManageGlossary || PermissionHelper.CheckPermissionSoft((long)Base2Permission.EditItem, permission);
            DeleteTerm     = Administration || ManageGlossary || PermissionHelper.CheckPermissionSoft((long)Base2Permission.DeleteItem, permission);



            EditGlossary   = Administration || ManageGlossary; //|| PermissionHelper.CheckPermissionSoft((long) Base2Permission.EditGlossary, permission);
            DeleteGlossary = Administration;                   // || PermissionHelper.CheckPermissionSoft((long)Base2Permission.DeleteGlossary, permission);
            ViewStat       = false;                            // PermissionHelper.CheckPermissionSoft((long)Base2Permission.ViewStat, permission);
        }
Beispiel #22
0
        public ModuleTasklist(long permission)
        {
            Administration                 = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Administration, permission);
            CreateCommunityProject         = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Administration | (long)Base2Permission.AddCommunityProject, permission);
            CreatePersonalCommunityProject = true;   //PermissionHelper.CheckPermissionSoft((long)Base2Permission.ViewLessons | (long)Base2Permission.EditLesson | (long)Base2Permission.AdminService, permission);
            CreatePersonalProject          = true;   // PermissionHelper.CheckPermissionSoft((long)Base2Permission.GrantPermission, permission);
            DownloadAllowed                = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ViewCommunityProjects | (long)Base2Permission.Administration, permission);
            ManagementPermission           = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ManagementPermission, permission);
            PrintTaskList = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Administration | (long)Base2Permission.ViewCommunityProjects, permission);
            ViewTaskList  = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Administration | (long)Base2Permission.ViewCommunityProjects, permission);

            //Administration = PermissionHelper.CheckPermissionSoft(Convert.ToInt64(Base2Permission.Administration), permission);
            //CreateCommunityProject = PermissionHelper.CheckPermissionSoft(Convert.ToInt64(Base2Permission.Administration) | Convert.ToInt64(Base2Permission.AddCommunityProject), permission);
            //CreatePersonalCommunityProject = true;
            //this.CreatePersonalProject = true;
            //this.DownloadAllowed = PermissionHelper.CheckPermissionSoft(Convert.ToInt64(Base2Permission.Administration), permission);
            ////secondo me va rivisto, solo gli admin possono scaricare files?!?!?! Mettere .ViewCommunityTask
            //this.ManagementPermission = PermissionHelper.CheckPermissionSoft(Convert.ToInt64(Base2Permission.ManagementPermission), permission);
            //this.PrintTaskList = PermissionHelper.CheckPermissionSoft(Convert.ToInt64(Base2Permission.Administration) | Convert.ToInt64(Base2Permission.ViewCommunityProjects), permission);
            //this.ViewTaskList = PermissionHelper.CheckPermissionSoft(Convert.ToInt64(Base2Permission.Administration) | Convert.ToInt64(Base2Permission.ViewCommunityProjects), permission);
        }
Beispiel #23
0
        /// <summary>
        /// Inizializzazione con permessi
        /// </summary>
        /// <param name="ServiceCode"></param>
        /// <param name="permission"></param>
        public ModuleGeneric(string ServiceCode, long permission)
        {
            _code = ServiceCode;

            Read         = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Read, permission);
            Write        = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Write, permission);
            Modify       = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Modify, permission);
            Delete       = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Delete, permission);
            Moderate     = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Moderate, permission);
            Permission   = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Permission, permission);
            Admin        = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Admin, permission);
            Send         = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Send, permission);
            Receive      = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Receive, permission);
            Synchronize  = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Synchronize, permission);
            Browse       = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Browse, permission);
            Print        = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Print, permission);
            ChangeOwner  = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ChangeOwner, permission);
            Add          = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Add, permission);
            ChangeStatus = PermissionHelper.CheckPermissionSoft((long)Base2Permission.ChangeStatus, permission);
            Download     = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Download, permission);
        }
Beispiel #24
0
        protected virtual Boolean IsValid(List <CommunityRoleModulePermission> permissions)
        {
            if (IdModule == 0)
            {
                return(true);
            }

            Boolean result = (from p in permissions where p.Service.Available && p.Service.Id == IdModule && PermissionHelper.CheckPermissionSoft(Permission, p.PermissionInt) select p).Any();


            return(result);
        }
 /// <summary>
 /// Costruttore
 /// </summary>
 /// <param name="permission">Permessi (by system)</param>
 public ModuleWebConferencing(long permission)
 {
     ListRoom    = PermissionHelper.CheckPermissionSoft((long)Base2Permission.List, permission);
     AddChatRoom = PermissionHelper.CheckPermissionSoft((long)Base2Permission.AddChat, permission);
     ManageRoom  = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Manage, permission);
 }
Beispiel #26
0
        public List <int> GetPermissionMembersID(int CommunityID, int ServiceID, int Permission)
        {
            using (ISession session = NHSessionHelper.GetSession())
            {
                DataContext dc        = new DataContext(session);
                iCommunity  community = dc.GetById <Community>(CommunityID);
                if (community == null && CommunityID == 0)
                {
                    return(GetPortalPermissionMembersID(ServiceID, Permission));
                }
                else if (community == null)
                {
                    return(new List <int>());
                }

                iModuleDefinition CommunityModule;
                try{
                    CommunityModule = (from cModule in session.Linq <CommunityModuleAssociation>()
                                       where cModule.Enabled && cModule.Service.Available && cModule.Community == community && cModule.Service.Id == ServiceID
                                       select cModule.Service).FirstOrDefault <ModuleDefinition>();
                }
                catch (Exception ex) {
                    CommunityModule = null;
                }

                if (CommunityModule == null)
                {
                    return(new List <int>());
                }
                else
                {
                    //Find all Role perission for the input community and the input service
                    List <CommunityRoleModulePermission> RolePermissionList = (from crmp in session.Linq <CommunityRoleModulePermission>()
                                                                               where crmp.Community == community && crmp.Service == CommunityModule
                                                                               select crmp).ToList <CommunityRoleModulePermission>();
                    // Find ONLY roles !
                    List <int> RolesList = (from o in RolePermissionList
                                            where PermissionHelper.CheckPermissionSoft(Permission, o.PermissionInt)
                                            select o.Role.Id).ToList <int>();

                    if (RolesList.Count == 0)
                    {
                        return(new List <int>());
                    }
                    else
                    {
                        //List<int> UsersID = (from r in RolesList
                        //                     join Subscription sub in session.Linq<Subscription>() on r equals sub.Role
                        //                     where sub.Community == community && sub.Accepted && sub.Enabled && sub.Role.Id > 0
                        //                     select sub.Person.Id)..ToList<int>();

                        List <SmallRolePerson> rpList = (from Subscription sub in session.Linq <Subscription>()
                                                         where sub.Community == community && sub.Accepted && sub.Enabled && sub.Role.Id > 0 && RolesList.Contains(sub.Role.Id)
                                                         select new SmallRolePerson(sub.Role.Id, sub.Person.Id)).ToList <SmallRolePerson>();

                        List <int> UsersID = (from Subscription sub in session.Linq <Subscription>()
                                              where sub.Community == community && sub.Accepted && sub.Enabled && sub.Role.Id > 0 && RolesList.Contains(sub.Role.Id)
                                              select sub.Person.Id).ToList <int>();

                        //(from roleID in RolesList
                        //                 join SmallRolePerson rp in rpList on roleID equals rp.RoleID
                        //                 select rp.PersonID).ToList<int>();
                        return(UsersID);
                    }
                }
            }
        }
Beispiel #27
0
        //private bool RepositoryCommunityIsInRole(ISession session,int CommunityID,long FatherID, int Permission)
        //{
        //    bool iResponse = false;
        //    if (FatherID == 0)
        //        iResponse = true;
        //    else
        //    {
        //        while (FatherID>0){
        //            CommunityFile oFolder = session.Get<CommunityFile>(FatherID);
        //            if (oFolder != null){
        //                iResponse = (from ca in session.Linq<CommunityFileCommunityAssignment>() where ca.AssignedTo == oFolder.CommunityOwner && ca.File == oFolder && ca.Deny == false select ca.AssignedTo.Id).Any();
        //            }
        //            else
        //                iResponse = false;
        //            if (iResponse)
        //                FatherID = oFolder.FolderId;
        //            else
        //                FatherID=0;
        //        }
        //    }
        //    return iResponse;
        //}
        //private bool RepositoryRoleIsInRole(ISession session, int RoleID, long FatherID, int Permission){
        //    bool iResponse = false;
        //    if (FatherID == 0)
        //        iResponse = true;
        //    else
        //    {
        //        while (FatherID > 0)
        //        {
        //            CommunityFile oFolder = session.Get<CommunityFile>(FatherID);
        //            if (oFolder != null)
        //            {
        //                iResponse = (from ca in session.Linq<CommunityFileCommunityAssignment>() where ca.AssignedTo == oFolder.CommunityOwner && ca.File == oFolder && ca.Deny==false  select ca.AssignedTo.Id).Any();
        //                if (iResponse==false)
        //                    iResponse = (from ca in session.Linq<CommunityFileRoleAssignment>() where ca.AssignedTo.Id == RoleID && ca.File == oFolder && ca.Deny==false select ca.AssignedTo.Id).Any();
        //            }
        //            else
        //                iResponse = false;
        //            if (iResponse)
        //                FatherID = oFolder.FolderId;
        //            else
        //                FatherID = 0;
        //        }
        //    }
        //    return iResponse;
        //}
        //private bool RepositoryUserTypeIsInRole(ISession session, int PersonTypeID, long FatherID, int Permission)
        //{
        //    bool iResponse = false;
        //    if (FatherID == 0)
        //        iResponse = true;
        //    else
        //    {
        //        while (FatherID > 0)
        //        {
        //            CommunityFile oFolder = session.Get<CommunityFile>(FatherID);
        //            if (oFolder != null)
        //            {
        //                iResponse = (from ca in session.Linq<CommunityFileCommunityAssignment>() where ca.AssignedTo == oFolder.CommunityOwner && ca.File == oFolder && ca.Deny == false select ca.AssignedTo.Id).Any();
        //                if (iResponse == false)
        //                    iResponse = (from ca in session.Linq<CommunityFilePersonTypeAssignment>() where ca.AssignedTo == PersonTypeID && ca.File == oFolder && ca.Deny == false select ca.AssignedTo).Any();
        //            }
        //            else
        //                iResponse = false;
        //            if (iResponse)
        //                FatherID = oFolder.FolderId;
        //            else
        //                FatherID = 0;
        //        }
        //    }
        //    return iResponse;
        //}
        private List <int> EvaluateRepositoryUsers(ISession session, List <int> AssignedUsers, long FatherID, Community oCommunity, string ServiceCode, int Permission)
        {
            List <int> iResponse = new List <int>();

            if (FatherID == 0)
            {
                iResponse = AssignedUsers;
            }
            else
            {
                if (oCommunity == null)
                {
                    var UserTypes = (from p in session.Linq <litePerson>()
                                     where p.isDisabled == false && AssignedUsers.Contains(p.Id)
                                     select new { PersonID = p.Id, TypeId = p.TypeID }).ToList();
                    List <int> AvailableTypes = (from ut in UserTypes select ut.TypeId).Distinct().ToList <int>();
                    List <int> TypesToSearch  = GetPersonTypesByService(ServiceCode, AvailableTypes, Permission);

                    iResponse = (from UserType in UserTypes
                                 join type in TypesToSearch on UserType.TypeId equals type
                                 select UserType.PersonID).ToList <int>();
                }
                else
                {
                    iModuleDefinition CommunityModule;
                    try
                    {
                        CommunityModule = (from cModule in session.Linq <CommunityModuleAssociation>()
                                           where cModule.Enabled && cModule.Service.Available && cModule.Community == oCommunity && cModule.Service.Code == ServiceCode
                                           select cModule.Service).FirstOrDefault <ModuleDefinition>();
                    }
                    catch (Exception ex)
                    {
                        CommunityModule = null;
                    }
                    if (CommunityModule == null)
                    {
                        return(new List <int>());
                    }
                    else
                    {
                        var UserRoles = (from us in session.Linq <LazySubscription>()
                                         where us.IdCommunity == oCommunity.Id && us.Accepted && us.Enabled && us.IdRole > 0 && AssignedUsers.Contains(us.IdPerson)
                                         select new { PersonID = us.IdPerson, RoleID = us.IdRole }).ToList();
                        //Find all Role perission for the input community and the input service
                        List <int> UsersRolesList = (from oCouple in UserRoles select oCouple.RoleID).Distinct().ToList <int>();
                        List <CommunityRoleModulePermission> RolePermissionList = (from crmp in session.Linq <CommunityRoleModulePermission>()
                                                                                   where crmp.Community == oCommunity && crmp.Service == CommunityModule && UsersRolesList.Contains(crmp.Role.Id)
                                                                                   select crmp).ToList <CommunityRoleModulePermission>();
                        // Find ONLY roles !
                        List <int> RolesList = (from o in RolePermissionList
                                                where PermissionHelper.CheckPermissionSoft(Permission, o.PermissionInt)
                                                select o.Role.Id).ToList <int>();

                        if (RolesList.Count == 0)
                        {
                            return(new List <int>());
                        }
                        else
                        {
                            iResponse = (from useRole in UserRoles
                                         join role in RolesList on useRole.RoleID equals role
                                         select useRole.PersonID).ToList <int>();
                        }
                    }
                }
            }
            return(iResponse);
        }
Beispiel #28
0
 public ModuleEduPath(long permission)
 {
     ViewPathList     = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Browse, permission);
     Administration   = PermissionHelper.CheckPermissionSoft((long)Base2Permission.Administration, permission);
     ManagePermission = PermissionHelper.CheckPermissionSoft((long)Base2Permission.GrantPermission, permission);
 }