コード例 #1
0
        public void SendUpdate(LightSpeedRepository repository, StatusUpdateViewModel updatedStatus, int pageId, int projectId, string projectTitle, ProjectStatusUpdateEmail projectStatusUpdateEmail)
        {
            var relationList = _pageService.GetRelationsByPageId(pageId).ToList();
            var emailModels  = new List <EmailProjectStatusUpdateViewModel>();

            var environmentPrefix = string.Empty;

            if (ConfigurationManager.AppSettings.AllKeys.Contains("environment"))
            {
                environmentPrefix = ConfigurationManager.AppSettings["environment"];
                environmentPrefix = $"[{environmentPrefix}] ";
            }

            foreach (var relViewModel in relationList)
            {
                var mod = new EmailProjectStatusUpdateViewModel
                {
                    ProjectName  = projectTitle,
                    ProjectId    = projectId.ToString(),
                    Subject      = $"{environmentPrefix}The status of project [{projectTitle}] has been updated.",
                    Author       = updatedStatus.Author,
                    UpdateDate   = updatedStatus.UpdateDate.ToString("f"),
                    StatusUpdate = updatedStatus.Text
                };

                var user = repository.GetUserById(relViewModel.userId);

                if (user != null)
                {
                    mod.Name      = $"{user.Firstname} {user.Lastname}";
                    mod.ToAddress = user.Email;
                }

                emailModels.Add(mod);
                projectStatusUpdateEmail.Send(mod);
            }
        }
コード例 #2
0
        /// <summary>
        /// Returns the user name
        /// </summary>
        public User GetUser(Guid userid)
        {
            LightSpeedRepository repository = new LightSpeedRepository(GetAppSettings());

            return(repository.GetUserById(userid));
        }