master
Haroon Amjad 2 months ago
parent 3f05a1fb46
commit 034ab30229

@ -42,7 +42,13 @@
<uses-permission
android:name="android.permission.FOREGROUND_SERVICE_MICROPHONE"
tools:node="remove" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" tools:node="remove" />
<!-- Added by open_filex -->
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" tools:node="remove" />
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO" tools:node="remove" />
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO" tools:node="remove" />
<uses-permission
android:name="android.permission.ACCESS_BACKGROUND_LOCATION"
tools:node="remove" /> <!-- <uses-permission android:name="android.permission.INTERNET" /> -->

@ -0,0 +1,3 @@
<svg width="34" height="30" viewBox="0 0 34 30" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M7.07442 16.2324C7.09802 16.232 7.12202 16.232 7.14602 16.232H8.66682C9.58642 16.232 10.3332 16.9788 10.3332 17.8984V28.3332C10.3332 29.254 9.58722 30 8.66682 30H7.14602C5.32042 30 3.56962 29.2748 2.27882 27.984C0.988017 26.6932 0.262817 24.9416 0.262817 23.116C0.262817 21.2904 0.988017 19.5388 2.27882 18.248C2.71802 17.8088 3.21042 17.4352 3.74082 17.1332V13.18C3.74082 5.9008 9.64202 0 16.9208 0H16.926C20.4632 0 23.8552 1.4052 26.3564 3.9064C28.8576 6.4072 30.2628 9.7996 30.2628 13.3368V17.1328C32.3396 18.318 33.7396 20.5536 33.7396 23.116C33.7396 26.9176 30.6576 30 26.856 30H25.3332C24.4128 30 23.6668 29.254 23.6668 28.3332V17.8984C23.6668 16.9788 24.4136 16.232 25.3332 16.232H26.856C26.8804 16.232 26.9048 16.232 26.9292 16.2324V13.3368C26.9292 10.6836 25.8756 8.1392 23.9996 6.2632C22.1236 4.3872 19.5792 3.3332 16.926 3.3332H16.9208C11.4828 3.3332 7.07442 7.742 7.07442 13.18V16.2324ZM10.3332 11.5216C10.3332 10.602 11.08 9.8552 12 9.8552C12.92 9.8552 13.6668 10.602 13.6668 11.5216V13.8404C13.6668 14.7604 12.92 15.5072 12 15.5072C11.08 15.5072 10.3332 14.7604 10.3332 13.8404V11.5216ZM20.3332 11.5216C20.3332 10.602 21.08 9.8552 22 9.8552C22.92 9.8552 23.6668 10.602 23.6668 11.5216V13.8404C23.6668 14.7604 22.92 15.5072 22 15.5072C21.08 15.5072 20.3332 14.7604 20.3332 13.8404V11.5216ZM15.384 9.2028C15.384 8.2832 16.1308 7.5364 17.0508 7.5364C17.9704 7.5364 18.7172 8.2832 18.7172 9.2028V16.1596C18.7172 17.0792 17.9704 17.826 17.0508 17.826C16.1308 17.826 15.384 17.0792 15.384 16.1596V9.2028Z" fill="#2B353E"/>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

