fatima
tall3at 4 years ago
parent 4aabf58541
commit 1eb4ad1db9

@ -1,4 +1,5 @@
import 'package:car_customer_app/pages/dashboard/dashboard_page.dart';
import 'package:car_customer_app/pages/user/complete_profile_page.dart';
import 'package:car_customer_app/pages/user/forget_password_page.dart';
import 'package:car_customer_app/pages/user/login_verification_page.dart';
import 'package:car_customer_app/pages/user/login_verify_account_page.dart';
@ -16,6 +17,7 @@ class AppRoutes {
static final String forgetPassword = "/forgetPassword";
static final String loginVerification = "/loginVerification";
static final String dashboard = "/dashboard";
static final String completeProfile = "/completeProfile";
@ -30,5 +32,6 @@ class AppRoutes {
forgetPassword: (context) => ForgetPasswordPage(),
loginVerification: (context) => LoginVerificationPage(),
dashboard: (context) => DashboardPage(),
completeProfile: (context) => CompleteProfilePage(),
};
}

@ -0,0 +1,67 @@
import 'package:car_customer_app/utils/utils.dart';
import 'package:car_customer_app/widgets/app_bar.dart';
import 'package:car_customer_app/widgets/show_fill_button.dart';
import 'package:car_customer_app/widgets/txt.dart';
import 'package:car_customer_app/widgets/txt_field.dart';
import 'package:flutter/material.dart';
class CompleteProfilePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: appBar(title: "Sign Up"),
body: Container(
width: double.infinity,
height: double.infinity,
child: SingleChildScrollView(
child: Padding(
padding: EdgeInsets.all(40),
child: Column(
children: [
Txt(
"Complete Profile",
txtType: TxtType.heading3,
),
mHeight(12),
TxtField(
hint: "First Name",
),
mHeight(12),
TxtField(
hint: "Surname",
),
mHeight(12),
TxtField(
hint: "Email",
),
mHeight(12),
TxtField(
hint: "Create Password",
),
mHeight(12),
TxtField(
hint: "Confirm Password",
),
mHeight(12),
TxtField(
hint: "Phone Number",
),
mHeight(50),
Txt(
"By creating an account you agree to our Terms of Service and Privacy Policy",
textAlign: TextAlign.center,
),
mHeight(16),
ShowFillButton(
title: "Continue",
width: double.infinity,
onPressed: () {},
),
],
),
),
),
),
);
}
}

@ -1,5 +1,7 @@
import 'package:car_customer_app/utils/utils.dart';
import 'package:car_customer_app/widgets/app_bar.dart';
import 'package:car_customer_app/widgets/dialog/dialogs.dart';
import 'package:car_customer_app/widgets/dialog/message_dialog.dart';
import 'package:car_customer_app/widgets/show_fill_button.dart';
import 'package:car_customer_app/widgets/txt.dart';
import 'package:car_customer_app/widgets/txt_field.dart';
@ -31,7 +33,14 @@ class ForgetPasswordPage extends StatelessWidget {
ShowFillButton(
title: "Continue",
width: double.infinity,
onPressed: () {},
onPressed: () {
showMDialog(
context,
child: MessageDialog(
title: "New Password sent used",
),
);
},
),
],
),

