Exemplo n.º 1
0
        public async Task <ActionResult> ChampionDetail(ChampionDetailQuery query)
        {
            if (!ModelState.IsValid)
            {
                return(new HttpNotFoundResult());
            }

            var realm = await _dataDragon.GetRealm(query.Region).ConfigureAwait(false);

            var individualChampionDto = await _dataDragon.GetIndividualChampion(realm.Cdn, query.Language, query.Version, query.ChampionName).ConfigureAwait(false);

            var champion = _mapper.Map <ChampionModel>(individualChampionDto.Data.Single().Value);

            var model = new ChampionDetailModel
            {
                Title         = champion.Name,
                Subtitle      = champion.Title,
                Champion      = champion,
                DropdownGroup = new DropdownGroupModel
                {
                    Regions   = Region.All(),
                    Languages = Language.All(),
                    Versions  = await _dataDragon.GetVersionsAsync(),
                    Selected  = query
                }
            };

            return(View(model));
        }
Exemplo n.º 2
0
        public async Task <ActionResult> RedirectToChampionDetail(ChampionDetailQuery query)
        {
            if (query.Language != Language.Default.Name)
            {
                return(Redirect($"{query.Region}/{query.Language}/{query.Version}/{query.ChampionName}"));
            }

            var realm = await _dataDragon.GetRealm(query.Region).ConfigureAwait(false);

            return(Redirect($"{query.Region}/{realm.L}/{query.Version}/{query.ChampionName}"));
        }