public IActionResult Create()
        {
            // TODO: Change to error route (flash message?)
            var user = HttpContext.Session?.GetCurrentUser();

            // TODO: Add more checks here
            if (user is null)
            {
                return(RedirectToAction("Index", "Home"));
            }
            var vm = new AnnoucementCreateViewModel();

            return(View(vm));
        }
        public async Task <IActionResult> Create(AnnoucementCreateViewModel vm)
        {
            if (!ModelState.IsValid)
            {
                return(View(vm));
            }
            var announcement = vm.ToAnnouncement();

            announcement.TimeStamp = DateTime.Now;
            announcement.User      = HttpContext.Session.GetCurrentUser();

            await _repo.AddAnnouncmentAsync(announcement);

            return(RedirectToAction("CreateSuccess"));
        }