change placement to text in match detail view
This commit is contained in:
@@ -73,6 +73,7 @@
|
|||||||
"none_group": "Keine",
|
"none_group": "Keine",
|
||||||
"not_available": "Nicht verfügbar",
|
"not_available": "Nicht verfügbar",
|
||||||
"placement": "Platzierung",
|
"placement": "Platzierung",
|
||||||
|
"place": "Platz",
|
||||||
"played_matches": "Gespielte Spiele",
|
"played_matches": "Gespielte Spiele",
|
||||||
"player_name": "Spieler:innenname",
|
"player_name": "Spieler:innenname",
|
||||||
"players": "Spieler:innen",
|
"players": "Spieler:innen",
|
||||||
|
|||||||
@@ -224,6 +224,9 @@
|
|||||||
"@placement": {
|
"@placement": {
|
||||||
"description": "Title for placement ruleset"
|
"description": "Title for placement ruleset"
|
||||||
},
|
},
|
||||||
|
"@place": {
|
||||||
|
"description": "Label for placement text in match detail view"
|
||||||
|
},
|
||||||
"@played_matches": {
|
"@played_matches": {
|
||||||
"description": "Label for played matches statistic"
|
"description": "Label for played matches statistic"
|
||||||
},
|
},
|
||||||
@@ -416,6 +419,7 @@
|
|||||||
"none_group": "None",
|
"none_group": "None",
|
||||||
"not_available": "Not available",
|
"not_available": "Not available",
|
||||||
"placement": "Placement",
|
"placement": "Placement",
|
||||||
|
"place": "place",
|
||||||
"played_matches": "Played Matches",
|
"played_matches": "Played Matches",
|
||||||
"player_name": "Player name",
|
"player_name": "Player name",
|
||||||
"players": "Players",
|
"players": "Players",
|
||||||
|
|||||||
@@ -536,6 +536,12 @@ abstract class AppLocalizations {
|
|||||||
/// **'Placement'**
|
/// **'Placement'**
|
||||||
String get placement;
|
String get placement;
|
||||||
|
|
||||||
|
/// Label for placement text in match detail view
|
||||||
|
///
|
||||||
|
/// In en, this message translates to:
|
||||||
|
/// **'place'**
|
||||||
|
String get place;
|
||||||
|
|
||||||
/// Label for played matches statistic
|
/// Label for played matches statistic
|
||||||
///
|
///
|
||||||
/// In en, this message translates to:
|
/// In en, this message translates to:
|
||||||
|
|||||||
@@ -85,7 +85,7 @@ class AppLocalizationsDe extends AppLocalizations {
|
|||||||
String get delete_match => 'Spiel löschen';
|
String get delete_match => 'Spiel löschen';
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get drag_to_set_placement => 'Drag to set placement';
|
String get drag_to_set_placement => 'Ziehen um Platzierung zu setzen';
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get edit_group => 'Gruppe bearbeiten';
|
String get edit_group => 'Gruppe bearbeiten';
|
||||||
@@ -235,6 +235,9 @@ class AppLocalizationsDe extends AppLocalizations {
|
|||||||
@override
|
@override
|
||||||
String get placement => 'Platzierung';
|
String get placement => 'Platzierung';
|
||||||
|
|
||||||
|
@override
|
||||||
|
String get place => 'Platz';
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get played_matches => 'Gespielte Spiele';
|
String get played_matches => 'Gespielte Spiele';
|
||||||
|
|
||||||
|
|||||||
@@ -235,6 +235,9 @@ class AppLocalizationsEn extends AppLocalizations {
|
|||||||
@override
|
@override
|
||||||
String get placement => 'Placement';
|
String get placement => 'Placement';
|
||||||
|
|
||||||
|
@override
|
||||||
|
String get place => 'place';
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get played_matches => 'Played Matches';
|
String get played_matches => 'Played Matches';
|
||||||
|
|
||||||
|
|||||||
@@ -318,7 +318,7 @@ class _MatchDetailViewState extends State<MatchDetailView> {
|
|||||||
),
|
),
|
||||||
Text(
|
Text(
|
||||||
ruleset == Ruleset.placement
|
ruleset == Ruleset.placement
|
||||||
? '#${i + 1}'
|
? getPlacementText(i + 1, context, loc)
|
||||||
: getPointLabel(loc, playerScores[i].$2),
|
: getPointLabel(loc, playerScores[i].$2),
|
||||||
style: const TextStyle(
|
style: const TextStyle(
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
@@ -337,4 +337,35 @@ class _MatchDetailViewState extends State<MatchDetailView> {
|
|||||||
return match.game.ruleset == Ruleset.singleWinner ||
|
return match.game.ruleset == Ruleset.singleWinner ||
|
||||||
match.game.ruleset == Ruleset.singleLoser;
|
match.game.ruleset == Ruleset.singleLoser;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
String getPlacementText(
|
||||||
|
int rank,
|
||||||
|
BuildContext context,
|
||||||
|
AppLocalizations loc,
|
||||||
|
) {
|
||||||
|
final locale = Localizations.localeOf(context).languageCode;
|
||||||
|
|
||||||
|
if (locale == 'de') {
|
||||||
|
return '$rank. ${loc.place}';
|
||||||
|
}
|
||||||
|
|
||||||
|
return '${_ordinalEn(rank)} ${loc.place}';
|
||||||
|
}
|
||||||
|
|
||||||
|
String _ordinalEn(int number) {
|
||||||
|
if (number % 100 >= 11 && number % 100 <= 13) {
|
||||||
|
return '${number}th';
|
||||||
|
}
|
||||||
|
|
||||||
|
switch (number % 10) {
|
||||||
|
case 1:
|
||||||
|
return '${number}st';
|
||||||
|
case 2:
|
||||||
|
return '${number}nd';
|
||||||
|
case 3:
|
||||||
|
return '${number}rd';
|
||||||
|
default:
|
||||||
|
return '${number}th';
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user