From 13533727433e3f17e40f1e3e918df5df144fa54b Mon Sep 17 00:00:00 2001 From: Felix Date: Tue, 16 Jul 2019 12:14:47 +0100 Subject: [PATCH] nothing more to do..? i believe that the app is finished. ta-da! --- lib/pages/receipt_page.dart | 59 +++++++++++++++++++++++++------------ 1 file changed, 40 insertions(+), 19 deletions(-) diff --git a/lib/pages/receipt_page.dart b/lib/pages/receipt_page.dart index fb56640..86b173c 100644 --- a/lib/pages/receipt_page.dart +++ b/lib/pages/receipt_page.dart @@ -75,42 +75,62 @@ class ReceiptPageState extends State { void submitReceipt(String amount, String time, Organisation organisation) async { SystemChannels.textInput.invokeMethod('TextInput.hide'); - if (demonstration) - { + if (amount == "" || time == "" || organisation == null) { await showDialog( context: context, builder: (BuildContext context) { // return object of type Dialog return AlertDialog( - title: new Text("Success"), - content: new Text("Receipt successfully submitted."), + title: new Text("Invalid data"), + content: new Text( + "We couldn't process your request because one or more required fields are missing."), actions: [ - // usually buttons at the bottom of the dialog new FlatButton( child: new Text("OK"), onPressed: () { Navigator.of(context).pop(); - Navigator.of(context).pushReplacementNamed('/HomePage'); - //TODO: Reset form after dialog exit }, ), ], ); }, - ).then((_) { - }); + ); } else { - Receipt receipt = new Receipt(); + if (demonstration) { + await showDialog( + context: context, + builder: (BuildContext context) { + // return object of type Dialog + return AlertDialog( + title: new Text("Success"), + content: new Text("Receipt successfully submitted."), + actions: [ + // usually buttons at the bottom of the dialog + new FlatButton( + child: new Text("OK"), + onPressed: () { + Navigator.of(context).pop(); + Navigator.of(context).pushReplacementNamed('/HomePage'); + }, + ), + ], + ); + }, + ).then((_) {}); + } - // setting up 'receipt' - receipt.amount = amount; - receipt.time = formatDate(time); + else { + Receipt receipt = new Receipt(); + + // setting up 'receipt' + receipt.amount = amount; + receipt.time = formatDate(time); // debugPrint(organisation.name + ", " + organisation.streetName + ", " + organisation.town + ", " + organisation.postcode); - receipt.organisationName = organisation.name; - receipt.street = organisation.streetName; - receipt.town = organisation.town; - receipt.postcode = organisation.postcode; + receipt.organisationName = organisation.name; + receipt.street = organisation.streetName; + receipt.town = organisation.town; + receipt.postcode = organisation.postcode; // receipt.essential = convertBoolToString(toConvert) @@ -119,8 +139,9 @@ class ReceiptPageState extends State { // receipt.category = category; // receipt.etc = etc; - submitReceiptAPI(context, receipt); - Navigator.of(context).pushReplacementNamed('/HomePage'); + submitReceiptAPI(context, receipt); + Navigator.of(context).pushReplacementNamed('/HomePage'); + } } }