Ejemplo n.º 1
0
        public ActionResult Add(Activities activities)
        {
            try
            {
                var activity = new Activities()
                {
                    ParentActivityID    = activities.ParentActivityID,
                    ActivityDescription = activities.ActivityDescription,
                    StartDateTime       = activities.StartDateTime,
                    EndDateTime         = activities.EndDateTime
                };

                using (var activitiesDb = new ActivitiesDbCtxt())
                {
                    var parentActivity = activitiesDb.Activities.Find(activity.ParentActivityID);
                    if (parentActivity == null && activities.ActivityID != 0)
                    {
                        return(RedirectToAction("Index"));
                    }
                    activitiesDb.Activities.Add(activity);
                    activitiesDb.SaveChanges();
                }
                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("ParentActivityId", ex.Message);
                return(View("Add", activities));
            }
        }
Ejemplo n.º 2
0
        private SelectList GetCategories(int currentId, out int parentActivityId)
        {
            var dbCtxt         = new ActivitiesDbCtxt();
            var activitiesList = CreateStructure(0, dbCtxt.Activities.ToList());
            var lookingFor     = activitiesList.Select(item => Activities.Find(item, currentId)).FirstOrDefault(activity => activity != null);
            var parent         = activitiesList.Select(item => Activities.Find(item, lookingFor.ParentActivityID)).FirstOrDefault(activity => activity != null);

            if (parent != null)
            {
                parent.ChildActivities.Remove(lookingFor);
            }
            else
            {
                activitiesList.Remove(lookingFor);
            }
            var childList  = GetAllChilds(activitiesList);
            var categories = childList.Select(x => new SelectListItem
            {
                Value = x.ActivityID.ToString(),
                Text  = x.DisplayAsCategory
            });

            var            list = categories.ToList();
            SelectListItem selected;

            if (parent != null)
            {
                selected = (from category in list
                            where category.Value == parent.ActivityID.ToString()
                            select category).First();
            }
            else
            {
                selected = null;
            }

            if (selected != null)
            {
                selected.Selected = true;
                list.Insert(0, new SelectListItem {
                    Value = "0", Text = "No parent category"
                });
                parentActivityId = int.Parse(selected.Value);
            }
            else
            {
                list.Insert(0, new SelectListItem {
                    Value = "0", Text = "No parent category", Selected = true
                });
                parentActivityId = 0;
            }

            return(new SelectList(list, "Value", "Text"));
        }
Ejemplo n.º 3
0
        public ActionResult Details()
        {
            Activities activity;
            var        activityId = int.Parse(RouteData.Values["id"].ToString());

            using (var activitiesDb = new ActivitiesDbCtxt())
            {
                activity = activitiesDb.Activities.Find(activityId);
            }
            return(View(activity));
        }
Ejemplo n.º 4
0
        public ActionResult Index()
        {
            List <Activities> tempList;

            using (var activitiesDb = new ActivitiesDbCtxt())
            {
                tempList = activitiesDb.Activities.ToList();
            }
            var activitiesList = CreateStructure(0, tempList);

            return(View(activitiesList));
        }
Ejemplo n.º 5
0
 public ActionResult DeleteSelected(IEnumerable <int> ids)
 {
     using (var activitiesDb = new ActivitiesDbCtxt())
     {
         foreach (var activity in ids.Select(id => activitiesDb.Activities.Find(id)).Where(activity => activity != null))
         {
             activitiesDb.Activities.Remove(activity);
             activitiesDb.SaveChanges();
         }
     }
     return(RedirectToAction("Index"));
 }
Ejemplo n.º 6
0
        public ActionResult Sort()
        {
            List <Activities> tempList;
            var activityId = int.Parse(RouteData.Values["id"].ToString());
            var sortType   = RouteData.Values["sort"].ToString();

            using (var activitiesDb = new ActivitiesDbCtxt())
            {
                tempList = activitiesDb.Activities.ToList();
            }
            var activitiesList = CreateStructure(0, tempList);

            return(View(sortType == "asc" ? GetSortedList(activityId, activitiesList, SortType.Ascending) : GetSortedList(activityId, activitiesList, SortType.Descending)));
        }
Ejemplo n.º 7
0
        public ActionResult Edit()
        {
            var activityId    = int.Parse(RouteData.Values["id"].ToString());
            var editViewModel = new EditViewModel();

            using (var activitiesDb = new ActivitiesDbCtxt())
            {
                int parentActivityId;
                editViewModel.Categories = GetCategories(activityId, out parentActivityId);
                editViewModel.Activity   = activitiesDb.Activities.Find(activityId);
                editViewModel.SelectedParentActivityId = parentActivityId;
                return(View(editViewModel));
            }
        }
Ejemplo n.º 8
0
        public ActionResult Edit(EditViewModel editViewModel)
        {
            if (ModelState.IsValid)
            {
                using (var activitiesDb = new ActivitiesDbCtxt())
                {
                    var activity = editViewModel.Activity;
                    activity.ParentActivityID          = editViewModel.SelectedParentActivityId;
                    activitiesDb.Entry(activity).State = EntityState.Modified;;
                    activitiesDb.SaveChanges();
                }
            }

            return(RedirectToAction("Index"));
        }
Ejemplo n.º 9
0
        public ActionResult Add()
        {
            var    activityId = int.Parse(RouteData.Values["id"].ToString());
            string parentActivityDescription;

            using (var activitiesDb = new ActivitiesDbCtxt())
            {
                var parentActivity = activitiesDb.Activities.Find(activityId);
                parentActivityDescription = parentActivity?.ActivityDescription ?? "No parent activity";
            }

            ViewBag.ParentActivity            = activityId;
            ViewBag.ParentActivityDescription = parentActivityDescription;

            return(View());
        }
Ejemplo n.º 10
0
        public ActionResult Delete()
        {
            var activityId = int.Parse(RouteData.Values["id"].ToString());

            using (var activitiesDb = new ActivitiesDbCtxt())
            {
                var activity = activitiesDb.Activities.Find(activityId);

                if (activity == null)
                {
                    return(HttpNotFound());
                }
                activitiesDb.Activities.Remove(activity);
                activitiesDb.SaveChanges();
            }
            return(RedirectToAction("Index"));
        }