chore: request language optimised

This commit is contained in:
Mikhail Shabanov committed 2021-05-15 19:47:48 +02:00
1 parent 4b5b12e87d
commit 68faee2d23
8 files changed
+45 -15

No files matched your search

@@ -32,7 +32,7 @@ namespace WotBlitzStatisticsPro.Blazor.Pages
public List<SearchItem> FilteredList { get; set; } = new();
//public RealmType CurrentRealmType { get; set; } = RealmType.Eu;
public RealmType CurrentRealmType { get; set; } = RealmType.Eu;
public long CurrentValue { get; set; }
@@ -40,7 +40,6 @@ namespace WotBlitzStatisticsPro.Blazor.Pages
public async Task OnSearchTextChange(string value)
{
var env = Environment.GetEnvironmentVariable("USE_GRAPH_QL_MOCK");
if (DialogType == DialogType.FindPlayer && value.Length < 3)
{
return;
@@ -52,7 +51,7 @@ namespace WotBlitzStatisticsPro.Blazor.Pages
// ToDo: Move this call to a service
var accounts =
await GraphQlBackendService.FindPlayers(value, RealmType.Ru, RequestLanguage.En);
await GraphQlBackendService.FindPlayers(value, CurrentRealmType);
if (accounts != null)
{
@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Threading.Tasks;
using Bogus;
using Bogus.Extensions;
@@ -9,11 +10,11 @@ namespace WotBlitzStatisticsPro.Blazor.Services
{
public class GraphQlBackendMockService: IGraphQlBackendService
{
public async Task<IReadOnlyList<IFindPlayers_Players>?> FindPlayers(string accountNick, RealmType realmType, RequestLanguage language)
public async Task<IReadOnlyList<IFindPlayers_Players>?> FindPlayers(string accountNick, RealmType realmType)
{
var result = new List<IFindPlayers_Players>();
var faker = new Faker(FakerLanguage(language));
var faker = new Faker(FakerLanguage(GetLanguage()));
var random = faker.Random.Number(10, 80);
for (int i = 0; i < random; i++)
@@ -32,11 +33,11 @@ namespace WotBlitzStatisticsPro.Blazor.Services
return result;
}
public async Task<IReadOnlyList<IFindClans_Clans>?> FindClans(string clanNameOrTag, RealmType realmType, RequestLanguage language)
public async Task<IReadOnlyList<IFindClans_Clans>?> FindClans(string clanNameOrTag, RealmType realmType)
{
var result = new List<IFindClans_Clans>();
var faker = new Faker(FakerLanguage(language));
var faker = new Faker(FakerLanguage(GetLanguage()));
var random = faker.Random.Number(10, 80);
for (int i = 0; i < random; i++)
@@ -67,5 +68,20 @@ namespace WotBlitzStatisticsPro.Blazor.Services
return "en";
}
}
private RequestLanguage GetLanguage()
{
var culture = CultureInfo.CurrentCulture;
switch (culture.Name)
{
case "ru-RU":
return RequestLanguage.Ru;
case "de-DE":
return RequestLanguage.De;
default:
return RequestLanguage.En;
}
}
}
}
@@ -1,4 +1,5 @@
using System.Collections.Generic;
using System.Globalization;
using System.Threading.Tasks;
using WotBlitzStatisticsPro.Blazor.GraphQl;
@@ -13,20 +14,36 @@ namespace WotBlitzStatisticsPro.Blazor.Services
_client = client;
}
public async Task<IReadOnlyList<IFindPlayers_Players>?> FindPlayers(string accountNick, RealmType realmType, RequestLanguage language)
public async Task<IReadOnlyList<IFindPlayers_Players>?> FindPlayers(string accountNick, RealmType realmType)
{
var accounts =
await _client.FindPlayers.ExecuteAsync(accountNick, RealmType.Ru, RequestLanguage.En);
await _client.FindPlayers.ExecuteAsync(accountNick, realmType, GetLanguage());
return accounts.Data?.Players;
}
public async Task<IReadOnlyList<IFindClans_Clans>?> FindClans(string clanNameOrTag, RealmType realmType, RequestLanguage language)
public async Task<IReadOnlyList<IFindClans_Clans>?> FindClans(string clanNameOrTag, RealmType realmType)
{
var clans =
await _client.FindClans.ExecuteAsync(clanNameOrTag, RealmType.Ru, RequestLanguage.En);
await _client.FindClans.ExecuteAsync(clanNameOrTag, realmType, GetLanguage());
return clans.Data?.Clans;
}
private RequestLanguage GetLanguage()
{
var culture = CultureInfo.CurrentCulture;
switch (culture.Name)
{
case "ru-RU":
return RequestLanguage.Ru;
case "de-DE":
return RequestLanguage.De;
default:
return RequestLanguage.En;
}
}
}
}
@@ -8,12 +8,10 @@ namespace WotBlitzStatisticsPro.Blazor.Services
{
Task<IReadOnlyList<IFindPlayers_Players>?> FindPlayers(
string accountNick,
RealmType realmType,
RequestLanguage language);
RealmType realmType);
Task<IReadOnlyList<IFindClans_Clans>?> FindClans(
string clanNameOrTag,
RealmType realmType,
RequestLanguage language);
RealmType realmType);
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 977 B