コード例 #1
0
        public async Task <IActionResult> Create()
        {
            var viewModel = new WorkoutRoutineCreateEditViewModel
            {
                RoutineTypeSelectList = new SelectList(await _bll.RoutineTypes.GetTypeTreeLeafsAsync(),
                                                       nameof(RoutineType.Id), nameof(RoutineType.Name)),
                EstonianTranslation = new WorkoutRoutineTranslation {
                    CultureCode = Culture.Estonian
                },
                EnglishTranslation = new WorkoutRoutineTranslation {
                    CultureCode = Culture.English
                },
                WorkoutRoutine = new WorkoutRoutine {
                    Name = "Placeholder", Description = "Placeholder"
                }
            };

            return(View(viewModel));
        }
コード例 #2
0
        public async Task <IActionResult> Edit(Guid id, WorkoutRoutineCreateEditViewModel viewModel)
        {
            if (!await _bll.WorkoutRoutines.BaseRoutineWithIdExistsAsync(id))
            {
                return(BadRequest());
            }
            if (ModelState.IsValid)
            {
                _bll.WorkoutRoutines.UpdateBaseRoutine(viewModel.WorkoutRoutine);
                _bll.WorkoutRoutines.UpdateTranslation(viewModel.EnglishTranslation, id);
                _bll.WorkoutRoutines.UpdateTranslation(viewModel.EstonianTranslation, id);
                await _bll.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }

            viewModel.RoutineTypeSelectList = new SelectList(await _bll.RoutineTypes.GetTypeTreeLeafsAsync(),
                                                             nameof(RoutineType.Id), nameof(RoutineType.Name));

            return(View(viewModel));
        }
コード例 #3
0
        public async Task <IActionResult> Edit(Guid id)
        {
            if (await _bll.WorkoutRoutines.BaseRoutineWithIdExistsAsync(id))
            {
                var workoutRoutine = await _bll.WorkoutRoutines.FindBaseRoutineAsync(id);

                var translations =
                    (await _bll.WorkoutRoutines.AllTranslationsForWorkoutRoutineWithIdAsync(id)).ToList();
                var viewModel = new WorkoutRoutineCreateEditViewModel
                {
                    EstonianTranslation   = GetTranslation(translations, Culture.Estonian),
                    EnglishTranslation    = GetTranslation(translations, Culture.English),
                    WorkoutRoutine        = workoutRoutine,
                    RoutineTypeSelectList = new SelectList(await _bll.RoutineTypes.GetTypeTreeLeafsAsync(),
                                                           nameof(RoutineType.Id), nameof(RoutineType.Name))
                };
                return(View(viewModel));
            }

            return(NotFound());
        }
コード例 #4
0
        public async Task <IActionResult> Create(WorkoutRoutineCreateEditViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                var workoutRoutineId = Guid.NewGuid();
                ;
                viewModel.WorkoutRoutine.Id = workoutRoutineId;
                await _bll.WorkoutRoutines.AddWithBaseCycleAsync(viewModel.WorkoutRoutine);

                _bll.WorkoutRoutines.AddTranslationToWorkoutRoutine(viewModel.EnglishTranslation, workoutRoutineId);
                _bll.WorkoutRoutines.AddTranslationToWorkoutRoutine(viewModel.EstonianTranslation, workoutRoutineId);
                await _bll.SaveChangesAsync();

                return(RedirectToAction(nameof(Index), "TrainingWeeks", new
                {
                    area = "Admin", id = workoutRoutineId
                }));
            }

            viewModel.RoutineTypeSelectList = new SelectList(await _bll.RoutineTypes.GetTypeTreeLeafsAsync(),
                                                             nameof(RoutineType.Id), nameof(RoutineType.Name));
            return(View(viewModel));
        }