fixed sfh issues

MOHEMM-PHASE-2-SFH
umasoodch 3 years ago
parent a4bc173c7b
commit 1719f609ff

@ -3,21 +3,21 @@
<plist version="1.0">
<dict>
<key>CLIENT_ID</key>
<string>679409052782-3teqf8vdh9e1suvnhddj3pgmna7vg5rt.apps.googleusercontent.com</string>
<string>191800911346-5ejbfu1pn53p7qamjsb29takrefsoqh5.apps.googleusercontent.com</string>
<key>REVERSED_CLIENT_ID</key>
<string>com.googleusercontent.apps.679409052782-3teqf8vdh9e1suvnhddj3pgmna7vg5rt</string>
<string>com.googleusercontent.apps.191800911346-5ejbfu1pn53p7qamjsb29takrefsoqh5</string>
<key>API_KEY</key>
<string>AIzaSyCjMjhbeS7qilBoP4SH0t3SgkkHryf34JA</string>
<string>AIzaSyCjBBHXiQsA5mbT7y1kVyxuBBPEgDbXlcg</string>
<key>GCM_SENDER_ID</key>
<string>679409052782</string>
<string>191800911346</string>
<key>PLIST_VERSION</key>
<string>1</string>
<key>BUNDLE_ID</key>
<string>com.cloudsolutions.mohemm</string>
<string>com.SFHP.SFHPEServices</string>
<key>PROJECT_ID</key>
<string>mohemm-dce93</string>
<string>erp-app-d50bd</string>
<key>STORAGE_BUCKET</key>
<string>mohemm-dce93.appspot.com</string>
<string>erp-app-d50bd.appspot.com</string>
<key>IS_ADS_ENABLED</key>
<false></false>
<key>IS_ANALYTICS_ENABLED</key>
@ -29,8 +29,6 @@
<key>IS_SIGNIN_ENABLED</key>
<true></true>
<key>GOOGLE_APP_ID</key>
<string>1:679409052782:ios:ace07cf8ba043b48a78a7f</string>
<key>DATABASE_URL</key>
<string>https://mohemm-dce93.firebaseio.com</string>
<string>1:191800911346:ios:55bd653a029e9a1bf0b76b</string>
</dict>
</plist>

@ -1,11 +1,9 @@
<?xml version='1.0' encoding='utf-8'?>
<widget id="hmg.cloudSolutions.mohem" version="3.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>MOHEMM</name>
<widget id="com.SFHP.SFHPEServices" version="1.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>SFHP E-services</name>
<description>an app created by cloud Solutions</description>
<author email="eservicescs@cloudsolution-sa.com" href="http://cloudsolution-sa.com">Cloud Solutions</author>
<content src="index.html" />
<content src="index.html" />
<access origin="*" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
@ -109,6 +107,13 @@
<preference name="android-minSdkVersion" value="22" />
<preference name="android-targetSdkVersion" value="30" />
</platform>
<platform name="ios">
<preference name="WKWebViewOnly" value="true" />
<feature name="CDVWKWebViewEngine">
<param name="ios-package" value="CDVWKWebViewEngine" />
</feature>
<preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" />
</platform>
<plugin name="cordova-plugin-whitelist" spec="1.3.3" />
<plugin name="cordova-plugin-statusbar" spec="2.4.2" />
<plugin name="cordova-plugin-splashscreen" spec="5.0.2" />

