import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';

import '../advance_payment_page.dart';

class SelectBeneficiaryDialog extends StatefulWidget {
  final BeneficiaryType beneficiaryType;
  final Function(BeneficiaryType) onValueSelected;

  SelectBeneficiaryDialog(
      {Key key, this.beneficiaryType, this.onValueSelected});

  @override
  _SelectBeneficiaryDialogState createState() =>
      _SelectBeneficiaryDialogState(this.beneficiaryType);
}

class _SelectBeneficiaryDialogState extends State<SelectBeneficiaryDialog> {
  _SelectBeneficiaryDialogState(this.beneficiaryType);

  BeneficiaryType beneficiaryType;

  @override
  Widget build(BuildContext context) {
    return SimpleDialog(
      children: [
        Container(
          child: Column(
            children: [
              Divider(),
              Row(
                children: <Widget>[
                  Expanded(
                    flex: 1,
                    child: InkWell(
                      onTap: () {
                        setState(() {
                          beneficiaryType = BeneficiaryType.MyAccount;
                        });
                      },
                      child: ListTile(
                        title: Text(TranslationBase.of(context).myAccount),
                        leading: Radio(
                          value: BeneficiaryType.MyAccount,
                          groupValue: beneficiaryType,
                          activeColor: Colors.red[800],
                          onChanged: (BeneficiaryType value) {
                            setState(() {
                              beneficiaryType = value;
                            });
                          },
                        ),
                      ),
                    ),
                  )
                ],
              ),
              SizedBox(
                height: 5.0,
              ),
              Row(
                children: <Widget>[
                  Expanded(
                    flex: 1,
                    child: InkWell(
                      onTap: () {
                        setState(() {
                          beneficiaryType = BeneficiaryType.MyFamilyFiles;
                        });
                      },
                      child: ListTile(
                        title: Text(TranslationBase.of(context).myFamilyFiles),
                        leading: Radio(
                          value: BeneficiaryType.MyFamilyFiles,
                          groupValue: beneficiaryType,
                          activeColor: Colors.red[800],
                          onChanged: (BeneficiaryType value) {
                            setState(() {
                              beneficiaryType = value;
                            });
                          },
                        ),
                      ),
                    ),
                  )
                ],
              ),
              SizedBox(
                height: 5.0,
              ),
              Row(
                children: <Widget>[
                  Expanded(
                    flex: 1,
                    child: InkWell(
                      onTap: () {
                        setState(() {
                          beneficiaryType = BeneficiaryType.OtherAccount;
                        });
                      },
                      child: ListTile(
                        title:  Text(TranslationBase.of(context).otherAccount),
                        leading: Radio(
                          value: BeneficiaryType.OtherAccount,
                          groupValue: beneficiaryType,
                          activeColor: Colors.red[800],
                          onChanged: (BeneficiaryType value) {
                            setState(() {
                              beneficiaryType = value;
                            });
                          },
                        ),
                      ),
                    ),
                  )
                ],
              ),
              SizedBox(
                height: 5.0,
              ),
              Row(
                // mainAxisAlignment: MainAxisAlignment.spaceBetween,
                children: <Widget>[
                  Expanded(
                    flex: 1,
                    child: InkWell(
                      onTap: () {
                        Navigator.pop(context);
                      },
                      child: Padding(
                        padding: const EdgeInsets.all(8.0),
                        child: Container(
                          child: Center(
                            child: Texts(
                              TranslationBase.of(context).cancel.toUpperCase(),
                              color: Colors.red,
                            ),
                          ),
                        ),
                      ),
                    ),
                  ),
                  Container(
                    width: 1,
                    height: 30,
                    color: Colors.grey[500],
                  ),
                  Expanded(
                    flex: 1,
                    child: InkWell(
                      onTap: () {
                        widget.onValueSelected(beneficiaryType);
                        Navigator.pop(context);
                      },
                      child: Padding(
                        padding: const EdgeInsets.all(8.0),
                        child: Center(
                          child: Texts(
                            TranslationBase.of(context).ok,
                            fontWeight: FontWeight.w400,
                          ),
                        ),
                      ),
                    ),
                  ),
                ],
              )
            ],
          ),
        )
      ],
    );
  }
}
