From df0f290c41777b3e4b40e4173756b58a90461921 Mon Sep 17 00:00:00 2001 From: ggurdin Date: Mon, 8 Jul 2024 16:33:50 -0400 Subject: [PATCH] Change copy in chat permissions page away from using numbers --- .../permission_list_tile.dart | 17 +++++++++++++---- .../client_extension/client_extension.dart | 4 ++++ .../general_info_extension.dart | 6 ++++++ 3 files changed, 23 insertions(+), 4 deletions(-) diff --git a/lib/pages/chat_permissions_settings/permission_list_tile.dart b/lib/pages/chat_permissions_settings/permission_list_tile.dart index af447cbec..04a2d3a60 100644 --- a/lib/pages/chat_permissions_settings/permission_list_tile.dart +++ b/lib/pages/chat_permissions_settings/permission_list_tile.dart @@ -1,10 +1,10 @@ +import 'package:fluffychat/config/app_config.dart'; +import 'package:fluffychat/pangea/extensions/client_extension/client_extension.dart'; +import 'package:fluffychat/widgets/matrix.dart'; import 'package:flutter/material.dart'; - import 'package:flutter_gen/gen_l10n/l10n.dart'; import 'package:matrix/matrix.dart'; -import 'package:fluffychat/config/app_config.dart'; - class PermissionsListTile extends StatelessWidget { final String permissionKey; final int permission; @@ -72,7 +72,16 @@ class PermissionsListTile extends StatelessWidget { return ListTile( title: Text(getLocalizedPowerLevelString(context)), subtitle: Text( - L10n.of(context)!.minimumPowerLevel(permission.toString()), + // #Pangea + // L10n.of(context)!.minimumPowerLevel(permission.toString()), + L10n.of(context)!.minimumPowerLevel( + Matrix.of(context).client.powerLevelName( + permission, + L10n.of(context)!, + ) ?? + permission.toString(), + ), + // Pangea# ), trailing: Material( borderRadius: BorderRadius.circular(AppConfig.borderRadius / 2), diff --git a/lib/pangea/extensions/client_extension/client_extension.dart b/lib/pangea/extensions/client_extension/client_extension.dart index 3dda99237..addcfd0ed 100644 --- a/lib/pangea/extensions/client_extension/client_extension.dart +++ b/lib/pangea/extensions/client_extension/client_extension.dart @@ -10,6 +10,7 @@ import 'package:fluffychat/pangea/models/space_model.dart'; import 'package:fluffychat/pangea/utils/bot_name.dart'; import 'package:fluffychat/pangea/utils/error_handler.dart'; import 'package:flutter/foundation.dart'; +import 'package:flutter_gen/gen_l10n/l10n.dart'; import 'package:matrix/matrix.dart'; part "client_analytics_extension.dart"; @@ -76,4 +77,7 @@ extension PangeaClient on Client { String eventId, ) async => await _getEditHistory(roomId, eventId); + + String? powerLevelName(int powerLevel, L10n l10n) => + _powerLevelName(powerLevel, l10n); } diff --git a/lib/pangea/extensions/client_extension/general_info_extension.dart b/lib/pangea/extensions/client_extension/general_info_extension.dart index 26b87b533..aada940d7 100644 --- a/lib/pangea/extensions/client_extension/general_info_extension.dart +++ b/lib/pangea/extensions/client_extension/general_info_extension.dart @@ -72,4 +72,10 @@ extension GeneralInfoClientExtension on Client { editEvents.add(originalEvent); return editEvents.slice(1).map((e) => e.eventId).toList(); } + + String? _powerLevelName(int powerLevel, L10n l10n) => { + 0: l10n.user, + 50: l10n.moderator, + 100: l10n.admin, + }[powerLevel]; }