@ -1,35 +1,49 @@
{
"project_info": {
"project_number": "679409052782",
"firebase_url": "https://mohemm-dce93.firebaseio.com",
"project_id": "mohemm-dce93",
"storage_bucket": "mohemm-dce93.appspot.com"
"project_number": "191800911346",
"project_id": "erp-app-d50bd",
"storage_bucket": "erp-app-d50bd.appspot.com"
},
"client": [
{
"client_info": {
"mobilesdk_app_id": "1:679409052782:android:dba155ac0859d7fea78a7f",
"mobilesdk_app_id": "1:191800911346:android:96f24d98a8f8a264f0b76b",
"android_client_info": {
"package_name": "hmg.cloudSolutions.mohem"
"package_name": "com.SFHP.SFHPEServices"
}
},
"oauth_client": [
{
"client_id": "679409052782-mtd6d8rjltucnm9uatn6g7et08sm6lbv.apps.googleusercontent.com",
"client_id": "191800911346-09g6ag5atropqnomavpu8o8v0glvbv9g.apps.googleusercontent.com",
"client_type": 1,
"android_info": {
"package_name": "com.SFHP.SFHPEServices",
"certificate_hash": "d8593670617096c5ed223437bba032caaddeac3e"
}
},
{
"client_id": "191800911346-b3683ve4lufveaqpsaa0bali0i1vp50j.apps.googleusercontent.com",
"client_type": 3
}
],
"api_key": [
{
"current_key": "AIzaSyDgWjuSBIKGghWxYg_KGBRIZTi-O_UA8mU"
"current_key": "AIzaSyA2eFR85AotmT1vdvbpmW4XtGMoHCxlTRk"
}
],
"services": {
"appinvite_service": {
"other_platform_oauth_client": [
{
"client_id": "679409052782-mtd6d8rjltucnm9uatn6g7et08sm6lbv.apps.googleusercontent.com",
"client_id": "191800911346-b3683ve4lufveaqpsaa0bali0i1vp50j.apps.googleusercontent.com",
"client_type": 3
},
{
"client_id": "191800911346-5ejbfu1pn53p7qamjsb29takrefsoqh5.apps.googleusercontent.com",
"client_type": 2,
"ios_info": {
"bundle_id": "com.SFHP.SFHPEServices"
}
}
]
}

Binary file not shown.

@ -1,6 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain-config cleartextTrafficPermitted="false">
<domain includeSubdomains="true">localhost</domain>
<domain includeSubdomains="true">erpuat.sfh.med.sa</domain>
</domain-config>
</network-security-config>

@ -219,7 +219,7 @@ ion-card-content.confirm-details{
position: absolute;
top: 0px;
z-index: 0;
background: #44A7A1;
background: #29b5bf;
color: #fff;
border-radius: 50%;
border: 0px;
@ -266,7 +266,7 @@ ion-card-content.confirm-details{
min-height: 45px !important;
min-width: 5px !important;
margin: 8px !important;
--background: #0ca2de;
--background: #29b5bf;
width: 80% !important;
color: white!important;
border-radius: 16px !important;

@ -14,7 +14,7 @@
min-height: 45px !important;
min-width: 5px !important;
margin: 8px !important;
--background: #44A7A1;
--background: #29b5bf;
width: 80% !important;
color: white!important;
border-radius: 16px !important;

@ -29,7 +29,7 @@
<ion-list class="list-en" >
<ion-item (click)="profile()" lines="none">
<ion-thumbnail slot="start" class="menu-thumb">
<img style= "height: 29px !important; width:16px" src="../assets/imgs/profile_icon.png" item-left>
<img style= "height: 30px !important; width:16px" src="../assets/imgs/profile_icon.png" item-left>
</ion-thumbnail>
<ion-label class="profile">
{{ts.trPK('userProfile','title')}}
@ -111,7 +111,7 @@
<ion-item (click)="openDigitalId()">
<ion-thumbnail slot="start" class="menu-thumb">
<img style= "height: 25px !important;" src="../assets/imgs/ID_ico_menu.png" item-left>
<img style= "height: 20px !important;" src="../assets/imgs/ID_ico_menu.png" item-left>
</ion-thumbnail>
<ion-label class="changepassword" >
{{ts.trPK('general','digital-id')}}
@ -140,17 +140,13 @@
<img src="../assets/imgs/SFH-EN.png" class="CompanyImg logoImg">
<!-- <p class="companyTxt">{{companyDesc}}</p> -->
</div>
<div class="menuFooter" >
<div> <img src="../assets/imgs/CSLogo.png" class="CompanyImg" ></div>
<p class="companyTxt">{{companyDesc}}</p>
</div>
</ion-content>
<!-- <ion-footer style="padding: 0px;">
<ion-row>
<ion-footer style="padding: 0px;">
<!-- <ion-row>
<div class="footer-container">
<ion-col class="colPad" size="9" style="visibility: hidden">
@ -164,8 +160,12 @@
</ion-row>
<div class="menuFooter" >
<p class="companyTxt">{{companyDesc}}</p>
</div> -->
<div class="menuFooter" >
<div> <img src="../assets/imgs/CSLogo.png" class="CompanyImg" ></div>
<p class="companyTxt">{{companyDesc}}</p>
</div>
</ion-footer> -->
</ion-footer>
</ion-menu>
<ion-menu [swipeGesture]="false" side='end' *ngIf="direction ==='rtl'">
@ -195,7 +195,7 @@
<ion-list class="list-ar" >
<ion-item (click)="profile()" lines="none">
<ion-thumbnail slot="start" class="menu-thumb">
<img style= "height: 29px !important; width:16px" src="../assets/imgs/profile_icon.png" item-left>
<img style= "height: 30px !important; width:16px" src="../assets/imgs/profile_icon.png" item-left>
</ion-thumbnail>
<ion-label class="profile">
{{ts.trPK('userProfile','title')}}
@ -276,7 +276,7 @@
<ion-item (click)="openDigitalId()">
<ion-thumbnail slot="start" class="menu-thumb">
<img style= "height: 25px !important;" src="../assets/imgs/ID_ico_menu.png" item-left>
<img style= "height: 20px !important;" src="../assets/imgs/ID_ico_menu.png" item-left>
</ion-thumbnail>
<ion-label class="changepassword" >
{{ts.trPK('general','digital-id')}}
@ -325,15 +325,15 @@
<img src="../assets/imgs/SFH-AR.png" class="CompanyImg logoImg">
<!-- <p class="companyTxt">{{companyDesc}}</p> -->
</div>
<div class="menuFooter" >
<div> <img src="../assets/imgs/CSLogo.png" class="CompanyImg" ></div>
<p class="companyTxt">{{companyDesc}}</p>
</div>
</ion-content>
<!-- <ion-footer style="padding: 0px;" dir="ltr">
<ion-row>
<ion-footer style="padding: 0px;" dir="ltr">
<div class="menuFooter" >
<div> <img src="../assets/imgs/CSLogo.png" class="CompanyImg" ></div>
<p class="companyTxt">{{companyDesc}}</p>
</div>
<!-- <ion-row>
<div class="footer-container">
<ion-col class="colPad" size="9" style="visibility: hidden">
@ -347,8 +347,8 @@
</ion-row>
<div class="menuFooter" >
<p class="companyTxt">{{companyDesc}}</p>
</div>
</ion-footer> -->
</div> -->
</ion-footer>
</ion-menu>
<ion-router-outlet main></ion-router-outlet>
</ion-split-pane>

@ -350,8 +350,9 @@ button.menu-item.item.item-block.item-ios {
}
.logoImg {
margin-bottom: 180px;
// margin-bottom: 180px;
width: 225px;
margin-top: 20px;
}
.companyTxt {

@ -15,7 +15,7 @@
<ion-grid>
<ion-row class="ion-justify-content-center">
<ion-col [size]="11" [sizeLg]="8" [sizeXl]="6" no-padding>
<ion-button style="font-size: 16px !important; width:100%; --background: #44A7A1; background: white;" expand="block"
<ion-button style="font-size: 16px !important; width:100%; --background: #29b5bf; background: white;" expand="block"
(click)='dismiss()'>
{{ 'general,update-now' | translate }}
</ion-button>

@ -17,7 +17,7 @@ import { CheckUserAuthenticationResponse } from 'src/app/hmg-common/services/aut
import { LoginModel } from '../models/LoginModel';
import * as moment from 'moment';
import { CheckAppVersionResponse } from 'src/app/hmg-common/services/authentication/models/check-app-version.response';
// import { NFC } from "@ionic-native/nfc/ngx";
import { NFC } from "@ionic-native/nfc/ngx";
import { DigitalIdComponent } from '../digital-id/digital-id.component';
import { AppUpdateComponent } from '../app-update/app-update.component';
import { Password } from '../models/password';
@ -69,7 +69,7 @@ export class ConfirmLoginComponent implements OnInit {
public platform: Platform,
public modalController: ModalController,
public alertController: AlertController,
// private nfc: NFC,
private nfc: NFC,
private smsRetriever: SmsRetriever
) {
this.loginData = this.sharedData.getSharedData(AuthenticationService.LOGIN_DATA, false);
@ -353,20 +353,20 @@ export class ConfirmLoginComponent implements OnInit {
}
async checkNFCStatus() {
// try {
// let nfcStatus = await this.nfc.enabled();
// console.log("nfc status >>>>>>>>>>" + nfcStatus);
// this.isNFCAvailable = true;
// } catch (err) {
// console.log("Error reading tag", err);
// if (err === "NO_NFC") {
// this.isNFCAvailable = false;
// } else if (err === "NFC_DISABLED") {
// this.isNFCAvailable = true;
// } else {
// this.isNFCAvailable = false;
// }
// }
try {
let nfcStatus = await this.nfc.enabled();
console.log("nfc status >>>>>>>>>>" + nfcStatus);
this.isNFCAvailable = true;
} catch (err) {
console.log("Error reading tag", err);
if (err === "NO_NFC") {
this.isNFCAvailable = false;
} else if (err === "NFC_DISABLED") {
this.isNFCAvailable = true;
} else {
this.isNFCAvailable = false;
}
}
}
public checkSMS() {
@ -376,7 +376,7 @@ export class ConfirmLoginComponent implements OnInit {
request.activationCode = '';
request.P_USER_NAME = data.P_USER_NAME;
request.MobileNumber = data.MobileNumber;
request.IsDeviceNFC = true;
request.IsDeviceNFC = this.isNFCAvailable;;
this.authService.checkSMS(request, () => { }, this.ts.trPK('general', 'ok'))
.subscribe((result: SMSCheckResponse) => {
if (this.cs.validResponse(result)) {

@ -24,7 +24,7 @@ import { GetLoginInfoRequest } from 'src/app/hmg-common/services/authentication/
import * as moment from 'moment';
// import { NFC } from "@ionic-native/nfc/ngx";
import { NFC } from "@ionic-native/nfc/ngx";
import { SmsRetriever } from '@ionic-native/sms-retriever/ngx';
@ -125,7 +125,7 @@ export class SmsPageComponent implements OnInit {
public platform: Platform,
// private nfc: NFC,
private nfc: NFC,
private smsRetriever: SmsRetriever
@ -367,33 +367,33 @@ export class SmsPageComponent implements OnInit {
async checkNFCStatus() {
// try {
try {
// let nfcStatus = await this.nfc.enabled();
let nfcStatus = await this.nfc.enabled();
// console.log("nfc status >>>>>>>>>>" + nfcStatus);
console.log("nfc status >>>>>>>>>>" + nfcStatus);
// this.isNFCAvailable = true;
this.isNFCAvailable = true;
// } catch (err) {
} catch (err) {
// console.log("Error reading tag", err);
console.log("Error reading tag", err);
// if (err === "NO_NFC") {
if (err === "NO_NFC") {
// this.isNFCAvailable = false;
this.isNFCAvailable = false;
// } else if (err === "NFC_DISABLED") {
} else if (err === "NFC_DISABLED") {
// this.isNFCAvailable = true;
this.isNFCAvailable = true;
// } else {
} else {
// this.isNFCAvailable = false;
this.isNFCAvailable = false;
// }
}
// }
}
}

@ -33,7 +33,7 @@ ion-label {
min-height: 45px !important;
min-width: 5px !important;
margin: 8px !important;
background-color: #44A7A1;
background-color: #29b5bf;
width: 80% !important;
color: white!important;
border-radius: 16px !important;

@ -189,7 +189,7 @@
position: absolute;
top: 0px;
z-index: 0;
background: #44A7A1;
background: #29b5bf;
color: #fff;
border-radius: 50%;
border: 0px;
@ -243,7 +243,7 @@
min-height: 45px !important;
min-width: 5px !important;
margin: 8px !important;
background-color: #0ca2de;
background-color: #29b5bf;
width: 80% !important;
color: white!important;
border-radius: 16px !important;

@ -189,7 +189,7 @@
position: absolute;
top: 0px;
z-index: 0;
background: #44A7A1;
background: #29b5bf;
color: #fff;
border-radius: 50%;
border: 0px;
@ -243,7 +243,7 @@
min-height: 45px !important;
min-width: 5px !important;
margin: 8px !important;
background-color: #44A7A1;
background-color: #29b5bf;
width: 80% !important;
color: white!important;
border-radius: 16px !important;

@ -1674,24 +1674,24 @@ export class CommonService {
// disable: false,
// total: 0
// },
// {
// value: 0,
// name: 'PR',
// active: false,
// color: '#114475',
// key: 'REQAPPRV',
// disable: false,
// total: 0
// },
// {
// value: 0,
// name: 'PO',
// active: false,
// color: '#38c9b3',
// key: 'POAPPRV',
// disable: false,
// total: 0
// },
{
value: 0,
name: 'PR',
active: false,
color: '#114475',
key: 'REQAPPRV',
disable: false,
total: 0
},
{
value: 0,
name: 'PO',
active: false,
color: '#38c9b3',
key: 'POAPPRV',
disable: false,
total: 0
}
// {
// value: 0,
// name: 'ITG',
@ -1736,8 +1736,8 @@ export class CommonService {
data: [0, 0, 0, 0, 0, 0, 0, 0],
backgroundColor: [
'#18a169',
'#3cb9d5',
'#114475',
'#3cb9d5',
'#38c9b3',
'#cc3232',
'#9e7e97',
@ -1756,11 +1756,11 @@ export class CommonService {
// this.filters[1].value = this.filterKeys['INVMOA'];
// this.data.datasets[0].data[1] = this.filterKeys['INVMOA'];
// this.filters[2].value = this.filterKeys['REQAPPRV'];
// this.data.datasets[0].data[2] = this.filterKeys['REQAPPRV'];
this.filters[1].value = this.filterKeys['REQAPPRV'];
this.data.datasets[0].data[1] = this.filterKeys['REQAPPRV'];
// this.filters[3].value = this.filterKeys['POAPPRV'];
// this.data.datasets[0].data[3] = this.filterKeys['POAPPRV'];
this.filters[2].value = this.filterKeys['POAPPRV'];
this.data.datasets[0].data[2] = this.filterKeys['POAPPRV'];
// this.filters[5].value = this.filterKeys['INVITEM'];
// this.data.datasets[0].data[5] = this.filterKeys['INVITEM'];

@ -31,7 +31,7 @@ export class ConnectorService {
// public static host = 'https://hmgwebservices.com/';
public static host = 'https://erpuat.sfh.med.sa/'; //UAR SFHP
// public static host = 'http://10.201.204.124:6085/'; //UAR SFHP
// public static host = 'https://uat.hmgwebservices.com/';
// public static host = 'http://10.201.204.124:6086/';

@ -45,14 +45,14 @@
.title {
font-family: 'Inter' !important;
line-height: 12px;
line-height: 18px;
letter-spacing: -0.56px;
color: #575757;
opacity: 1;
font-size: 14px;
width: 100%;
text-overflow: ellipsis;
white-space: nowrap;
// white-space: nowrap;
// overflow: hidden;
display: block;
margin-left: -10px;
@ -83,14 +83,14 @@
.title {
font-family: 'Inter' !important;
line-height: 12px;
line-height: 18px;
letter-spacing: -0.56px;
color: #575757;
opacity: 1;
font-size: 14px;
width: 100%;
text-overflow: ellipsis;
white-space: nowrap;
// white-space: nowrap;
overflow: hidden;
display: block;
margin-left: -10px;

@ -21,9 +21,8 @@
.iconBox img {
margin: 0px auto 10px !important;
display: block;
width: 30px;
height: 33px;
// max-width: 35%;
width: 25px;
height: 30px;
}
.titleBox {

@ -1,5 +1,5 @@
import { Component, OnInit, NgZone, VERSION } from "@angular/core";
// import { NFC } from "@ionic-native/nfc/ngx";
import { NFC } from "@ionic-native/nfc/ngx";
import { CommonService } from "src/app/hmg-common/services/common/common.service";
import { Platform } from "@ionic/angular";
import { AttendScanService } from "../../hmg-common/services/attend-services/attend-scan.service";
@ -13,11 +13,11 @@ 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 { 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';
// import { Geolocation } from '@ionic-native/geolocation/ngx';
// import { BackgroundGeolocation } from '@ionic-native/background-geolocation/ngx';
import { Geolocation } from '@ionic-native/geolocation/ngx';
import { BackgroundGeolocation } from '@ionic-native/background-geolocation/ngx';
import { FirebaseX } from '@ionic-native/firebase-x/ngx';
import { HMGUtils } from 'src/app/hmg-common/hmg_utils';
@ -53,7 +53,7 @@ export class AttendanceOptionsComponent implements OnInit {
constructor(
// private nfc: NFC,
private nfc: NFC,
public common: CommonService,
public platform: Platform,
public attendScanService: AttendScanService,
@ -62,11 +62,11 @@ export class AttendanceOptionsComponent implements OnInit {
private device: Device,
private attendance_service: AttendanceService,
public ngZone: NgZone,
// private wifiWizard2: WifiWizard2,
private wifiWizard2: WifiWizard2,
private openNativeSettings: OpenNativeSettings,
private devicePermissionsService:DevicePermissionsService,
// private geolocation: Geolocation,
// public backgroundGeolocation: BackgroundGeolocation,
private geolocation: Geolocation,
public backgroundGeolocation: BackgroundGeolocation,
public hmgUtils: HMGUtils
) {}
@ -88,31 +88,31 @@ export class AttendanceOptionsComponent implements OnInit {
}
async checkNFCStatus(checkValue: string) {
// try {
// let nfcStatus = await this.nfc.enabled();
// console.log("nfc status >>>>>>>>>>" + nfcStatus);
// if (nfcStatus === "NFC_OK") {
// this.deviceNFC = true;
// if (checkValue === "two") {
// this.startNFC();
// }
// }
// if (nfcStatus === null && checkValue === "two") {
// this.startNFC();
// }
// } catch (err) {
// console.log("Error reading tag", err);
// if (err === "NO_NFC") {
// this.deviceNFC = false;
// } else if (err === "NFC_DISABLED") {
// this.deviceNFC = true;
// if (checkValue === "two") {
// this.common.presentAlert(this.ts.trPK("general", "nfc-settings"));
// }
// } else if (checkValue === "two") {
// this.common.presentAlert(this.ts.trPK("general", "nfc-error"));
// }
// }
try {
let nfcStatus = await this.nfc.enabled();
console.log("nfc status >>>>>>>>>>" + nfcStatus);
if (nfcStatus === "NFC_OK") {
this.deviceNFC = true;
if (checkValue === "two") {
this.startNFC();
}
}
if (nfcStatus === null && checkValue === "two") {
this.startNFC();
}
} catch (err) {
console.log("Error reading tag", err);
if (err === "NO_NFC") {
this.deviceNFC = false;
} else if (err === "NFC_DISABLED") {
this.deviceNFC = true;
if (checkValue === "two") {
this.common.presentAlert(this.ts.trPK("general", "nfc-settings"));
}
} else if (checkValue === "two") {
this.common.presentAlert(this.ts.trPK("general", "nfc-error"));
}
}
}
public setServicesPrivilage() {
@ -154,15 +154,15 @@ export class AttendanceOptionsComponent implements OnInit {
}
async startIOSNfc() {
// try {
// let tag = await this.nfc.scanTag();
// console.log(JSON.stringify(tag));
// const serialNumber = this.nfc.bytesToHexString(tag.id);
// this.swipeAttendanceNFC(serialNumber);
// } catch (err) {
// this.common.presentAlert(this.ts.trPK("general", "nfc-error"));
// console.log("Error reading tag", err);
// }
try {
let tag = await this.nfc.scanTag();
console.log(JSON.stringify(tag));
const serialNumber = this.nfc.bytesToHexString(tag.id);
this.swipeAttendanceNFC(serialNumber);
} catch (err) {
this.common.presentAlert(this.ts.trPK("general", "nfc-error"));
console.log("Error reading tag", err);
}
}
public async nfcModal() {
@ -243,38 +243,38 @@ export class AttendanceOptionsComponent implements OnInit {
public async startWifi() {
const isAndroid = this.platform.is("android");
const isIOS = this.platform.is("ios");
// const isWifiEnabled = await this.wifiWizard2.isWifiEnabled();
const isWifiEnabled = await this.wifiWizard2.isWifiEnabled();
const versionType = this.device.version;
const versionTypeInt = parseInt(versionType);
console.log('version type: ' + versionType);
console.log('version Type: ' + versionTypeInt);
if(isAndroid && versionTypeInt > 10) {
// if(!isWifiEnabled){
// this.showWifiNotEnabled();
// return;
// }
if(!isWifiEnabled){
this.showWifiNotEnabled();
return;
}
}
if (isIOS) {
// if(!isWifiEnabled){
// this.showWifiNotEnabled();
// return;
// }
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);
// });
// return;
// }
if(!isWifiEnabled){
this.wifiWizard2.setWifiEnabled(true).then(()=>{
this.startWifi();
}).catch((err) => {
console.debug(err);
});
return;
}
}
// opening wifi dailog if all above conditions are passed (isWifiEnabled == true)
let modal = await this.modalController.create({

@ -5,7 +5,7 @@ import { Routes, RouterModule } from '@angular/router';
import { HmgCommonModule } from '../hmg-common/hmg-common.module';
import { IonicModule } from '@ionic/angular';
import { HomePage } from './home.page';
// import { BarcodeScanner } from '@ionic-native/barcode-scanner/ngx';
import { BarcodeScanner } from '@ionic-native/barcode-scanner/ngx';
import { WorklistMainService } from '../notification/service/work-list.main.service';
import { AttendanceOptionsComponent } from './attendance-options/attendance-options.component';
import { NfcModalComponent } from './nfc-modal/nfc-modal.component';
@ -36,7 +36,7 @@ const routes: Routes = [
WifiModalComponent
],
providers: [
// BarcodeScanner,
BarcodeScanner,
WorklistMainService
],
entryComponents: [

@ -9,11 +9,11 @@
<ion-grid class="main-container contentBg">
<ion-row *ngIf="showStaticServices" class="slideFullWidth">
<ion-slides [options]="slideOptsOne" class="padding-slide slide">
<ion-slide>
<ion-slide *ngIf="enableSwipe">
<app-stats-button
[title]="ts.trPK('attendance-tracking', 'title')"
link="0"
show="true"
[show]="true"
(click)="openStatsButton('0')">
</app-stats-button>
</ion-slide>

@ -7,8 +7,8 @@ import { AuthenticatedUser } from 'src/app/hmg-common/services/authentication/mo
import { MenuService } from 'src/app/hmg-common/services/menu/menuservice.service';
import { MenuResponse } from 'src/app/hmg-common/services/menu/models/menu-response';
import { CommonService } from 'src/app/hmg-common/services/common/common.service';
// import { Geolocation } from '@ionic-native/geolocation/ngx';
// import { BarcodeScanner } from '@ionic-native/barcode-scanner/ngx';
import { Geolocation } from '@ionic-native/geolocation/ngx';
import { BarcodeScanner } from '@ionic-native/barcode-scanner/ngx';
import { Device } from '@ionic-native/device/ngx';
import { attendanceSwipeScannerRequest } from './models/attendanceSwipe.Request';
import { COCRequest } from 'src/app/notification/models/COCRequest';
@ -37,8 +37,8 @@ import { TimeCardService } from '../time-card/service/time-card.service';
import { WorklistMainService } from '../notification/service/work-list.main.service';
import { isThisISOWeek } from 'date-fns';
import { Router } from '@angular/router';
// import { BackgroundGeolocation } from '@ionic-native/background-geolocation/ngx';
// import { NFC, Ndef } from "@ionic-native/nfc/ngx"
import { BackgroundGeolocation } from '@ionic-native/background-geolocation/ngx';
import { NFC, Ndef } from "@ionic-native/nfc/ngx"
import { DigitalIdComponent } from '../authentication/digital-id/digital-id.component';
import { FirebaseX } from '@ionic-native/firebase-x/ngx';
import { BusinessCardComponent } from "src/app/authentication/business-card/business-card.component";
@ -75,6 +75,7 @@ export class HomePage implements OnInit {
public isFakeLocationUsed = false;
public intervalCountdown: any;
public showLoader = true;
public enableSwipe = false;
public statsButtons = [
// {
// title: this.ts.trPK('attendance-tracking', 'title'),
@ -154,10 +155,10 @@ export class HomePage implements OnInit {
public common: CommonService,
public events: Events,
private device: Device,
// private geolocation: Geolocation,
private geolocation: Geolocation,
private attendanceService: AttendanceService,
private eitService: EitService,
// private barcodeScanner: BarcodeScanner,
private barcodeScanner: BarcodeScanner,
public actionSheetCtrl: ActionSheetController,
public sharedData: SharedDataService,
private sanitizer: DomSanitizer,
@ -169,9 +170,9 @@ export class HomePage implements OnInit {
public workListService: WorklistMainService,
public router: Router,
private platform: Platform,
// public backgroundGeolocation: BackgroundGeolocation,
public backgroundGeolocation: BackgroundGeolocation,
public modalController: ModalController,
// private nfc: NFC,
private nfc: NFC,
public firebasex: FirebaseX
) {
this.events.subscribe('img-change', displayImg => {
@ -203,11 +204,11 @@ export class HomePage implements OnInit {
public slideSettingsTwo() {
const width = this.platform.width();
this.slideOptsOne = {
slidesPerView: width > 320 ? 3.4 : 3,
slidesPerView: width > 320 ? 3.2 : 3,
spaceBetween: 10
};
this.slideOptsTwo = {
slidesPerView: width > 320 ? 3.4 : 2.4,
slidesPerView: width > 320 ? 3.2 : 2.2,
spaceBetween: width > 320 ? 10 : 5
};
this.showStaticServices = true;
@ -282,32 +283,32 @@ export class HomePage implements OnInit {
this.location = granted as boolean;
if (this.location) {
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;
// }
// this.lat = resp.latitude;
// this.longt = resp.longitude;
// this.attendance();
// } else {
// this.common.presentAlert(this.ts.trPK('home', 'position-error'));
// }
// }, (error) => {
// this.common.presentAlert(this.ts.trPK('home', 'position-error'));
// });
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;
}
this.lat = resp.latitude;
this.longt = resp.longitude;
this.attendance();
} else {
this.common.presentAlert(this.ts.trPK('home', 'position-error'));
}
}, (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'));
// }
// }).catch(error => {
// this.common.presentAlert(this.ts.trPK('home', 'position-error'));
// });
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'));
}
}).catch(error => {
this.common.presentAlert(this.ts.trPK('home', 'position-error'));
});
}
} else {
return false;
@ -317,23 +318,8 @@ export class HomePage implements OnInit {
setServicesPrivilage() {
for (const servicePrivilage of AuthenticationService.servicePrivilage) {
if (servicePrivilage.Previlege === false) {
if (servicePrivilage.ServiceName === 'accrualBalance') {
this.statsButtons[3].show = false;
// this.statsButtons[4].show = false;
}
if (servicePrivilage.ServiceName === 'vacationRule') {
this.showVcationRule = false;
}
// document
// .getElementById(servicePrivilage.ServiceName)
// .setAttribute('disabled', 'disabled');
// document.getElementById(servicePrivilage.ServiceName).style.filter =
// 'grayscale(1)';
} else {
this.statsButtons[3].show = true;
this.statsButtons[4].show = true;
this.showVcationRule = true;
if (servicePrivilage.Previlege && servicePrivilage.ServiceName === "swipe") {
this.enableSwipe = true;
}
}
}
@ -384,7 +370,7 @@ export class HomePage implements OnInit {
callDashboardServices() {
this.getMenu();
this.statsButtons[1].show = true;
// this.setServicesPrivilage();
this.setServicesPrivilage();
if (this.common.getTotalNumberOfWorklistRequest()) {
this.statsButtons[0].statsValue = this.common.getTotalNumberOfWorklistRequest();
this.showLoader = false;

@ -36,7 +36,7 @@
<ion-row style="margin-top: 11px;">
<ion-col [size]="6">
<p class="subTitle">{{ts.trPK('userProfile','role')}}</p>
<span class="Boldtext">{{employee.POSITION_NAME}}</span>
<span class="Boldtext">{{employee.JOB_NAME}}</span>
</ion-col>
<ion-col [size]="6" style="border-left: 1px solid rgb(221 221 221);">
<p class="subTitle" style="line-height: 12px !important;">{{ts.trPK('userProfile','empNo')}}</p>
@ -462,7 +462,7 @@
<ng-container *ngFor="let subordinate of empSubordinate;let i=index">
<app-employee-information
[name]="subordinate.EMPLOYEE_NAME"
[title]="subordinate.POSITION_NAME"
[title]="subordinate.JOB_NAME"
[employeeImage]="subordinate.EMPLOYEE_IMAGE ? 'data:image/png;base64,'+subordinate.EMPLOYEE_IMAGE : '../assets/imgs/profile.png'"
[employeePhoneNumber]="subordinate.EMPLOYEE_MOBILE_NUMBER"
(onGetDetails)="getDetails(i)">
@ -502,7 +502,7 @@
</ion-col>
<ion-col [size]="12">
<h2 [ngClass]="direction == 'en' ? 'label1':'label1-ar' ">{{ts.trPK('userProfile','job')}}</h2>
<p [ngClass]="direction == 'en' ? 'label2':'label2-ar' ">{{employee.POSITION_NAME}}</p>
<p [ngClass]="direction == 'en' ? 'label2':'label2-ar' ">{{employee.JOB_NAME}}</p>
</ion-col>
<ion-col [size]="12">
<h2 [ngClass]="direction == 'en' ? 'label1':'label1-ar' ">{{ts.trPK('userProfile','payrol')}}</h2>
@ -514,7 +514,7 @@
</ion-col> -->
<ion-col [size]="12">
<h2 [ngClass]="direction == 'en' ? 'label1':'label1-ar' ">{{ts.trPK('userProfile','position')}}</h2>
<p [ngClass]="direction == 'en' ? 'label2':'label2-ar' ">{{employee.POSITION_NAME}}</p>
<p [ngClass]="direction == 'en' ? 'label2':'label2-ar' ">{{employee.JOB_NAME}}</p>
</ion-col>
<ion-col [size]="12" style="border-bottom: none;">
<h2 [ngClass]="direction == 'en' ? 'label1':'label1-ar' ">{{ts.trPK('userProfile','grade')}}</h2>

@ -61,7 +61,7 @@
<ng-container *ngFor="let subordinate of empSubordinate;let i=index">
<app-employee-information
[name]="subordinate.EMPLOYEE_NAME"
[title]="subordinate.POSITION_NAME"
[title]="subordinate.JOB_NAME"
[employeeImage]="subordinate.EMPLOYEE_IMAGE ? 'data:image/png;base64,'+subordinate.EMPLOYEE_IMAGE : '../assets/imgs/profile.png'"
[employeePhoneNumber]="subordinate.EMPLOYEE_MOBILE_NUMBER"
(onGetDetails)="getDetails(i)">

@ -71,7 +71,7 @@ export class HomeComponent implements OnInit {
public allFormattedData = [];
public selectedFilter = 'HR';
public showSearchButton = false;
public itemType = 'HRSSA';
public itemType = '';
public receivedITGCount = false;
public countChanged: any = false;
public totalHR = 0;
@ -124,22 +124,22 @@ export class HomeComponent implements OnInit {
// key: 'INVMOA',
// disable: false
// },
// {
// value: 0,
// name: 'PR',
// active: false,
// color: '#114475',
// key: 'REQAPPRV',
// disable: false
// },
// {
// value: 0,
// name: 'PO',
// active: false,
// color: '#38c9b3',
// key: 'POAPPRV',
// disable: false
// },
{
value: 0,
name: 'PR',
active: false,
color: '#114475',
key: 'REQAPPRV',
disable: false
},
{
value: 0,
name: 'PO',
active: false,
color: '#38c9b3',
key: 'POAPPRV',
disable: false
}
// {
// value: 0,
// name: 'ITG',

@ -48,7 +48,7 @@
}
.search-button {
background: #44A7A1;
background: #29b5bf;
height: 50px;
text-align: center;
font-family: WorkSans-Regular;

@ -356,7 +356,7 @@ ion-card {
.active-Segment {
font-size: 0.3cm !important;
background: #6d6e71 !important;
background: #c2a16b !important;
text-transform: none;
--color-checked: none;
border-radius: 100px;

@ -362,6 +362,7 @@
margin-left: 25px !important;
font-size: 15px !important;
margin-right: 25px !important;
font-weight: bold;
}
.date {
@ -480,7 +481,7 @@
.label{
font-size: 16px;
// margin-left: 15px;
color: #a2a5a6 !important;
// color: #a2a5a6 !important;
display: block;
overflow: hidden;
-webkit-box-flex: 1;
@ -526,6 +527,7 @@ color: #999999 !important;
select{
width: 300px !important;
border: none !important;
background: transparent !important;
}
.padding_date{
padding-left:5px !important;

@ -33,7 +33,7 @@
min-height: 45px !important;
min-width: 5px !important;
margin: 8px !important;
background-color: #44A7A1;
background-color: #29b5bf;
width: 80% !important;
color: white!important;
border-radius: 16px !important;

@ -33,7 +33,7 @@
min-height: 45px !important;
min-width: 5px !important;
margin: 8px !important;
background-color: #44A7A1;
background-color: #29b5bf;
width: 80% !important;
color: white!important;
border-radius: 16px !important;

@ -189,7 +189,7 @@
position: absolute;
top: 0px;
z-index: 0;
background: #44A7A1;
background: #29b5bf;
color: #fff;
border-radius: 50%;
border: 0px;
@ -243,7 +243,7 @@
min-height: 45px !important;
min-width: 5px !important;
margin: 8px !important;
background-color: #44A7A1;
background-color: #29b5bf;
width: 80% !important;
color: white!important;
border-radius: 16px !important;

@ -189,7 +189,7 @@
position: absolute;
top: 0px;
z-index: 0;
background: #44A7A1;
background: #29b5bf;
color: #fff;
border-radius: 50%;
border: 0px;
@ -243,7 +243,7 @@
min-height: 45px !important;
min-width: 5px !important;
margin: 8px !important;
background-color: #44A7A1;
background-color: #29b5bf;
width: 80% !important;
color: white!important;
border-radius: 16px !important;

@ -189,7 +189,7 @@
position: absolute;
top: 0px;
z-index: 0;
background: #44A7A1;
background: #29b5bf;
color: #fff;
border-radius: 50%;
border: 0px;
@ -243,7 +243,7 @@
min-height: 45px !important;
min-width: 5px !important;
margin: 8px !important;
background-color: #0ca2de;
background-color: #29b5bf;
width: 80% !important;
color: white!important;
border-radius: 16px !important;

@ -59,7 +59,7 @@
</div>
</ion-col>
<!-- (click)="selectedSegment('family')" -->
<ion-col [size]="3" (click)="selectedSegment('family')">
<ion-col [size]="3" (click)="selectedSegment('family')" style="pointer-events: none; opacity: 0.4;">
<div class="action-button col-button">
<img *ngIf="!familyMemberSegment" style="width: 40px;" src="../assets/imgs/profile-icons/family.svg">
<img *ngIf="familyMemberSegment" style="width: 40px;" src="../assets/imgs/profile-icons/family-g.svg">
@ -70,7 +70,7 @@
</div>
<ion-grid [ngClass]="direction === 'ltr'? 'grid-card':'grid-card-ar' ">
<div [ngClass]=" direction == 'ltr' ? 'gridService-en' : 'gridService-ar'"
style="background: #44A7A1; border-radius: 0px 0px 10px 10px;">
style="background: #29b5bf; border-radius: 0px 0px 10px 10px;">
<ion-row>
<ion-col>
<label

@ -188,7 +188,7 @@ export class HomeComponent implements OnInit {
this.personalInfo = user;
this.getPhoneNumbers();
this.getContactInfo();
let jobTitle = user.POSITION_NAME;
let jobTitle = user.JOB_NAME;
// if (jobTitle && jobTitle.length > 1) {
this.jobName = jobTitle;
// }

@ -15,7 +15,7 @@
<ion-radio slot="start" color="secondary" mode='md' value="1"></ion-radio>
</ion-item>
<ion-item lines="none" style="pointer-events: none;opacity: .3;">
<ion-item lines="none">
<ion-label>
<h3 *ngIf="sourceName === 'basicDetails'" style="color: black; font-size: 20px; white-space: break-spaces !important">{{ts.trPK('general','new-info')}}</h3>
<h3 *ngIf="sourceName === 'address'" style="color: black; font-size: 20px; white-space: break-spaces !important">{{ts.trPK('general','new-info-address')}}</h3>
@ -34,7 +34,7 @@
</ion-col>
<ion-col>
<ion-button style=" width: 90%; background: white; --background: #44A7A1" (click)="dismiss('next')" [disabled]="!isChange">{{ts.trPK('general','next')}}</ion-button>
<ion-button style=" width: 90%; background: white; --background: #29b5bf" (click)="dismiss('next')" [disabled]="!isChange">{{ts.trPK('general','next')}}</ion-button>
</ion-col>
</ion-row>
</ion-grid>

@ -25,7 +25,7 @@
<div *ngIf="performanceData">
<ion-row >
<ion-col *ngFor="let data of performanceData ;let i = index" [ngClass]="length % 2 != 0 && i == length - 1 ? 'rightgrid' : 'leftgrid'" >
<div class="performancecolor" style="background: #44A7A1;"></div>
<div class="performancecolor" style="background: #29b5bf;"></div>
<br>
<label [ngClass]=" direction == 'ltr' ? 'label' : 'label-ar'"> {{ts.trPK('userProfile','your-performance')}} </label>
<label [ngClass]=" direction == 'ltr' ? 'label' : 'label-ar'"> {{data.name}} </label>

@ -78,8 +78,10 @@ public setImage:any;
this.common.setUpdateImage(this.displayImg,true);
this.event.publish('img-change', this.displayImg);
let msg: string = this.ts.trPK("userProfile", "successChange");
this.common.presentAlert(msg);
this.common.back();
this.common.greenToast(msg);
// this.common.presentAlert(msg);
// this.common.back();
this.common.openHome();
} // valid it
}// End handleWorkListButtonsResult

@ -189,7 +189,7 @@
position: absolute;
top: 0px;
z-index: 0;
background: #44A7A1;
background: #29b5bf;
color: #fff;
border-radius: 50%;
border: 0px;
@ -243,7 +243,7 @@
min-height: 45px !important;
min-width: 5px !important;
margin: 8px !important;
background-color: #0ca2de;
background-color: #29b5bf;
width: 80% !important;
color: white!important;
border-radius: 16px !important;

@ -1,6 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30">
<g id="Group_7231" data-name="Group 7231" transform="translate(-111.351 -245.557)">
<circle id="Ellipse_152" data-name="Ellipse 152" cx="15" cy="15" r="15" transform="translate(111.351 245.557)" fill="#44A7A1"/>
<circle id="Ellipse_152" data-name="Ellipse 152" cx="15" cy="15" r="15" transform="translate(111.351 245.557)" fill="#29b5bf"/>
<path id="Path_13" data-name="Path 13" d="M11.706,9.111c-.791-.676-1.593-1.086-2.375-.411l-.466.408c-.341.3-.976,1.681-3.429-1.141S4.443,4.71,4.785,4.416l.469-.409c.777-.677.484-1.529-.077-2.406L4.839,1.07C4.276.2,3.663-.38,2.884.3L2.463.664A3.952,3.952,0,0,0,.922,3.279C.641,5.138,1.528,7.266,3.559,9.6s4.014,3.51,5.9,3.489a3.962,3.962,0,0,0,2.8-1.161l.422-.368c.777-.675.294-1.363-.5-2.041Z" transform="translate(119.204 254.187)" fill="#fff"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 767 B

After

Width:  |  Height:  |  Size: 767 B

@ -1,5 +1,5 @@
<svg xmlns="http://www.w3.org/2000/svg" width="19.576" height="21.001" viewBox="0 0 19.576 21.001">
<g id="phone-receiver-silhouette" transform="translate(-0.871 0)">
<path id="Path_13" data-name="Path 13" d="M18.252,14.616c-1.269-1.085-2.556-1.742-3.809-.659l-.748.655c-.547.475-1.565,2.7-5.5-1.831s-1.6-5.225-1.046-5.7L7.9,6.429c1.246-1.086.776-2.453-.123-3.86l-.543-.852C6.332.313,5.349-.609,4.1.475l-.675.59A6.339,6.339,0,0,0,.953,5.26c-.453,2.982.971,6.4,4.229,10.14s6.439,5.63,9.456,5.6a6.356,6.356,0,0,0,4.5-1.862l.678-.591c1.246-1.083.472-2.186-.8-3.274Z" fill="#004c70"/>
<svg xmlns="http://www.w3.org/2000/svg" width="19.572" height="21" viewBox="0 0 19.572 21">
<g id="phone-receiver-silhouette" transform="translate(-0.872 0)">
<path id="Path_13" data-name="Path 13" d="M18.252,14.616c-1.269-1.085-2.556-1.742-3.809-.659l-.748.655c-.547.475-1.565,2.7-5.5-1.831S6.6,7.556,7.149,7.085L7.9,6.429c1.246-1.086.776-2.453-.123-3.86l-.543-.852C6.332.313,5.349-.609,4.1.475l-.675.59A6.339,6.339,0,0,0,.953,5.26C.5,8.242,1.924,11.656,5.182,15.4s6.439,5.63,9.456,5.6a6.356,6.356,0,0,0,4.5-1.862l.678-.591c1.246-1.083.472-2.186-.8-3.274Z" transform="translate(0 0)" fill="#259cb8"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 601 B

After

Width:  |  Height:  |  Size: 622 B

@ -0,0 +1,14 @@
<svg xmlns="http://www.w3.org/2000/svg" width="15.663" height="17.821" viewBox="0 0 15.663 17.821">
<g id="user_19_" data-name="user (19)" transform="translate(-31)">
<g id="Group_7233" data-name="Group 7233" transform="translate(34.133)">
<g id="Group_7232" data-name="Group 7232">
<path id="Path_16" data-name="Path 16" d="M125.7,0a4.7,4.7,0,1,0,4.7,4.7A4.7,4.7,0,0,0,125.7,0Z" transform="translate(-121)" fill="#fff"/>
</g>
</g>
<g id="Group_7235" data-name="Group 7235" transform="translate(31 10.442)">
<g id="Group_7234" data-name="Group 7234">
<path id="Path_17" data-name="Path 17" d="M44.678,302.026a6.7,6.7,0,0,0-4.8-2.026H37.787a6.7,6.7,0,0,0-4.8,2.026A6.848,6.848,0,0,0,31,306.857a.522.522,0,0,0,.522.522H46.141a.522.522,0,0,0,.522-.522A6.848,6.848,0,0,0,44.678,302.026Z" transform="translate(-31 -300)" fill="#fff"/>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 912 B

@ -114,11 +114,11 @@
--primary: #3ac1f1;
--secondary: #19a163;
--danger: #f53d3d;
--customnavy: #44A7A1;
--customnavy: #29b5bf;
--light: #ffffff;
--dark: #000000;;
--gray: #e4e5e7;
--custgreen: #44A7A1;
--custgreen: #29b5bf;
--cusgray: #d9d9d9;
--darkgray: #7F8C8D;
--grayBG: #acacac;
@ -128,7 +128,7 @@
--red: #BE1E2D;
--blue: #223262;
--cyanblue: #1b75bc;
--newgreen: #44A7A1;
--newgreen: #29b5bf;
--darkblue: #29B5BF;
--lightblue: #3cb9d5;
--newred: #cb3232;

Loading…
Cancel
Save