@ -4,6 +4,8 @@ import 'package:car_customer_app/utils/navigator.dart';
import 'package:car_customer_app/utils/utils.dart';
import 'package:car_customer_app/widgets/app_bar.dart';
import 'package:car_customer_app/widgets/button/show_image_button.dart';
import 'package:car_customer_app/widgets/dialog/dialogs.dart';
import 'package:car_customer_app/widgets/dialog/message_dialog.dart';
import 'package:car_customer_app/widgets/txt.dart';
import 'package:car_customer_app/widgets/txt_field.dart';
import 'package:flutter/material.dart';
@ -29,7 +31,16 @@ class LoginVerificationPage extends StatelessWidget {
Expanded(
child: ShowImageButton(
onClick: () {
navigateWithName(context, AppRoutes.dashboard);
showMDialog(
context,
child: MessageDialog(
title: "Account Verified",
onClick: () {
pop(context);
navigateWithName(context, AppRoutes.dashboard);
},
),
);
},
title: 'Finger Print',
icon: icons + "ic_fingerprint.png",

@ -1,7 +1,12 @@
import 'package:car_customer_app/config/constants.dart';
import 'package:car_customer_app/config/routes.dart';
import 'package:car_customer_app/utils/navigator.dart';
import 'package:car_customer_app/utils/utils.dart';
import 'package:car_customer_app/widgets/app_bar.dart';
import 'package:car_customer_app/widgets/button/show_image_button.dart';
import 'package:car_customer_app/widgets/dialog/dialogs.dart';
import 'package:car_customer_app/widgets/dialog/message_dialog.dart';
import 'package:car_customer_app/widgets/dialog/otp_dialog.dart';
import 'package:car_customer_app/widgets/txt.dart';
import 'package:car_customer_app/widgets/txt_field.dart';
import 'package:flutter/material.dart';
@ -30,7 +35,24 @@ class LoginVerifyAccountPage extends StatelessWidget {
children: [
Expanded(
child: ShowImageButton(
onClick: () {},
onClick: () {
showMDialog(context, child: OtpDialog(
onClick: () {
pop(context);
delay(300).then(
(value) => showMDialog(
context,
child: MessageDialog(
title: "Phone Number Verified",
onClick: () {
navigateWithName(context, AppRoutes.completeProfile);
},
),
),
);
},
));
},
title: 'With SMS',
icon: icons + "ic_sms.png",
),
@ -38,7 +60,24 @@ class LoginVerifyAccountPage extends StatelessWidget {
mWidth(20),
Expanded(
child: ShowImageButton(
onClick: () {},
onClick: () {
showMDialog(context, child: OtpDialog(
onClick: () {
pop(context);
delay(300).then(
(value) => showMDialog(
context,
child: MessageDialog(
title: "Phone Number Verified",
onClick: () {
navigateWithName(context, AppRoutes.completeProfile);
},
),
),
);
},
));
},
title: 'With Whatsapp',
icon: icons + "ic_whatsapp.png",
),

@ -0,0 +1,16 @@
import 'package:flutter/material.dart';
void showMDialog(
context, {
Widget? child,
}) async {
return showDialog(
context: context,
barrierDismissible: true,
builder: (context) {
return Dialog(
child: child,
);
},
);
}

@ -0,0 +1,38 @@
import 'package:car_customer_app/theme/colors.dart';
import 'package:car_customer_app/utils/navigator.dart';
import 'package:car_customer_app/utils/utils.dart';
import 'package:car_customer_app/widgets/show_fill_button.dart';
import 'package:car_customer_app/widgets/txt.dart';
import 'package:flutter/material.dart';
class MessageDialog extends StatelessWidget {
String? title, buttonTitle;
VoidCallback? onClick;
MessageDialog({this.title, this.buttonTitle,this.onClick});
@override
Widget build(BuildContext context) {
return Container(
color: Colors.white,
padding: EdgeInsets.all(30),
child: Column(
mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Txt(
title ?? "message",
txtType: TxtType.heading3,
),
mHeight(40),
ShowFillButton(
title: buttonTitle ?? "Continue",
width: double.infinity,
onPressed: () {
onClick!();
},
)
],
),
);
}
}

@ -0,0 +1,74 @@
import 'package:car_customer_app/theme/colors.dart';
import 'package:car_customer_app/utils/navigator.dart';
import 'package:car_customer_app/utils/utils.dart';
import 'package:car_customer_app/widgets/show_fill_button.dart';
import 'package:car_customer_app/widgets/txt.dart';
import 'package:flutter/material.dart';
class OtpDialog extends StatelessWidget {
VoidCallback onClick;
OtpDialog({required this.onClick});
@override
Widget build(BuildContext context) {
return Container(
color: Colors.white,
padding: EdgeInsets.all(30),
child: Column(
mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Txt(
"Please insert OTP Code",
txtType: TxtType.heading3,
),
mHeight(20),
Row(
children: [
Expanded(
child: Container(
width: double.infinity,
height: 60,
color: accentColor.withOpacity(0.3),
),
),
mWidth(12),
Expanded(
child: Container(
width: double.infinity,
height: 60,
color: accentColor.withOpacity(0.3),
),
),
mWidth(12),
Expanded(
child: Container(
width: double.infinity,
height: 60,
color: accentColor.withOpacity(0.3),
),
),
mWidth(12),
Expanded(
child: Container(
width: double.infinity,
height: 60,
color: accentColor.withOpacity(0.3),
),
),
],
),
mHeight(40),
ShowFillButton(
title: "Check Code",
width: double.infinity,
onPressed: () {
onClick();
},
)
],
),
);
}
}
Loading…
Cancel
Save