// import 'dart:async'; // import 'dart:developer'; // import 'dart:io'; // // import 'package:flutter/material.dart'; // import 'package:flutter_svg/flutter_svg.dart'; // import 'package:geolocator/geolocator.dart'; // import 'package:huawei_location/huawei_location.dart'; // import 'package:nfc_manager/nfc_manager.dart'; // import 'package:permission_handler/permission_handler.dart'; // import 'package:provider/provider.dart'; // import 'package:test_sa/dashboard_latest/dashboard_provider.dart'; // // import 'package:platform_device_id/platform_device_id.dart'; // import 'package:test_sa/dashboard_latest/widgets/app_bar_widget.dart'; // import 'package:test_sa/extensions/enum_extensions.dart'; // import 'package:test_sa/extensions/text_extensions.dart'; // import 'package:test_sa/extensions/widget_extensions.dart'; // import 'package:test_sa/helper/utils.dart'; // import 'package:test_sa/models/enums/swipe_type.dart'; // import 'package:test_sa/models/lookup.dart'; // import 'package:test_sa/models/new_models/swipe_model.dart'; // import 'package:test_sa/nfc/nfc_reader_sheet.dart'; // import 'package:test_sa/utilities/Location.dart' as location; // import 'package:test_sa/views/widgets/dialogs/confirm_dialog.dart'; // import 'package:test_sa/views/widgets/dialogs/success_dialog.dart'; // import 'package:test_sa/views/widgets/qr_scanner_dialog.dart'; // import 'package:wifi_iot/wifi_iot.dart'; // // import '../../app_style/app_color.dart'; // // class MarkAttendanceWidget extends StatefulWidget { // // DashboardProviderModel model; // double topPadding; // bool isFromDashboard; // // MarkAttendanceWidget( {Key? key, this.topPadding = 0, this.isFromDashboard = false}) : super(key: key); // // todo MarkAttendanceWidget(this.model, {Key? key, this.topPadding = 0, this.isFromDashboard = false}) : super(key: key); // // @override // _MarkAttendanceWidgetState createState() { // return _MarkAttendanceWidgetState(); // } // } // // class _MarkAttendanceWidgetState extends State { // bool isNfcEnabled = false, isNfcLocationEnabled = false, isQrEnabled = false, isQrLocationEnabled = false, isWifiEnabled = false, isWifiLocationEnabled = false; // // int _locationUpdateCbId = 0; // // @override // void initState() { // super.initState(); // checkAttendanceAvailability(); // } // // void checkAttendanceAvailability() async { // bool isAvailable = await NfcManager.instance.isAvailable(); // // setState(() { // // AppState().privilegeListModel!.forEach((PrivilegeListModel element) { // // if (element.serviceName == "enableNFC") { // // if (isAvailable) if (element.previlege ?? false) isNfcEnabled = true; // // } else if (element.serviceName == "enableQR") { // // if (element.previlege ?? false) isQrEnabled = true; // // } else if (element.serviceName == "enableWIFI") { // // if (element.previlege ?? false) isWifiEnabled = true; // // } else if (element.serviceName!.trim() == "enableLocationNFC") { // // if (element.previlege ?? false) isNfcLocationEnabled = true; // // } else if (element.serviceName == "enableLocationQR") { // // if (element.previlege ?? false) isQrLocationEnabled = true; // // } else if (element.serviceName == "enableLocationWIFI") { // // if (element.previlege ?? false) isWifiLocationEnabled = true; // // } // // }); // // }); // } // // void checkHuaweiLocationPermission(String attendanceType) async { // // Permission_Handler permissionHandler = PermissionHandler(); // location.Location.isEnabled((bool isEnabled) async { // if (isEnabled) { // location.Location.havePermission((bool permission) async { // if (permission) { // getHuaweiCurrentLocation(attendanceType); // } else { // bool has = await requestPermissions(); // if (has) { // getHuaweiCurrentLocation(attendanceType); // } else { // showDialog( // context: context, // builder: (BuildContext cxt) => ConfirmDialog( // message: "You need to give location permission to mark attendance", // onTap: () { // Navigator.pop(context); // }, // ), // ); // } // } // }); // } else { // showDialog( // context: context, // builder: (BuildContext cxt) => ConfirmDialog( // message: "You need to enable location services to mark attendance", // onTap: () async { // Navigator.pop(context); // await Geolocator.openLocationSettings(); // }, // ), // ); // } // }); // // // if (await permissionHandler.hasLocationPermission()) { // // getHuaweiCurrentLocation(attendanceType); // // } else { // // bool has = await requestPermissions(); // // if (has) { // // getHuaweiCurrentLocation(attendanceType); // // } else { // // showDialog( // // context: context, // // builder: (BuildContext cxt) => ConfirmDialog( // // message: "You need to give location permission to mark attendance", // // onTap: () { // // Navigator.pop(context); // // }, // // ), // // ); // // } // // } // } // // Future requestPermissions() async { // var result = await [ // Permission.location, // ].request(); // return (result[Permission.location] == PermissionStatus.granted || result[Permission.locationAlways] == PermissionStatus.granted); // } // // @override // void dispose() { // super.dispose(); // // Stop Session // NfcManager.instance.stopSession(); // } // // @override // Widget build(BuildContext context) { // return Container( // padding: EdgeInsets.only(left: 21, right: 21, bottom: 21, top: widget.topPadding), // decoration: const BoxDecoration(borderRadius: BorderRadius.only(topLeft: Radius.circular(25), topRight: Radius.circular(25)), color: Colors.white), // width: double.infinity, // child: Column( // crossAxisAlignment: CrossAxisAlignment.start, // mainAxisSize: MainAxisSize.min, // children: [ // // LocaleKeys.markAttendance.tr().toSectionHeading(), // // LocaleKeys.selectMethodOfAttendance.tr().toText11(color: const Color(0xff535353)), // GridView( // physics: const NeverScrollableScrollPhysics(), // shrinkWrap: true, // padding: const EdgeInsets.only(bottom: 0, top: 21), // gridDelegate: // SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: (MediaQuery.of(context).size.width < 550) ? 3 : 5, childAspectRatio: 1 / 1, crossAxisSpacing: 8, mainAxisSpacing: 8), // children: [ // attendanceMethod(SwipeTypeEnum.NFC.name, Icons.nfc, true, () { // log('i am here...nfc'); // handleSwipe(swipeType: SwipeTypeEnum.NFC, isEnable: true); // return; // // if (AppState().getIsHuawei) { // if (false) { // checkHuaweiLocationPermission("NFC"); // } else { // location.Location.isEnabled((bool isEnabled) { // if (isEnabled) { // location.Location.havePermission((bool permission) { // if (permission) { // Utils.showLoading(context); // location.Location.getCurrentLocation( // (Position position, bool isMocked) { // if (isMocked) { // Utils.hideLoading(context); // markFakeAttendance("NFC", position.latitude.toString() ?? "", position.longitude.toString() ?? ""); // } else { // Utils.hideLoading(context); // //todo performNfcAttendance(widget.model, lat: position.latitude.toString() ?? "", lng: position.longitude.toString() ?? ""); // } // }, // () { // Utils.hideLoading(context); // Utils.confirmDialog(context, "Unable to determine your location, Please make sure that your location services are turned on & working."); // }, // context, // ); // } else { // showDialog( // context: context, // builder: (BuildContext cxt) => ConfirmDialog( // message: "You need to give location permission to mark attendance", // onTap: () async { // Navigator.pop(context); // await Geolocator.openAppSettings(); // }, // ), // ); // } // }); // } else { // showDialog( // context: context, // builder: (BuildContext cxt) => ConfirmDialog( // message: "You need to enable location services to mark attendance", // onTap: () async { // Navigator.pop(context); // await Geolocator.openLocationSettings(); // }, // ), // ); // } // }); // } // }), // //if (isWifiEnabled) //todo // attendanceMethod("Wifi", Icons.wifi, isWifiEnabled, () { // // if (AppState().getIsHuawei) { // if (false) { // checkHuaweiLocationPermission("WIFI"); // } else { // location.Location.isEnabled((bool isEnabled) { // if (isEnabled) { // location.Location.havePermission((bool permission) { // if (permission) { // Utils.showLoading(context); // location.Location.getCurrentLocation( // (Position position, bool isMocked) { // if (isMocked) { // Utils.hideLoading(context); // markFakeAttendance("WIFI", position.latitude.toString() ?? "", position.longitude.toString() ?? ""); // } else { // Utils.hideLoading(context); // //todo performWifiAttendance(widget.model, lat: position.latitude.toString() ?? "", lng: position.longitude.toString() ?? ""); // } // }, // () { // Utils.hideLoading(context); // Utils.confirmDialog(context, "Unable to determine your location, Please make sure that your location services are turned on & working."); // }, // context, // ); // } else { // showDialog( // context: context, // builder: (BuildContext cxt) => ConfirmDialog( // message: "You need to give location permission to mark attendance", // onTap: () async { // Navigator.pop(context); // await Geolocator.openAppSettings(); // }, // ), // ); // } // }); // } else { // showDialog( // context: context, // builder: (BuildContext cxt) => ConfirmDialog( // message: "You need to enable location services to mark attendance", // onTap: () async { // Navigator.pop(context); // await Geolocator.openLocationSettings(); // }, // ), // ); // } // }); // } // }), // // if (isQrEnabled) //todo // attendanceMethod(SwipeTypeEnum.QR.name, Icons.qr_code_2, true, () async { // handleSwipe(swipeType: SwipeTypeEnum.QR, isEnable: true); // return; // // if (AppState().getIsHuawei) { // if (false) { // checkHuaweiLocationPermission("QR"); // } else { // location.Location.isEnabled((bool isEnabled) { // if (isEnabled) { // location.Location.havePermission((bool permission) { // if (permission) { // Utils.showLoading(context); // location.Location.getCurrentLocation( // (Position position, bool isMocked) { // if (isMocked) { // Utils.hideLoading(context); // markFakeAttendance("QR", position.latitude.toString() ?? "", position.longitude.toString() ?? ""); // } else { // Utils.hideLoading(context); // //todo performQrCodeAttendance(widget.model, lat: position.latitude.toString() ?? "", lng: position.longitude.toString() ?? ""); // } // }, // () { // Utils.hideLoading(context); // Utils.confirmDialog(context, "Unable to determine your location, Please make sure that your location services are turned on & working."); // }, // context, // ); // } else { // showDialog( // context: context, // builder: (BuildContext cxt) => ConfirmDialog( // message: "You need to give location permission to mark attendance", // onTap: () async { // Navigator.pop(context); // await Geolocator.openAppSettings(); // }, // ), // ); // } // }); // } else { // showDialog( // context: context, // builder: (BuildContext cxt) => ConfirmDialog( // message: "You need to enable location services to mark attendance", // onTap: () async { // Navigator.pop(context); // await Geolocator.openLocationSettings(); // }, // ), // ); // } // }); // } // }), // ], // ) // ], // ), // ); // } // // void handleSwipe({required SwipeTypeEnum swipeType,required bool isEnable,}){ // log('handle swipe value is ${swipeType.name}'); // // if (AppState().getIsHuawei) { // if (false) { // checkHuaweiLocationPermission("NFC"); // } else { // location.Location.isEnabled((bool isEnabled) { // if (isEnabled) { // location.Location.havePermission((bool permission) { // if (permission) { // Utils.showLoading(context); // location.Location.getCurrentLocation( // (Position position, bool isMocked) { // if (isMocked) { // Utils.hideLoading(context); // markFakeAttendance(swipeType.name, position.latitude.toString() ?? "", position.longitude.toString() ?? ""); // } else { // Utils.hideLoading(context); // //todo performNfcAttendance(widget.model, lat: position.latitude.toString() ?? "", lng: position.longitude.toString() ?? ""); // handleSwipeOperation(swipeType: swipeType,lat: position.latitude,lang: position.longitude); // } // }, // () { // Utils.hideLoading(context); // Utils.confirmDialog(context, "Unable to determine your location, Please make sure that your location services are turned on & working."); // }, // context, // ); // } else { // showDialog( // context: context, // builder: (BuildContext cxt) => ConfirmDialog( // message: "You need to give location permission to mark attendance", // onTap: () async { // Navigator.pop(context); // await Geolocator.openAppSettings(); // }, // ), // ); // } // }); // } else { // showDialog( // context: context, // builder: (BuildContext cxt) => ConfirmDialog( // message: "You need to enable location services to mark attendance", // onTap: () async { // Navigator.pop(context); // await Geolocator.openLocationSettings(); // }, // ), // ); // } // }); // } // } // // void handleSwipeOperation({required SwipeTypeEnum swipeType,double ?lat, double ?lang}){ // switch(swipeType){ // case SwipeTypeEnum.NFC: // handleNfcAttendance(latitude: lat,longitude: lang); // return; // case SwipeTypeEnum.QR: // performQrCodeAttendance(latitude: lat,longitude: lang); // return; // case SwipeTypeEnum.Wifi: // return; // // } // } // // void getHuaweiCurrentLocation(String attendanceType) async { // try { // Utils.showLoading(context); // FusedLocationProviderClient locationService = FusedLocationProviderClient()..initFusedLocationService(); // LocationRequest locationRequest = LocationRequest(); // locationRequest.priority = LocationRequest.PRIORITY_BALANCED_POWER_ACCURACY; // locationRequest.interval = 500; // List locationRequestList = [locationRequest]; // LocationSettingsRequest locationSettingsRequest = LocationSettingsRequest(requests: locationRequestList); // // late StreamSubscription _streamSubscription; // int requestCode = (await (locationService.requestLocationUpdates(locationRequest)))!; // // _streamSubscription = locationService.onLocationData!.listen( // (Location location) async { // Utils.hideLoading(context); // await locationService.removeLocationUpdates(requestCode); // if (attendanceType == "QR") { // // todo performQrCodeAttendance(widget.model, lat: location.latitude.toString() ?? "", lng: location.longitude.toString() ?? ""); // } // if (attendanceType == "WIFI") { // // todo performWifiAttendance(widget.model, lat: location.latitude.toString() ?? "", lng: location.longitude.toString() ?? ""); // } // if (attendanceType == "NFC") { // //todo performNfcAttendance(widget.model, lat: location.latitude.toString() ?? "", lng: location.longitude.toString() ?? ""); // } // requestCode = 0; // }, // ); // // // locationService.checkLocationSettings(locationSettingsRequest).then((settings) async { // // await locationService.getLastLocation().then((value) { // // if (value.latitude == null || value.longitude == null) { // // showDialog( // // context: context, // // builder: (BuildContext cxt) => ConfirmDialog( // // message: "Unable to get your location, Please check your location settings & try again.", // // onTap: () { // // Navigator.pop(context); // // }, // // ), // // ); // // } else { // // if (attendanceType == "QR") { // // performQrCodeAttendance(widget.model, lat: value.latitude.toString() ?? "", lng: value.longitude.toString() ?? ""); // // } // // if (attendanceType == "WIFI") { // // performWifiAttendance(widget.model, lat: value.latitude.toString() ?? "", lng: value.longitude.toString() ?? ""); // // } // // if (attendanceType == "NFC") { // // performNfcAttendance(widget.model, lat: value.latitude.toString() ?? "", lng: value.longitude.toString() ?? ""); // // } // // } // // }).catchError((error) { // // log("HUAWEI LOCATION getLastLocation ERROR!!!!!"); // // log(error); // // }); // // }).catchError((error) { // // log("HUAWEI LOCATION checkLocationSettings ERROR!!!!!"); // // log(error); // // if (error.code == "LOCATION_SETTINGS_NOT_AVAILABLE") { // // // Location service not enabled. // // } // // }); // } catch (error) { // log("HUAWEI LOCATION ERROR!!!!!"); // log('$error'); // Utils.hideLoading(context); // // Utils.handleException(error, context, null); // } // } // // Future handleNfcAttendance({double? latitude = 0, double? longitude = 0}) async { // final dashBoardProvider = Provider.of(context, listen: false); // // if (Platform.isIOS) { // Utils.readNFc(onRead: (String nfcId) async { // await _processNfcAttendance(dashBoardProvider, nfcId, latitude, longitude); // }); // } else { // showNfcReader(context, onNcfScan: (String? nfcId) async { // await _processNfcAttendance(dashBoardProvider, nfcId ?? '', latitude, longitude); // }); // } // } // // // Future _processNfcAttendance( // DashBoardProvider dashBoardProvider, // String nfcId, // double? latitude, // double? longitude, // ) async { // Utils.showLoading(context); // try { // final swipeModel = Swipe( // swipeTypeValue: SwipeTypeEnum.NFC.getIntFromSwipeTypeEnum(), // value: nfcId, // latitude: latitude, // longitude: longitude, // ); // // final swipeResponse = await dashBoardProvider.makeSwipe(model: swipeModel); // log('swipe response i got is ${swipeResponse.toJson()}'); // // if (swipeResponse.responseCode != 1) { // Utils.hideLoading(context); // _showErrorDialog(swipeResponse.message ?? "Unexpected error occurred"); // } else { // final isSuccess = swipeResponse.data; // log('nfc swipe response is ${isSuccess}'); // if (Platform.isIOS) await Future.delayed(const Duration(seconds: 3)); // Utils.hideLoading(context); // _showSuccessDialog(); // } // } catch (error) { // Utils.hideLoading(context); // // Uncomment below line for error handling if needed // // Utils.handleException(error, context, null); // } // } // // // void _showErrorDialog(String message) { // showDialog( // context: context, // builder: (context) => ConfirmDialog( // message: message, // onTap: () => Navigator.pop(context), // ), // ); // } // // void _showSuccessDialog() { // showMDialog( // context, // backgroundColor: Colors.transparent, // isDismissable: true, // child: SuccessDialog(widget.isFromDashboard), // ); // } // // // //older code.... // Future performNfcAttendance({double? lat = 0, double ?lng = 0}) async { // DashBoardProvider dashBoardProvider = Provider.of(context,listen:false); // if (Platform.isIOS) { // Utils.readNFc(onRead: (String nfcId) async { // Utils.showLoading(context); // try { // SwipeModel? swipeResponse = await dashBoardProvider.makeSwipe(model: Swipe(swipeTypeValue: SwipeTypeEnum.NFC.getIntFromSwipeTypeEnum(), value: '', latitude: lat, longitude: lng)); // if (swipeResponse.responseCode != 1) { // Utils.hideLoading(context); // showDialog( // context: context, // builder: (BuildContext cxt) => ConfirmDialog( // message: swipeResponse.message ?? "Unexpected error occurred", // onTap: () { // Navigator.pop(context); // }, // ), // ); // } else { // bool status = swipeResponse.data; // if (Platform.isIOS) await Future.delayed(const Duration(seconds: 3)); // Utils.hideLoading(context); // showMDialog( // context, // backgroundColor: Colors.transparent, // isDismissable: true, // child: SuccessDialog(widget.isFromDashboard), // ); // } // } catch (ex) { // Utils.hideLoading(context); // // Utils.handleException(ex, context, null); // } // }); // } else { // showNfcReader(context, onNcfScan: (String? nfcId) async { // Utils.showLoading(context); // try { // SwipeModel? swipeResponse = await dashBoardProvider.makeSwipe(model: Swipe(swipeTypeValue: SwipeTypeEnum.NFC.getIntFromSwipeTypeEnum(), value: nfcId??'', latitude: lat, longitude: lng)); // log('api response i got is ${swipeResponse.toJson()}'); // if (swipeResponse.responseCode != 1) { // Utils.hideLoading(context); // showDialog( // context: context, // builder: (BuildContext cxt) => ConfirmDialog( // message: swipeResponse.message ?? "Unexpected error occurred", // onTap: () { // Navigator.pop(context); // }, // ), // ); // } else { // bool status = swipeResponse.data; //use this status to get transactions. // if (Platform.isIOS) await Future.delayed(const Duration(seconds: 3)); // Utils.hideLoading(context); // showMDialog( // context, // backgroundColor: Colors.transparent, // isDismissable: true, // child: SuccessDialog(widget.isFromDashboard), // ); // } // } catch (ex) { // Utils.hideLoading(context); // // Utils.handleException(ex, context, null); // } // // Utils.showLoading(context); // // try { // // GenericResponseModel? g = await DashboardApiClient().markAttendance(pointType: 2, nfcValue: nfcId ?? "", isGpsRequired: isNfcLocationEnabled, lat: lat, long: lng); // // if (g?.messageStatus != 1) { // // Utils.hideLoading(context); // // showDialog( // // context: context, // // builder: (BuildContext cxt) => ConfirmDialog( // // message: g?.errorEndUserMessage ?? "Unexpected error occurred", // // onTap: () { // // Navigator.pop(context); // // }, // // ), // // ); // // } else { // // bool status = await model.fetchAttendanceTracking(context); // // Utils.hideLoading(context); // // showMDialog( // // context, // // backgroundColor: Colors.transparent, // // isDismissable: false, // // child: SuccessDialog(widget.isFromDashboard), // // ); // // } // // } catch (ex) { // // log(ex); // // Utils.hideLoading(context); // // // Utils.handleException(ex, context, (String msg) { // // // Utils.confirmDialog(context, msg); // // // }); // // } // }); // } // } // // // // void showMDialog(context, {Widget? child, Color? backgroundColor, bool isDismissable = true, bool isBusniessCard = false}) async { // return showDialog( // context: context, // barrierDismissible: isDismissable, // builder: (context) { // return Dialog( // shape: isBusniessCard // ? const RoundedRectangleBorder( // borderRadius: BorderRadius.all( // Radius.circular(15.0), // ), // ) // : null, // backgroundColor: backgroundColor, // child: child, // ); // }, // ); // } // // // // Future checkSession() async { // // try { // // Utils.showLoading(context); // // await DashboardApiClient().getOpenMissingSwipes(); // // Utils.hideLoading(context); // // return true; // // } catch (ex) { // // Utils.hideLoading(context); // // Utils.handleException(ex, context, null); // // return false; // // } // // } // // // //TODO need to confirm .... // // Future performWifiAttendance({double? latitude, double? lng}) async { // // // if (Platform.isAndroid) { // // // if (!(await checkSession())) { // // // return; // // // } // // // } // // Utils.showLoading(context); // // bool isConnected = await WiFiForIoTPlugin.connect(AppState().getMohemmWifiSSID ?? "", // // password: AppState().getMohemmWifiPassword ?? "", joinOnce: Platform.isIOS ? false : true, security: NetworkSecurity.WPA, withInternet: false); // // // // if (Platform.isIOS) { // // if (await WiFiForIoTPlugin.getSSID() == AppState().getMohemmWifiSSID) { // // isConnected = true; // // } else { // // isConnected = false; // // } // // } // // // // if (isConnected && AppState().isAuthenticated) { // // await WiFiForIoTPlugin.forceWifiUsage(true); // // await Future.delayed(const Duration(seconds: 6)); // // try { // // GenericResponseModel? g = await DashboardApiClient().markAttendance(pointType: 3, nfcValue: "", isGpsRequired: isWifiLocationEnabled, lat: lat, long: lng); // // bool status = await model.fetchAttendanceTracking(context); // // Utils.hideLoading(context); // // await closeWifiRequest(); // // if (g?.messageStatus == 2) { // // showDialog( // // barrierDismissible: true, // // context: context, // // builder: (cxt) => ConfirmDialog( // // message: g?.errorEndUserMessage ?? "", // // onTap: () { // // Navigator.pop(context); // // }, // // onCloseTap: () {}, // // ), // // ); // // } else { // // showMDialog( // // context, // // backgroundColor: Colors.transparent, // // isDismissable: false, // // child: SuccessDialog(widget.isFromDashboard), // // ); // // } // // } catch (ex) { // // await closeWifiRequest(); // // Utils.hideLoading(context); // // Utils.handleException(ex, context, null); // // } // // } else { // // if (AppState().isAuthenticated) { // // Utils.hideLoading(context); // // Utils.confirmDialog(context, "LocaleKeys.comeNearHMGWifi.tr()"); // // } else { // // await closeWifiRequest(); // // } // // } // // } // // Future closeWifiRequest() async { // if (Platform.isAndroid) { // await WiFiForIoTPlugin.forceWifiUsage(false); // } // return await WiFiForIoTPlugin.disconnect(); // } // // Future performQrCodeAttendance( {double ? latitude , double ?longitude}) async { // DashBoardProvider dashBoardProvider = Provider.of(context,listen: false); // var qrCodeValue = await Navigator.of(context).push( // MaterialPageRoute( // builder: (BuildContext context) => QrScannerDialog(), // ), // ); // if (qrCodeValue != null) { // Utils.showLoading(context); // try { // final swipeModel = Swipe( // swipeTypeValue: SwipeTypeEnum.QR.getIntFromSwipeTypeEnum(), // value: qrCodeValue, // latitude: latitude, // longitude: longitude, // ); // log('model i got to scan qr is ${swipeModel.toJson()}'); // final swipeResponse = await dashBoardProvider.makeSwipe(model: swipeModel); // log('response of swipe is ${swipeResponse.toJson()}'); // // bool status = await swipeResponse.data; // Utils.hideLoading(context); // if (swipeResponse.responseCode == 2) { // showDialog( // barrierDismissible: true, // context: context, // builder: (cxt) => ConfirmDialog( // message: swipeResponse.message ?? "", // onTap: () { // Navigator.pop(context); // }, // onCloseTap: () {}, // ), // ); // } else { // showMDialog( // context, // backgroundColor: Colors.transparent, // isDismissable: true, // child: SuccessDialog(widget.isFromDashboard), // ); // } // } catch (ex) { // log('$ex'); // Utils.hideLoading(context); // //this need to confirm where it comes.. // // Utils.handleException(ex, context, null); // } // } // } // // void markFakeAttendance(dynamic sourceName, String lat, String long) async { // Utils.showLoading(context); // try { // // await DashboardApiClient().markFakeLocation(sourceName: sourceName, lat: lat, long: long); // Utils.hideLoading(context); // Utils.confirmDialog(context, "LocaleKeys.fakeLocation.tr()"); // } catch (ex) { // log('$ex'); // Utils.hideLoading(context); // //Utils.handleException(ex, context, null); // } // } // // Widget attendanceMethod(String title, IconData iconData, bool isEnabled, VoidCallback onPress) => Container( // decoration: BoxDecoration( // borderRadius: BorderRadius.circular(15), // color: isEnabled ? null : Colors.grey.withOpacity(.5), // gradient: isEnabled // ? const LinearGradient( // transform: GradientRotation(.64), // begin: Alignment.topRight, // end: Alignment.bottomLeft, // colors: [ // //ToDo set Colors according to design provided by designer... // Colors.blue, // Colors.green, // // AppColor.gradiantEndColor, // // MyColors.gradiantStartColor, // ], // ) // : null, // ), // clipBehavior: Clip.antiAlias, // padding: const EdgeInsets.only(left: 10, right: 10, top: 14, bottom: 14), // child: Column( // crossAxisAlignment: CrossAxisAlignment.start, // children: [ // // SvgPicture.asset(image, color: Colors.white, alignment: Alignment.topLeft).expanded, // Icon(iconData, color: isEnabled ? AppColor.black35 : Colors.grey), // title.heading6(context), // // title.toText17(isBold: true, color: Colors.white), // ], // ), // ).onPress( // () { // log('isEnabled is ${!isEnabled}'); // if (!isEnabled) return; // onPress(); // }, // ); // }