Example #1
0
        //
        // GET: /Reminder/List/1
        public ActionResult List(int vehicleId)
        {
            var vehicles = Using <GetVehicleListForUser>()
                           .Execute(CurrentUserId);

            var vehicle = vehicles
                          .First(v => v.VehicleId == vehicleId);

            var reminders = Using <GetUnfulfilledRemindersForVehicle>()
                            .Execute(CurrentUserId, vehicleId, vehicle.Odometer ?? 0);

            var list = reminders
                       .Select(x => new ReminderSummaryModel(x, x.IsOverdue ?? false))
                       .ToList();

            var viewModel = new ReminderDetailsViewModel
            {
                VehicleList = new VehicleListViewModel(vehicles, vehicle.VehicleId)
                {
                    IsCollapsed = true
                },
                Reminder  = ToFormModel(reminders.FirstOrDefault()),
                Reminders = new SelectedItemList <ReminderSummaryModel>(list, Enumerable.FirstOrDefault),
            };

            return(View(viewModel));
        }
Example #2
0
        //
        // GET: /Reminder/Details/1
        public ActionResult Details(int id)
        {
            var reminder = Using <GetReminder>()
                           .Execute(id);

            var vehicles = Using <GetVehicleListForUser>()
                           .Execute(CurrentUserId);

            var vehicle = vehicles.First(v => v.VehicleId == reminder.VehicleId);

            var reminders = Using <GetUnfulfilledRemindersForVehicle>()
                            .Execute(CurrentUserId, reminder.VehicleId, vehicle.Odometer ?? 0)
                            .Select(r => new ReminderSummaryModel(r, r.IsOverdue ?? false));

            var viewModel = new ReminderDetailsViewModel
            {
                VehicleList = new VehicleListViewModel(vehicles, vehicle.VehicleId)
                {
                    IsCollapsed = true
                },
                Reminder  = ToFormModel(reminder),
                Reminders = new SelectedItemList <ReminderSummaryModel>(reminders, x => x.First(item => item.ReminderId == id)),
            };

            return(View(viewModel));
        }
Example #3
0
        public ActionResult Edit(int id)
        {
            var reminderViewModel = new ReminderDetailsViewModel()
            {
                ReminderItem = _reminderRepository.GetReminders().Where(reminder => reminder.Id == id)
                               .Join(
                    _userReminderRelationsRepository.GetUserReminderRelations()
                    .Where(relation => relation.UserId == User.Identity.GetUserId()),
                    reminder => reminder.Id,
                    relation => relation.ReminderId,
                    (reminder, relation) => reminder).FirstOrDefault()
            };

            if (reminderViewModel.ReminderItem != null)
            {
                return(View(reminderViewModel));
            }
            return(RedirectToAction("MyReminders", "Home"));
        }