public virtual void SetTeamSecurity(Project project, Participant participant, ProjectTeamSecurity teamSecurity, bool visible) { if (project == null) { throw new ArgumentNullException("project"); } if (participant == null) { throw new ArgumentNullException("participant"); } ProjectSecurity.DemandEditTeam(project); var security = projectDao.GetTeamSecurity(project.ID, participant.ID); if (visible) { if (security != ProjectTeamSecurity.None) { security ^= teamSecurity; } } else { security |= teamSecurity; } projectDao.SetTeamSecurity(project.ID, participant.ID, security); }
public string GetOnClickEvent(Guid userID, ProjectTeamSecurity security) { if (ProjectSecurity.CanEditTeam(Project) && userID != TeamLeader.ID && !ProjectSecurity.IsAdministrator(userID) && Project.Private) { switch (security) { case ProjectTeamSecurity.Messages: return(string.Format("onclick=\"javascript:changePermission(this,'{0}', 0);\" title='{1}'", userID.ToString(), ProjectResource.ClosedProjectTeamMessageButtonTooltip)); case ProjectTeamSecurity.Files: return(string.Format("onclick=\"javascript:changePermission(this,'{0}', 1);\" title='{1}'", userID.ToString(), ProjectResource.ClosedProjectTeamDocumentButtonTooltip)); case ProjectTeamSecurity.Tasks: return(string.Format("onclick=\"javascript:changePermission(this,'{0}', 2);\" title='{1}'", userID.ToString(), ProjectResource.ClosedProjectTeamTaskButtonTooltip)); case ProjectTeamSecurity.Milestone: return(string.Format("onclick=\"javascript:changePermission(this,'{0}', 3);\" title='{1}'", userID.ToString(), ProjectResource.ClosedProjectTeamMilestoneButtonTooltip)); } } return(string.Empty); }
public Participant(Guid userID, ProjectTeamSecurity security) { ID = userID; CanReadFiles = (security & ProjectTeamSecurity.Files) != ProjectTeamSecurity.Files; CanReadMilestones = (security & ProjectTeamSecurity.Milestone) != ProjectTeamSecurity.Milestone; CanReadMessages = (security & ProjectTeamSecurity.Messages) != ProjectTeamSecurity.Messages; CanReadTasks = (security & ProjectTeamSecurity.Tasks) != ProjectTeamSecurity.Tasks; }
public void SetTeamSecurity(Project project, Participant participant, ProjectTeamSecurity teamSecurity, bool visible) { if (participant == null) { throw new ArgumentNullException("participant"); } SetTeamSecurity(project, participant.ID, teamSecurity, visible); }
public bool GetTeamSecurityForParticipants(Project project, Guid userId, ProjectTeamSecurity security) { if (IsProjectManager(project, userId) || !project.Private) { return(true); } var s = DaoFactory.ProjectDao.GetTeamSecurity(project.ID, userId); return((s & security) != security); }
public bool GetTeamSecurity(Project project, Guid userId, ProjectTeamSecurity security) { if (IsProjectManager(project, userId) || project == null || !project.Private) { return(true); } var dao = DaoFactory.ProjectDao; var s = dao.GetTeamSecurity(project.ID, userId); return((s & security) != security && dao.IsInTeam(project.ID, userId)); }
public void SetTeamSecurity(Project project, Guid participant, ProjectTeamSecurity teamSecurity) { if (project == null) { throw new ArgumentNullException("project"); } ProjectSecurity.DemandEditTeam(project); DaoFactory.ProjectDao.SetTeamSecurity(project.ID, participant, teamSecurity); }
public Participant(Guid userID, ProjectTeamSecurity security) : this(userID) { CanReadFiles = (security & ProjectTeamSecurity.Files) != ProjectTeamSecurity.Files; CanReadMilestones = (security & ProjectTeamSecurity.Milestone) != ProjectTeamSecurity.Milestone; CanReadMessages = (security & ProjectTeamSecurity.Messages) != ProjectTeamSecurity.Messages; CanReadTasks = (security & ProjectTeamSecurity.Tasks) != ProjectTeamSecurity.Tasks; CanReadContacts = (security & ProjectTeamSecurity.Contacts) != ProjectTeamSecurity.Contacts; if (IsVisitor) CanReadContacts = false; }
public Participant(Guid userID, ProjectTeamSecurity security) : this(userID) { CanReadFiles = (security & ProjectTeamSecurity.Files) != ProjectTeamSecurity.Files; CanReadMilestones = (security & ProjectTeamSecurity.Milestone) != ProjectTeamSecurity.Milestone; CanReadMessages = (security & ProjectTeamSecurity.Messages) != ProjectTeamSecurity.Messages; CanReadTasks = (security & ProjectTeamSecurity.Tasks) != ProjectTeamSecurity.Tasks; CanReadContacts = (security & ProjectTeamSecurity.Contacts) != ProjectTeamSecurity.Contacts; if (IsVisitor) { CanReadContacts = false; } }
public bool GetTeamSecurity(Project project, Participant participant, ProjectTeamSecurity teamSecurity) { if (project == null) { throw new ArgumentNullException("project"); } if (participant == null) { throw new ArgumentNullException("participant"); } var security = DaoFactory.ProjectDao.GetTeamSecurity(project.ID, participant.ID); return((security & teamSecurity) != teamSecurity); }
public void SetTeamSecurity(int projectId, Guid participantId, ProjectTeamSecurity teamSecurity) { Db.ExecuteNonQuery( new SqlUpdate(ParticipantTable) .Set("updated", DateTime.UtcNow) .Set("security", (int)teamSecurity) .Where("tenant", Tenant) .Where("project_id", projectId) .Where("participant_id", participantId.ToString())); var key = string.Format("{0}|{1}", projectId, participantId); var item = teamCache.Get(key); if (item != null) { teamCache[key].Security = teamSecurity; } }
public void SetTeamSecurity(int projectId, Guid participantId, ProjectTeamSecurity teamSecurity) { DbManager.ExecuteNonQuery( new SqlUpdate("projects_project_participant") .Set("security", (int)teamSecurity) .Where("tenant", Tenant) .Where("project_id", projectId) .Where("participant_id", participantId.ToString())); lock (teamCache) { var key = string.Format("{0}|{1}", projectId, participantId); var item = teamCache.Get(key); if (item != null) { teamCache[key].Security = teamSecurity; } } }
public string GetCssClass(Guid userID, ProjectTeamSecurity security) { var participant = Global.EngineFactory.GetParticipantEngine().GetByID(userID); var havePermission = Global.EngineFactory.GetProjectEngine().GetTeamSecurity(Project, participant, security); if (ProjectSecurity.CanEditTeam(Project) && userID != TeamLeader.ID && !ProjectSecurity.IsAdministrator(userID) && Project.Private) { if (havePermission) { return("pm-projectTeam-modulePermissionOn"); } return("pm-projectTeam-modulePermissionOff"); } else { if (havePermission) { return("pm-projectTeam-modulePermissionOn-disable"); } return("pm-projectTeam-modulePermissionOff-disable"); } }
public void SetTeamSecurity(Project project, Guid participant, ProjectTeamSecurity teamSecurity, bool visible) { if (project == null) { throw new ArgumentNullException("project"); } ProjectSecurity.DemandEditTeam(project); var security = DaoFactory.ProjectDao.GetTeamSecurity(project.ID, participant); if (visible) { if (security != ProjectTeamSecurity.None) { security ^= teamSecurity; } } else { security |= teamSecurity; } DaoFactory.ProjectDao.SetTeamSecurity(project.ID, participant, security); }
protected void RestrictAccess(Guid userID, ProjectTeamSecurity projectTeamSecurity, bool visible) { SecurityContext.AuthenticateMe(Owner); ProjectEngine.SetTeamSecurity(Project, ParticipantEngine.GetByID(userID), projectTeamSecurity, visible); }
public TeamCacheItem(bool inteam, ProjectTeamSecurity security) { InTeam = inteam; Security = security; }
private static bool GetTeamSecurity(Project project, Guid userId, ProjectTeamSecurity security) { if (IsProjectManager(project, userId) || project == null || !project.Private) return true; var dao = GetFactory().GetProjectDao(); var s = dao.GetTeamSecurity(project.ID, userId); return (s & security) != security && dao.IsInTeam(project.ID, userId); }
public IEnumerable<ParticipantWrapper> SetProjectTeamSecurity(int projectid, Guid userId, ProjectTeamSecurity security, bool visible) { var projectEngine = EngineFactory.GetProjectEngine(); var project = projectEngine.GetByID(projectid).NotFoundIfNull(); ProjectSecurity.DemandEditTeam(project); if (!projectEngine.IsInTeam(projectid, userId)) { throw new ArgumentOutOfRangeException("userId", "Not a project memeber"); } projectEngine.SetTeamSecurity(project, EngineFactory.GetParticipantEngine().GetByID(userId), security, visible); var team = GetProjectTeam(projectid); var user = team.SingleOrDefault(t => t.Id == userId); if (user != null) { MessageService.Send(_context, MessageAction.ProjectUpdatedMemberRights, project.Title, HttpUtility.HtmlDecode(user.DisplayName)); } return team; }
public bool GetTeamSecurity(Project project, ProjectTeamSecurity security) { return(GetTeamSecurity(project, CurrentUserId, security)); }
public void SetTeamSecurity(int projectId, Guid participantId, ProjectTeamSecurity teamSecurity) { using (var db = new DbManager(DatabaseId)) { db.ExecuteNonQuery( new SqlUpdate(ParticipantTable) .Set("updated", DateTime.UtcNow) .Set("security", (int) teamSecurity) .Where("tenant", Tenant) .Where("project_id", projectId) .Where("participant_id", participantId.ToString())); } lock (TeamCache) { var key = string.Format("{0}|{1}", projectId, participantId); var item = TeamCache.Get(key); if (item != null) TeamCache[key].Security = teamSecurity; } }
private static bool GetTeamSecurityForParticipants(Project project, Guid userId, ProjectTeamSecurity security) { if (IsProjectManager(project, userId) || !project.Private) return true; var s = GetFactory().GetProjectDao().GetTeamSecurity(project.ID, userId); return (s & security) != security; }
public virtual void SetTeamSecurity(Project project, Participant participant, ProjectTeamSecurity teamSecurity, bool visible) { if (project == null) throw new ArgumentNullException("project"); if (participant == null) throw new ArgumentNullException("participant"); ProjectSecurity.DemandEditTeam(project); var security = projectDao.GetTeamSecurity(project.ID, participant.ID); if (visible) { if (security != ProjectTeamSecurity.None) security ^= teamSecurity; } else { security |= teamSecurity; } projectDao.SetTeamSecurity(project.ID, participant.ID, security); }
public virtual bool GetTeamSecurity(Project project, Participant participant, ProjectTeamSecurity teamSecurity) { if (project == null) throw new ArgumentNullException("project"); if (participant == null) throw new ArgumentNullException("participant"); var security = projectDao.GetTeamSecurity(project.ID, participant.ID); return (security & teamSecurity) != teamSecurity; }
public IEnumerable<ParticipantWrapper> SetProjectTeamSecurity(int projectid, Guid userId, ProjectTeamSecurity security, bool visible) { var project = EngineFactory.GetProjectEngine().GetByID(projectid).NotFoundIfNull(); if (!EngineFactory.GetProjectEngine().IsInTeam(projectid,userId)) { throw new ArgumentOutOfRangeException("userId","Not a project memeber"); } ProjectSecurity.DemandEditTeam(project); EngineFactory.GetProjectEngine().SetTeamSecurity(project, EngineFactory.GetParticipantEngine().GetByID(userId), security, visible); return GetProjectTeam(projectid); }