From 316ce130fc30be48e0cc9e53264665b144530a4c Mon Sep 17 00:00:00 2001 From: Zohaib Iqbal Kambrani <> Date: Sun, 14 Feb 2021 17:20:45 +0300 Subject: [PATCH] Android Wifi Attendance Completed... --- .../services/connector/connector.service.ts | 4 +- .../attendance-options.component.ts | 56 +- .../home/wifi-model/wifi-modal.component.html | 8 +- .../home/wifi-model/wifi-modal.component.scss | 7 +- .../home/wifi-model/wifi-modal.component.ts | 107 +- Mohem/src/assets/imgs/wifiConnect.gif | Bin 268337 -> 12072 bytes Mohem/src/assets/imgs/wifi_icon.png | Bin 1133 -> 1322 bytes Mohem/src/assets/localization/i18n.json | 4 + WifiWizard2.java | 1951 +++++++++++++++++ 9 files changed, 2088 insertions(+), 49 deletions(-) create mode 100644 WifiWizard2.java diff --git a/Mohem/src/app/hmg-common/services/connector/connector.service.ts b/Mohem/src/app/hmg-common/services/connector/connector.service.ts index 2857c3b1..acd8ff0e 100644 --- a/Mohem/src/app/hmg-common/services/connector/connector.service.ts +++ b/Mohem/src/app/hmg-common/services/connector/connector.service.ts @@ -24,8 +24,8 @@ export class ConnectorService { public static timeOut = 120 * 1000; // public static host = 'http://10.50.100.113:6060/'; // development service -public static host = 'https://uat.hmgwebservices.com/'; - // public static host = 'https://hmgwebservices.com/'; +// public static host = 'https://uat.hmgwebservices.com/'; + public static host = 'https://hmgwebservices.com/'; // public static host = 'http://10.50.100.198:6060/'; // public static host = 'http://10.50.100.113:6060/'; // development service /* public static host = 'http://10.50.100.198:6060/'; diff --git a/Mohem/src/app/home/attendance-options/attendance-options.component.ts b/Mohem/src/app/home/attendance-options/attendance-options.component.ts index 6de60b72..d17f3521 100644 --- a/Mohem/src/app/home/attendance-options/attendance-options.component.ts +++ b/Mohem/src/app/home/attendance-options/attendance-options.component.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, NgZone } from "@angular/core"; +import { Component, OnInit, NgZone, VERSION } from "@angular/core"; import { NFC } from "@ionic-native/nfc/ngx"; import { CommonService } from "src/app/hmg-common/services/common/common.service"; import { Platform } from "@ionic/angular"; @@ -13,6 +13,9 @@ import { attendanceSwipeScannerRequest } from "src/app/home/models/attendanceSwi import { Device } from "@ionic-native/device/ngx"; import { AttendanceService } from "src/app/home/services/attendance.services"; import { Response } from "src/app/hmg-common/services/models/response"; +import { WifiWizard2 } from "@ionic-native/wifi-wizard-2/ngx"; +import { OpenNativeSettings } from '@ionic-native/open-native-settings/ngx'; +import { DevicePermissionsService } from 'src/app/hmg-common/services/device-permissions/device-permissions.service'; @@ -41,7 +44,10 @@ export class AttendanceOptionsComponent implements OnInit { public modalController: ModalController, private device: Device, private attendance_service: AttendanceService, - public ngZone: NgZone + public ngZone: NgZone, + private wifiWizard2: WifiWizard2, + private openNativeSettings: OpenNativeSettings, + private devicePermissionsService:DevicePermissionsService ) {} ngOnInit() { @@ -173,21 +179,51 @@ export class AttendanceOptionsComponent implements OnInit { // Wifi Attendance public async startWifi() { + const isAndroid = this.platform.is("android"); + const isIOS = this.platform.is("ios"); + const isWifiEnabled = await this.wifiWizard2.isWifiEnabled(); + + if(isIOS){ + if(!isWifiEnabled){ + this.showWifiNotEnabled(); + return; + } + + }else if(isAndroid){ + let locationPermission = await this.devicePermissionsService.requestLocationAutherization(); + if(!locationPermission){ + return; + } + + if(!isWifiEnabled){ + this.wifiWizard2.setWifiEnabled(true).then(()=>{ + this.startWifi(); + }).catch((err) => { + console.debug(err); + this.showWifiNotEnabled(); + }); + return; + } + } + + // opening wifi dailog if all above conditions are passed (isWifiEnabled == true) let modal = await this.modalController.create({ component: WifiModalComponent, showBackdrop: true, - backdropDismiss: true, + backdropDismiss: false, }); modal.cssClass = "wifi-modal"; await modal.present(); + } + + - // modal = await this.modalController.create({ - // component: NfcModalComponent, - // showBackdrop: true, - // backdropDismiss: true, - // }); - // modal.cssClass = "nfc-modal"; - // await modal.present(); + showWifiNotEnabled(){ + this.common.showErrorMessageDialog(()=>{ + // this.openNativeSettings.open('wifi').then(()=>{}); + }, + this.ts.trPK("general", "ok"), + this.ts.trPK("general","wifi-not-enable-text")); } } diff --git a/Mohem/src/app/home/wifi-model/wifi-modal.component.html b/Mohem/src/app/home/wifi-model/wifi-modal.component.html index f064e06f..5a87fce4 100644 --- a/Mohem/src/app/home/wifi-model/wifi-modal.component.html +++ b/Mohem/src/app/home/wifi-model/wifi-modal.component.html @@ -3,13 +3,13 @@
-{{ "general, wifi-connect-message" | translate }}
-
+ {{ "general, success-attendance" | translate }}
p8-x3$o}#F$O&?GYlpyiQI|P^UXkYui`6e8R%QyfA)VetsTw4<5VMR`z<%
zJXUrrzt13TWM^P&im*4ewt`&GsHbo3U@yju-s!KGV2Su+S}Qx~&&z=tSX=Ts>mhjg
zps?#p`n{uy%KyHrrR5*J?d%^L{bRrX%ZcsOUn7io9~;?OJJ=c+p}VtOFNF}1vNh7P
zx3*Qcwzl~FE~=SW+gsb2SR)|(=;sOH&@{C&w05$){d0hdiim=hoxPrwfsul=7&Ceb
zsHv%;2)`_!l%%8pTu_2fhL2B1QWDP3FDxS@43icT6cD^4{rgyHYXb*MBP;vg#~S`)
ztngosy*>+;2=vO*Mz*GoMuxJs)|QZ;*DPZC*LxBC%lUpAYxviD5&Fxqyy(sFUO(A?
zdeXl)p^wk?*FVlJ`o|w9-^dDm+-=e48sqBn$M YEflP37I3onb bWOB$N}sEjz;P%-o|_zak}{KVH_XNGJZaFYJPMcg|m
zXXxnH7H7UYD7^FFfuk5CnKZaocLe2o^sAb@T))QvS9gdqsIA(}J2OD)p0DzGwwazC
zks*s_n|^b?WrSe(cjDGRMtbX9mh1m+4I#9I&zQQg`qFQXB<|Vcqa#XqNu>Z~XZL)Q
zznj)C$pIs|W5+wIGhYWw(Q@CzfEeNOfZnH>5bY=NJ*5rJc80%dpXPxlgiaw!-Web)
zjA?S0!||7_LyjMNQY-8C=ZOl5QTu)yP(YJ^b?7!1`B6Ke0Kf9={H1%CR{xU`?~jOK
zWq`Ie`)Dk=3B`0?Oxx)SqB$fakOcr%Xe3k1P)t^=%AY9EsxX_U74TwUA)`gm
zD^(XhEvM8X3rAEJ&D9w3pvcK6i{~4h)3Se*t%wJJ-GTTF%C)7-ZT{q3+OD