Files
tripz/lib/views/auth/sms_verfy_page.dart
Hamza-Ayed 6aeb091719 9/10/1
2024-09-10 03:10:04 +03:00

129 lines
4.9 KiB
Dart

import 'package:SEFER/constant/style.dart';
import 'package:SEFER/controller/auth/register_controller.dart';
import 'package:SEFER/views/widgets/elevated_btn.dart';
import 'package:SEFER/views/widgets/my_scafold.dart';
import 'package:SEFER/views/widgets/my_textField.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
class SmsSignupEgypt extends StatelessWidget {
SmsSignupEgypt({super.key});
@override
Widget build(BuildContext context) {
Get.put(RegisterController());
return MyScafolld(
title: 'Phone Check'.tr,
body: [
GetBuilder<RegisterController>(builder: (registerController) {
return ListView(
children: [
// Logo at the top
Padding(
padding: const EdgeInsets.only(bottom: 20.0),
child: Image.asset(
'assets/images/logo.png', // Make sure you have a logo image in your assets folder
height: 100,
),
),
// Message to the driver
Padding(
padding:
const EdgeInsets.symmetric(horizontal: 16.0, vertical: 8.0),
child: Text(
'We need your phone number to contact you and to help you.'
.tr,
textAlign: TextAlign.center,
style: AppStyle.title,
),
),
// Enter phone number text
Padding(
padding:
const EdgeInsets.symmetric(horizontal: 16.0, vertical: 8.0),
child: Text(
'Enter your phone number'.tr,
textAlign: TextAlign.center,
style: AppStyle.title,
),
),
// Phone number input field with country code dropdown
Padding(
padding: const EdgeInsets.all(16.0),
child: !registerController.isSent
? Form(
key: registerController.formKey3,
child: Row(
children: [
// Country Code Dropdown
DropdownButton<String>(
value: registerController.selectedCountryCode,
items: registerController.countryCodes
.map((String code) {
return DropdownMenuItem<String>(
value: code,
child: Text(code),
);
}).toList(),
onChanged: (String? newValue) {
registerController.updateCountryCode(newValue!);
},
),
// Spacer
const SizedBox(width: 10),
// Phone Number Input Field
Expanded(
child: MyTextForm(
controller:
registerController.phoneController,
label: 'Enter your phone number'.tr,
hint: 'Enter your phone number'.tr,
type: TextInputType.phone),
),
],
),
)
: Container(
decoration: AppStyle.boxDecoration1,
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Text(
registerController.phoneController.text,
style: AppStyle.title,
),
),
),
),
const SizedBox(
height: 10,
),
if (registerController.isSent)
Padding(
padding: const EdgeInsets.all(16.0),
child: Form(
key: registerController.formKey3,
child: MyTextForm(
controller: registerController.verifyCode,
label: '5 digit'.tr,
hint: '5 digit'.tr,
type: TextInputType.number),
),
),
// Submit button
MyElevatedButton(
onPressed: () async {
!registerController.isSent
? await registerController.sendOtpMessage()
: await registerController.verifySMSCode();
},
title: 'Submit'.tr,
),
],
);
}),
],
isleading: false,
);
}
}