コード例 #1
0
        public IActionResult Create(NewsCreateEditPostViewModel model)
        {
            var creator = userManager.GetUserAsync(HttpContext.User).GetAwaiter().GetResult();

            this.newsService.CreateNews(model, creator);

            return(Redirect("/"));
        }
コード例 #2
0
        public LearningPlusNews EditNews(NewsCreateEditPostViewModel model, LearningPlusUser creator)
        {
            var news = this.GetById(model.Id).SingleOrDefault();
            List <LearningPlusNewsTargetRole> targetRoles = AddTargetRolesToANews(model);

            news.Message     = model.Message;
            news.Creator     = creator;
            news.ExpiresOn   = model.ExpiresOn;
            news.TargetRoles = targetRoles;

            this.newsRepo.SaveChangesAsync().GetAwaiter().GetResult();

            return(news);
        }
コード例 #3
0
        public LearningPlusNews CreateNews(NewsCreateEditPostViewModel model, LearningPlusUser creator)
        {
            List <LearningPlusNewsTargetRole> targetRoles = AddTargetRolesToANews(model);

            var news = new LearningPlusNews
            {
                Message     = model.Message,
                Creator     = creator,
                ExpiresOn   = model.ExpiresOn,
                TargetRoles = targetRoles,
            };

            this.newsRepo.AddAsync(news).GetAwaiter().GetResult();
            this.newsRepo.SaveChangesAsync().GetAwaiter().GetResult();

            return(news);
        }
コード例 #4
0
        private static List <LearningPlusNewsTargetRole> AddTargetRolesToANews(NewsCreateEditPostViewModel model)
        {
            var targetRoles = new List <LearningPlusNewsTargetRole>();

            if (model.RoleAdmin)
            {
                var targetRole = new LearningPlusNewsTargetRole
                {
                    TargetRole = UserRoles.Admin
                };
                targetRoles.Add(targetRole);
            }

            if (model.RoleTeacher)
            {
                var targetRole = new LearningPlusNewsTargetRole
                {
                    TargetRole = UserRoles.Teacher
                };
                targetRoles.Add(targetRole);
            }

            if (model.RoleChildrenParents)
            {
                var targetRole = new LearningPlusNewsTargetRole
                {
                    TargetRole = UserRoles.Parent
                };
                targetRoles.Add(targetRole);

                targetRole = new LearningPlusNewsTargetRole
                {
                    TargetRole = UserRoles.Child
                };
                targetRoles.Add(targetRole);
            }

            return(targetRoles);
        }