add pinlogin_page and prepare profile
This commit is contained in:
@@ -13,6 +13,7 @@ import 'package:fcs/pages/widgets/defalut_delivery_address.dart';
|
||||
import 'package:fcs/pages/widgets/display_text.dart';
|
||||
import 'package:fcs/pages/widgets/fcs_id_icon.dart';
|
||||
import 'package:fcs/pages/widgets/local_app_bar.dart';
|
||||
import 'package:fcs/pages/widgets/local_text.dart';
|
||||
import 'package:fcs/pages/widgets/progress.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
@@ -62,9 +63,11 @@ class _ProfileState extends State<Profile> {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
MainModel mainModel = Provider.of<MainModel>(context);
|
||||
LanguageModel languageModel = Provider.of<LanguageModel>(context);
|
||||
if (mainModel.user == null) {
|
||||
return Container();
|
||||
}
|
||||
buildLanguage(languageModel);
|
||||
DeliveryAddressModel deliveryAddressModel =
|
||||
Provider.of<DeliveryAddressModel>(context);
|
||||
|
||||
@@ -172,6 +175,12 @@ class _ProfileState extends State<Profile> {
|
||||
builder: (context) => DeliveryAddressList()));
|
||||
},
|
||||
),
|
||||
buildLanguageWidget(
|
||||
context: context,
|
||||
text: "profile.language",
|
||||
iconData: Icons.language,
|
||||
isEng: languageModel.isEng,
|
||||
),
|
||||
getPrivilegeBox(context),
|
||||
SizedBox(height: 15),
|
||||
logoutbutton,
|
||||
@@ -183,6 +192,69 @@ class _ProfileState extends State<Profile> {
|
||||
);
|
||||
}
|
||||
|
||||
Widget buildLanguageWidget(
|
||||
{required String text,
|
||||
required BuildContext context,
|
||||
IconData? iconData,
|
||||
required bool isEng}) {
|
||||
return Row(
|
||||
children: <Widget>[
|
||||
Icon(iconData, color: primaryColor),
|
||||
const SizedBox(width: 15),
|
||||
Expanded(
|
||||
child: LocalText(
|
||||
context,
|
||||
text,
|
||||
fontSize: 15.0,
|
||||
color: Colors.black54,
|
||||
),
|
||||
),
|
||||
Row(
|
||||
children: [
|
||||
isEng
|
||||
? Image.asset(
|
||||
'icons/flags/png/us.png',
|
||||
package: 'country_icons',
|
||||
fit: BoxFit.fitWidth,
|
||||
width: 25,
|
||||
)
|
||||
: Image.asset(
|
||||
'icons/flags/png/mm.png',
|
||||
package: 'country_icons',
|
||||
fit: BoxFit.fitWidth,
|
||||
width: 25,
|
||||
),
|
||||
Container(
|
||||
width: 100,
|
||||
padding: const EdgeInsets.only(left: 15),
|
||||
child: DropdownButton(
|
||||
value: selectedLanguage,
|
||||
underline: const SizedBox(),
|
||||
isExpanded: true,
|
||||
items: languagesList
|
||||
.map<DropdownMenuItem<String>>((String value) {
|
||||
return DropdownMenuItem<String>(
|
||||
value: value,
|
||||
child: Text(
|
||||
value,
|
||||
style: const TextStyle(fontSize: 14),
|
||||
));
|
||||
}).toList(),
|
||||
onChanged: _selectedDropdown)),
|
||||
],
|
||||
)
|
||||
],
|
||||
);
|
||||
}
|
||||
|
||||
_selectedDropdown(selected) {
|
||||
var languageModel = Provider.of<LanguageModel>(context, listen: false);
|
||||
languageModel.saveLanguage(selected);
|
||||
setState(() {
|
||||
selectedLanguage = selected;
|
||||
});
|
||||
}
|
||||
|
||||
Widget getPrivilegeBox(BuildContext context) {
|
||||
User? user = Provider.of<MainModel>(context, listen: false).user;
|
||||
List<Privilege> _privileges =
|
||||
|
||||
Reference in New Issue
Block a user