@ -0,0 +1,3 @@
<svg width="38" height="30" viewBox="0 0 38 30" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.17315 8.93805V8.93867C4.51503 19.2193 11.3338 25.9456 21.4844 29.2787C21.4856 29.2793 21.4863 29.2793 21.4869 29.2799C23.6925 29.9937 26.1119 29.4118 27.7506 27.7724C28.2488 27.2743 28.7625 26.7599 29.2182 26.3049C29.72 25.8031 30.0019 25.1218 30.0019 24.4124C30.0019 23.7024 29.72 23.0218 29.2182 22.5199C28.2644 21.5662 27.0219 20.323 26.0682 19.3693C25.5663 18.8674 24.885 18.5855 24.1757 18.5855C23.4657 18.5855 22.785 18.8674 22.2832 19.3693C21.9919 19.6605 21.6919 19.9599 21.4182 20.2268C21.4163 20.2287 21.4144 20.2306 21.4119 20.2324C20.9863 20.6587 20.3425 20.7793 19.7913 20.5374C15.2513 18.5187 11.9632 15.2112 9.91316 10.6231C9.67004 10.0693 9.79129 9.42305 10.2188 8.99492L11.0638 8.15054C11.5657 7.64804 11.8476 6.96742 11.8476 6.25742C11.8476 5.54804 11.5657 4.8668 11.0638 4.36493C10.11 3.41118 8.86693 2.16867 7.9138 1.21492C7.4113 0.713049 6.73064 0.431175 6.02064 0.431175C5.31127 0.431175 4.63005 0.713049 4.12817 1.21492C3.6688 1.6743 3.1494 2.19368 2.6644 2.71368C1.0419 4.34181 0.464405 6.74555 1.17315 8.93805ZM32.75 13.0174V1.04492C32.75 0.699922 32.47 0.419922 32.125 0.419922C31.78 0.419922 31.5 0.699922 31.5 1.04492V13.0174C31.5 13.3624 31.78 13.6424 32.125 13.6424C32.47 13.6424 32.75 13.3624 32.75 13.0174ZM24 13.0174V1.04492C24 0.699922 23.72 0.419922 23.375 0.419922C23.03 0.419922 22.75 0.699922 22.75 1.04492V13.0174C22.75 13.3624 23.03 13.6424 23.375 13.6424C23.72 13.6424 24 13.3624 24 13.0174ZM37.125 10.4199V3.64243C37.125 3.29743 36.845 3.01743 36.5 3.01743C36.155 3.01743 35.875 3.29743 35.875 3.64243V10.4199C35.875 10.7649 36.155 11.0449 36.5 11.0449C36.845 11.0449 37.125 10.7649 37.125 10.4199ZM19.625 10.4199V3.64243C19.625 3.29743 19.345 3.01743 19 3.01743C18.655 3.01743 18.375 3.29743 18.375 3.64243V10.4199C18.375 10.7649 18.655 11.0449 19 11.0449C19.345 11.0449 19.625 10.7649 19.625 10.4199ZM28.375 10.4199V3.64243C28.375 3.29743 28.095 3.01743 27.75 3.01743C27.405 3.01743 27.125 3.29743 27.125 3.64243V10.4199C27.125 10.7649 27.405 11.0449 27.75 11.0449C28.095 11.0449 28.375 10.7649 28.375 10.4199Z" fill="#2B353E"/>
</svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

@ -0,0 +1,4 @@
<svg width="36" height="20" viewBox="0 0 36 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M0.894775 2.60511V13.8156C0.894775 16.9998 3.47372 19.5788 6.65793 19.5788H23.3948C24.579 19.5788 25.5527 18.6051 25.5527 17.4209V6.18406C25.5527 2.99985 22.9737 0.420898 19.7895 0.420898H3.05267C1.86846 0.420898 0.894775 1.36827 0.894775 2.52616V2.60511Z" fill="#2B353E"/>
<path d="M27.4737 15.0787L32.1053 19.1314C32.8421 19.7893 34 19.7103 34.6579 18.9735C34.9474 18.6314 35.1053 18.2103 35.1053 17.7893V2.21032C35.1053 1.21032 34.2895 0.420847 33.3158 0.394531C32.8684 0.394531 32.4474 0.552426 32.1316 0.8419L27.4737 4.92085C27.0789 5.26295 26.8684 5.76295 26.8684 6.28927V13.7366C26.8684 14.2366 27.1053 14.7366 27.4737 15.0787Z" fill="#2B353E"/>
</svg>

After

