diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 937b31192..da9cced30 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -13,8 +13,6 @@ - - - diff --git a/ios/Runner/AppDelegate.swift b/ios/Runner/AppDelegate.swift index d27690b3e..70693e4a8 100644 --- a/ios/Runner/AppDelegate.swift +++ b/ios/Runner/AppDelegate.swift @@ -1,6 +1,5 @@ import UIKit import Flutter -import GoogleMaps @UIApplicationMain @objc class AppDelegate: FlutterAppDelegate { @@ -8,7 +7,6 @@ import GoogleMaps _ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? ) -> Bool { - GMSServices.provideAPIKey("YOUR_KEY_HERE") GeneratedPluginRegistrant.register(with: self) return super.application(application, didFinishLaunchingWithOptions: launchOptions) } diff --git a/lang/de.json b/lang/de.json index 916b02455..88a9fc80f 100644 --- a/lang/de.json +++ b/lang/de.json @@ -178,7 +178,6 @@ "Add tag": "Tag hinzufügen", "Enter the Tag": "Geben Sie das Tag ein", "Title": "Titel", - "Choose on map": "Auf der Karte wählen", "Where is the event?": "Wo ist das Ereignis?", "Add Members": "Mitglieder hinzufügen", "All Events": "Alle Veranstaltungen", diff --git a/lang/en.json b/lang/en.json index 959157178..f01750f09 100644 --- a/lang/en.json +++ b/lang/en.json @@ -178,7 +178,6 @@ "Add tag": "Add tag", "Enter the Tag": "Enter the Tag", "Title": "Title", - "Choose on map": "Choose on map", "Where is the event?": "Where is the event?", "Add Members": "Add Members", "All Events": "All Events", diff --git a/lang/es.json b/lang/es.json index c0e6a7e58..775be9269 100644 --- a/lang/es.json +++ b/lang/es.json @@ -178,7 +178,6 @@ "Add tag": "Añadir etiqueta", "Enter the Tag": "Ingrese la Etiqueta", "Title": "Título", - "Choose on map": "Elegir en el mapa", "Where is the event?": "¿Dónde está el evento?", "Add Members": "Añadir miembros", "All Events": "Todos los eventos", diff --git a/lang/fr.json b/lang/fr.json index d501be547..4b2dca9f0 100644 --- a/lang/fr.json +++ b/lang/fr.json @@ -178,7 +178,6 @@ "Add tag": "Ajouter un tag", "Enter the Tag": "Entrez le Tag", "Title": "Titre", - "Choose on map": "Choisir sur la carte", "Where is the event?": "Où se trouve l'événement?", "Add Members": "Ajouter des membres", "All Events": "Tous les événements", diff --git a/lang/hi.json b/lang/hi.json index 450835693..dfbe4d2c9 100644 --- a/lang/hi.json +++ b/lang/hi.json @@ -178,7 +178,6 @@ "Add tag": "टैग जोड़ें", "Enter the Tag": "टैग दर्ज करें", "Title": "शीर्षक", - "Choose on map": "नक्शे पर चुनें", "Where is the event?": "इवेंट कहाँ है?", "Add Members": "सदस्य जोड़ें", "All Events": "सभी ईवेंट्स", diff --git a/lang/ja.json b/lang/ja.json index 2f9005b6f..c1f9fb462 100644 --- a/lang/ja.json +++ b/lang/ja.json @@ -178,7 +178,6 @@ "Add tag": "タグを追加する", "Enter the Tag": "タグを入力してください", "Title": "タイトル", - "Choose on map": "地図上で選択する", "Where is the event?": "イベントはどこですか?", "Add Members": "メンバーを追加する", "All Events": "すべてのイベント", diff --git a/lang/pt.json b/lang/pt.json index 0dab5aa5d..131ddc34b 100644 --- a/lang/pt.json +++ b/lang/pt.json @@ -178,7 +178,6 @@ "Add tag": "Adicionar tag", "Enter the Tag": "Digite a Tag", "Title": "Título", - "Choose on map": "Escolher no mapa", "Where is the event?": "Onde é o evento?", "Add Members": "Adicionar membros", "All Events": "Todos os eventos", diff --git a/lang/zh.json b/lang/zh.json index f6488a4fa..c2dfed2b1 100644 --- a/lang/zh.json +++ b/lang/zh.json @@ -178,7 +178,6 @@ "Add tag": "添加标签", "Enter the Tag": "输入标签", "Title": "标题", - "Choose on map": "在地图上选择", "Where is the event?": "事件在哪里?", "Add Members": "添加成员", "All Events": "所有活动", diff --git a/lib/constants/routing_constants.dart b/lib/constants/routing_constants.dart index a462a6d37..b0742e241 100644 --- a/lib/constants/routing_constants.dart +++ b/lib/constants/routing_constants.dart @@ -85,9 +85,6 @@ class Routes { /// static variables. static const String chatMessageScreen = '/chatMessageScreen'; - /// static variables. - static const String mapScreen = '/mapScreen'; - /// static variables. static const String calendar = '/calendar'; diff --git a/lib/router.dart b/lib/router.dart index 3d2f12486..45e533fe3 100644 --- a/lib/router.dart +++ b/lib/router.dart @@ -9,7 +9,6 @@ import 'package:talawa/models/post/post_model.dart'; import 'package:talawa/models/task/task_model.dart'; import 'package:talawa/splash_screen.dart'; import 'package:talawa/view_model/after_auth_view_models/chat_view_models/direct_chat_view_model.dart'; -import 'package:talawa/view_model/after_auth_view_models/event_view_models/create_event_view_model.dart'; import 'package:talawa/views/after_auth_screens/add_post_page.dart'; import 'package:talawa/views/after_auth_screens/app_settings/app_settings_page.dart'; import 'package:talawa/views/after_auth_screens/chat/chat_message_screen.dart'; @@ -31,7 +30,6 @@ import 'package:talawa/views/after_auth_screens/tasks/create_task_page.dart'; import 'package:talawa/views/after_auth_screens/tasks/edit_task_page.dart'; import 'package:talawa/views/after_auth_screens/tasks/event_tasks_page.dart'; import 'package:talawa/views/after_auth_screens/tasks/user_tasks_page.dart'; -import 'package:talawa/views/after_auth_screens/venue/map_screen.dart'; import 'package:talawa/views/demo_screens/explore_events_demo.dart'; import 'package:talawa/views/demo_screens/organization_feed_demo.dart'; import 'package:talawa/views/demo_screens/profile_page_demo.dart'; @@ -275,20 +273,6 @@ Route generateRoute(RouteSettings settings) { ), ); - // Returns the MapScreen Widget - case Routes.mapScreen: - final arguments = settings.arguments! as Map; - final model = arguments['model'] as CreateEventViewModel?; - final latitude = arguments['latitude'] as double; - final longitude = arguments['longitude'] as double; - return MaterialPageRoute( - builder: (context) => MapScreen( - model, - latitude, - longitude, - key: const Key('MapScreen'), - ), - ); case Routes.calendar: return MaterialPageRoute( builder: (context) => EventCalendar( diff --git a/lib/views/after_auth_screens/events/create_event_form.dart b/lib/views/after_auth_screens/events/create_event_form.dart index d044c5ac4..caac2c137 100644 --- a/lib/views/after_auth_screens/events/create_event_form.dart +++ b/lib/views/after_auth_screens/events/create_event_form.dart @@ -1,7 +1,5 @@ // ignore_for_file: talawa_good_doc_comments, talawa_api_doc import 'package:flutter/material.dart'; -import 'package:talawa/constants/routing_constants.dart'; -import 'package:talawa/locator.dart'; import 'package:talawa/services/size_config.dart'; import 'package:talawa/utils/app_localization.dart'; import 'package:talawa/utils/validators.dart'; @@ -72,26 +70,6 @@ class CreateEventForm extends StatelessWidget { border: InputBorder.none, focusedBorder: InputBorder.none, enabledBorder: InputBorder.none, - suffix: GestureDetector( - key: const Key('gesture_cef_test'), - onTap: () => navigationService.pushScreen( - Routes.mapScreen, - arguments: { - 'model': model, - // initalize the map screen with a marker at this location - 'latitude': 37.42796133580664, - 'longitude': -122.085749655962, - }, - ), - child: Text( - AppLocalizations.of(context)! - .strictTranslate('Choose on map'), - style: Theme.of(context) - .textTheme - .bodySmall! - .copyWith(fontSize: 16), - ), - ), prefixIcon: Container( transform: Matrix4.translationValues( -SizeConfig.screenWidth! * 0.027, diff --git a/lib/views/after_auth_screens/events/event_info_body.dart b/lib/views/after_auth_screens/events/event_info_body.dart index e57c8d91f..7a297299f 100644 --- a/lib/views/after_auth_screens/events/event_info_body.dart +++ b/lib/views/after_auth_screens/events/event_info_body.dart @@ -1,6 +1,5 @@ import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; -import 'package:talawa/constants/routing_constants.dart'; import 'package:talawa/enums/enums.dart'; import 'package:talawa/locator.dart'; import 'package:talawa/services/size_config.dart'; @@ -164,27 +163,6 @@ class EventInfoBody extends StatelessWidget { maxLines: 3, ), const Spacer(), - // If the event location is not null then display the location - //on the map with the reference of latitude and longitude provided for the event. - if (event.latitude != null && event.longitude != null) - GestureDetector( - onTap: () => navigationService.pushScreen( - Routes.mapScreen, - arguments: { - "latitude": event.latitude, - "longitude": event.longitude, - }, - ), - child: Text( - 'View on map', - style: Theme.of(context).textTheme.bodySmall!.copyWith( - color: Theme.of(context).colorScheme.secondary, - ), - overflow: TextOverflow.ellipsis, - textAlign: TextAlign.left, - maxLines: 3, - ), - ), ], ), const Divider(), diff --git a/lib/views/after_auth_screens/venue/map_screen.dart b/lib/views/after_auth_screens/venue/map_screen.dart deleted file mode 100644 index 2f2540783..000000000 --- a/lib/views/after_auth_screens/venue/map_screen.dart +++ /dev/null @@ -1,178 +0,0 @@ -// ignore_for_file: talawa_api_doc -// ignore_for_file: talawa_good_doc_comments - -import 'package:flutter/material.dart'; -import 'package:geocoding/geocoding.dart'; -import 'package:geolocator/geolocator.dart'; -import 'package:google_maps_flutter/google_maps_flutter.dart'; -import 'package:talawa/locator.dart'; -import 'package:talawa/view_model/after_auth_view_models/event_view_models/create_event_view_model.dart'; - -/// MapScreen returns a widget that has mutable state _MapScreenState. -class MapScreen extends StatefulWidget { - const MapScreen(this.model, this.latitude, this.longitude, {super.key}); - - final CreateEventViewModel? model; - final double latitude; - final double longitude; - - @override - _MapScreenState createState() => _MapScreenState(); -} - -/// _MapScreenState returns a widget that renders map screen. The parameters needed are latitude and longitude. -class _MapScreenState extends State { - late GoogleMapController googleMapController; - - @override - void initState() { - super.initState(); - markers.add( - Marker( - markerId: const MarkerId('pinned'), - position: LatLng(widget.latitude, widget.longitude), - ), - ); - } - - Set markers = {}; - String address = ''; - double? latitude; - double? longitude; - - @override - Widget build(BuildContext context) { - final model = widget.model; - return Scaffold( - // header of the widget - appBar: AppBar( - // title - title: const Text("User current location"), - centerTitle: true, - actions: [ - model != null - ? IconButton( - icon: const Icon(Icons.done), - onPressed: () async { - model.eventLocationTextController.text = address; - model.latitude = latitude; - model.longitude = longitude; - navigationService.pop(); - }, - ) - : Container(), - ], - ), - // GoogleMap is widget imported from google_maps_flutter that is a - // Flutter plugin that provides a Google Maps widget. - body: GoogleMap( - // initial position with the reference of latitute and longitude passed. - initialCameraPosition: CameraPosition( - target: LatLng(widget.latitude, widget.longitude), - zoom: 14, - ), - markers: markers, - zoomControlsEnabled: false, - mapType: MapType.normal, - onMapCreated: (GoogleMapController controller) { - googleMapController = controller; - }, - onTap: (LatLng latLng) async { - if (model != null) { - final placemarkList = await placemarkFromCoordinates( - latLng.latitude, - latLng.longitude, - ); - final placemark = placemarkList[0]; - final name = placemark.name == null ? '' : '${placemark.name}, '; - final subLocality = placemark.subLocality == null - ? '' - : '${placemark.subLocality}, '; - final locality = - placemark.locality == null ? '' : '${placemark.locality}, '; - final administrativeArea = placemark.administrativeArea == null - ? '' - : '${placemark.administrativeArea}, '; - final country = - placemark.country == null ? '' : '${placemark.country}'; - address = - name + subLocality + locality + administrativeArea + country; - latitude = latLng.latitude; - longitude = latLng.longitude; - setState(() { - markers.clear(); - markers.add( - Marker( - markerId: const MarkerId('pinned'), - position: latLng, - ), - ); - }); - } - }, - ), - floatingActionButton: FloatingActionButton.extended( - onPressed: () async { - final Position position = await _determinePosition(); - - googleMapController.animateCamera( - CameraUpdate.newCameraPosition( - CameraPosition( - target: LatLng(position.latitude, position.longitude), - zoom: 14, - ), - ), - ); - - setState(() { - markers.clear(); - markers.add( - Marker( - markerId: const MarkerId('currentLocation'), - position: LatLng(position.latitude, position.longitude), - ), - ); - }); - }, - label: const Text('Current Location'), - icon: const Icon(Icons.my_location), - ), - ); - } - - Future _determinePosition() async { - bool serviceEnabled; - LocationPermission permission; - - // Check if location services are enabled. - serviceEnabled = await Geolocator.isLocationServiceEnabled(); - - // if location services are not enabled - if (!serviceEnabled) { - return Future.error('Location services are disabled'); - } - - // check for the permission. - permission = await Geolocator.checkPermission(); - - // if permission denied - if (permission == LocationPermission.denied) { - permission = await Geolocator.requestPermission(); - - if (permission == LocationPermission.denied) { - return Future.error("Location permission denied"); - } - } - - // if permission denied for permanently - if (permission == LocationPermission.deniedForever) { - return Future.error('Location permissions are permanently denied'); - } - - // if the permission is enabled. - final Position position = await Geolocator.getCurrentPosition(); - - // return the position. - return position; - } -} diff --git a/pubspec.lock b/pubspec.lock index d04acaf62..b9d033f6b 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -1,14 +1,6 @@ # Generated by pub # See https://dart.dev/tools/pub/glossary#lockfile packages: - _discoveryapis_commons: - dependency: transitive - description: - name: _discoveryapis_commons - sha256: f8bb1fdbd77f3d5c1d62b5b0eca75fbf1e41bf4f6c62628f880582e2182ae45d - url: "https://pub.dev" - source: hosted - version: "1.0.6" _fe_analyzer_shared: dependency: transitive description: @@ -629,62 +621,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.2" - google_maps: - dependency: transitive - description: - name: google_maps - sha256: "555d5d736339b0478e821167ac521c810d7b51c3b2734e6802a9f046b64ea37a" - url: "https://pub.dev" - source: hosted - version: "6.3.0" - google_maps_flutter: - dependency: "direct main" - description: - name: google_maps_flutter - sha256: ae66fef3e71261d7df2eff29b2a119e190b2884325ecaa55321b1e17b5504066 - url: "https://pub.dev" - source: hosted - version: "2.5.3" - google_maps_flutter_android: - dependency: transitive - description: - name: google_maps_flutter_android - sha256: "714530f865f13bb3b9505c58821c3baed5d247a871724acf5d2ea5808fbed02c" - url: "https://pub.dev" - source: hosted - version: "2.6.2" - google_maps_flutter_ios: - dependency: transitive - description: - name: google_maps_flutter_ios - sha256: c89556ed0338fcb4b843c9fcdafac7ad2df601c8b41286d82f0727f7f66434e4 - url: "https://pub.dev" - source: hosted - version: "2.3.6" - google_maps_flutter_platform_interface: - dependency: transitive - description: - name: google_maps_flutter_platform_interface - sha256: "6060779f020638a8eedeb0fb14234818e5fa32ec45a4653d6428ab436e2bbc64" - url: "https://pub.dev" - source: hosted - version: "2.4.3" - google_maps_flutter_web: - dependency: transitive - description: - name: google_maps_flutter_web - sha256: "6245721c160d6f531c1ef568cf9bef8d660cd585a982aa75121269030163785a" - url: "https://pub.dev" - source: hosted - version: "0.5.4+3" - googleapis: - dependency: "direct main" - description: - name: googleapis - sha256: "8a8c311723162af077ca73f94b823b97ff68770d966e29614d20baca9fdb490a" - url: "https://pub.dev" - source: hosted - version: "12.0.0" gql: dependency: transitive description: @@ -933,14 +869,6 @@ packages: url: "https://pub.dev" source: hosted version: "0.6.7" - js_wrapping: - dependency: transitive - description: - name: js_wrapping - sha256: e385980f7c76a8c1c9a560dfb623b890975841542471eade630b2871d243851c - url: "https://pub.dev" - source: hosted - version: "0.7.4" json_annotation: dependency: "direct main" description: @@ -1317,14 +1245,6 @@ packages: url: "https://pub.dev" source: hosted version: "0.27.7" - sanitize_html: - dependency: transitive - description: - name: sanitize_html - sha256: "12669c4a913688a26555323fb9cec373d8f9fbe091f2d01c40c723b33caa8989" - url: "https://pub.dev" - source: hosted - version: "2.1.0" shared_preferences: dependency: "direct main" description: diff --git a/pubspec.yaml b/pubspec.yaml index f2fb69ad6..0ed18c71e 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -47,8 +47,6 @@ dependencies: geocoding: ^2.1.1 geolocator: ^10.1.0 get_it: ^7.6.6 - google_maps_flutter: ^2.5.3 - googleapis: 12.0.0 graphql_flutter: ^5.1.2 hive: ^2.2.3 http: 1.1.2 diff --git a/test/views/after_auth_screens/events/event_info_body_test.dart b/test/views/after_auth_screens/events/event_info_body_test.dart index e29432c71..420159678 100644 --- a/test/views/after_auth_screens/events/event_info_body_test.dart +++ b/test/views/after_auth_screens/events/event_info_body_test.dart @@ -15,7 +15,6 @@ import 'package:talawa/view_model/after_auth_view_models/event_view_models/event import 'package:talawa/view_model/after_auth_view_models/event_view_models/explore_events_view_model.dart'; import 'package:talawa/view_model/lang_view_model.dart'; import 'package:talawa/views/after_auth_screens/events/event_info_body.dart'; -import 'package:talawa/views/after_auth_screens/venue/map_screen.dart'; import 'package:talawa/views/base_view.dart'; import '../../../helpers/test_helpers.dart'; @@ -146,7 +145,6 @@ void main() { expect(find.text("00/00/0000 - 12/12/9999"), findsOneWidget); expect(find.text("00:00 - 24:00"), findsOneWidget); expect(find.text("iitbhu, varanasi"), findsOneWidget); - expect(find.text("View on map"), findsOneWidget); expect(find.text("test_event_description"), findsOneWidget); expect(find.text("ravidi_admin_one shaikh_admin_one"), findsOneWidget); expect(find.text("Test User"), findsOneWidget); // Registrants @@ -170,13 +168,7 @@ void main() { await tester.tap(find.byKey(const Key("Attendee0"))); await tester.tap(find.byKey(const Key("Admins0"))); - // View on map - expect(find.byType(MapScreen), findsNothing); - - await tester.tap(find.textContaining("View on map")); await tester.pumpAndSettle(); - - // expect(find.byType(MapScreen), findsOneWidget); }); testWidgets("Check if edit button appears for creator", (tester) async { @@ -216,40 +208,6 @@ void main() { expect(find.byIcon(Icons.lock_open), findsOneWidget); }); - testWidgets("Show View on map", (tester) async { - // Show view on map - - await tester.pumpWidget(createEventInfoBody()); - await tester.pumpAndSettle(); - - expect( - find.byWidgetPredicate( - (widget) => - widget is GestureDetector && - widget.child is Text && - (widget.child! as Text).data == "View on map", - ), - findsOneWidget, - ); - }); - - testWidgets("Hide View on map", (tester) async { - // Don't show view on map - - await tester.pumpWidget(createEventInfoBody(viewOnMap: false)); - await tester.pumpAndSettle(); - - expect( - find.byWidgetPredicate( - (widget) => - widget is GestureDetector && - widget.child is Text && - (widget.child! as Text).data == "View on map", - ), - findsNothing, - ); - }); - testWidgets("Loading indicator", (tester) async { // Don't show view on map diff --git a/test/widget_tests/after_auth_screens/events/create_event_form_test.dart b/test/widget_tests/after_auth_screens/events/create_event_form_test.dart index f74e0754d..a8ab9d116 100644 --- a/test/widget_tests/after_auth_screens/events/create_event_form_test.dart +++ b/test/widget_tests/after_auth_screens/events/create_event_form_test.dart @@ -112,21 +112,6 @@ void main() { expect(find.byKey(const Key('create_event_form_tff3')), findsOneWidget); }); }); - - testWidgets("Test if gesture detector is working", - (WidgetTester tester) async { - await tester.runAsync(() async { - await tester.pumpWidget(createCreateEventForm()); - await tester.pump(); - final gestureDetector = find.byKey(const Key('gesture_cef_test')); - await tester.tap(gestureDetector); - await tester.pump(); - expect(find.byKey(const Key('gesture_cef_test')), findsOneWidget); - await tester.pumpAndSettle(const Duration(milliseconds: 1000)); - }); - }); - -//--------------------------------------------------- testWidgets( 'Test if form of 1st TextField is submitted on pressing enter on mobile keyboard.', (tester) async { diff --git a/test/widget_tests/after_auth_screens/events/create_event_page_test.dart b/test/widget_tests/after_auth_screens/events/create_event_page_test.dart index 3dc4692aa..3aae3aeb0 100644 --- a/test/widget_tests/after_auth_screens/events/create_event_page_test.dart +++ b/test/widget_tests/after_auth_screens/events/create_event_page_test.dart @@ -447,17 +447,6 @@ void main() { find.byKey(const Key('CreateEventScreen')); expect(createEventScreenPage, findsNothing); }); - testWidgets("Testing if mapScreen opens up", (tester) async { - await tester.pumpWidget( - createEventScreen( - theme: TalawaTheme.lightTheme, - ), - ); - await tester.pumpAndSettle(); - - await tester.tap(find.text('Choose on map')); - await tester.pumpAndSettle(); - }); }); }); } diff --git a/test/widget_tests/after_auth_screens/events/event_info_page_test.dart b/test/widget_tests/after_auth_screens/events/event_info_page_test.dart index ca898eb34..752b2506c 100644 --- a/test/widget_tests/after_auth_screens/events/event_info_page_test.dart +++ b/test/widget_tests/after_auth_screens/events/event_info_page_test.dart @@ -6,9 +6,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_localizations/flutter_localizations.dart'; import 'package:flutter_test/flutter_test.dart'; -import 'package:mockito/mockito.dart'; import 'package:mocktail_image_network/mocktail_image_network.dart'; -import 'package:talawa/constants/routing_constants.dart'; import 'package:talawa/locator.dart'; import 'package:talawa/models/events/event_model.dart'; import 'package:talawa/models/organization/org_info.dart'; @@ -115,22 +113,5 @@ void main() { await tester.tap(find.byType(FloatingActionButton)); }); }); - - testWidgets('Test EventInfoPage', (tester) async { - mockNetworkImages(() async { - await tester.pumpWidget(createEventInfoPage(false, true)); - await tester.pumpAndSettle(); - - expect(find.byIcon(Icons.lock), findsOneWidget); - - await tester.tap(find.text('View on map')); - verify( - navigationService.pushScreen( - Routes.mapScreen, - arguments: {'latitude': 23.45, 'longitude': -23.45}, - ), - ); - }); - }); }); }