Files
checker/lib/purchase_success.dart

67 lines
1.9 KiB
Dart

import 'package:flutter/material.dart';
import 'package:checker/common.dart';
import 'package:checker/consts.dart';
import 'package:checker/strings.dart';
import 'package:checker/base_state.dart';
/// Экран проведения покупки.
class PurchaseSuccessScreen extends StatefulWidget {
PurchaseSuccessScreen(this.val, this.name);
final String val;
final String name;
@override State createState() => new PurchaseSuccessScreenState(val, name);
}
class PurchaseSuccessScreenState<T> extends BaseState<PurchaseSuccessScreen> {
PurchaseSuccessScreenState(this.sum, this.username);
String sum;
String username;
@override getMenuButtons() {
return <Widget>[getFaqButton(), getLogoutButton()];
}
@override String getTitle() {
return StringsLocalization.carryingPurchase();
}
@override String getHint() {
return null;
}
@override Widget getScreenContent() {
return new Column(children: <Widget>[
getValueWithDescription(StringsLocalization.buyer(), username),
getSuccessMessage(),
new Expanded(child: new Center()),
wrapButton(getScreenMargins(74.0), getScanButton())
]);
}
getScreenMargins(double bottom) {
double side = 42.0;
return new EdgeInsets.only(bottom: bottom, left: side, right: side);
}
getScanButton() {
String title = StringsLocalization.scan();
return buildRaisedButton(title, () => startScanner(context, app));
}
getSuccessMessage() {
return new Row(children: <Widget>[new Expanded(child: new Container(margin: new EdgeInsets.only(top: 20.0), height: 64.0,
decoration: new BoxDecoration(color: greenBackground),
child: new Center(child: new Text(getMessageTitle(), textAlign: TextAlign.center,
style: new TextStyle(fontWeight: FontWeight.bold, color: tokenActiveTextColor)))))]);
}
getMessageTitle() {
return StringsLocalization.purchaseCompleted(sum);
}
}