Example #1
0
        public ActionResult Save(Group group)
        {
            if (!ModelState.IsValid)
            {
                var viewmodel = new GroupFormViewModel
                {
                    group      = group,
                    sourcePage = "Create your own group",
                    AdminId    = group.applicationUserId
                };
                return(View("GroupForm", viewmodel));
            }
            else
            {
                _context.Groups.Add(group);
                _context.SaveChanges();

                var GroupUser = new GroupUsers()
                {
                    applicationUserId = group.applicationUserId,
                    groupId           = group.Id
                };
                _context.GroupUsers.Add(GroupUser);
                _context.SaveChanges();


                return(RedirectToAction("Group", new RouteValueDictionary(
                                            new { controller = "Groups", action = "Group", id = group.Id })));
            }
        }
Example #2
0
        // GET: Admin/Groups/Edit
        public async Task <ActionResult> Edit(int?id)
        {
            if (!id.HasValue)
            {
                return(HttpNotFound());
            }

            GroupFormViewModel viewModel = null;

            try
            {
                var group = await _groupRepository.GetGroupById(id.Value);

                viewModel = new GroupFormViewModel(group)
                {
                    IsNew = false
                };
            }
            catch (BadRequestException bre)
            {
                AddErrorsFromAdycHttpExceptionToModelState(bre, ModelState);
            }

            // Add properties to layout
            AddPageHeader(viewModel.Title, "");

            AddBreadcrumb("Groups", Url.Action("Index", "Groups", new { area = "Admin" }));
            AddBreadcrumb(viewModel.Title, "");

            return(View("GroupForm", viewModel));
        }
Example #3
0
        // GET: Admin/Groups/New
        public ActionResult New()
        {
            var viewModel = new GroupFormViewModel
            {
                IsNew = true
            };

            // Add properties to layout
            AddPageHeader(viewModel.Title, "");

            AddBreadcrumb("Groups", Url.Action("Index", "Groups", new { area = "Admin" }));
            AddBreadcrumb(viewModel.Title, "");

            return(View("GroupForm", viewModel));
        }
Example #4
0
        public ActionResult CreateGroup(string userName)
        {
            if (!(User.IsInRole("CanCreateGroup")))
            {
                return(RedirectToAction("Register", "Account"));
            }


            GroupFormViewModel viewModel = new GroupFormViewModel
            {
                group      = new Group(),
                sourcePage = "Create your own group",
                AdminId    = _context.Users.SingleOrDefault(u => u.UserName == userName).Id
            };

            return(View("GroupForm", viewModel));
        }
Example #5
0
        public async Task <ActionResult> Save(GroupFormViewModel form)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    GroupDto group = (form.IsNew)
                        ? new GroupDto()
                        : await _groupRepository.GetGroupById(form.Id.Value);

                    group.Name = form.Name;

                    if (form.IsNew)
                    {
                        await _groupRepository.PostGroup(group);
                    }
                    else
                    {
                        await _groupRepository.PutGroup(group.Id.Value, group);
                    }

                    AddPageAlerts(ViewHelpers.PageAlertType.Success, "Your changes have been saved succesfully.");

                    return(RedirectToAction("Index"));
                }
                catch (BadRequestException bre)
                {
                    AddErrorsFromAdycHttpExceptionToModelState(bre, ModelState);
                }
            }

            // Add properties to layout
            AddPageHeader(form.Title, "");

            AddBreadcrumb("Groups", Url.Action("Index", "Groups", new { area = "Admin" }));
            AddBreadcrumb(form.Title, "");

            return(View("GroupForm", form));
        }