This commit is contained in:
Olu Amey
2020-12-14 09:57:18 -05:00
parent 497f458984
commit d2ffaa197e
10 changed files with 91 additions and 18 deletions
+2 -2
View File
@@ -6,8 +6,8 @@ android {
applicationId "com.mermsemr.providers"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 1033
versionName "1.0.33"
versionCode 1034
versionName "1.0.34"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
+1 -1
View File
@@ -12,7 +12,7 @@ dependencies {
}
apply from: "../../node_modules/cordova-plugin-qrscanner/src/android/qrscanner.gradle"
if (hasProperty('postBuildExtras')) {
postBuildExtras()
+4
View File
@@ -19,5 +19,9 @@
<param name="onload" value="true"/>
</feature>
<feature name="QRScanner">
<param name="android-package" value="com.bitpay.cordova.qrscanner.QRScanner"/>
</feature>
</widget>
+35
View File
@@ -2401,6 +2401,14 @@
"@types/cordova": "^0.0.34"
}
},
"@ionic-native/qr-scanner": {
"version": "5.30.0",
"resolved": "https://registry.npmjs.org/@ionic-native/qr-scanner/-/qr-scanner-5.30.0.tgz",
"integrity": "sha512-NOyj1NAMrbwDwiVWZ2hD5b2RsEwyKwRtI3D6fZiuoecakaGGNC4qjk+LdGqXdps7Uf3UF6OLnptX2p+LUFSlbA==",
"requires": {
"@types/cordova": "^0.0.34"
}
},
"@ionic-native/splash-screen": {
"version": "5.29.0",
"resolved": "https://registry.npmjs.org/@ionic-native/splash-screen/-/splash-screen-5.29.0.tgz",
@@ -4636,6 +4644,15 @@
"resolved": "https://registry.npmjs.org/cordova-plugin-file/-/cordova-plugin-file-6.0.2.tgz",
"integrity": "sha512-m7cughw327CjONN/qjzsTpSesLaeybksQh420/gRuSXJX5Zt9NfgsSbqqKDon6jnQ9Mm7h7imgyO2uJ34XMBtA=="
},
"cordova-plugin-qrscanner": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/cordova-plugin-qrscanner/-/cordova-plugin-qrscanner-3.0.1.tgz",
"integrity": "sha512-xrwOP3nD+VmRSiV0w7chZ5PLw2YwpI9vtLdeoGNYLLzmmjjYbyIof+x9vOEOgjtwrg9S61rukmOZhQAmkzaosA==",
"requires": {
"qrcode-reader": "^1.0.4",
"webrtc-adapter": "^3.1.4"
}
},
"core-js": {
"version": "3.6.5",
"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.5.tgz",
@@ -11085,6 +11102,11 @@
"integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==",
"dev": true
},
"qrcode-reader": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/qrcode-reader/-/qrcode-reader-1.0.4.tgz",
"integrity": "sha512-rRjALGNh9zVqvweg1j5OKIQKNsw3bLC+7qwlnead5K/9cb1cEIAGkwikt/09U0K+2IDWGD9CC6SP7tHAjUeqvQ=="
},
"qs": {
"version": "6.7.0",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz",
@@ -11786,6 +11808,11 @@
}
}
},
"sdp": {
"version": "1.5.4",
"resolved": "https://registry.npmjs.org/sdp/-/sdp-1.5.4.tgz",
"integrity": "sha1-jgOPbdsUvXZa4fS1IW4SCUUR4NA="
},
"select-hose": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz",
@@ -14731,6 +14758,14 @@
"webpack-sources": "^1.3.0"
}
},
"webrtc-adapter": {
"version": "3.4.3",
"resolved": "https://registry.npmjs.org/webrtc-adapter/-/webrtc-adapter-3.4.3.tgz",
"integrity": "sha1-tjYGLu6abvFYrNDYUBtnhDS1bxY=",
"requires": {
"sdp": "^1.5.0"
}
},
"websocket-driver": {
"version": "0.6.5",
"resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.6.5.tgz",
+2
View File
@@ -26,6 +26,7 @@
"@ionic-native/core": "^5.0.0",
"@ionic-native/device": "^5.29.0",
"@ionic-native/http": "^5.29.0",
"@ionic-native/qr-scanner": "^5.30.0",
"@ionic-native/splash-screen": "^5.0.0",
"@ionic-native/status-bar": "^5.0.0",
"@ionic/angular": "^5.4.4",
@@ -33,6 +34,7 @@
"cordova-plugin-calendar": "^5.1.5",
"cordova-plugin-device": "^2.0.3",
"cordova-plugin-file": "^6.0.2",
"cordova-plugin-qrscanner": "^3.0.1",
"ionic2-calendar": "^0.6.6",
"rxjs": "^6.5.5",
"tslib": "^2.0.0",
+2
View File
@@ -15,6 +15,7 @@ import { HttpClientModule } from '@angular/common/http'
import { AppComponent } from './app.component';
import { AppRoutingModule } from './app-routing.module';
import { NgCalendarModule } from 'ionic2-calendar';
import { QRScanner, QRScannerStatus } from '@ionic-native/qr-scanner/ngx';
@NgModule({
@@ -27,6 +28,7 @@ import { NgCalendarModule } from 'ionic2-calendar';
providers: [
StatusBar,
SplashScreen,
QRScanner,
Calendar,
{ provide: RouteReuseStrategy, useClass: IonicRouteStrategy }
],
+2 -2
View File
@@ -37,8 +37,8 @@
<img src="./../../assets/imgs/avatar{{type.gender}}.png">
</ion-avatar>
<ion-label>
<h3 style="font-weight: bold;color: #8e54e9;">{{type.appt}} {{type.gender}} , {{type.age}} yrs</h3>
<h3>{{type.firstname}} {{type.lastname}}</h3>
<h3 style="font-weight: bold;color: #8e54e9;">{{type.appt}} </h3>
<h3>{{type.firstname}} {{type.lastname}} -{{type.gender}} {{type.age}} yrs</h3>
<h3>{{type.reason}}</h3>
</ion-label>
</ion-item>
@@ -1,35 +1,35 @@
<ion-header>
<ion-toolbar>
<ion-title>Add Practice</ion-title>
<ion-title>Add Practice</ion-title>
<ion-buttons>
<ion-button color="danger" (click)="dismiss()">Close</ion-button>
<ion-button color="danger" (click)="dismiss()">Close</ion-button>
</ion-buttons>
</ion-toolbar>
</ion-header>
<ion-content>
<ion-card>
<img src="../../assets/imgs/merms-signup.jpg" />
<img src="../../assets/imgs/merms-addpractice.jpg" />
<ion-card-header>
</ion-card-header>
<ion-card-content>
<ion-list lines="full" class="ion-no-margin">
<ion-item>
<ion-input placeholder="Practice Code"></ion-input>
</ion-item>
<ion-item>
<ion-button expand="block" fill="outline">Add</ion-button>
</ion-item>
</ion-list>
Go to your account at https://provider.mermsemr.com and enable your app access with your needed permissions.
or
<br>
<ion-button expand="full">Scan QR Code</ion-button>
</ion-card-content>
</ion-card>
<ion-button color="success" (click)="dismiss()">Close</ion-button>
</ion-content>
</ion-content>
@@ -1,5 +1,6 @@
import { Component, OnInit } from '@angular/core';
import { ModalController } from '@ionic/angular';
import { QRScanner, QRScannerStatus } from '@ionic-native/qr-scanner/ngx';
@Component({
selector: 'app-add-practice',
@@ -8,11 +9,11 @@ import { ModalController } from '@ionic/angular';
})
export class AddPracticePage implements OnInit {
constructor(private modalCtrl:ModalController) { }
constructor(private modalCtrl: ModalController, private qrScanner: QRScanner) { }
ngOnInit() {
}
dismiss() {
// using the injected ModalController this page
// can "dismiss" itself and optionally pass back data
@@ -20,4 +21,33 @@ export class AddPracticePage implements OnInit {
'dismissed': true
});
}
goScannerStart() {
// Optionally request the permission early
this.qrScanner.prepare()
.then((status: QRScannerStatus) => {
if (status.authorized) {
// camera permission was granted
// start scanning
let scanSub = this.qrScanner.scan().subscribe((text: string) => {
console.log('Scanned something', text);
this.qrScanner.hide(); // hide camera preview
scanSub.unsubscribe(); // stop scanning
});
} else if (status.denied) {
// camera permission was permanently denied
// you must use QRScanner.openSettings() method to guide the user to the settings page
// then they can grant the permission from there
} else {
// permission was denied, but not permanently. You can ask for permission again at a later time.
}
})
.catch((e: any) => console.log('Error is', e));
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 201 KiB