From 2a1ca91daace32c99c5a847a3fad81fcf567f71b Mon Sep 17 00:00:00 2001 From: Mohamed Mekawy Date: Mon, 9 Dec 2019 10:59:49 +0300 Subject: [PATCH 1/2] OpenPayslip from dashboard --- Mohem/package.json | 2 +- .../confirm-login/confirm-login.component.ts | 24 ++++---- .../sms-page/sms-page.page.html | 4 +- .../authentication/sms-page/sms-page.page.ts | 2 +- .../services/connector/connector.service.ts | 4 +- Mohem/src/app/hmg-common/ui/sms/sms.page.html | 4 +- Mohem/src/app/home/home.page.html | 2 +- Mohem/src/app/home/home.page.ts | 2 - .../app/notification/home/home.component.ts | 11 +++- Mohem/src/app/payslip/home/home.component.ts | 57 ++++++++++++------- .../app/payslip/service/payslip.service.ts | 6 +- 11 files changed, 70 insertions(+), 48 deletions(-) diff --git a/Mohem/package.json b/Mohem/package.json index a229f9f8..e048f67e 100755 --- a/Mohem/package.json +++ b/Mohem/package.json @@ -37,7 +37,7 @@ "@ionic-native/diagnostic": "^5.17.0", "@ionic-native/file": "^5.17.0", "@ionic-native/file-path": "^5.17.0", - "@ionic-native/fingerprint-aio": "^5.16.0", + "@ionic-native/fingerprint-aio": "^5.17.1", "@ionic-native/geolocation": "^5.10.0", "@ionic-native/globalization": "^5.17.0", "@ionic-native/health": "^5.4.0", diff --git a/Mohem/src/app/authentication/confirm-login/confirm-login.component.ts b/Mohem/src/app/authentication/confirm-login/confirm-login.component.ts index 673eb4a5..cd4cca35 100644 --- a/Mohem/src/app/authentication/confirm-login/confirm-login.component.ts +++ b/Mohem/src/app/authentication/confirm-login/confirm-login.component.ts @@ -568,31 +568,31 @@ export class ConfirmLoginComponent implements OnInit { - // title: 'Biometric Authetnciation', // (Android Only) | optional | Default: " Biometric Sign On" + title: 'Biometric Authetnciation', // (Android Only) | optional | Default: " Biometric Sign On" - // // subtitle: 'Coolest Plugin ever' ,// (Android Only) | optional | Default: null + subtitle: 'Coolest Plugin ever' ,// (Android Only) | optional | Default: null - // // description: this.ts.trPK("general", "auth-please"),// optional | Default: null + description: this.ts.trPK("general", "auth-please"),// optional | Default: null - // fallbackButtonTitle: this.ts.trPK("general", "use-pin"), // optional | When disableBackup is false defaults to "Use Pin". + fallbackButtonTitle: this.ts.trPK("general", "use-pin"), // optional | When disableBackup is false defaults to "Use Pin". - // // When disableBackup is true defaults to "Cancel" + // When disableBackup is true defaults to "Cancel" - // disableBackup:true, // optional | default: false + disableBackup:true, // optional | default: false - clientId: "Fingerprint Authetnciation", + // clientId: "Fingerprint Authetnciation", - clientSecret: "Ate343_9347lajF", // Only necessary for Android + // clientSecret: "Ate343_9347lajF", // Only necessary for Android - disableBackup: true, // Only for Android(optional) + // disableBackup: true, // Only for Android(optional) - localizedFallbackTitle: this.ts.trPK("general", "use-pin"), // Only for iOS + // localizedFallbackTitle: this.ts.trPK("general", "use-pin"), // Only for iOS - localizedReason: this.ts.trPK("general", "auth-please") // Only for iOS + // localizedReason: this.ts.trPK("general", "auth-please") // Only for iOS }) @@ -712,7 +712,7 @@ export class ConfirmLoginComponent implements OnInit { this.authService.setAuthenticatedUser(result).subscribe(() => { - if (this.platform.is("mobile")) { + if (this.platform.is("cordova")) { this.insertMobileLogin(); diff --git a/Mohem/src/app/authentication/sms-page/sms-page.page.html b/Mohem/src/app/authentication/sms-page/sms-page.page.html index a26b8d07..5eca319e 100644 --- a/Mohem/src/app/authentication/sms-page/sms-page.page.html +++ b/Mohem/src/app/authentication/sms-page/sms-page.page.html @@ -26,9 +26,9 @@

{{displayTime}}



- {{'verificationcode,verificationcode' | translate}} + - + diff --git a/Mohem/src/app/authentication/sms-page/sms-page.page.ts b/Mohem/src/app/authentication/sms-page/sms-page.page.ts index 2172f349..825f64fd 100644 --- a/Mohem/src/app/authentication/sms-page/sms-page.page.ts +++ b/Mohem/src/app/authentication/sms-page/sms-page.page.ts @@ -339,7 +339,7 @@ export class SmsPageComponent implements OnInit { - if (this.platform.is("mobile")) { + if (this.platform.is("cordova")) { this.insertMobileLogin(); diff --git a/Mohem/src/app/hmg-common/services/connector/connector.service.ts b/Mohem/src/app/hmg-common/services/connector/connector.service.ts index 958d91c0..1cecff37 100644 --- a/Mohem/src/app/hmg-common/services/connector/connector.service.ts +++ b/Mohem/src/app/hmg-common/services/connector/connector.service.ts @@ -24,8 +24,8 @@ export class ConnectorService { public static timeOut = 30 * 1000; // public static host = 'http://10.50.100.113:6060/'; // development service - public static host = "https://uat.hmgwebservices.com/"; - //public static host = 'https://hmgwebservices.com/'; + public static host = "https://uat.hmgwebservices.com/"; + // public static host = 'https://hmgwebservices.com/'; // public static host = 'http://10.50.100.198:6060/'; // public static host = 'http://10.50.100.113:6060/'; // development service /* public static host = 'http://10.50.100.198:6060/'; diff --git a/Mohem/src/app/hmg-common/ui/sms/sms.page.html b/Mohem/src/app/hmg-common/ui/sms/sms.page.html index c49cc795..a783455d 100644 --- a/Mohem/src/app/hmg-common/ui/sms/sms.page.html +++ b/Mohem/src/app/hmg-common/ui/sms/sms.page.html @@ -23,9 +23,9 @@

{{displayTime}}



- {{'verificationcode.verificationcode' | translate}} + - + diff --git a/Mohem/src/app/home/home.page.html b/Mohem/src/app/home/home.page.html index 7be21549..b72be1d4 100644 --- a/Mohem/src/app/home/home.page.html +++ b/Mohem/src/app/home/home.page.html @@ -78,7 +78,7 @@ - diff --git a/Mohem/src/app/home/home.page.ts b/Mohem/src/app/home/home.page.ts index cb09b009..c4f01a48 100644 --- a/Mohem/src/app/home/home.page.ts +++ b/Mohem/src/app/home/home.page.ts @@ -306,8 +306,6 @@ export class HomePage implements OnInit { this.common.openChangePassword(); } private openPayslip() { - - this.common.openPayslipPage(); } private attendance() { diff --git a/Mohem/src/app/notification/home/home.component.ts b/Mohem/src/app/notification/home/home.component.ts index ae011cbf..0832c437 100644 --- a/Mohem/src/app/notification/home/home.component.ts +++ b/Mohem/src/app/notification/home/home.component.ts @@ -234,9 +234,16 @@ export class HomeComponent implements OnInit { } } for (let i = 0; i < this.WorkListResObj.length; i++) { - if (reqType == this.WorkListResObj[i].REQUEST_TYPE) { - filterdType.push(this.WorkListResObj[i]); + if(reqType=="HR"){ + if ("EIT" == this.WorkListResObj[i].REQUEST_TYPE || "ABSENCE" == this.WorkListResObj[i].REQUEST_TYPE) { + filterdType.push(this.WorkListResObj[i]); + } + }else{ + if (reqType == this.WorkListResObj[i].REQUEST_TYPE) { + filterdType.push(this.WorkListResObj[i]); + } } + } this.filteredNotificationList = filterdType; diff --git a/Mohem/src/app/payslip/home/home.component.ts b/Mohem/src/app/payslip/home/home.component.ts index 2c11be94..769e7f6c 100644 --- a/Mohem/src/app/payslip/home/home.component.ts +++ b/Mohem/src/app/payslip/home/home.component.ts @@ -4,6 +4,7 @@ import { TranslatorService } from 'src/app/hmg-common/services/translator/transl import { CommonService } from 'src/app/hmg-common/services/common/common.service'; import { MenuResponse } from 'src/app/hmg-common/services/menu/models/menu-response'; import { SharedDataService } from 'src/app/hmg-common/services/shared-data-service/shared-data.service'; + @Component({ selector: 'app-home', templateUrl: './home.component.html', @@ -25,38 +26,52 @@ export class HomeComponent implements OnInit { public ts: TranslatorService, public common: CommonService, public sharedData: SharedDataService, + public authService: AuthenticationService ) {} ngOnInit() { - console.log("test"); - - this.selEmp = this.common.sharedService.getSharedData( - MenuResponse.SHARED_SEL_EMP, - false - ); - console.log(" this.selEmp" + this.selEmp); - this.respID = this.common.sharedService.getSharedData( - MenuResponse.SHARED_SEL_RESP_ID, - false - ); - console.log(" this.respID" + this.respID); - - this.selMenu = new MenuResponse(); - this.selMenu = this.common.sharedService.getSharedData( - MenuResponse.SHARED_DATA, - false - ); - console.log(" this.selMenu" + this.selMenu); + // this.selEmp = this.common.sharedService.getSharedData( + // MenuResponse.SHARED_SEL_EMP, + // false + // ); + // if(this.selEmp){}else{ + // this.authService.loadAuthenticatedUser().subscribe((user: AuthenticatedUser) => { + // if (user) { + // this.selEmp = user.ASSIGNMENT_NUMBER; + + // } + // }); + // } + + // console.log(" this.selEmp" + this.selEmp); + // this.respID = this.common.sharedService.getSharedData( + // MenuResponse.SHARED_SEL_RESP_ID, + // false + // ); + // if(this.respID){}else{ + // this.respID=-999; + // } + // console.log(" this.respID" + this.respID); + + // this.selMenu = new MenuResponse(); + // this.selMenu = this.common.sharedService.getSharedData( + // MenuResponse.SHARED_DATA, + // false + // ); + // console.log(" this.selMenu" + this.selMenu); this.getPayslip(); } getPayslip(){ + // this.selEmp ="13777"; + console.log("this.selEmp????????"+this.selEmp) + this.respID=-999; const request = { P_SELECTED_EMPLOYEE_NUMBER: this.selEmp,//'125346',//this.selEmp, - P_MENU_TYPE: this.selMenu.List_Menu.MENU_TYPE,// 'E',//this.selMenu.List_Menu.MENU_TYPE, - P_SELECTED_RESP_ID:this.respID//"-999" //this.respID, + P_MENU_TYPE:"E",// 'E',//this.selMenu.List_Menu.MENU_TYPE, + P_SELECTED_RESP_ID: this.respID//"-999" //this.respID, // P_PAGE_NUM: this.P_PAGE_NUM, // P_PAGE_LIMIT: this.P_PAGE_LIMIT }; diff --git a/Mohem/src/app/payslip/service/payslip.service.ts b/Mohem/src/app/payslip/service/payslip.service.ts index 0ef5274f..847438a3 100644 --- a/Mohem/src/app/payslip/service/payslip.service.ts +++ b/Mohem/src/app/payslip/service/payslip.service.ts @@ -3,6 +3,7 @@ import { ConnectorService } from '../../hmg-common/services/connector/connector. import { AuthenticationService } from '../../hmg-common/services/authentication/authentication.service'; import { Observable } from 'node_modules/@angular/cli/node_modules/rxjs'; + @Injectable({ providedIn: 'root' }) @@ -19,10 +20,11 @@ export class PayslipService { ) { } -public getPayslip(PayslipRequest: any, onError?: any,errorLabel?: string): Observable { +public getPayslip(PayslipRequest: any , onError?: any,errorLabel?: string): Observable { const request = PayslipRequest; this.authService.authenticateRequest(request); - return this.api.post(PayslipService.getPayslip,request,onError,errorLabel); + request.P_SELECTED_EMPLOYEE_NUMBER = request.UserName; + return this.api.post(PayslipService.getPayslip, request, onError, errorLabel); } public getSummeryOFPayment(PayslipRequest: any, onError?: any,errorLabel?: string): Observable { const request = PayslipRequest; From ba0d53011b7a05c2580788fe95c7cc60240ef3f5 Mon Sep 17 00:00:00 2001 From: Mohamed Mekawy Date: Tue, 17 Dec 2019 12:07:41 +0300 Subject: [PATCH 2/2] Add Time card & Edit date element & change icons --- .../src/app/eit/add-eit/add-eit.component.ts | 8 +++--- .../services/connector/connector.service.ts | 4 +-- Mohem/src/app/payslip/home/home.component.ts | 3 +- .../app/time-card/home/home.component.html | 3 ++ .../app/time-card/home/home.component.scss | 0 .../app/time-card/home/home.component.spec.ts | 27 ++++++++++++++++++ .../src/app/time-card/home/home.component.ts | 14 +++++++++ .../time-card-details.component.html | 3 ++ .../time-card-details.component.scss | 0 .../time-card-details.component.spec.ts | 27 ++++++++++++++++++ .../time-card-details.component.ts | 14 +++++++++ Mohem/src/app/time-card/time-card.module.ts | 20 +++++++++++-- Mohem/src/app/time-card/time-card.page.html | 10 ++----- Mohem/src/app/uI-elements/date-time.input.ts | 2 +- Mohem/src/app/uI-elements/date.input.ts | 2 +- Mohem/src/imgs/MissingSwipe.png | Bin 0 -> 9908 bytes Mohem/src/imgs/MyTimeCard.png | Bin 0 -> 4489 bytes Mohem/src/imgs/Timeback.png | Bin 0 -> 9311 bytes Mohem/src/imgs/WorkOnBreak.png | Bin 0 -> 4573 bytes 19 files changed, 117 insertions(+), 20 deletions(-) create mode 100644 Mohem/src/app/time-card/home/home.component.html create mode 100644 Mohem/src/app/time-card/home/home.component.scss create mode 100644 Mohem/src/app/time-card/home/home.component.spec.ts create mode 100644 Mohem/src/app/time-card/home/home.component.ts create mode 100644 Mohem/src/app/time-card/time-card-details/time-card-details.component.html create mode 100644 Mohem/src/app/time-card/time-card-details/time-card-details.component.scss create mode 100644 Mohem/src/app/time-card/time-card-details/time-card-details.component.spec.ts create mode 100644 Mohem/src/app/time-card/time-card-details/time-card-details.component.ts create mode 100644 Mohem/src/imgs/MissingSwipe.png create mode 100644 Mohem/src/imgs/MyTimeCard.png create mode 100644 Mohem/src/imgs/Timeback.png create mode 100644 Mohem/src/imgs/WorkOnBreak.png diff --git a/Mohem/src/app/eit/add-eit/add-eit.component.ts b/Mohem/src/app/eit/add-eit/add-eit.component.ts index cf7adcab..81cc100e 100644 --- a/Mohem/src/app/eit/add-eit/add-eit.component.ts +++ b/Mohem/src/app/eit/add-eit/add-eit.component.ts @@ -661,7 +661,7 @@ export class AddEitComponent implements OnInit { this.eitService.getDefaultValue(body).subscribe((result: any) => { let elem = this.getElementByName(segmentName); - console.log(elem); + // console.log(elem); // if(elem.dataset.hiddenval){ // elem.dataset.hiddenval=""; // return false; @@ -694,7 +694,7 @@ export class AddEitComponent implements OnInit { if (isSelectElement) { let elem = this.getSelectElementByName(segmentName); elem = document.getElementById(elem), - alert(elem.length); + //alert(elem.length); // var firstoption = document.createElement("option"); // firstoption.text = text; // firstoption.value = val; @@ -703,11 +703,11 @@ export class AddEitComponent implements OnInit { //elem.text=text; }else{ - console.log("else - " + elem.value); + // console.log("else - " + elem.value); elem.value = val; elem.innerText = text; elem.setAttribute("value", val); - console.log("else - " + elem.value); + // console.log("else - " + elem.value); } } if (isHidden || isReadOnlyList) { diff --git a/Mohem/src/app/hmg-common/services/connector/connector.service.ts b/Mohem/src/app/hmg-common/services/connector/connector.service.ts index 1cecff37..adb01bad 100644 --- a/Mohem/src/app/hmg-common/services/connector/connector.service.ts +++ b/Mohem/src/app/hmg-common/services/connector/connector.service.ts @@ -24,8 +24,8 @@ export class ConnectorService { public static timeOut = 30 * 1000; // public static host = 'http://10.50.100.113:6060/'; // development service - public static host = "https://uat.hmgwebservices.com/"; - // public static host = 'https://hmgwebservices.com/'; +public static host = "https://uat.hmgwebservices.com/"; + //public static host = 'https://hmgwebservices.com/'; // public static host = 'http://10.50.100.198:6060/'; // public static host = 'http://10.50.100.113:6060/'; // development service /* public static host = 'http://10.50.100.198:6060/'; diff --git a/Mohem/src/app/payslip/home/home.component.ts b/Mohem/src/app/payslip/home/home.component.ts index 769e7f6c..4ab1ab45 100644 --- a/Mohem/src/app/payslip/home/home.component.ts +++ b/Mohem/src/app/payslip/home/home.component.ts @@ -25,8 +25,7 @@ export class HomeComponent implements OnInit { public payslipService:PayslipService, public ts: TranslatorService, public common: CommonService, - public sharedData: SharedDataService, - public authService: AuthenticationService + public sharedData: SharedDataService ) {} ngOnInit() { diff --git a/Mohem/src/app/time-card/home/home.component.html b/Mohem/src/app/time-card/home/home.component.html new file mode 100644 index 00000000..afc16a36 --- /dev/null +++ b/Mohem/src/app/time-card/home/home.component.html @@ -0,0 +1,3 @@ +

+ home works! +

diff --git a/Mohem/src/app/time-card/home/home.component.scss b/Mohem/src/app/time-card/home/home.component.scss new file mode 100644 index 00000000..e69de29b diff --git a/Mohem/src/app/time-card/home/home.component.spec.ts b/Mohem/src/app/time-card/home/home.component.spec.ts new file mode 100644 index 00000000..5ec1377b --- /dev/null +++ b/Mohem/src/app/time-card/home/home.component.spec.ts @@ -0,0 +1,27 @@ +import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core'; +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { HomeComponent } from './home.component'; + +describe('HomeComponent', () => { + let component: HomeComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ HomeComponent ], + schemas: [CUSTOM_ELEMENTS_SCHEMA], + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(HomeComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/Mohem/src/app/time-card/home/home.component.ts b/Mohem/src/app/time-card/home/home.component.ts new file mode 100644 index 00000000..a7aad8ad --- /dev/null +++ b/Mohem/src/app/time-card/home/home.component.ts @@ -0,0 +1,14 @@ +import { Component, OnInit } from '@angular/core'; + +@Component({ + selector: 'app-home', + templateUrl: './home.component.html', + styleUrls: ['./home.component.scss'], +}) +export class HomeComponent implements OnInit { + + constructor() { } + + ngOnInit() {} + +} diff --git a/Mohem/src/app/time-card/time-card-details/time-card-details.component.html b/Mohem/src/app/time-card/time-card-details/time-card-details.component.html new file mode 100644 index 00000000..633c94d1 --- /dev/null +++ b/Mohem/src/app/time-card/time-card-details/time-card-details.component.html @@ -0,0 +1,3 @@ +

+ time-card-details works! +

diff --git a/Mohem/src/app/time-card/time-card-details/time-card-details.component.scss b/Mohem/src/app/time-card/time-card-details/time-card-details.component.scss new file mode 100644 index 00000000..e69de29b diff --git a/Mohem/src/app/time-card/time-card-details/time-card-details.component.spec.ts b/Mohem/src/app/time-card/time-card-details/time-card-details.component.spec.ts new file mode 100644 index 00000000..976086ff --- /dev/null +++ b/Mohem/src/app/time-card/time-card-details/time-card-details.component.spec.ts @@ -0,0 +1,27 @@ +import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core'; +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { TimeCardDetailsComponent } from './time-card-details.component'; + +describe('TimeCardDetailsComponent', () => { + let component: TimeCardDetailsComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ TimeCardDetailsComponent ], + schemas: [CUSTOM_ELEMENTS_SCHEMA], + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(TimeCardDetailsComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/Mohem/src/app/time-card/time-card-details/time-card-details.component.ts b/Mohem/src/app/time-card/time-card-details/time-card-details.component.ts new file mode 100644 index 00000000..8fa456db --- /dev/null +++ b/Mohem/src/app/time-card/time-card-details/time-card-details.component.ts @@ -0,0 +1,14 @@ +import { Component, OnInit } from '@angular/core'; + +@Component({ + selector: 'app-time-card-details', + templateUrl: './time-card-details.component.html', + styleUrls: ['./time-card-details.component.scss'], +}) +export class TimeCardDetailsComponent implements OnInit { + + constructor() { } + + ngOnInit() {} + +} diff --git a/Mohem/src/app/time-card/time-card.module.ts b/Mohem/src/app/time-card/time-card.module.ts index 4e1ae971..e79e452f 100644 --- a/Mohem/src/app/time-card/time-card.module.ts +++ b/Mohem/src/app/time-card/time-card.module.ts @@ -6,11 +6,23 @@ import { Routes, RouterModule } from '@angular/router'; import { IonicModule } from '@ionic/angular'; import { TimeCardPage } from './time-card.page'; +import { TimeCardDetailsComponent } from './time-card-details/time-card-details.component'; +import { HomeComponent } from './home/home.component'; const routes: Routes = [ { path: '', - component: TimeCardPage + component: TimeCardPage, + children: [ + { + path: 'home', + component: HomeComponent + }, + { + path: 'time-card-details', + component: TimeCardDetailsComponent + } + ] } ]; @@ -21,6 +33,10 @@ const routes: Routes = [ IonicModule, RouterModule.forChild(routes) ], - declarations: [TimeCardPage] + declarations: [ + TimeCardPage, + HomeComponent, + TimeCardDetailsComponent + ] }) export class TimeCardPageModule {} diff --git a/Mohem/src/app/time-card/time-card.page.html b/Mohem/src/app/time-card/time-card.page.html index 5a318c63..67cbe279 100644 --- a/Mohem/src/app/time-card/time-card.page.html +++ b/Mohem/src/app/time-card/time-card.page.html @@ -1,9 +1,3 @@ - - - time-card - - - - - + + \ No newline at end of file diff --git a/Mohem/src/app/uI-elements/date-time.input.ts b/Mohem/src/app/uI-elements/date-time.input.ts index 4b623765..aa5c15d8 100644 --- a/Mohem/src/app/uI-elements/date-time.input.ts +++ b/Mohem/src/app/uI-elements/date-time.input.ts @@ -45,7 +45,7 @@ export class DateTimeInput extends UiElement { "" + " " + this.label + "" + // "
" + this.value + "
" + - "" + + "" + // " "+ // " "+ // " "+ diff --git a/Mohem/src/app/uI-elements/date.input.ts b/Mohem/src/app/uI-elements/date.input.ts index 630fa6ac..9e486e9e 100644 --- a/Mohem/src/app/uI-elements/date.input.ts +++ b/Mohem/src/app/uI-elements/date.input.ts @@ -44,7 +44,7 @@ export class DateInput extends UiElement { "" + " " + this.label + "" + // "
" + this.value + "
" + - "" + + "" + // " "+ // " "+ // " "+ diff --git a/Mohem/src/imgs/MissingSwipe.png b/Mohem/src/imgs/MissingSwipe.png new file mode 100644 index 0000000000000000000000000000000000000000..ec7ffcf593ae6b5c49c46c5f7b1ca52df8c78208 GIT binary patch literal 9908 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 literal 0 HcmV?d00001 diff --git a/Mohem/src/imgs/Timeback.png b/Mohem/src/imgs/Timeback.png new file mode 100644 index 0000000000000000000000000000000000000000..287f57abee790e564dda00697278e0cd5c677bfd GIT binary patch literal 9311 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