示例#1
0
    public async Task <ActionResult> Create(
        string clubInitials,
        ScoringSystemWithOptionsViewModel model)
    {
        var clubId = await _clubService.GetClubId(clubInitials);

        if (!await _authService.CanUserEdit(User, clubId))
        {
            return(Unauthorized());
        }
        model.ClubId = clubId;
        model.Id     = Guid.NewGuid();
        if (!ModelState.IsValid)
        {
            var potentialParents = await _scoringService.GetScoringSystemsAsync(clubId, true);

            model.ParentSystemOptions = potentialParents.ToList();
            return(View(model));
        }

        await _scoringService.SaveScoringSystemAsync(
            _mapper.Map <ScoringSystem>(model));

        return(RedirectToAction("Edit", "ScoringSystem", new { id = model.Id }));
    }
示例#2
0
    public async Task <ActionResult> Edit(
        string clubInitials,
        ScoringSystemWithOptionsViewModel model)
    {
        var clubId = await _clubService.GetClubId(clubInitials);

        if (!await _authService.CanUserEdit(User, clubId) ||
            model.ClubId != clubId)
        {
            return(Unauthorized());
        }
        if (!ModelState.IsValid)
        {
            var potentialParents = await _scoringService.GetScoringSystemsAsync(clubId, true);

            model.ParentSystemOptions = potentialParents.ToList();

            var scoringSystem = await _scoringService.GetScoringSystemAsync(model.Id);

            model.ScoreCodes          = scoringSystem.ScoreCodes;
            model.InheritedScoreCodes = scoringSystem.InheritedScoreCodes;
            return(View(model));
        }
        var system = _mapper.Map <ScoringSystem>(model);
        await _scoringService.SaveScoringSystemAsync(system);

        return(RedirectToAction("Index", "Admin"));
    }
示例#3
0
    public async Task <ActionResult> Create(
        string clubInitials)
    {
        var clubId = await _clubService.GetClubId(clubInitials);

        if (!await _authService.CanUserEdit(User, clubId))
        {
            return(Unauthorized());
        }
        var vm = new ScoringSystemWithOptionsViewModel
        {
            ClubId         = clubId,
            DiscardPattern = "0"
        };
        var potentialParents = await _scoringService.GetScoringSystemsAsync(clubId, true);

        vm.ParentSystemOptions = potentialParents.ToList();
        return(View(vm));
    }