Width:  |  Height:  |  Size: 765 B

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?><!-- Generator: Adobe Illustrator 24.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve">
<style type="text/css">
.st0{fill:#fff;}
</style>
<g id="XMLID_2_">
<path id="XMLID_8_" class="st0" d="M393.6,433.7c0-5.6-1.9-10.3-5.6-14s-8.4-5.6-14-5.6s-10.3,1.9-14,5.6s-5.6,8.4-5.6,14
s1.9,10.3,5.6,14c3.7,3.7,8.4,5.6,14,5.6s10.3-1.9,14-5.6C391.7,443.9,393.6,439.3,393.6,433.7z M472.8,433.7
c0-5.6-1.9-10.3-5.6-14s-8.4-5.6-14-5.6s-10.3,1.9-14,5.6c-4.7,4.7-6.5,9.3-6.5,14c0,5.6,1.9,10.3,5.6,14s8.4,5.6,14,5.6
s10.3-1.9,14-5.6C471,443.9,472.8,439.3,472.8,433.7z M512,364.6v98.9c0,8.4-2.8,14.9-8.4,20.5s-13.1,8.4-20.5,8.4H28.9
c-8.4,0-14.9-2.8-20.5-8.4S0,471,0,463.5v-98.9c0-8.4,2.8-14.9,8.4-20.5c5.6-5.6,13.1-8.4,20.5-8.4h142.7l42,42
c12.1,11.2,26.1,17.7,42,17.7s29.8-5.6,42-17.7l42-42h142.7c8.4,0,14.9,2.8,20.5,8.4C509.2,349.7,512,357.2,512,364.6z
M412.2,189.3c3.7,8.4,1.9,15.9-4.7,21.4l-138,138c-3.7,3.7-8.4,5.6-14,5.6s-10.3-1.9-14-5.6l-138-138c-6.5-5.6-7.5-13.1-4.7-21.4
c3.7-8.4,9.3-12.1,18.7-12.1h79.3v-138c0-5.6,1.9-10.3,5.6-14c3.7-3.7,8.4-5.6,14-5.6h79.3c5.6,0,10.3,1.9,14,5.6s5.6,8.4,5.6,14
v138h79.3C402,177.2,408.5,181.9,412.2,189.3z" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

@ -583,7 +583,7 @@
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1;
CURRENT_PROJECT_VERSION = 2;
DEVELOPMENT_TEAM = 3A359E86ZF;
ENABLE_BITCODE = NO;
FRAMEWORK_SEARCH_PATHS = (
@ -601,7 +601,7 @@
"$(inherited)",
"$(PROJECT_DIR)/Flutter",
);
MARKETING_VERSION = 4.6.004;
MARKETING_VERSION = 4.6.015;
PRODUCT_BUNDLE_IDENTIFIER = "com.HMG.HMG-Smartphone";
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
@ -735,7 +735,7 @@
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1;
CURRENT_PROJECT_VERSION = 2;
DEVELOPMENT_TEAM = 3A359E86ZF;
ENABLE_BITCODE = NO;
FRAMEWORK_SEARCH_PATHS = (
@ -753,7 +753,7 @@
"$(inherited)",
"$(PROJECT_DIR)/Flutter",
);
MARKETING_VERSION = 4.6.004;
MARKETING_VERSION = 4.6.015;
PRODUCT_BUNDLE_IDENTIFIER = "com.HMG.HMG-Smartphone";
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
@ -779,7 +779,7 @@
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1;
CURRENT_PROJECT_VERSION = 2;
DEVELOPMENT_TEAM = 3A359E86ZF;
ENABLE_BITCODE = NO;
FRAMEWORK_SEARCH_PATHS = (
@ -797,7 +797,7 @@
"$(inherited)",
"$(PROJECT_DIR)/Flutter",
);
MARKETING_VERSION = 4.6.004;
MARKETING_VERSION = 4.6.015;
PRODUCT_BUNDLE_IDENTIFIER = "com.HMG.HMG-Smartphone";
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";

@ -41,7 +41,7 @@
</Testables>
</TestAction>
<LaunchAction
buildConfiguration = "Release"
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
customLLDBInitFile = "$(SRCROOT)/Flutter/ephemeral/flutter_lldbinit"

@ -109,7 +109,7 @@
"size" : "83.5x83.5"
},
{
"filename" : "icon.jpg",
"filename" : "1024x1024bb.png",
"idiom" : "ios-marketing",
"scale" : "1x",
"size" : "1024x1024"

@ -1,4 +1,4 @@
storePassword=HmGsa123
keyPassword=HmGsa123
keyAlias=key
storeFile=DQKey.jks
keyAlias=hmg
storeFile=key

@ -354,7 +354,7 @@ var CAN_PAY_FOR_FOR_WALKIN_APPOINTMENT = 'Services/Doctors.svc/REST/CanPayForWal
var CHANNEL = 3;
var GENERAL_ID = 'Cs2020@2016\$2958';
var IP_ADDRESS = '10.20.10.20';
var VERSION_ID = 18.7;
var VERSION_ID = 18.8;
var SETUP_ID = '91877';
var LANGUAGE = 2;
// var PATIENT_OUT_SA = 0;

@ -187,7 +187,7 @@ class BaseAppClient {
// body['IdentificationNo'] = 1023854217;
// body['MobileNo'] = "531940021"; //0560717232
// body['PatientID'] = 3628599; //4609100
// body['PatientID'] = 53320; //4609100
// body['TokenID'] = "@dm!n";
// Patient ID: 3027574

@ -33,7 +33,6 @@ void main() async {
await Firebase.initializeApp();
await initLocalStorage();
// Pass all uncaught "fatal" errors from the framework to Crashlytics
// FlutterError.onError = FirebaseCrashlytics.instance.recordFlutterFatalError;
@ -116,8 +115,7 @@ class _MyApp extends State<MyApp> {
void openAppLink(Uri uri) {
print("the uri is $uri");
DeepLinkHandler.instance.handleDeepLinkAndNavigation(
locator<NavigationService>().navigatorKey.currentState, uri, context);
DeepLinkHandler.instance.handleDeepLinkAndNavigation(locator<NavigationService>().navigatorKey.currentState, uri, context);
}
@override
@ -175,40 +173,41 @@ class _MyApp extends State<MyApp> {
ChangeNotifierProvider<PayfortViewModel>(create: (context) => PayfortViewModel()),
],
child: Consumer<ProjectViewModel>(
builder: (context, projectProvider, child) => MaterialApp(
builder: (context, mchild) {
AppGlobal.projectViewModelContext = context;
return MediaQuery(
data: MediaQuery.of(context).copyWith(
textScaler: TextScaler.linear(1.0),
), //set desired text scale factor here
child: mchild!);
// Container(
// color: Colors.blue,
// ));
},
navigatorKey: locator<NavigationService>().navigatorKey,
showSemanticsDebugger: false,
title: 'Dr. AlHabib',
locale: projectProvider.appLocal,
localizationsDelegates: [
TranslationBaseDelegate(),
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
],
supportedLocales: [
const Locale('ar', ''), // Arabic
const Locale('en', ''), // English
],
theme: Provider.of<ThemeNotifier>(context).getTheme(),
initialRoute: SPLASH,
// initialRoute: CALL_PAGE,
// initialRoute: OPENTOK_CALL_PAGE,
// initialRoute: PACKAGES_OFFERS,
// initialRoute: PACKAGES_ORDER_COMPLETED,
routes: routes,
debugShowCheckedModeBanner: false,
builder: (context, projectProvider, child) => SafeArea(
top: false, // Set to true if you want to avoid the notch area as well
bottom: Platform.isIOS ? false : true,
child: MaterialApp(
builder: (context, mchild) {
AppGlobal.projectViewModelContext = context;
return MediaQuery(
data: MediaQuery.of(context).copyWith(
textScaler: TextScaler.linear(1.0),
), //set desired text scale factor here
child: mchild!);
},
navigatorKey: locator<NavigationService>().navigatorKey,
showSemanticsDebugger: false,
title: 'Dr. AlHabib',
locale: projectProvider.appLocal,
localizationsDelegates: [
TranslationBaseDelegate(),
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
],
supportedLocales: [
const Locale('ar', ''), // Arabic
const Locale('en', ''), // English
],
theme: Provider.of<ThemeNotifier>(context).getTheme(),
initialRoute: SPLASH,
// initialRoute: CALL_PAGE,
// initialRoute: OPENTOK_CALL_PAGE,
// initialRoute: PACKAGES_OFFERS,
// initialRoute: PACKAGES_ORDER_COMPLETED,
routes: routes,
debugShowCheckedModeBanner: false,
),
),
),
);

@ -51,9 +51,16 @@ class _SearchByHospitalState extends State<SearchByHospital> {
@override
void initState() {
WidgetsBinding.instance.addPostFrameCallback((_) {
locationUtils = new LocationUtils(isShowConfirmDialog: true, context: context);
locationUtils.getCurrentLocation();
getProjectsList();
// locationUtils = new LocationUtils(isShowConfirmDialog: true, context: context);
// locationUtils.getCurrentLocation();
// getProjectsList();
locationUtils = new LocationUtils(isShowConfirmDialog: false, context: context);
locationUtils.getCurrentLocation(callBack: (_) {
getProjectsList();
}, onConsentDeclined: () {
getProjectsList();
});
// getProjectsList();
});
}
@ -303,13 +310,13 @@ class _SearchByHospitalState extends State<SearchByHospital> {
GifLoaderDialogUtils.hideDialog(context);
} else {}
GifLoaderDialogUtils.hideDialog(context);
locationUtils.getCurrentLocation();
// locationUtils.getCurrentLocation();
}).catchError((err) {
GifLoaderDialogUtils.hideDialog(context);
locationUtils.getCurrentLocation();
// locationUtils.getCurrentLocation();
}).catchError((err) {
GifLoaderDialogUtils.hideDialog(context);
locationUtils.getCurrentLocation();
// locationUtils.getCurrentLocation();
print(err);
});
}

@ -132,8 +132,8 @@ class _LiveCareCallTypeSelectPageState extends State<LiveCareCallTypeSelectPage>
TranslationBase.of(context).next,
() {
if (mobileNo.isNotEmpty) {
widget.onSelectedMethod(selectedCallType, mobileNo);
Navigator.pop(context, [selectedCallType, mobileNo]);
widget.onSelectedMethod(selectedCallType, mobileNo);
} else {
AppToast.showErrorToast(message: TranslationBase.of(context).enterMobileNumber);
}

@ -1,15 +1,15 @@
@JS()
library streammixer.js;
import 'package:js/js.dart';
@JS('multiStreamsMixerFlutter')
external initMultiStreamsMixer(arrayOfMediaStreams);
@JS("MultiStreamsMixer")
class MultiStreamsMixer {
external MultiStreamsMixer(arrayOfMediaStreams, elementClass);
external getMixedStream();
external start();
}
// @JS()
// library streammixer.js;
// import 'package:js/js.dart';
//
//
// @JS('multiStreamsMixerFlutter')
// external initMultiStreamsMixer(arrayOfMediaStreams);
//
// @JS("MultiStreamsMixer")
// class MultiStreamsMixer {
// external MultiStreamsMixer(arrayOfMediaStreams, elementClass);
//
// external getMixedStream();
// external start();
// }

@ -24,7 +24,7 @@ class LocationUtils {
LocationUtils({required this.isShowConfirmDialog, required this.context, this.isHuawei = false, this.isShowLocationTimeoutDialog = true});
void getCurrentLocation({Function(LatLng)? callBack}) async {
void getCurrentLocation({Function(LatLng)? callBack, VoidCallback? onConsentDeclined}) async {
if (Platform.isAndroid && isHuawei) {
_getHMSCurrentLocation(callBack!);
} else {
@ -32,15 +32,18 @@ class LocationUtils {
if (value) {
await Geolocator.checkPermission().then((permission) async {
if (permission == LocationPermission.always || permission == LocationPermission.whileInUse) {
Geolocator.getCurrentPosition(desiredAccuracy: LocationAccuracy.medium, timeLimit: Duration(seconds: 5)).then((value) {
// Geolocator.getCurrentPosition(locationSettings: LocationSettings(accuracy: LocationAccuracy.medium, timeLimit: Duration(seconds: 5))).then((value) {
Geolocator.getLastKnownPosition().then((value) {
setLocation(value);
if (callBack != null) callBack(LatLng(value.latitude, value.longitude));
if (callBack != null) callBack(LatLng(value?.latitude ?? 0.0, value?.longitude ?? 0.0));
}).catchError((err) {
print(err);
if (isShowConfirmDialog && isShowLocationTimeoutDialog) {
showLocationTimeOutDialog(failureCallBack: () {
Geolocator.openAppSettings();
});
} else {
onConsentDeclined?.call();
}
});
}
@ -50,13 +53,16 @@ class LocationUtils {
Utils.showPermissionConsentDialog(context, TranslationBase.of(context).locationPermissionDialog, () async {
final hasPermission = await _handlePermission();
if (hasPermission) {
Geolocator.getCurrentPosition(desiredAccuracy: LocationAccuracy.medium, timeLimit: Duration(seconds: 10)).then((value) {
// Geolocator.getCurrentPosition(locationSettings: LocationSettings(accuracy: LocationAccuracy.medium, timeLimit: Duration(seconds: 5))).then((value) {
Geolocator.getLastKnownPosition().then((value) {
setLocation(value);
if (callBack != null) callBack(LatLng(value.latitude, value.longitude));
if (callBack != null) callBack(LatLng(value?.latitude ?? 0.0, value?.longitude ?? 0.0));
});
} else {
if (isShowConfirmDialog) showErrorLocationDialog(false, failureCallBack: () {});
}
}, onConsentDeclined: () {
onConsentDeclined?.call();
});
} else {
if (await Permission.location.request().isGranted) {
@ -81,20 +87,14 @@ class LocationUtils {
Future<bool> checkIfGPSIsEnabled() async {
if (Platform.isAndroid && isHuawei) {
FusedLocationProviderClient locationService =
FusedLocationProviderClient();
FusedLocationProviderClient locationService = FusedLocationProviderClient();
LocationRequest locationRequest = LocationRequest();
locationRequest.priority = LocationRequest.PRIORITY_HIGH_ACCURACY;
locationRequest.interval = 1000;
List<LocationRequest> locationRequestList = <LocationRequest>[
locationRequest
];
LocationSettingsRequest locationSettingsRequest =
LocationSettingsRequest(requests: locationRequestList);
List<LocationRequest> locationRequestList = <LocationRequest>[locationRequest];
LocationSettingsRequest locationSettingsRequest = LocationSettingsRequest(requests: locationRequestList);
bool success = false;
locationService
.checkLocationSettings(locationSettingsRequest)
.then((settings) {
locationService.checkLocationSettings(locationSettingsRequest).then((settings) {
success = true;
});
return success;
@ -238,8 +238,7 @@ class LocationUtils {
this.sharedPref.setDouble(USER_LAT, position?.latitude ?? 0.0);
this.sharedPref.setDouble(USER_LONG, position?.longitude ?? 0.0);
ProjectViewModel projectViewModel = Provider.of(context, listen: false);
projectViewModel.setLatitudeLongitude(
position?.latitude ?? 0.0, position?.longitude ?? 0.0);
projectViewModel.setLatitudeLongitude(position?.latitude ?? 0.0, position?.longitude ?? 0.0);
}
void setZeroLocation() {

@ -137,7 +137,7 @@ class Utils {
FocusScope.of(context).unfocus();
}
static showPermissionConsentDialog(BuildContext context, String message, VoidCallback? onTap) {
static showPermissionConsentDialog(BuildContext context, String message, VoidCallback? onTap, {VoidCallback? onConsentDeclined}) {
showDialog(
context: context,
builder: (cxt) => CovidConsentDialog(
@ -145,6 +145,7 @@ class Utils {
title: TranslationBase.of(context).covidConsentHeader,
message: message,
onTap: onTap!,
onConsentDeclined: onConsentDeclined!,
));
}

@ -8,8 +8,9 @@ class CovidConsentDialog extends StatelessWidget {
final String? message;
final String? okTitle;
final VoidCallback? onTap;
final VoidCallback? onConsentDeclined;
const CovidConsentDialog({Key? key, this.title, @required this.message, this.okTitle, this.onTap}) : super(key: key);
const CovidConsentDialog({Key? key, this.title, @required this.message, this.okTitle, this.onTap, this.onConsentDeclined}) : super(key: key);
@override
Widget build(BuildContext context) {
@ -42,6 +43,7 @@ class CovidConsentDialog extends StatelessWidget {
constraints: BoxConstraints(),
onPressed: () {
Navigator.pop(context);
onConsentDeclined?.call();
},
)
],
@ -57,7 +59,10 @@ class CovidConsentDialog extends StatelessWidget {
Expanded(
child: DefaultButton(
TranslationBase.of(context).declineLbl,
() => Navigator.pop(context),
() {
Navigator.pop(context);
onConsentDeclined?.call();
},
textColor: Colors.white,
color: CustomColors.accentColor,
),
@ -66,7 +71,7 @@ class CovidConsentDialog extends StatelessWidget {
Expanded(
child: DefaultButton(
okTitle ?? TranslationBase.of(context).ok,
() {
() {
Navigator.pop(context);
onTap!();
},

@ -38,9 +38,9 @@ class MyInAppBrowser extends InAppBrowser {
static String APPLE_PAY_PAYFORT_URL = 'https://hmgwebservices.com/PayFortWebLive/PayFortApi/MakeApplePayRequest'; // Payfort Payment Gateway URL LIVE
// static String APPLE_PAY_PAYFORT_URL = 'https://hmgwebservices.com/PayFortWebLive/PayFortApi/MakeApplePayRequest'; // Payfort Payment Gateway URL UAT
static String SERVICE_URL = 'https://hmgwebservices.com/PayFortWeb/pages/SendPayFortRequest.aspx'; // Payfort Payment Gateway URL UAT
// static String SERVICE_URL = 'https://hmgwebservices.com/PayFortWeb/pages/SendPayFortRequest.aspx'; // Payfort Payment Gateway URL UAT
// static String SERVICE_URL = 'https://hmgwebservices.com/PayFortWebLive/pages/SendPayFortRequest.aspx'; //Payfort Payment Gateway URL LIVE
static String SERVICE_URL = 'https://hmgwebservices.com/PayFortWebLive/pages/SendPayFortRequest.aspx'; //Payfort Payment Gateway URL LIVE
// static String SERVICE_URL = 'https://uat.hmgwebservices.com/payfortforvidaplus/pages/SendPayFortRequest.aspx'; //Payfort Payment Gateway URL UAT VIDA PLUS

@ -187,7 +187,7 @@ class DoctorHeader extends StatelessWidget {
child: Row(
mainAxisSize: MainAxisSize.min,
children: [
SvgPicture.asset(buttonIcon ?? 'assets/images/new/email.svg', width: 19.0),
SvgPicture.asset(buttonIcon ?? 'assets/images/new/email.svg', width: 19.0, color: Colors.white),
SizedBox(width: 4),
Text(
buttonTitle == null ? TranslationBase.of(context).sendEmail : buttonTitle!,

@ -1,7 +1,8 @@
name: hmg_patient_app
description: A new Flutter application.
version: 4.6.009+1
#version: 4.6.015+2
version: 4.6.0971+40500971
environment:
# sdk: ">=3.0.0 <3.13.0"

Loading…
Cancel
Save