Commit 80179414 authored by Ade Fikriatul  Ilmi's avatar Ade Fikriatul Ilmi

menambahkan content di contact us

parent 24343d95
......@@ -52,45 +52,37 @@ class ContactUs2 extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.center,
children: [
SizedBox(
height: screenSize.height * 0.23,
child: Text(
'Yes, you need '
'\n'
'an outsourcing partner '
'you can trust and thrive with',
textAlign: TextAlign.left,
style: GoogleFonts.poppins(
color: Colors.white,
fontSize: 30,
fontWeight: FontWeight.bold)),
),
const Spacer(
flex: 1,
),
SizedBox(
height: screenSize.height * 0.22,
child: Text(
'Go for the one who knows what they are doing, those who you share values with, '
'and those who will celebrate your success, and help you win over your biggest challenges. '
'\nLooking for an outsourcing partner? ',
textAlign: TextAlign.justify,
style: GoogleFonts.poppins(
color: Colors.white,
fontSize: 18,
// fontWeight: FontWeight.bold,
letterSpacing: 1.1)),
flex: 2,
),
Text("Leave Your Contact Info and Let's Discuss Business",
style: GoogleFonts.poppins(
color: Colors.white,
fontSize: 30,
fontWeight: FontWeight.w500)),
// const Spacer(
// flex: 1,
// ),
// Text("Let's Discuss Business",
// style: GoogleFonts.poppins(
// color: Colors.white,
// fontSize: 35,
//
// fontWeight: FontWeight.w500,
// // fontWeight: FontWeight.bold,
// letterSpacing: 1.1)
// ),
const Spacer(
flex: 1,
),
Text("We’ll contact you immediately to discuss to help you.",
Text(
"We’ll contact you immediately to discuss potential business",
style: GoogleFonts.poppins(
color: Colors.white,
fontSize: 18,
letterSpacing: 1.2)),
fontWeight: FontWeight.w500)),
const Spacer(
flex: 2,
flex: 3,
),
],
),
......
......@@ -7,7 +7,6 @@ import 'package:http/http.dart' as http;
import 'package:medapp_eksad/api/contact_api.dart';
import 'package:medapp_eksad/widget/button_color.dart';
class ContactUs2_small extends StatefulWidget {
const ContactUs2_small({Key? key}) : super(key: key);
......@@ -23,6 +22,9 @@ class _ContactUs2_smallState extends State<ContactUs2_small> {
final emailController = TextEditingController();
final messageController = TextEditingController();
String pattern =
r'(\+62|62|0)(\d{2,3})?\)?[ .-]?\d{2,4}[ .-]?\d{2,4}[ .-]?\d{2,4}';
@override
Widget build(BuildContext context) {
var screenSize = MediaQuery.of(context).size;
......@@ -33,50 +35,55 @@ class _ContactUs2_smallState extends State<ContactUs2_small> {
// color: Colors.blue,
decoration: const BoxDecoration(
gradient: LinearGradient(
colors: <Color>[
Color(0xff137fc2),
Color(0xff3958d5),
Color(0xff184b80),
],
begin: Alignment.topCenter,
end: Alignment.bottomCenter,
)),
colors: <Color>[
Color(0xff137fc2),
Color(0xff3958d5),
Color(0xff184b80),
],
begin: Alignment.topCenter,
end: Alignment.bottomCenter,
)),
child: Container(
padding: const EdgeInsets.all(10),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: [
Center(
child: Text(
'Yes, you need '
'\n'
'an outsourcing partner '
'you can trust and thrive with',
textAlign: TextAlign.left,
style: GoogleFonts.poppins(
color: Colors.white,
fontSize: 30,
fontWeight: FontWeight.bold)),
const Spacer(
flex: 2,
),
Center(
child: Text(
'Go for the one who knows what they are doing, those who you share values with, '
'and those who will celebrate your success, and help you win over your biggest challenges. '
'Looking for an outsourcing partner? ',
textAlign: TextAlign.justify,
style: GoogleFonts.poppins(
color: Colors.white,
fontSize: 18,
// fontWeight: FontWeight.bold,
letterSpacing: 1.1)),
Text("Leave Your Contact Info and Let's Discuss Business",
style: GoogleFonts.poppins(
color: Colors.white,
fontSize: 30,
fontWeight: FontWeight.w500)),
// const Spacer(
// flex: 1,
// ),
// Text("Let's Discuss Business",
// style: GoogleFonts.poppins(
// color: Colors.white,
// fontSize: 35,
//
// fontWeight: FontWeight.w500,
// // fontWeight: FontWeight.bold,
// letterSpacing: 1.1)
// ),
const Spacer(
flex: 1,
),
Center(
child: Text("We’ll contact you immediately to discuss to help you.",
style: GoogleFonts.poppins(
color: Colors.white, fontSize: 18, letterSpacing: 1.2)),
Text(
"We’ll contact you immediately to discuss potential business",
style: GoogleFonts.poppins(
color: Colors.white,
fontSize: 18,
fontWeight: FontWeight.w500)),
const Spacer(
flex: 3,
),
SizedBox(
height: 1,
),
SizedBox(height: 5,),
Center(
child: Form(
key: _formKey,
......@@ -104,14 +111,20 @@ class _ContactUs2_smallState extends State<ContactUs2_small> {
enabledBorder: OutlineInputBorder(
borderRadius: BorderRadius.zero,
borderSide:
BorderSide(width: 1, color: Colors.white),
BorderSide(width: 1, color: Colors.white),
),
focusedBorder: OutlineInputBorder(
borderRadius: BorderRadius.zero,
borderSide:
BorderSide(width: 1, color: Colors.white),
BorderSide(width: 1, color: Colors.white),
),
),
validator: (value) {
if (value == null || value.isEmpty) {
return 'Please enter your name';
}
return null;
},
),
),
const SizedBox(
......@@ -140,14 +153,22 @@ class _ContactUs2_smallState extends State<ContactUs2_small> {
enabledBorder: OutlineInputBorder(
borderRadius: BorderRadius.zero,
borderSide:
BorderSide(width: 1, color: Colors.white),
BorderSide(width: 1, color: Colors.white),
),
focusedBorder: OutlineInputBorder(
borderRadius: BorderRadius.zero,
borderSide:
BorderSide(width: 1, color: Colors.white),
BorderSide(width: 1, color: Colors.white),
),
),
validator: (value) {
if (value == null || value.isEmpty) {
return 'Please enter your phone number';
} else if (!RegExp(pattern).hasMatch(value)) {
return 'Start with 628 or 08';
}
return null;
},
),
),
const SizedBox(
......@@ -176,14 +197,20 @@ class _ContactUs2_smallState extends State<ContactUs2_small> {
enabledBorder: OutlineInputBorder(
borderRadius: BorderRadius.zero,
borderSide:
BorderSide(width: 1, color: Colors.white),
BorderSide(width: 1, color: Colors.white),
),
focusedBorder: OutlineInputBorder(
borderRadius: BorderRadius.zero,
borderSide:
BorderSide(width: 1, color: Colors.white),
BorderSide(width: 1, color: Colors.white),
),
),
validator: (value) {
if (value == null || value.isEmpty) {
return 'Please enter your email';
}
return null;
},
),
),
const SizedBox(
......@@ -207,18 +234,18 @@ class _ContactUs2_smallState extends State<ContactUs2_small> {
enabledBorder: OutlineInputBorder(
borderRadius: BorderRadius.zero,
borderSide:
BorderSide(width: 1, color: Colors.white),
BorderSide(width: 1, color: Colors.white),
),
focusedBorder: OutlineInputBorder(
borderRadius: BorderRadius.zero,
borderSide:
BorderSide(width: 1, color: Colors.white),
BorderSide(width: 1, color: Colors.white),
),
),
maxLines: 5,
validator: (value) {
if (value == null || value.isEmpty) {
return '*Required';
return 'Please enter your message';
}
return null;
},
......@@ -247,12 +274,12 @@ class _ContactUs2_smallState extends State<ContactUs2_small> {
ScaffoldMessenger.of(context).showSnackBar(
response == 200
? const SnackBar(
content: Text('Message Sent!'),
backgroundColor: Colors.green)
content: Text('Message Sent!'),
backgroundColor: Colors.green)
: const SnackBar(
content:
Text('Failed to send message!'),
backgroundColor: Colors.red),
content:
Text('Failed to send message!'),
backgroundColor: Colors.red),
);
nameController.clear();
phoneController.clear();
......@@ -262,7 +289,8 @@ class _ContactUs2_smallState extends State<ContactUs2_small> {
},
child: const Text(
'Submit',
style: TextStyle(fontSize: 16, color: Colors.white),
style:
TextStyle(fontSize: 16, color: Colors.white),
),
),
),
......@@ -277,7 +305,7 @@ class _ContactUs2_smallState extends State<ContactUs2_small> {
Future SendEmail(
String name, String phone, String email, String message) async {
final url = Uri.parse('https://api.emailjs.com/api/v1.0/email/send');
const serviceId = 'service_7wwup8c';
const serviceId = 'service_7wwup8c';
const templateId = 'template_4u8rbur';
const userId = 'fF4-BJSJ11O-S3J0Z';
final response = await http.post(url,
......@@ -298,5 +326,3 @@ class _ContactUs2_smallState extends State<ContactUs2_small> {
return response.statusCode;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment