showUnblockUserDialog function
Future<void>
showUnblockUserDialog( - dynamic context,
- dynamic member
)
Implementation
Future<void> showUnblockUserDialog(BuildContext context, Member member) async {
final userId = member.userId().toString();
await showDialog(
context: context,
builder: (BuildContext context) {
return AlertDialog(
title: Text(L10n.of(context).unblockTitle(userId)),
content: RichText(
textAlign: TextAlign.left,
text: TextSpan(
text: L10n.of(context).youAreAboutToUnblock(userId),
style: Theme.of(context).textTheme.headlineMedium,
children: <TextSpan>[
TextSpan(
text: L10n.of(context).thisWillAllowThemToContactYouAgain,
),
TextSpan(text: L10n.of(context).continueQuestion),
],
),
),
actionsAlignment: MainAxisAlignment.spaceEvenly,
actions: <Widget>[
OutlinedButton(
onPressed: () => Navigator.pop(context),
child: Text(L10n.of(context).no),
),
ActerPrimaryActionButton(
onPressed: () async {
EasyLoading.show(status: L10n.of(context).unblockingUserProgress);
try {
await member.unignore();
if (!context.mounted) {
EasyLoading.dismiss();
return;
}
EasyLoading.showToast(L10n.of(context).unblockingUserSuccess);
} catch (e, s) {
_log.severe('Failed to unblock user', e, s);
if (!context.mounted) {
EasyLoading.dismiss();
return;
}
EasyLoading.showError(
L10n.of(context).unblockingUserFailed(e),
duration: const Duration(seconds: 3),
);
}
Navigator.pop(context);
},
child: Text(L10n.of(context).yes),
),
],
);
},
);
}