Untitled
import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:hazard_monitor/components/appbar/r_appbar.dart'; import 'package:hazard_monitor/components/buttons/r_elevated_button.dart'; import 'package:hazard_monitor/controllers/auth_controller.dart'; import 'package:hazard_monitor/controllers/local_shelter/local_shelter_controller.dart'; import 'package:hazard_monitor/controllers/water_level/water_level_controller.dart'; import 'package:hazard_monitor/screens/citizens_forum_screen/first_aid_tips/first_aid_tips.dart'; import 'package:hazard_monitor/screens/citizens_forum_screen/locate_shelter_screen.dart'; import 'package:hazard_monitor/screens/citizens_forum_screen/citizens_forum_feed_screen.dart'; import 'package:hazard_monitor/screens/citizens_forum_screen/water_level_screen/water_level_screen.dart'; import 'package:hazard_monitor/theme/style/app_colors.dart'; import 'package:hazard_monitor/utils/app_assets_image.dart'; import '../../components/buttons/r_flat_box_icon_button.dart'; import '../../components/drawer/r_app_drawer.dart'; import '../../controllers/newsfeed/news_feed_controller.dart'; import '../../theme/style/app_text_styles.dart'; import '../../utils/custom_route_transation.dart'; import '../../utils/size_config.dart'; import '../../utils/translation/language_keys.dart'; // ignore: must_be_immutable class CitizensForumScreen extends StatelessWidget { CitizensForumScreen({super.key}); NewsFeedController newsFeedController = Get.find(); LocalShelterController localShelterController = Get.find(); WaterLevelController waterLevelController = Get.put(WaterLevelController()); AuthController authController = Get.find(); @override Widget build(BuildContext context) { return Scaffold( backgroundColor: AppColors.colorFF, appBar: RAppBar( barTitle: AppConstants.citizensForum.tr, ), endDrawer: RAppDrawer(), body: GestureDetector( onTap: () { FocusScope.of(context).requestFocus(FocusNode()); }, child: Container( width: SizeConfig.screenWidth, height: SizeConfig.screenHeight, padding: const EdgeInsets.only(left: 20, right: 20), child: SingleChildScrollView( physics: const AlwaysScrollableScrollPhysics(), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ /// Emergency services -------------------------- Container( margin: const EdgeInsets.only(top: 10, bottom: 15), child: Text( AppConstants.emergencyServices.tr, style: AppTextStyles.bold16, textAlign: TextAlign.center, ), ), Wrap( spacing: 5, runSpacing: 15, children: [ RFlatBoxIconButton( onPressed: () { localShelterController.launchPhone( number: localShelterController .emergencyNumber.value!.fire); }, image: AppAssetsImages.fireRescue, label: AppConstants.fireRescue.tr, ), RFlatBoxIconButton( onPressed: () { localShelterController.launchPhone( number: localShelterController .emergencyNumber.value!.hospital); }, image: AppAssetsImages.hospital, label: AppConstants.hospital.tr, ), RFlatBoxIconButton( onPressed: () { localShelterController.launchPhone( number: localShelterController .emergencyNumber.value!.police); }, image: AppAssetsImages.police, label: AppConstants.police.tr, ), RFlatBoxIconButton( onPressed: () { localShelterController.launchPhone( number: localShelterController .emergencyNumber.value!.disaster); }, image: AppAssetsImages.disasterRecovery, label: AppConstants.disasterRecovery.tr, ), RFlatBoxIconButton( onPressed: () { localShelterController.launchPhone( number: localShelterController .emergencyNumber.value!.wildLife); }, image: AppAssetsImages.wildlife, label: AppConstants.wildlifeConservation.tr, ), ], ), /// Tips & shelter ----------------------------------------- Container( margin: const EdgeInsets.only(top: 25, bottom: 15), child: Text( AppConstants.awarenessHelpfulTips.tr, style: AppTextStyles.bold16, textAlign: TextAlign.center, ), ), Wrap( spacing: 5, children: [ RFlatBoxIconButton( onPressed: () { localShelterController.getFirstAidTipData(); Navigator.push(context, SlideLeftRoute(page: FirstAidTipsScreen())); }, image: AppAssetsImages.firstAidTips, label: AppConstants.firstAidTips.tr, ), RFlatBoxIconButton( onPressed: () { authController.checkLocationPermission( onPermissionGranted: () { localShelterController.getLocalShelterData(); Navigator.push(context, SlideLeftRoute(page: LocateShelterScreen())); } ); // localShelterController.getLocalShelterData(); // Navigator.push(context, SlideLeftRoute(page: LocateShelterScreen())); }, image: AppAssetsImages.locateNearestShelter, label: AppConstants.locateNearestShelter.tr, ), RFlatBoxIconButton( onPressed: () { authController.checkLocationPermission( onPermissionGranted: () { waterLevelController.getWaterLevelListData(); Navigator.push(context, SlideLeftRoute(page: WaterLevelScreen())); } ); // waterLevelController.getWaterLevelListData(); // Navigator.push(context, SlideLeftRoute(page: WaterLevelScreen())); }, image: AppAssetsImages.calculateWaterLevel, label: AppConstants.calculateWaterLevel.tr, ), ], ), /// News feed ----------------------------------------- const SizedBox( height: 30, ), RElevatedIconButtonNew( onPressed: () { authController.checkLocationPermission( onPermissionGranted: () { newsFeedController.getNewsFeedData(); Navigator.push(context, SlideLeftRoute(page: const CitizensForumFeedScreen())); } ); // newsFeedController.getNewsFeedData(); // Navigator.push(context, SlideLeftRoute(page: const CitizensForumFeedScreen())); }, label: AppConstants.newsFeed.tr, isFullWidth: true, sizedBoxWidth: 12, isIcon: true, icondata: const Icon( Icons.newspaper_rounded, size: 25, color: AppColors.colorFF, ), ) // Container( // margin: const EdgeInsets.only(top: 20, bottom: 15), // child: Text( // AppConstants.newsFeed.tr, // style: AppTextStyles.bold16, // textAlign: TextAlign.center, // ), // ), // Wrap( // spacing: 5, // children: [ // RFlatBoxIconButton( // onPressed: (){ // newsFeedController.getNewsFeedData(); // Navigator.push( context, SlideLeftRoute(page: const CitizensForumFeedScreen())); // }, // image: AppAssetsImages.emergencyServices, // label: AppConstants.newsFeed.tr, // ), // RFlatBoxIconButton( // onPressed: (){ // newsFeedController.getNewsFeedData(isOwnFeed: true); // Navigator.push( context, SlideLeftRoute(page: const CitizensForumFeedScreen())); // }, // image: AppAssetsImages.firstAidTips, // label: AppConstants.myUploads.tr, // ), // ], // ) ], ), ), ), ), ); } }
Leave a Comment