public ActionResult BatchMoveTopics() { var viewModel = new BatchMoveTopicsViewModel { Categories = _categoryService.GetAll().ToList() }; return(View(viewModel)); }
public ActionResult BatchMoveTopics() { var viewModel = new BatchMoveTopicsViewModel { Groups = _groupService.GetAll(LoggedOnReadOnlyUser?.Id) }; return(View(viewModel)); }
public ActionResult BatchMoveTopics(BatchMoveTopicsViewModel viewModel) { using (var unitOfWork = UnitOfWorkManager.NewUnitOfWork()) { try { var categoryFrom = _categoryService.Get((Guid)viewModel.FromCategory); var categoryTo = _categoryService.Get((Guid)viewModel.ToCategory); var topicsToMove = _topicService.GetRssTopicsByCategory(int.MaxValue, categoryFrom.Id); var count = topicsToMove.Count; foreach (var topic in topicsToMove) { topic.Category = categoryTo; } unitOfWork.SaveChanges(); categoryFrom.Topics.Clear(); viewModel.Categories = _categoryService.GetAll().ToList(); unitOfWork.Commit(); TempData[AppConstants.MessageViewBagName] = new GenericMessageViewModel { Message = string.Format("{0} topics moved", count), MessageType = GenericMessages.success }; } catch (Exception ex) { unitOfWork.Rollback(); LoggingService.Error(ex); TempData[AppConstants.MessageViewBagName] = new GenericMessageViewModel { Message = ex.Message, MessageType = GenericMessages.error }; } } return(View(viewModel)); }
public ActionResult BatchMoveTopics(BatchMoveTopicsViewModel viewModel) { try { var categoryFrom = _categoryService.Get((Guid)viewModel.FromCategory); var categoryTo = _categoryService.Get((Guid)viewModel.ToCategory); var topicsToMove = _topicService.GetRssTopicsByCategory(int.MaxValue, categoryFrom.Id); var count = topicsToMove.Count; foreach (var topic in topicsToMove) { topic.Category = categoryTo; } Context.SaveChanges(); categoryFrom.Topics.Clear(); viewModel.Categories = _categoryService.GetAll(); Context.SaveChanges(); TempData[Constants.MessageViewBagName] = new GenericMessageViewModel { Message = $"{count} topics moved", MessageType = GenericMessages.success }; } catch (Exception ex) { Context.RollBack(); LoggingService.Error(ex); TempData[Constants.MessageViewBagName] = new GenericMessageViewModel { Message = ex.Message, MessageType = GenericMessages.danger }; } return(View(viewModel)); }
public ActionResult BatchMoveTopics(BatchMoveTopicsViewModel viewModel) { try { var GroupFrom = _groupService.Get((Guid)viewModel.FromGroup); var GroupTo = _groupService.Get((Guid)viewModel.ToGroup); var topicsToMove = _topicService.GetRssTopicsByGroup(int.MaxValue, GroupFrom.Id); var count = topicsToMove.Count; foreach (var topic in topicsToMove) { topic.Group = GroupTo; } Context.SaveChanges(); GroupFrom.Topics.Clear(); viewModel.Groups = _groupService.GetAll(LoggedOnReadOnlyUser?.Id); Context.SaveChanges(); TempData[Constants.MessageViewBagName] = new GenericMessageViewModel { Message = $"{count} topics moved", MessageType = GenericMessages.success }; } catch (Exception ex) { Context.RollBack(); LoggingService.Error(ex); TempData[Constants.MessageViewBagName] = new GenericMessageViewModel { Message = ex.Message, MessageType = GenericMessages.danger }; } return(View(viewModel)); }