public CrmCalendar(WebItemSecurity webItemSecurity, DaoFactory daoFactory, AuthContext authContext, TimeZoneConverter timeZoneConverter, TenantManager tenantManager, TenantUtil tenantUtil ) : base(authContext, timeZoneConverter) { _tenantUtil = tenantUtil; _tenantManager = tenantManager; _webItemSecurity = webItemSecurity; _daoFactory = daoFactory; Context.HtmlBackgroundColor = ""; Context.HtmlTextColor = ""; Context.CanChangeAlertType = false; Context.CanChangeTimeZone = false; Context.GetGroupMethod = () => CRMCommonResource.ProductName; Id = "crm_calendar"; EventAlertType = EventAlertType.Never; Name = CRMCommonResource.ProductName; Description = ""; SharingOptions = new SharingOptions(); // SharingOptions.PublicItems.Add(new SharingOptions.PublicItem { Id = userId, IsGroup = false }); }
public CRMCalendar(Guid userId) { Context.HtmlBackgroundColor = ""; Context.HtmlTextColor = ""; Context.CanChangeAlertType = false; Context.CanChangeTimeZone = false; Context.GetGroupMethod = () => Web.CRM.Resources.CRMCommonResource.ProductName; Id = "crm_calendar"; EventAlertType = EventAlertType.Never; Name = Web.CRM.Resources.CRMCommonResource.ProductName; Description = ""; SharingOptions = new SharingOptions(); SharingOptions.PublicItems.Add(new SharingOptions.PublicItem { Id = userId, IsGroup = false }); }
public ProjectCalendar(Project project, string backgroundColor, string textColor, SharingOptions sharingOptions, bool following) { this.project = project; this.following = following; Context.HtmlBackgroundColor = backgroundColor; Context.HtmlTextColor = textColor; Context.CanChangeAlertType = false; Context.CanChangeTimeZone = false; Context.GetGroupMethod = () => Web.Projects.Resources.ProjectsCommonResource.ProductName; Id = this.project.UniqID; EventAlertType = EventAlertType.Hour; Name = this.project.Title; Description = this.project.Description; SharingOptions = sharingOptions; }
public ProjectCalendar(EngineFactory engine, Guid userId, Project project, string backgroundColor, string textColor, SharingOptions sharingOptions, bool following) { _project = project; _engine = engine; _userId = userId; _following = following; Context.HtmlBackgroundColor = backgroundColor; Context.HtmlTextColor = textColor; Context.CanChangeAlertType = false; Context.CanChangeTimeZone = false; Context.GetGroupMethod = () => Web.Projects.Resources.ProjectsCommonResource.ProductName; Id = _project.UniqID; EventAlertType = EventAlertType.Hour; Name = _project.Title; Description = _project.Description; SharingOptions = sharingOptions; }
internal static List <BaseCalendar> GetUserCalendars(Guid userId) { if (!DbRegistry.IsDatabaseRegistered(DbId)) { DbRegistry.RegisterDatabase(DbId, WebConfigurationManager.ConnectionStrings[DbId]); } var tenantId = CoreContext.TenantManager.GetCurrentTenant().TenantId; var engineFactory = new EngineFactory(DbId, tenantId); var cals = new List <BaseCalendar>(); var engine = engineFactory.GetProjectEngine(); var projects = engine.GetByParticipant(userId); if (projects != null) { var team = engine.GetTeam(projects.Select(r => r.ID).ToList()); foreach (var p in projects) { var sharingOptions = new SharingOptions(); foreach (var participant in team.Where(r => r.ProjectID == p.ID)) { sharingOptions.PublicItems.Add(new SharingOptions.PublicItem { Id = participant.ID, IsGroup = false }); } var index = p.ID % CalendarColors.BaseColors.Count; cals.Add(new ProjectCalendar(engineFactory, userId, p, CalendarColors.BaseColors[index].BackgroudColor, CalendarColors.BaseColors[index].TextColor, sharingOptions, false)); } } var folowingProjects = engine.GetFollowing(userId); if (folowingProjects != null) { var team = engine.GetTeam(folowingProjects.Select(r => r.ID).ToList()); foreach (var p in folowingProjects) { if (projects != null && projects.Exists(proj => proj.ID == p.ID)) { continue; } var sharingOptions = new SharingOptions(); sharingOptions.PublicItems.Add(new SharingOptions.PublicItem { Id = userId, IsGroup = false }); foreach (var participant in team.Where(r => r.ProjectID == p.ID)) { sharingOptions.PublicItems.Add(new SharingOptions.PublicItem { Id = participant.ID, IsGroup = false }); } var index = p.ID % CalendarColors.BaseColors.Count; cals.Add(new ProjectCalendar(engineFactory, userId, p, CalendarColors.BaseColors[index].BackgroudColor, CalendarColors.BaseColors[index].TextColor, sharingOptions, true)); } } return(cals); }
internal static List <BaseCalendar> GetUserCalendars(Guid userId) { using (var scope = DIHelper.Resolve()) { var engineFactory = scope.Resolve <EngineFactory>(); var cals = new List <BaseCalendar>(); var engine = engineFactory.ProjectEngine; var projects = engine.GetByParticipant(userId); if (projects != null) { var team = engine.GetTeam(projects.Select(r => r.ID).ToList()); foreach (var project in projects) { var p = project; var sharingOptions = new SharingOptions(); foreach (var participant in team.Where(r => r.ProjectID == p.ID)) { sharingOptions.PublicItems.Add(new SharingOptions.PublicItem { Id = participant.ID, IsGroup = false }); } var index = project.ID % CalendarColors.BaseColors.Count; cals.Add(new ProjectCalendar( project, CalendarColors.BaseColors[index].BackgroudColor, CalendarColors.BaseColors[index].TextColor, sharingOptions, false)); } } var folowingProjects = engine.GetFollowing(userId); if (folowingProjects != null) { var team = engine.GetTeam(folowingProjects.Select(r => r.ID).ToList()); foreach (var project in folowingProjects) { var p = project; if (projects != null && projects.Any(proj => proj.ID == p.ID)) { continue; } var sharingOptions = new SharingOptions(); sharingOptions.PublicItems.Add(new SharingOptions.PublicItem { Id = userId, IsGroup = false }); foreach (var participant in team.Where(r => r.ProjectID == p.ID)) { sharingOptions.PublicItems.Add(new SharingOptions.PublicItem { Id = participant.ID, IsGroup = false }); } var index = p.ID % CalendarColors.BaseColors.Count; cals.Add(new ProjectCalendar( p, CalendarColors.BaseColors[index].BackgroudColor, CalendarColors.BaseColors[index].TextColor, sharingOptions, true)); } } return(cals); } }