Show error messages
This commit is contained in:
parent
10dff7c86c
commit
d54b37f1f3
|
|
@ -2,12 +2,13 @@ import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_redux/flutter_redux.dart';
|
import 'package:flutter_redux/flutter_redux.dart';
|
||||||
import 'package:invoiceninja_flutter/redux/app/app_actions.dart';
|
import 'package:invoiceninja_flutter/redux/app/app_actions.dart';
|
||||||
import 'package:invoiceninja_flutter/redux/app/app_state.dart';
|
import 'package:invoiceninja_flutter/redux/app/app_state.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/app/buttons/elevated_button.dart';
|
import 'package:invoiceninja_flutter/redux/auth/auth_actions.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/app/responsive_padding.dart';
|
import 'package:invoiceninja_flutter/utils/dialogs.dart';
|
||||||
import 'package:invoiceninja_flutter/utils/localization.dart';
|
import 'package:invoiceninja_flutter/utils/localization.dart';
|
||||||
|
|
||||||
class ErrorDialog extends StatelessWidget {
|
class ErrorDialog extends StatelessWidget {
|
||||||
const ErrorDialog(this.error, {this.clearErrorOnDismiss = false});
|
const ErrorDialog(this.error, {this.clearErrorOnDismiss = false});
|
||||||
|
|
||||||
final Object error;
|
final Object error;
|
||||||
final bool clearErrorOnDismiss;
|
final bool clearErrorOnDismiss;
|
||||||
|
|
||||||
|
|
@ -16,36 +17,28 @@ class ErrorDialog extends StatelessWidget {
|
||||||
final localization = AppLocalization.of(context);
|
final localization = AppLocalization.of(context);
|
||||||
final store = StoreProvider.of<AppState>(context);
|
final store = StoreProvider.of<AppState>(context);
|
||||||
|
|
||||||
return ResponsivePadding(
|
return AlertDialog(
|
||||||
child: Column(
|
title: Text(localization.anErrorOccurred),
|
||||||
children: <Widget>[
|
content: Text(error.toString()),
|
||||||
Material(
|
actions: [
|
||||||
child: Padding(
|
FlatButton(
|
||||||
padding: const EdgeInsets.all(28.0),
|
child: Text(localization.logout.toUpperCase()),
|
||||||
child: Column(
|
onPressed: () {
|
||||||
crossAxisAlignment: CrossAxisAlignment.center,
|
confirmCallback(
|
||||||
children: <Widget>[
|
context: context,
|
||||||
Text(localization.anErrorOccurred,
|
callback: () {
|
||||||
style: Theme.of(context).textTheme.headline6),
|
store.dispatch(UserLogout(context));
|
||||||
SizedBox(height: 20.0),
|
});
|
||||||
Text(error.toString()),
|
}),
|
||||||
SizedBox(height: 40.0),
|
FlatButton(
|
||||||
ElevatedButton(
|
child: Text(localization.dismiss.toUpperCase()),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
if (clearErrorOnDismiss) {
|
if (clearErrorOnDismiss) {
|
||||||
store.dispatch(ClearLastError());
|
store.dispatch(ClearLastError());
|
||||||
}
|
}
|
||||||
Navigator.of(context).pop();
|
Navigator.of(context).pop();
|
||||||
},
|
}),
|
||||||
label: localization.dismiss,
|
|
||||||
),
|
|
||||||
],
|
],
|
||||||
),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
Expanded(child: Container()),
|
|
||||||
],
|
|
||||||
),
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -579,8 +579,8 @@ class SidebarFooter extends StatelessWidget {
|
||||||
onPressed: () => viewPdf(InvoiceEntity(), context),
|
onPressed: () => viewPdf(InvoiceEntity(), context),
|
||||||
),
|
),
|
||||||
*/
|
*/
|
||||||
if (state.lastError.isNotEmpty &&
|
//if (state.lastError.isNotEmpty && (state.isSelfHosted || !kReleaseMode))
|
||||||
(state.isSelfHosted || !kReleaseMode))
|
if (state.lastError.isNotEmpty)
|
||||||
IconButton(
|
IconButton(
|
||||||
icon: Icon(
|
icon: Icon(
|
||||||
Icons.warning,
|
Icons.warning,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue