Merge branch 'MOHEMM-HUAWEI-RELEASE' into enad-Q3

MOHEMM-Q3-DEV-LATEST
umasoodch 4 years ago
commit 2f9e24c332

@ -22,21 +22,23 @@ export class HMGUtils {
) { } ) { }
async getCurrentLocation(callBack: Function) { async getCurrentLocation(callBack: Function) {
if (this.platform.is('android')) {
this.devicePermissionsService.requestLocationAutherization().then( async granted => { this.devicePermissionsService.requestLocationAutherization().then( async granted => {
if(granted == true){ if(granted == true) {
if (this.platform.is('android')) {
if ((await this.isHuaweiDevice())) { if ((await this.isHuaweiDevice())) {
this.getHMSLocation(callBack); this.getHMSLocation(callBack);
} else { } else {
this.getGMSLocation(callBack); this.getGMSLocation(callBack);
} }
}else{ } else {
this.common.presentAlert(this.ts.trPK('general', 'location-permission-dialog')); this.getIOSLocation(callBack);
} }
}); } else {
} else { return false;
this.getIOSLocation(callBack); }
} });
} }
@ -84,7 +86,7 @@ export class HMGUtils {
} catch (_err) { } catch (_err) {
console.log("Huawei Location Plugin [Error]: " + + JSON.stringify(_err)); console.log("Huawei Location Plugin [Error]: " + + JSON.stringify(_err));
this.common.presentAlert('Error while initializing Huawei Location Plugin'); this.common.presentAlert(this.ts.trPK('general', 'huawei-plugin-issue'));
} }
} }

@ -18,6 +18,7 @@ import { BackgroundGeolocation } from '@ionic-native/background-geolocation/ngx'
import { Platform } from '@ionic/angular'; import { Platform } from '@ionic/angular';
import { ModalController } from '@ionic/angular'; import { ModalController } from '@ionic/angular';
import { FirebaseX } from '@ionic-native/firebase-x/ngx'; import { FirebaseX } from '@ionic-native/firebase-x/ngx';
import { HMGUtils } from 'src/app/hmg-common/hmg_utils';
@Injectable({ @Injectable({
@ -49,13 +50,14 @@ export class AttendScanService {
public backgroundGeolocation: BackgroundGeolocation, public backgroundGeolocation: BackgroundGeolocation,
public platform: Platform, public platform: Platform,
public modalController: ModalController, public modalController: ModalController,
public firebasex: FirebaseX public firebasex: FirebaseX,
public hmgUtils: HMGUtils
) { ) {
this.userData = this.common.sharedService.getSharedData(AuthenticatedUser.SHARED_DATA, false); this.userData = this.common.sharedService.getSharedData(AuthenticatedUser.SHARED_DATA, false);
console.log(this.userData); console.log(this.userData);
} }
getDeviceLocation() { public getDeviceLocation() {
this.isGpsRequired = true; this.isGpsRequired = true;
this.isFakeLocationUsed = false; this.isFakeLocationUsed = false;
const isVirtual = this.device.isVirtual; const isVirtual = this.device.isVirtual;
@ -64,43 +66,58 @@ export class AttendScanService {
alert('You are using virtual device'); alert('You are using virtual device');
return false; return false;
} }
this.permissions.requestLocationAutherization().then(granted => { //////////// Getting location from hmg_utils //////////////////
this.location = granted as boolean; try {
if (this.location) { this.hmgUtils.getCurrentLocation((resp) => {
if (this.platform.is('android')) { console.log(resp);
this.backgroundGeolocation.getCurrentLocation({ timeout: 10000, enableHighAccuracy: true, maximumAge: 3000 }).then((resp) => { if (resp) {
if (resp && (resp.latitude && resp.longitude)) { this.isFakeLocationUsed = resp.isfake;
if (resp.isFromMockProvider || resp.mockLocationsEnabled) { this.lat = resp.latitude;
this.isFakeLocationUsed = true; this.longt = resp.longitude;
} this.attendance(true);
this.lat = resp.latitude; }
this.longt = resp.longitude; });
this.attendance(true); } catch (e) {
this.common.presentAlert(this.ts.trPK('general', 'something-went-wrong'));
}
// this.permissions.requestLocationAutherization().then(granted => {
// 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(true);
} else { // } else {
this.common.presentAlert(this.ts.trPK('home', 'position-error')); // this.common.presentAlert(this.ts.trPK('home', 'position-error'));
} // }
}, (error) => { // }, (error) => {
this.common.presentAlert(this.ts.trPK('home', 'position-error')); // this.common.presentAlert(this.ts.trPK('home', 'position-error'));
}); // });
} else { // } else {
this.geolocation.getCurrentPosition({maximumAge: 3000, timeout: 10000, enableHighAccuracy: true}).then(resp => { // this.geolocation.getCurrentPosition({maximumAge: 3000, timeout: 10000, enableHighAccuracy: true}).then(resp => {
if(resp && resp.coords.latitude && resp.coords.longitude) { // if(resp && resp.coords.latitude && resp.coords.longitude) {
this.lat = resp.coords.latitude; // this.lat = resp.coords.latitude;
this.longt = resp.coords.longitude; // this.longt = resp.coords.longitude;
this.attendance(true); // this.attendance(true);
} else { // } else {
this.common.presentAlert(this.ts.trPK('home', 'position-error')); // this.common.presentAlert(this.ts.trPK('home', 'position-error'));
} // }
}).catch(error => { // }).catch(error => {
this.common.presentAlert(this.ts.trPK('home', 'position-error')); // this.common.presentAlert(this.ts.trPK('home', 'position-error'));
}); // });
} // }
} else { // } else {
return false; // return false;
} // }
}); // });
} }
public attendance(isGPSValue: boolean) { public attendance(isGPSValue: boolean) {

@ -19,7 +19,6 @@
</ion-col> </ion-col>
</ion-row> </ion-row>
<p>umarrrrrrrrrrrrrrrr {{check}}</p>
<ion-row padding> <ion-row padding>
<ion-col size="5" [ngClass]="{'margin-col': direction === 'en', 'disable-attendance': !serviceEnableNFC}" class="buttonStyle" > <ion-col size="5" [ngClass]="{'margin-col': direction === 'en', 'disable-attendance': !serviceEnableNFC}" class="buttonStyle" >
<div class="textAndIcon" (click)="startNFCCode()"> <div class="textAndIcon" (click)="startNFCCode()">

@ -80,22 +80,6 @@ export class AttendanceOptionsComponent implements OnInit {
this.priviligeList = AuthenticationService.servicePrivilage; this.priviligeList = AuthenticationService.servicePrivilage;
this.setServicesPrivilage(); this.setServicesPrivilage();
this.checkNFCStatus("one"); this.checkNFCStatus("one");
this.test();
}
async test () {
const test = await this.hmgUtils.isHuaweiDevice();
if (test) {
this.check = 'this device is huawei device :' + test;
console.log('this device is huawei device :' + test);
} else {
this.check = 'this device is not huawei device :' + test;
console.log('this device is non-huawei device :' + test);
}
this.hmgUtils.getCurrentLocation((data) => {
console.log(data);
});
} }
public checkFirebaseDocument() { public checkFirebaseDocument() {
@ -297,7 +281,7 @@ export class AttendanceOptionsComponent implements OnInit {
component: WifiModalComponent, component: WifiModalComponent,
showBackdrop: true, showBackdrop: true,
backdropDismiss: false, backdropDismiss: false,
componentProps:{ enableLocationWIFI: this.enableLocationWIFI, lat: this.lat, longt: this.longt}, componentProps:{ enableLocationWIFI: this.enableLocationWIFI, lat: this.lat, longt: this.longt}
}); });
modal.cssClass = "wifi-modal"; modal.cssClass = "wifi-modal";
await modal.present(); await modal.present();
@ -305,63 +289,88 @@ export class AttendanceOptionsComponent implements OnInit {
showWifiNotEnabled(){ public showWifiNotEnabled(){
this.common.showErrorMessageDialog(()=>{ this.common.showErrorMessageDialog(()=>{
}, },
this.ts.trPK("general", "ok"), this.ts.trPK("general", "ok"),
this.ts.trPK("general","wifi-not-enable-text")); this.ts.trPK("general","wifi-not-enable-text"));
} }
getDeviceLocation(source: string) { public getDeviceLocation(source: string) {
this.isFakeLocationUsed = false; try {
this.devicePermissionsService.requestLocationAutherization().then(granted => { this.hmgUtils.getCurrentLocation((resp) => {
this.location = granted as boolean; console.log(resp);
if (this.location) { if (resp) {
if (this.platform.is('android')) { this.isFakeLocationUsed = resp.isfake;
this.backgroundGeolocation.getCurrentLocation({ timeout: 10000, enableHighAccuracy: true, maximumAge: 3000 }).then((resp) => { this.lat = resp.latitude;
if (resp && (resp.latitude && resp.longitude)) { this.longt = resp.longitude;
if (resp.isFromMockProvider || resp.mockLocationsEnabled) {
this.isFakeLocationUsed = true; if (this.isFakeLocationUsed) {
this.fakeSwipeAttendance(source); this.fakeSwipeAttendance(source);
} else { } else {
this.lat = resp.latitude; this.lat = resp.latitude;
this.longt = resp.longitude; this.longt = resp.longitude;
if (source === 'WIFI') { if (source === 'WIFI') {
this.startWifi(); this.startWifi();
} else if (source === 'NFC') { } else if (source === 'NFC') {
this.checkNFCStatus('two'); this.checkNFCStatus('two');
} }
} }
} else { }
this.common.presentAlert(this.ts.trPK('home', 'position-error')); });
} } catch (e) {
}, (error) => { this.common.presentAlert(this.ts.trPK('general', 'something-went-wrong'));
this.common.presentAlert(this.ts.trPK('home', 'position-error')); }
});
} else { // this.isFakeLocationUsed = false;
this.geolocation.getCurrentPosition({maximumAge: 3000, timeout: 10000, enableHighAccuracy: true}).then(resp => { // this.devicePermissionsService.requestLocationAutherization().then(granted => {
if(resp && resp.coords.latitude && resp.coords.longitude) { // this.location = granted as boolean;
this.lat = resp.coords.latitude; // if (this.location) {
this.longt = resp.coords.longitude; // if (this.platform.is('android')) {
if (source === 'WIFI') { // this.backgroundGeolocation.getCurrentLocation({ timeout: 10000, enableHighAccuracy: true, maximumAge: 3000 }).then((resp) => {
this.startWifi(); // if (resp && (resp.latitude && resp.longitude)) {
} else if (source === 'NFC') { // if (resp.isFromMockProvider || resp.mockLocationsEnabled) {
this.checkNFCStatus('two'); // this.isFakeLocationUsed = true;
} // this.fakeSwipeAttendance(source);
} else { // } else {
this.common.presentAlert(this.ts.trPK('home', 'position-error')); // this.lat = resp.latitude;
} // this.longt = resp.longitude;
}).catch(error => { // if (source === 'WIFI') {
this.common.presentAlert(this.ts.trPK('home', 'position-error')); // this.startWifi();
}); // } else if (source === 'NFC') {
} // this.checkNFCStatus('two');
} else { // }
return false; // }
} // } 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;
// if (source === 'WIFI') {
// this.startWifi();
// } else if (source === 'NFC') {
// this.checkNFCStatus('two');
// }
// } else {
// this.common.presentAlert(this.ts.trPK('home', 'position-error'));
// }
// }).catch(error => {
// this.common.presentAlert(this.ts.trPK('home', 'position-error'));
// });
// }
// } else {
// return false;
// }
// });
} }
fakeSwipeAttendance(sourceName: string) { public fakeSwipeAttendance(sourceName: string) {
const request: any = {}; const request: any = {};
request.Latitude = this.lat; request.Latitude = this.lat;
request.Longitude = this.longt; request.Longitude = this.longt;

@ -2,21 +2,15 @@ import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';
import { DatePicker } from '@ionic-native/date-picker/ngx'; import { DatePicker } from '@ionic-native/date-picker/ngx';
import { ModalController } from '@ionic/angular'; import { ModalController } from '@ionic/angular';
import * as moment from 'moment'; import * as moment from 'moment';
import { AccrualService } from 'src/app/accrual-balances/services/accrual.service';
import { AddEitComponent } from 'src/app/eit/add-eit/add-eit.component';
import { AddEitResponse } from 'src/app/eit/models/add.eit.response'; import { AddEitResponse } from 'src/app/eit/models/add.eit.response';
import { EitAddressRequest } from 'src/app/eit/models/eit-address.request'; import { EitAddressRequest } from 'src/app/eit/models/eit-address.request';
import { EitRequest } from 'src/app/eit/models/eit.request'; import { EitRequest } from 'src/app/eit/models/eit.request';
import { EITTransactionsRequest } from 'src/app/eit/models/EITTransactionsReq';
import { EIT_ACTION } from 'src/app/eit/models/submit.eit.action'; import { EIT_ACTION } from 'src/app/eit/models/submit.eit.action';
import { EitService } from 'src/app/eit/services/eit.service'; import { EitService } from 'src/app/eit/services/eit.service';
import { AuthenticationService } from 'src/app/hmg-common/services/authentication/authentication.service';
import { AuthenticatedUser } from 'src/app/hmg-common/services/authentication/models/authenticated-user';
import { CommonService } from 'src/app/hmg-common/services/common/common.service'; import { CommonService } from 'src/app/hmg-common/services/common/common.service';
import { MenuResponse } from 'src/app/hmg-common/services/menu/models/menu-response'; import { MenuResponse } from 'src/app/hmg-common/services/menu/models/menu-response';
import { MenuEntry } from 'src/app/hmg-common/services/menu/models/menu.entry'; import { MenuEntry } from 'src/app/hmg-common/services/menu/models/menu.entry';
import { TranslatorService } from 'src/app/hmg-common/services/translator/translator.service'; import { TranslatorService } from 'src/app/hmg-common/services/translator/translator.service';
import { EITNotificatonBodyResponse } from 'src/app/notification/models/EITNotificationBodyRes';
import { ButtonInput } from 'src/app/uI-elements/button.input'; import { ButtonInput } from 'src/app/uI-elements/button.input';
import { DateTimeInput } from 'src/app/uI-elements/date-time.input'; import { DateTimeInput } from 'src/app/uI-elements/date-time.input';
import { DateInput } from 'src/app/uI-elements/date.input'; import { DateInput } from 'src/app/uI-elements/date.input';
@ -37,12 +31,11 @@ export class AddAddressComponent implements OnInit {
public countries: any = []; public countries: any = [];
@ViewChild("containerDiv") containerDiv: ElementRef; @ViewChild("containerDiv") containerDiv: ElementRef;
////*new add*/////
getPassNotificationDetails: any; getPassNotificationDetails: any;
getPassdirfromNotifiPage: boolean = false; getPassdirfromNotifiPage: boolean = false;
functionName: string = ""; functionName: string = "";
menuType: any; menuType: any;
/////////////////
private textArea: TextAreaInput; private textArea: TextAreaInput;
private numberInput: NumberInput; private numberInput: NumberInput;
@ -57,10 +50,9 @@ export class AddAddressComponent implements OnInit {
private eitVALSettoCall: any = []; private eitVALSettoCall: any = [];
private comtransNo: number = 0; private comtransNo: number = 0;
// private parentChilds: any[];
getPassMnuEntryObj: MenuEntry; getPassMnuEntryObj: MenuEntry;
selMenu: MenuResponse; selMenu: MenuResponse;
eitSubmitAction: number = 0; //not submit eitSubmitAction: number = 0;
private eitRequest: EitAddressRequest; private eitRequest: EitAddressRequest;
private validateEitObj: any = []; private validateEitObj: any = [];
private ExtraObj: any = {}; private ExtraObj: any = {};
@ -69,7 +61,6 @@ export class AddAddressComponent implements OnInit {
respID: number; respID: number;
headerTitle: string = ""; headerTitle: string = "";
isResubmit: boolean = false; isResubmit: boolean = false;
//private updatedNotObject:any=[];
private updatedValues: any = []; private updatedValues: any = [];
addEITData: any; addEITData: any;
direction: string; direction: string;
@ -101,48 +92,15 @@ export class AddAddressComponent implements OnInit {
MenuResponse.SHARED_DATA, MenuResponse.SHARED_DATA,
false false
); );
// this.addEITData = this.cs.sharedService.getSharedData("AddEITData", false);
// console.log("addEITData: " + this.addEITData);
// console.log("dirfromNotificationPage: " + this.addEITData.dirfromNotificationPage);
this.eitRequest = new EitAddressRequest(); this.eitRequest = new EitAddressRequest();
// this.buttonInput = new ButtonInput('btnSubmit', 'Submit', 'containerDiv', 'Y');
////*new add*/////
/**********resubmit************ */
// this.getPassNotificationDetails = this.cs.sharedService.getSharedData(EITNotificatonBodyResponse.NOT_WORKLIST, false);//WARINING
// this.getPassdirfromNotifiPage = this.addEITData.dirfromNotificationPage;
// if (this.getPassdirfromNotifiPage) {
// this.functionName = this.getPassNotificationDetails.FUNCTION_NAME; //;this.getPassNotificationDetails.NOTIFICATION_NAME;
// this.menuType = "E";
// this.selEmp = this.getPassNotificationDetails.SELECTED_EMPLOYEE_NUMBER;
// this.respID = -999;
// this.validateEitObj = this.addEITData.submitEITObjList;
// // this.eitSubmitAction=this.getPassNotificationDetails.EIT_ACTION;
// let msg: string = "";
// msg = this.ts.trPK("eit", "update-title");
// this.headerTitle = msg;
// } else {
// this.getPassMnuEntryObj = this.selMenu.GetMenuEntriesList;
// this.comtransNo = this.addEITData.transNo;
// this.functionName = this.getPassMnuEntryObj.FUNCTION_NAME;
// this.menuType = this.selMenu.List_Menu.MENU_TYPE;
// this.validateEitObj = this.addEITData.submitEITObjList;
this.headerTitle = this.selMenu.GetMenuEntriesList.PROMPT; this.headerTitle = this.selMenu.GetMenuEntriesList.PROMPT;
// this.eitSubmitAction = this.cs.sharedService.getSharedData(
// EITTransactionsRequest.SUBMIT_EIT_ACTION
// );
// }
} }
ngOnInit() { } ngOnInit() { }
ngAfterViewInit() { ngAfterViewInit() {
console.log("ngAfterViewInit");
// console.log(this.containerDiv.nativeElement);
this.selectedStatus = this.cs.sharedService.getSharedData(ProfileService.SELECTED_STATUS); this.selectedStatus = this.cs.sharedService.getSharedData(ProfileService.SELECTED_STATUS);
var addressEntries = this.cs.sharedService.getSharedData(ProfileService.ADRESS_ENTRIES); const addressEntries = this.cs.sharedService.getSharedData(ProfileService.ADRESS_ENTRIES);
if (addressEntries && addressEntries.UPDATE_BUTTON === 'Y') { if (addressEntries && addressEntries.UPDATE_BUTTON === 'Y') {
this.isUpdate = true; this.isUpdate = true;
let countryDetail = this.cs.sharedService.getSharedData(ProfileService.COUNTRY); let countryDetail = this.cs.sharedService.getSharedData(ProfileService.COUNTRY);
@ -152,9 +110,6 @@ export class AddAddressComponent implements OnInit {
this.isUpdate = false; this.isUpdate = false;
} }
this.getEitDffStructure(); this.getEitDffStructure();
// this.addFieldToDOM(this.buttonInput, 'btnSubmit', this.cs.presentAlert('Clicked!'), true)
this.getCountires(); this.getCountires();
this.effectiveDate = new Date(); this.effectiveDate = new Date();
} }
@ -166,7 +121,6 @@ export class AddAddressComponent implements OnInit {
P_MENU_TYPE: this.menuType, P_MENU_TYPE: this.menuType,
P_SELECTED_RESP_ID: this.respID, P_SELECTED_RESP_ID: this.respID,
P_COUNTRY_CODE: 'SA' P_COUNTRY_CODE: 'SA'
// P_USER_NAME:this.userName
}; };
this.profileService.getAddressDiffStructure(body).subscribe((result: any) => { this.profileService.getAddressDiffStructure(body).subscribe((result: any) => {
this.handleEitDffStructureResult(result); this.handleEitDffStructureResult(result);
@ -190,12 +144,6 @@ export class AddAddressComponent implements OnInit {
for (let i = 0; i < feildsList.length; i++) { for (let i = 0; i < feildsList.length; i++) {
let defaultVal: string = ""; let defaultVal: string = "";
let defaultValText: string = ""; let defaultValText: string = "";
// defaultVal = feildsList[i].E_SERVICES_DV.P_ID_COLUMN_NAME
// ? feildsList[i].E_SERVICES_DV.P_ID_COLUMN_NAME
// : "";
// defaultValText = feildsList[i].E_SERVICES_DV.P_VALUE_COLUMN_NAME
// ? feildsList[i].E_SERVICES_DV.P_VALUE_COLUMN_NAME
// : "";
if (feildsList[i].DISPLAY_FLAG != "N") { if (feildsList[i].DISPLAY_FLAG != "N") {
//check if the field should be displayed //check if the field should be displayed
@ -203,7 +151,6 @@ export class AddAddressComponent implements OnInit {
//text , date , time //text , date , time
if (feildsList[i].FORMAT_TYPE == "C") { if (feildsList[i].FORMAT_TYPE == "C") {
// character // character
// if(feildsList[i].DEFAULT_TYPE=="C"||feildsList[i].DEFAULT_TYPE==""){// default type constant
this.textInput = new TextInput( this.textInput = new TextInput(
feildsList[i].SEGMENT_PROMPT, feildsList[i].SEGMENT_PROMPT,
feildsList[i].APPLICATION_COLUMN_NAME, feildsList[i].APPLICATION_COLUMN_NAME,
@ -214,12 +161,8 @@ export class AddAddressComponent implements OnInit {
feildsList[i].DISPLAY_FLAG, feildsList[i].DISPLAY_FLAG,
feildsList[i].REQUIRED_FLAG feildsList[i].REQUIRED_FLAG
); );
// }else if(feildsList[i].DEFAULT_TYPE=="P"||feildsList[i].DEFAULT_TYPE=="S"){// profile/ sql
// this.textInput = new TextInput(feildsList[i].SEGMENT_PROMPT,feildsList[i].APPLICATION_COLUMN_NAME,this.getDefaultValue(feildsList[i].DESC_FLEX_NAME,feildsList[i].DESC_FLEX_CONTEXT_CODE,feildsList[i].SEGMENT_NAME,feildsList[i].PARENT_SEGMENTS_VS_SplitedVS,feildsList[i].PARENT_SEGMENTS_DV_Splited),containerId,feildsList[i].MOBILE_ENABLED);
// }
} else if (feildsList[i].FORMAT_TYPE == "N") { } else if (feildsList[i].FORMAT_TYPE == "N") {
// number // number
// if(feildsList[i].DEFAULT_TYPE=="C"||feildsList[i].DEFAULT_TYPE==""){
this.numberInput = new NumberInput( this.numberInput = new NumberInput(
feildsList[i].SEGMENT_PROMPT, feildsList[i].SEGMENT_PROMPT,
feildsList[i].APPLICATION_COLUMN_NAME, feildsList[i].APPLICATION_COLUMN_NAME,
@ -229,9 +172,6 @@ export class AddAddressComponent implements OnInit {
feildsList[i].DISPLAY_FLAG, feildsList[i].DISPLAY_FLAG,
feildsList[i].REQUIRED_FLAG feildsList[i].REQUIRED_FLAG
); );
// }else if(feildsList[i].DEFAULT_TYPE=="P"||feildsList[i].DEFAULT_TYPE=="S"){
// this.numberInput = new NumberInput(feildsList[i].SEGMENT_PROMPT,feildsList[i].APPLICATION_COLUMN_NAME,this.getDefaultValue(feildsList[i].DESC_FLEX_NAME,feildsList[i].DESC_FLEX_CONTEXT_CODE,feildsList[i].SEGMENT_NAME,feildsList[i].PARENT_SEGMENTS_VS_SplitedVS,feildsList[i].PARENT_SEGMENTS_DV_Splited),containerId,feildsList[i].MOBILE_ENABLED);
// }
} else if (feildsList[i].FORMAT_TYPE == "X") { } else if (feildsList[i].FORMAT_TYPE == "X") {
// standard date // standard date
if ( if (
@ -263,13 +203,6 @@ export class AddAddressComponent implements OnInit {
this.direction this.direction
); );
} }
// else if(feildsList[i].DEFAULT_TYPE=="D"){//current date
// // this.dateInput = new DateInput(feildsList[i].SEGMENT_PROMPT,feildsList[i].APPLICATION_COLUMN_NAME,"currentDate",containerId,feildsList[i].MOBILE_ENABLED);
// this.dateInput = new DateInput(feildsList[i].SEGMENT_PROMPT,feildsList[i].APPLICATION_COLUMN_NAME,defaultVal,containerId,feildsList[i].MOBILE_ENABLED);
// }else if(feildsList[i].DEFAULT_TYPE=="P"||feildsList[i].DEFAULT_TYPE=="S"){// sql and profile
// this.dateInput = new DateInput(feildsList[i].SEGMENT_PROMPT,feildsList[i].APPLICATION_COLUMN_NAME,this.getDefaultValue(feildsList[i].DESC_FLEX_NAME,feildsList[i].DESC_FLEX_CONTEXT_CODE,feildsList[i].SEGMENT_NAME,feildsList[i].PARENT_SEGMENTS_VS_SplitedVS,feildsList[i].PARENT_SEGMENTS_DV_Splited),containerId,feildsList[i].MOBILE_ENABLED);
// }
} else if (feildsList[i].FORMAT_TYPE == "Y") { } else if (feildsList[i].FORMAT_TYPE == "Y") {
// standard date time // standard date time
if ( if (
@ -303,19 +236,6 @@ export class AddAddressComponent implements OnInit {
const elem = document.getElementById( const elem = document.getElementById(
feildsList[i].APPLICATION_COLUMN_NAME feildsList[i].APPLICATION_COLUMN_NAME
); );
// elem.addEventListener("click", e => {
// if (feildsList[i].MOBILE_ENABLED != "Y") return false;
// this.showDateTimePicker(
// feildsList[i].APPLICATION_COLUMN_NAME,
// feildsList[i].MAXIMUM_SIZE
// );
// e.stopImmediatePropagation();
// });
// else if(feildsList[i].DEFAULT_TYPE=="D"){
// this.datetimeInput = new DateTimeInput(feildsList[i].SEGMENT_PROMPT,feildsList[i].APPLICATION_COLUMN_NAME,"currentDateTime",containerId,feildsList[i].MOBILE_ENABLED);
// }else if(feildsList[i].DEFAULT_TYPE=="P"||feildsList[i].DEFAULT_TYPE=="S"){
// this.datetimeInput = new DateTimeInput(feildsList[i].SEGMENT_PROMPT,feildsList[i].APPLICATION_COLUMN_NAME,this.getDefaultValue(feildsList[i].DESC_FLEX_NAME,feildsList[i].DESC_FLEX_CONTEXT_CODE,feildsList[i].SEGMENT_NAME,feildsList[i].PARENT_SEGMENTS_VS_SplitedVS,feildsList[i].PARENT_SEGMENTS_DV_Splited),containerId,feildsList[i].MOBILE_ENABLED);
// }
} else if (feildsList[i].FORMAT_TYPE == "I") { } else if (feildsList[i].FORMAT_TYPE == "I") {
//time //time
if ( if (
@ -360,9 +280,6 @@ export class AddAddressComponent implements OnInit {
feildsList[i].REQUIRED_FLAG feildsList[i].REQUIRED_FLAG
); );
} else { } else {
// dropdown list missing open in differnt page
//check this validation since he doesnt check the other default_type
//if(feildsList[i].DEFAULT_TYPE=="P" || feildsList[i].DEFAULT_TYPE=="S"){
this.selectInput = new SelectInput( this.selectInput = new SelectInput(
feildsList[i].SEGMENT_PROMPT, feildsList[i].SEGMENT_PROMPT,
feildsList[i].APPLICATION_COLUMN_NAME, feildsList[i].APPLICATION_COLUMN_NAME,
@ -372,53 +289,30 @@ export class AddAddressComponent implements OnInit {
feildsList[i].DISPLAY_FLAG, feildsList[i].DISPLAY_FLAG,
feildsList[i].REQUIRED_FLAG feildsList[i].REQUIRED_FLAG
); );
// }else{
// this.selectInput = new SelectInput(feildsList[i].SEGMENT_PROMPT,feildsList[i].APPLICATION_COLUMN_NAME,"",containerId,feildsList[i].MOBILE_ENABLED);
// }
// this.getValueSet(feildsList[i].SEGMENT_NAME);
this.fillDropdownList( this.fillDropdownList(
feildsList[i].SEGMENT_NAME, feildsList[i].SEGMENT_NAME,
feildsList[i].E_SERVICES_VS, feildsList[i].E_SERVICES_VS,
feildsList[i].E_SERVICES_DV feildsList[i].E_SERVICES_DV
); );
// this.eitVALSettoCall.push(feildsList[i]);
} }
} }
//const elem = document.getElementById(feildsList[i].APPLICATION_COLUMN_NAME);
//elem.addEventListener("click", (e) => {
// this.getValueSet(feildsList[i].SEGMENT_NAME);
// e.stopImmediatePropagation();
// });
this.bindHtmlElemEvents( this.bindHtmlElemEvents(
feildsList[i].APPLICATION_COLUMN_NAME, feildsList[i].APPLICATION_COLUMN_NAME,
feildsList[i] feildsList[i]
); );
} else { } else {
// if(feildsList[i].VALIDATION_TYPE=="N"){
this.hiddenInput = new HiddenInput( this.hiddenInput = new HiddenInput(
defaultVal, defaultVal,
feildsList[i].APPLICATION_COLUMN_NAME, feildsList[i].APPLICATION_COLUMN_NAME,
defaultValText, defaultValText,
containerId containerId
); );
// }else{
// this.selectInput = new SelectInput(feildsList[i].SEGMENT_PROMPT,feildsList[i].APPLICATION_COLUMN_NAME,defaultVal,containerId,feildsList[i].MOBILE_ENABLED,feildsList[i].DISPLAY_FLAG);
// this.fillDropdownList(feildsList[i].SEGMENT_NAME,feildsList[i].E_SERVICES_VS,feildsList[i].E_SERVICES_DV);
// }
this.bindHtmlElemEvents( this.bindHtmlElemEvents(
feildsList[i].APPLICATION_COLUMN_NAME, feildsList[i].APPLICATION_COLUMN_NAME,
feildsList[i] feildsList[i]
); );
} }
} }
// this.callValueSet();
// let msg:string="";
// msg=this.translate.translate("confirmAddEit.start");
// this.buttonInput = new ButtonInput("EIT_Btn_Submit", this.translate.translate('general.submit'), containerId, "");
// const elem = document.getElementById("EIT_Btn_Submit");
// elem.addEventListener("click", (e) => {
// this.validateEITTransaction();
// });
if (this.validateEitObj && this.validateEitObj.length > 0) { if (this.validateEitObj && this.validateEitObj.length > 0) {
this.fillEITStructure(); this.fillEITStructure();
} }
@ -437,8 +331,6 @@ export class AddAddressComponent implements OnInit {
console.log(this.containerDiv.nativeElement); console.log(this.containerDiv.nativeElement);
this.containerDiv.nativeElement.appendChild(elemDiv); this.containerDiv.nativeElement.appendChild(elemDiv);
// document.getElementById('containerDiv').appendChild(elemDiv);
if (hasClickListener) { if (hasClickListener) {
let elem = document.getElementById(fieldId); let elem = document.getElementById(fieldId);
elem.addEventListener("click", e => { elem.addEventListener("click", e => {
@ -477,8 +369,6 @@ export class AddAddressComponent implements OnInit {
elem.innerHTML = dateString; elem.innerHTML = dateString;
elem.dataset.dtvalue = dateString; elem.dataset.dtvalue = dateString;
} }
//elem.innerHTML = dateString;
// elem.dataset.dtvalue = dateString;
}, },
err => console.log("Error occurred while getting date: ", err) err => console.log("Error occurred while getting date: ", err)
); );
@ -534,11 +424,6 @@ export class AddAddressComponent implements OnInit {
} }
let select = document.getElementById(elemID) as HTMLSelectElement; let select = document.getElementById(elemID) as HTMLSelectElement;
document.getElementById(elemID).innerHTML = ""; document.getElementById(elemID).innerHTML = "";
// for(let i = select.options.length - 1 ; i >= 0 ; i--)
// {
// select.remove(i);
// }
if (eitObj.IsEmptyOption && eitObj.REQUIRED_FLAG == "N") { if (eitObj.IsEmptyOption && eitObj.REQUIRED_FLAG == "N") {
var firstoption = document.createElement("option"); var firstoption = document.createElement("option");
firstoption.text = this.ts.trPK("general", "choose"); firstoption.text = this.ts.trPK("general", "choose");
@ -553,7 +438,6 @@ export class AddAddressComponent implements OnInit {
} }
if (select.dataset.hiddenval) { if (select.dataset.hiddenval) {
select.value = select.dataset.hiddenval; select.value = select.dataset.hiddenval;
//select.dataset.hiddenval="";
} else { } else {
select.value = DV.P_ID_COLUMN_NAME; select.value = DV.P_ID_COLUMN_NAME;
} }
@ -571,14 +455,7 @@ export class AddAddressComponent implements OnInit {
if (elemType == "SELECT") changeEvent = "change"; if (elemType == "SELECT") changeEvent = "change";
try { try {
// elem.addEventListener("change", (e) => {
elem.addEventListener(changeEvent, e => { elem.addEventListener(changeEvent, e => {
//console.log("elem change "+elem.id);
//let x=e.currentTarget as HTMLInputElement;
//let isEmpty:boolean=false;
// if(!x.value)
// isEmpty=true;
//emptyChildElement
elem.classList.remove("requiredClassElm"); elem.classList.remove("requiredClassElm");
if ( if (
obj.CHILD_SEGMENTS_VS_Splited && obj.CHILD_SEGMENTS_VS_Splited &&
@ -586,9 +463,7 @@ export class AddAddressComponent implements OnInit {
) { ) {
let listArray: any = obj.CHILD_SEGMENTS_VS_Splited; let listArray: any = obj.CHILD_SEGMENTS_VS_Splited;
listArray.forEach(element => { listArray.forEach(element => {
//if(isEmpty)
this.emptyChildElement(element); this.emptyChildElement(element);
// else
this.getValueSet(element); this.getValueSet(element);
}); });
} }
@ -598,9 +473,7 @@ export class AddAddressComponent implements OnInit {
) { ) {
let listArray: any = obj.CHILD_SEGMENTS_DV_Splited; let listArray: any = obj.CHILD_SEGMENTS_DV_Splited;
listArray.forEach(element => { listArray.forEach(element => {
// if(isEmpty){
this.emptyChildElement(element); this.emptyChildElement(element);
// }else{
for (let i = 0; i < this.eitResponse.length; i++) { for (let i = 0; i < this.eitResponse.length; i++) {
if (this.eitResponse[i].SEGMENT_NAME == element) { if (this.eitResponse[i].SEGMENT_NAME == element) {
this.getDefaultValue( this.getDefaultValue(
@ -613,11 +486,9 @@ export class AddAddressComponent implements OnInit {
); );
} }
} }
// }
}); });
} }
return false; return false;
// e.stopImmediatePropagation();
}); });
} catch (e) { } catch (e) {
console.log(e.status); console.log(e.status);
@ -650,9 +521,6 @@ export class AddAddressComponent implements OnInit {
if (obj.VALIDATION_TYPE != "N" && obj.READ_ONLY == "N") { if (obj.VALIDATION_TYPE != "N" && obj.READ_ONLY == "N") {
isSelectElement = true; isSelectElement = true;
} }
//if(parentValue!=""){ parentVal= this.getDependenciesParams(parentValue)[0].ID_COLUMN_NAME;}
//if(ParentsList!=""){dependenciesList =this.getDependenciesParams(ParentsList); }
if ( if (
parentValue != "" && parentValue != "" &&
(obj.VALIDATION_TYPE == "D" || obj.VALIDATION_TYPE == "Y") (obj.VALIDATION_TYPE == "D" || obj.VALIDATION_TYPE == "Y")
@ -674,7 +542,6 @@ export class AddAddressComponent implements OnInit {
} }
} }
//if (dependenciesList==false){return false};
const body = { const body = {
P_SELECTED_EMPLOYEE_NUMBER: this.selEmp, P_SELECTED_EMPLOYEE_NUMBER: this.selEmp,
P_MENU_TYPE: this.menuType, P_MENU_TYPE: this.menuType,
@ -688,11 +555,6 @@ export class AddAddressComponent implements OnInit {
this.eitService.getDefaultValue(body).subscribe((result: any) => { this.eitService.getDefaultValue(body).subscribe((result: any) => {
let elem = this.getElementByName(segmentName); let elem = this.getElementByName(segmentName);
// console.log(elem);
// if(elem.dataset.hiddenval){
// elem.dataset.hiddenval="";
// return false;
// }
let obj = this.handleDefaultValueResult(result); let obj = this.handleDefaultValueResult(result);
let val = obj.value; let val = obj.value;
let text = obj.text; let text = obj.text;
@ -724,20 +586,11 @@ export class AddAddressComponent implements OnInit {
if (isSelectElement) { if (isSelectElement) {
let elem = this.getSelectElementByName(segmentName); let elem = this.getSelectElementByName(segmentName);
elem = document.getElementById(elem), elem = document.getElementById(elem),
//alert(elem.length);
// var firstoption = document.createElement("option");
// firstoption.text = text;
// firstoption.value = val;
// elem.add(firstoption);
elem.value = val; elem.value = val;
//elem.text=text;
} else { } else {
// console.log("else - " + elem.value);
elem.value = val; elem.value = val;
elem.innerText = text; elem.innerText = text;
elem.setAttribute("value", val); elem.setAttribute("value", val);
// console.log("else - " + elem.value);
} }
} }
if (isHidden || isReadOnlyList) { if (isHidden || isReadOnlyList) {
@ -1572,32 +1425,29 @@ export class AddAddressComponent implements OnInit {
EitRequest.SHARED_DATA EitRequest.SHARED_DATA
); );
this.cs.sharedService.setSharedData(result, AddEitResponse.SHARED_DATA); this.cs.sharedService.setSharedData(result, AddEitResponse.SHARED_DATA);
//this.addrespList=result.SubmitEITTransactionList;
// this.itemKey=this.addrespList.P_ITEM_KEY;
// this.P_TransactionID=result.SubmitEITTransactionList.P_TRANSACTION_ID;
// this.sharedData.setSharedData(result,AddEitResponse.SHARED_DATA);
// // this.sharedData.setSharedData(result.SubmitEITTransactionList.P_TRANSACTION_ID,"TransactionIDResubmit");
// // this.sharedData.setSharedData(this.eitRequest,EitRequest.SHARED_DATA);
this.cs.sharedService.setSharedData( this.cs.sharedService.setSharedData(
{ isResubmit: false }, { isResubmit: false },
"confirmAddEITData" "confirmAddEITData"
); );
this.cs.openConfirmAddAddress(); this.cs.openConfirmAddAddress();
//this.cs.openConfirmEitPage();
// this.navCtrl.push("ConfirmAddEitPage", { isResubmit: false });
} }
} }
validateEITTransaction() { public checkSelectedStatus() {
// // let EITTransactionValues:any= []; if (this.selectedStatus && this.selectedStatus.data) {
// let today = new Date(this.Sdate); if (this.selectedStatus.data == '1') {
// let day = today.getDate(); return 'CORRECT';
// let month = today.getMonth() + 1; } else if (this.selectedStatus.data == '2') {
// let year = today.getFullYear(); return 'CHANGE';
// let todayDate = month + '/' + day + '/' + year; } else {
// let effectiveDate = todayDate; return 'NEW';
}
} else {
return 'NEW';
}
}
public validateEITTransaction() {
this.arrValues = this.getElementsValues(); this.arrValues = this.getElementsValues();
if (this.arrValues) { if (this.arrValues) {
this.eitRequest = { this.eitRequest = {
@ -1609,21 +1459,19 @@ export class AddAddressComponent implements OnInit {
EITTransactionTBL: this.arrValues, EITTransactionTBL: this.arrValues,
P_COUNTRY_CODE: this.country, P_COUNTRY_CODE: this.country,
P_EFFECTIVE_DATE: moment(this.effectiveDate).format('DD-MMM-YYYY'), P_EFFECTIVE_DATE: moment(this.effectiveDate).format('DD-MMM-YYYY'),
P_ACTION: this.selectedStatus.data == '1' ? 'CHANGE' : this.selectedStatus.data == '2' ? 'CORRECT' : 'NEW' P_ACTION: this.checkSelectedStatus()
}; };
this.profileService this.profileService
.submitAddressTransaction(this.eitRequest) .submitAddressTransaction(this.eitRequest)
.subscribe((result: any) => { .subscribe((result: any) => {
this.handleSubmitEitResult(result); this.handleSubmitEitResult(result);
// this.handleEITValidateTr(result);
}); });
} }
} }
private handleEITValidateTr(result) { private handleEITValidateTr(result) {
let data: any = { eitRequest: {}, updated: [] }; let data: any = { eitRequest: {}, updated: [] };
if (this.cs.validResponse(result)) { if (this.cs.validResponse(result)) {
// public static SHARED_DATA = 'login-request';
this.cs.sharedService.setSharedData( this.cs.sharedService.setSharedData(
this.eitRequest, this.eitRequest,
EitRequest.SHARED_DATA EitRequest.SHARED_DATA
@ -1632,17 +1480,9 @@ export class AddAddressComponent implements OnInit {
let data: any = { eitRequest: {}, updated: [] }; let data: any = { eitRequest: {}, updated: [] };
data.eitRequest = this.eitRequest; data.eitRequest = this.eitRequest;
data.updated = this.updatedValues; data.updated = this.updatedValues;
// this.viewCtrl.dismiss(data);
this.modalController.dismiss(data); this.modalController.dismiss(data);
// this.closemodal();
} else { } else {
this.cs.openConfirmAddAddress(); this.cs.openConfirmAddAddress();
//this.submitEit();
// this.navCtrl.push("ConfirmAddEitPage");
// data = { eitRequest: {}, updated: [] };
// data.eitRequest = this.eitRequest;
// data.updated = this.updatedValues;
// this.viewCtrl.dismiss(data);
} }
} else { } else {
this.updatedValues = []; this.updatedValues = [];
@ -1668,7 +1508,6 @@ export class AddAddressComponent implements OnInit {
const elem = document.getElementById( const elem = document.getElementById(
this.submitAbsObjList[i].APPLICATION_COLUMN_NAME this.submitAbsObjList[i].APPLICATION_COLUMN_NAME
) as HTMLInputElement; ) as HTMLInputElement;
//obj.transactionNo=this.submitAbsObjList[i].TRANSACTION_NUMBER;
if (elem) { if (elem) {
if (val) { if (val) {
let feldDetails = this.eitResponse.find( let feldDetails = this.eitResponse.find(
@ -1683,8 +1522,6 @@ export class AddAddressComponent implements OnInit {
if (isStandardDate) { if (isStandardDate) {
//elem.value = this.common.reverseFormatDate(val); //elem.value = this.common.reverseFormatDate(val);
} else if (isStandardDateTime) { } else if (isStandardDateTime) {
// elem.innerHTML = this.common.reverseFormatStandardDate(val);
// elem.dataset.dtvalue = this.common.reverseFormatStandardDate(val);
} else if (isStandardTime) { } else if (isStandardTime) {
elem.innerHTML = val; elem.innerHTML = val;
elem.dataset.dtvalue = val; elem.dataset.dtvalue = val;
@ -1712,13 +1549,10 @@ export class AddAddressComponent implements OnInit {
this.getValueSet(element); this.getValueSet(element);
}); });
} }
//var event = new Event('change');
//elem.dispatchEvent(event);
} }
} else { } else {
} }
} }
//this.ExtraObj=obj;
} }
} }

@ -307,9 +307,11 @@ export class HomeComponent implements OnInit {
} }
async presentModal(source: string) { async presentModal(source: string) {
console.log(source);
const modal = await this.modalController.create({ const modal = await this.modalController.create({
component: EditDetailProfileComponent, component: EditDetailProfileComponent,
cssClass: 'my-custom-modal-css' cssClass: 'my-custom-modal-css',
componentProps:{ sourceName: source}
}); });
modal.onDidDismiss() modal.onDidDismiss()

@ -9,13 +9,16 @@
<ion-item lines="none"> <ion-item lines="none">
<ion-label > <ion-label >
<h3 style="color: black; font-size: 20px; white-space: break-spaces !important">{{ts.trPK('general','correct-or-complete')}}</h3></ion-label> <h3 *ngIf="sourceName === 'basicDetails'" style="color: black; font-size: 20px; white-space: break-spaces !important">{{ts.trPK('general','correct-or-complete')}}</h3>
<h3 *ngIf="sourceName === 'address'" style="color: black; font-size: 20px; white-space: break-spaces !important">{{ts.trPK('general','correct-or-complete-address')}}</h3>
</ion-label>
<ion-radio slot="start" color="secondary" mode='md' value="1"></ion-radio> <ion-radio slot="start" color="secondary" mode='md' value="1"></ion-radio>
</ion-item> </ion-item>
<ion-item lines="none"> <ion-item lines="none">
<ion-label> <ion-label>
<h3 style="color: black; font-size: 20px; white-space: break-spaces !important">{{ts.trPK('general','new-info')}}</h3> <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>
</ion-label> </ion-label>
<ion-radio slot="start" color="secondary" mode='md' value="2"></ion-radio> <ion-radio slot="start" color="secondary" mode='md' value="2"></ion-radio>
</ion-item> </ion-item>

@ -9,6 +9,7 @@ import { TranslatorService } from 'src/app/hmg-common/services/translator/transl
}) })
export class EditDetailProfileComponent implements OnInit { export class EditDetailProfileComponent implements OnInit {
public isChange: any; public isChange: any;
public sourceName: any;
constructor( constructor(
public modalController: ModalController, public modalController: ModalController,
@ -17,7 +18,9 @@ export class EditDetailProfileComponent implements OnInit {
colorRadio = "#269db8" colorRadio = "#269db8"
ngOnInit() { } ngOnInit() {
console.log(this.sourceName);
}
dismiss(actionValue: any) { dismiss(actionValue: any) {
// using the injected ModalController this page // using the injected ModalController this page

@ -209,6 +209,14 @@
} }
}, },
"general": { "general": {
"huawei-plugin-issue": {
"en": "Error while initializing Huawei Location Plugin",
"ar": "خطأ أثناء تهيئة Huawei Location Plugin"
},
"something-went-wrong": {
"en": "Something went wrong! Please try again",
"ar": "هناك خطأ ما! حاول مرة اخرى"
},
"invalid-huawei-location": { "invalid-huawei-location": {
"en": "Error while getting location from Huawei HMS services", "en": "Error while getting location from Huawei HMS services",
"ar": "خطأ أثناء الحصول على الموقع من خدمات Huawei HMS" "ar": "خطأ أثناء الحصول على الموقع من خدمات Huawei HMS"
@ -698,7 +706,7 @@
"ar": "إستخدم الرقم التعريفي" "ar": "إستخدم الرقم التعريفي"
}, },
"auth-please": { "auth-please": {
"en": "Please Authenticated", "en": "Please Authenticate",
"ar": "عرف نفسك" "ar": "عرف نفسك"
}, },
"dial-code": { "dial-code": {
@ -1021,6 +1029,14 @@
"en": "Main Address", "en": "Main Address",
"ar": "العنوان الرئيسي" "ar": "العنوان الرئيسي"
}, },
"correct-or-complete-address": {
"en": "Correct or amend this address",
"ar": "تصحيح أو تعديل هذا العنوان"
},
"new-info-address": {
"en": "Enter a new address if you have moved",
"ar": "أدخل عنوان جديد إذا كنت قد انتقلت"
},
"correct-or-complete": { "correct-or-complete": {
"en": "correct or complete the current details", "en": "correct or complete the current details",
"ar": "تعديل او اكمال التفاصيل الحالية" "ar": "تعديل او اكمال التفاصيل الحالية"

Loading…
Cancel
Save