import 'dart:developer'; import 'dart:io'; import 'package:diplomaticquarterapp/config/config.dart'; import 'package:diplomaticquarterapp/config/shared_pref_kay.dart'; import 'package:diplomaticquarterapp/core/service/client/base_app_client.dart'; import 'package:diplomaticquarterapp/locator.dart'; import 'package:diplomaticquarterapp/models/Authentication/authenticated_user.dart'; import 'package:diplomaticquarterapp/uitl/PlatformBridge.dart'; import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/widgets/dialogs/alert_dialog.dart'; import 'package:diplomaticquarterapp/widgets/dialogs/confirm_dialog.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; // import 'package:wifi/wifi.dart'; import 'gif_loader_dialog_utils.dart'; class HMGNetworkConnectivity { final _platformBridge = PlatformBridge.shared(); final BuildContext context; late Function callBack; final String GUEST_SSID = "HMG-MobileApp"; final String PATIENT_SSID = "GUEST-POC"; HMGNetworkConnectivity(this.context); late AuthenticatedUser userData; start() { // getUserData().then((value) { // userData = value; // checkAndConnectIfNoInternet(); // }); } void checkAndConnectIfNoInternet() async { // getMyWifiCredentials((username, password){ // print(""); // }); // // return; String pingUrl = "$BASE_URL$PING_SERVICE"; // pingUrl = "https://captive.apple.com"; // String ssid = await Wifi.ssid.catchError((error) { // log(error.toString()); // }); // bool alreadyConnected = ssid == GUEST_SSID; // BaseAppClient().simpleGet(pingUrl, onSuccess: (dynamic response, int statusCode) { // log("Having internet with status code: $statusCode"); // }, onFailure: (String error, int statusCode) { // if (alreadyConnected) // showFailDailog(TranslationBase.of(context).failedToAccessHmgServices); // else { // confirmFromUser(connectForLocalAccess); // } // }); // } void confirmFromUser(VoidCallback confirmCallback) { TranslationBase translator = TranslationBase.of(context); void doIt() { ConfirmDialog( context: context, confirmMessage: translator.wantToConnectWithHmgNetwork, okText: translator.yes, okFunction: () { // ConfirmDialog.closeAlertDialog(context); confirmCallback(); }, cancelText: translator.no, cancelFunction: () { ConfirmDialog.closeAlertDialog(context); }).showAlertDialog(context); } // if (Platform.isAndroid) // Wifi.list(GUEST_SSID).then((value) { // if (!value.indexWhere((element) => element.ssid == GUEST_SSID).isNegative) doIt(); // }); // else // doIt(); } void showFailDailog(String message) { TranslationBase translator = TranslationBase.of(context); AlertDialogBox( context: context, okText: translator.ok, confirmMessage: message, okFunction: () { AlertDialogBox.closeAlertDialog(context); }).showAlertDialog(context); } Future getUserData() async { var userData = AuthenticatedUser.fromJson( await AppSharedPreferences().getObject(MAIN_USER)); return userData; } connectForLocalAccess() { String patientID = userData.patientID.toString(); GifLoaderDialogUtils.showMyDialog(context); _platformBridge.connectHMGGuestWifi(GUEST_SSID).then((value) async { if (value == 0) { GifLoaderDialogUtils.hideDialog(context); } else { // getPatientWifiCredentials(patientID, (username, password) async { // final result = await _platformBridge.connectHMGInternetWifi(PATIENT_SSID, username, password).catchError((err) => print(err.toString())); // GifLoaderDialogUtils.hideDialog(context); // if (result == 1) { // // Success // } // }); } }); } // // getPatientWifiCredentials(String patientID, Function(String username, String password) successCallback) { // final body = {"PatientID": patientID}; // locator().post(WIFI_CREDENTIALS, body: body, onSuccess: (dynamic response, int statusCode) { // print(response); // var data = response["Hmg_SMS_Get_By_ProjectID_And_PatientIDList"]; // if (data is List && data.first != null) { // final username = data.first['UserName']; // final password = data.first['Password']; // if (username != null && password != null && username.isNotEmpty && password.isNotEmpty) { // successCallback(username, password); // } // } // }, onFailure: (String error, int statusCode) { // print(error); // }, bypassConnectionCheck: true); // } // } ///Commeneted code need to reimplement }