diff options
| author | omagdy7 <omar.professional8777@gmail.com> | 2023-12-20 19:40:11 +0200 |
|---|---|---|
| committer | omagdy7 <omar.professional8777@gmail.com> | 2023-12-20 19:40:11 +0200 |
| commit | b84fe9a9c4c18a3f4e957f76ead34403c4316f76 (patch) | |
| tree | 14e4b37ae137ed538eaa14af4228c41033facac8 /mobile/lib/routes.dart | |
| parent | 953b5ce3ad7e933c6f008202346fe5bf2985bf9e (diff) | |
| download | carpool-b84fe9a9c4c18a3f4e957f76ead34403c4316f76.tar.xz carpool-b84fe9a9c4c18a3f4e957f76ead34403c4316f76.zip | |
Added a simple Login and SignUp page for the web driver app
Diffstat (limited to 'mobile/lib/routes.dart')
| -rw-r--r-- | mobile/lib/routes.dart | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/mobile/lib/routes.dart b/mobile/lib/routes.dart new file mode 100644 index 0000000..de5864c --- /dev/null +++ b/mobile/lib/routes.dart @@ -0,0 +1,99 @@ +import 'package:flutter/material.dart'; +import 'cart.dart'; +import 'package:intl/intl.dart'; + +class Route { + final String name; + final String startLocation; + final String endLocation; + + Route( + {required this.name, + required this.startLocation, + required this.endLocation}); +} + +class RoutesPage extends StatelessWidget { + final List<Route> dummyRoutes = [ + Route( + name: 'Morning Ride - Gate 3 to Abdu-Basha', + startLocation: 'Abassyia', + endLocation: 'Abdu-Basha Gate-3'), + Route( + name: 'Morning Ride - Abdu-Basha to 5th Settlement', + startLocation: 'Abdu-Basha', + endLocation: '5th Settlement'), + Route( + name: 'Afternoon Ride - Abdu-Basha to Gate 3', + startLocation: 'Hadayek Elkoba', + endLocation: 'Abdu-Basha Gate-6'), + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: const Text('Routes')), + body: ListView.builder( + itemCount: dummyRoutes.length, + itemBuilder: (BuildContext context, int index) { + final Route route = dummyRoutes[index]; + return GestureDetector( + onTap: () { + DateTime now = DateTime.now(); + String formattedDateTime = + DateFormat('EEEE dd/MM/yyyy hh:mm a').format(now); + Ride selectedRide = Ride( + name: route.name, + startLocation: route.startLocation, + endLocation: route.endLocation, + time: formattedDateTime, + ); + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => CartPage(selectedRide: selectedRide), + ), + ); + }, + child: Card( + elevation: 3, + margin: const EdgeInsets.symmetric(vertical: 8, horizontal: 16), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12), + ), + child: ListTile( + title: Text( + route.name, + style: const TextStyle( + fontWeight: FontWeight.bold, + fontSize: 16, + ), + ), + subtitle: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + const Icon(Icons.location_on, color: Colors.blue), + const SizedBox(width: 4), + Flexible(child: Text(route.startLocation)), + ], + ), + Row( + children: [ + const Icon(Icons.arrow_forward, color: Colors.blue), + const SizedBox(width: 4), + Flexible(child: Text(route.endLocation)), + ], + ), + ], + ), + leading: const Icon(Icons.directions_car), + ), + ), + ); + }, + ), + ); + } +} |
