diff --git a/Mohem/src/app/hmg-common/services/attend-services/attend-scan.service.ts b/Mohem/src/app/hmg-common/services/attend-services/attend-scan.service.ts index e73824fb..973a9bc6 100644 --- a/Mohem/src/app/hmg-common/services/attend-services/attend-scan.service.ts +++ b/Mohem/src/app/hmg-common/services/attend-services/attend-scan.service.ts @@ -59,8 +59,8 @@ export class AttendScanService { this.permissions.requestLocationAutherization().then(granted => { this.location = granted as boolean; if (this.location) { - this.backgroundGeolocation.getCurrentLocation({ timeout: 10000, enableHighAccuracy: true, maximumAge: 3000 }).then((resp) => { - if (this.platform.is('android')) { + if (this.platform.is('android')) { + this.backgroundGeolocation.getCurrentLocation({ timeout: 10000, enableHighAccuracy: true, maximumAge: 3000 }).then((resp) => { if (resp && (resp.latitude && resp.longitude)) { if (resp.isFromMockProvider || resp.mockLocationsEnabled) { this.isFakeLocationUsed = true; @@ -68,19 +68,25 @@ export class AttendScanService { this.lat = resp.latitude; this.longt = resp.longitude; this.attendance(); + } else { + this.common.presentAlert(this.ts.trPK('home', 'position-error')); } - } else { - if (resp && (resp.latitude && resp.longitude)) { - this.lat = resp.latitude; - this.longt = resp.longitude; + }, (error) => { + this.common.presentAlert(this.ts.trPK('home', 'position-error')); + }); + } else { + this.geolocation.getCurrentPosition({maximumAge: 3000, timeout: 10000, enableHighAccuracy: true}).then(resp => { + if(resp && resp.coords.latitude && resp.coords.longitude) { + this.lat = resp.coords.latitude; + this.longt = resp.coords.longitude; this.attendance(); } else { this.common.presentAlert(this.ts.trPK('home', 'position-error')); } - } - }, (error) => { + }).catch(error => { this.common.presentAlert(this.ts.trPK('home', 'position-error')); - }); + }); + } } else { return false; } diff --git a/Mohem/src/app/home/home.page.ts b/Mohem/src/app/home/home.page.ts index 1151e734..e97a1c77 100644 --- a/Mohem/src/app/home/home.page.ts +++ b/Mohem/src/app/home/home.page.ts @@ -246,8 +246,8 @@ export class HomePage implements OnInit { this.permissions.requestLocationAutherization().then(granted => { this.location = granted as boolean; if (this.location) { - this.backgroundGeolocation.getCurrentLocation({ timeout: 10000, enableHighAccuracy: true, maximumAge: 3000 }).then((resp) => { - if (this.platform.is('android')) { + if (this.platform.is('android')) { + this.backgroundGeolocation.getCurrentLocation({ timeout: 10000, enableHighAccuracy: true, maximumAge: 3000 }).then((resp) => { if (resp && (resp.latitude && resp.longitude)) { if (resp.isFromMockProvider || resp.mockLocationsEnabled) { this.isFakeLocationUsed = true; @@ -255,19 +255,25 @@ export class HomePage implements OnInit { this.lat = resp.latitude; this.longt = resp.longitude; this.attendance(); + } else { + this.common.presentAlert(this.ts.trPK('home', 'position-error')); } - } else { - if (resp && (resp.latitude && resp.longitude)) { - this.lat = resp.latitude; - this.longt = resp.longitude; + }, (error) => { + this.common.presentAlert(this.ts.trPK('home', 'position-error')); + }); + } else { + this.geolocation.getCurrentPosition({maximumAge: 3000, timeout: 10000, enableHighAccuracy: true}).then(resp => { + if(resp && resp.coords.latitude && resp.coords.longitude) { + this.lat = resp.coords.latitude; + this.longt = resp.coords.longitude; this.attendance(); } else { this.common.presentAlert(this.ts.trPK('home', 'position-error')); } - } - }, (error) => { + }).catch(error => { this.common.presentAlert(this.ts.trPK('home', 'position-error')); - }); + }); + } } else { return false; }