{"version":3,"sources":["./src/app/pipes/highlighter.pipe.ts","./src/app/store/flight-search/flight-search.actions.ts","./src/app/store/hotel-search/hotel-search.effects.ts","./src/app/flight/one-way/one-way.component.ts","./src/app/flight/one-way/one-way.component.html","./src/app/store/hotel-search/hotel-search.reducer.ts","./src/app/hotelsearch/hotelsearch.component.ts","./src/app/hotelsearch/hotelsearch.component.html","./src/app/store/app-setting/app-setting.reducer.ts","./src/app/store/flight-search/flight-search.reducer.ts","./src/app/pipes/limit-to.pipe.ts","./src/app/store/app-offers/offers.actions.ts","./src/environments/environment.ts","./src/app/about-us/about-us.component.ts","./src/app/about-us/about-us.component.html","./src/app/users/change-password/change-password.component.ts","./src/app/users/change-password/change-password.component.html","./src/app/services/curruncy-service.service.ts","./src/app/services/session.service.ts","./src/app/models/flights-info/flights-info.module.ts","./src/app/checkout/confirm-payment/confirm-payment.component.ts","./src/app/checkout/confirm-payment/confirm-payment.component.html","./src/app/store/user/user.effects.ts","./src/app/models/filter-inputs/filter-inputs.module.ts","./src/app/users/user-login/user-login.component.ts","./src/app/users/user-login/user-login.component.html","./src/app/flight/select-return-flight/select-return-flight.component.ts","./src/app/flight/select-return-flight/select-return-flight.component.html","./src/app/term-ofuse/term-ofuse.component.ts","./src/app/term-ofuse/term-ofuse.component.html","./src/app/store/user/user.actions.ts","./src/app/users/upcoming-ahistory/upcoming-ahistory.component.ts","./src/app/users/upcoming-ahistory/upcoming-ahistory.component.html","./src/app/pipes/offline-filter.pipe.ts","./src/app/store/app-offers/offers.reducer.ts","./src/app/models/search-flight/search-flight.module.ts","./src/app/pipes/hour-minute.pipe.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/flight/far-rules/far-rules.component.ts","./src/app/flight/far-rules/far-rules.component.html","./src/app/models/point-ofsale/point-ofsale.module.ts","./src/app/store/hotel-search/hotel-search.actions.ts","./src/app/privacy/privacy.component.ts","./src/app/privacy/privacy.component.html","./src/app/store/app-setting/app-setting.effects.ts","./src/app/pipes/hotelecites.pipe.ts","./src/app/models/currency/currency.module.ts","./src/app/pipes/filter-city.pipe.ts","./src/app/store/app-utilities/app-utilities.actions.ts","./src/app/services/flight-service.service.ts","./src/app/services/hotelname.service.ts","./src/app/store/app-utilities/app-utilities.effects.ts","./src/app/pipes/councode.pipe.ts","./src/app/store/index.ts","./src/app/store/user/user.reducer.ts","./src/app/store/selectors.ts","./src/app/pipes/duration-to-hour-min.pipe.ts","./src/app/app.module.ts","./src/app/contact/contact.component.ts","./src/app/contact/contact.component.html","./src/app/shared.module.ts","./src/app/store/app-utilities/app-utilities.reducer.ts","./src/app/header/header.component.ts","./src/app/header/header.component.html","./src/app/footer/footer.component.ts","./src/app/footer/footer.component.html","./src/app/users/edit-acount/edit-acount.component.ts","./src/app/users/edit-acount/edit-acount.component.html","./src/app/users/forget-password/forget-password.component.ts","./src/app/users/forget-password/forget-password.component.html","./src/app/navlist/navlist.component.ts","./src/app/navlist/navlist.component.html","./src/app/flight/multi-trip/multi-trip.component.ts","./src/app/flight/multi-trip/multi-trip.component.html","./src/app/users/orders/orders.component.ts","./src/app/users/orders/orders.component.html","./src/app/flight/seg/seg.component.ts","./src/app/flight/seg/seg.component.html","./src/app/store/app-setting/app-setting.actions.ts","./src/app/store/app-offers/offers.effects.ts","./src/app/users/users.component.ts","./src/app/users/users.component.html","./src/app/pipes/exchange.pipe.ts","./src/app/pipes/cod-to-city.pipe.ts","./src/app/searchflight/searchflight.component.ts","./src/app/searchflight/searchflight.component.html","./src/app/store/flight-search/flight-search.effects.ts","./src/app/services/hotel-search.service.ts","./src/app/interseptor/auth-interceptor.service.ts","./src/app/app-routing.module.ts","./src/app/flight/filter-selected-flight/filter-selected-flight.component.ts","./src/app/flight/filter-selected-flight/filter-selected-flight.component.html","./src/app/flight/round-trip/round-trip.component.ts","./src/app/flight/round-trip/round-trip.component.html","./src/app/services/myapi.service.ts","./src/app/users/user-signup/user-signup.component.ts","./src/app/users/user-signup/user-signup.component.html","./src/main.ts","./$_lazy_route_resource lazy namespace object"],"names":[],"mappings":"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","file":"main-es2017.js","sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'highlighter'\r\n})\r\nexport class HighlighterPipe implements PipeTransform {\r\n transform(text: string, search): string {\r\n const pattern = search\r\n .replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, \"\\\\$&\")\r\n .split(' ')\r\n .filter(t => t.length > 0)\r\n .join('|');\r\n const regex = new RegExp(pattern, 'gi');\r\n\r\n return search ? text.replace(regex, match => `${match}`) : text;\r\n }\r\n\r\n}\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { airItineraries, FareRules, flight, FlightSearchResult, flightOfflineService, PassengersModule, Selectedflight } from '@src/app/interface/flight-search-result';\r\nimport { FilterInputsModule } from '@src/app/models/filter-inputs/filter-inputs.module';\r\nimport { SearchFlightModule } from '@src/app/models/search-flight/search-flight.module';\r\n\r\nexport const loadFlightSearchs = createAction(\r\n '[FlightSearch] Load FlightSearchs',\r\n props<{search: SearchFlightModule}>()\r\n);\r\n\r\nexport const loadFlightSearchsSuccess = createAction(\r\n '[FlightSearch] Load FlightSearchs Success',\r\n props<{ data: FlightSearchResult }>()\r\n);\r\n\r\nexport const loadFlightSearchsFailure = createAction(\r\n '[FlightSearch] Load FlightSearchs Failure',\r\n props<{err:any}>()\r\n);\r\n\r\n\r\nexport const loadSelectedFlight = createAction(\r\n '[SelectedFlight] Load SelectedFlight',\r\n props<{searchid: string, sequenceNum: number, providerKey: string,pcc:string}>()\r\n);\r\n\r\nexport const loadSelectedFlightSuccess = createAction(\r\n '[SelectedFlight] Load SelectedFlight Success',\r\n props<{ data: Selectedflight }>()\r\n);\r\n\r\nexport const loadSelectedFlightFailure = createAction(\r\n '[SelectedFlight] Load SelectedFlight Failure',\r\n props<{err:any}>()\r\n);\r\nexport const updateTotalAmount = createAction(\r\n '[selectedFlight] Update selectedFlightTotalAmount',\r\n props<{totalAmount:number}>()\r\n);\r\n// select ReturnFlight by select Departflight\r\n// export const loadSelectedReturnFlight = createAction(\r\n// '[SelectedReturnFlight] Load SelectedReturnFlight',\r\n// props<{flightNumber: number, airlineCode: any}>()\r\n// );\r\n\r\n// export const loadSelectedReturnFlightSuccess = createAction(\r\n// '[SelectedReturnFlight] Load SelectedReturnFlight Success',\r\n// props<{ data: SelectedReturnFlight }>()\r\n// );\r\n\r\n// export const loadSelectedReturnFlightFailure = createAction(\r\n// '[SelectedReturnFlight] Load SelectedReturnFlight Failure',\r\n// props<{err:any}>()\r\n// );\r\n\r\n\r\nexport const pickySelectionAction = createAction(\r\n '[pickySelection] User Picky Select',\r\n props<{flight: flight, airItinerary:airItineraries,flightIndex:number}>()\r\n );\r\n\r\nexport const loadFares = createAction(\r\n '[Fares] Load Fares',\r\n props<{searchid: string, sequenceNum: number, providerKey: string}>()\r\n);\r\n\r\nexport const loadFaresSuccess = createAction(\r\n '[Fares] Load Fares Success',\r\n props<{ data: FareRules[] }>()\r\n);\r\n\r\nexport const loadFaresFailure = createAction(\r\n '[Fares] Load Fares Failure',\r\n props<{err:any}>()\r\n);\r\n\r\nexport const loadOfflineSrvices = createAction(\r\n '[OfflineSrvices ] Load OfflineSrvices ',\r\n props<{searchid: string,POS:string}>()\r\n);\r\n\r\nexport const loadOfflineSrvicesSuccess = createAction(\r\n '[OfflineSrvices ] Load OfflineSrvices Success',\r\n props<{ data: flightOfflineService[] }>()\r\n);\r\n\r\nexport const loadOfflineSrvicesFailure = createAction(\r\n '[OfflineSrvices ] Load OfflineSrvices Failure',\r\n props<{err:any}>()\r\n);\r\n\r\nexport const SaveBooking = createAction(\r\n '[SaveBooking ] SaveBooking ',\r\n props<{searchid: string,pcc:string,sequenceNum: number, body: PassengersModule, pkey: string,lang:string,ip:string,iplocation:string,selectedServices:any[]}>()\r\n);\r\n\r\nexport const SaveBookingSuccess = createAction(\r\n '[SaveBooking ] SaveBooking Success',\r\n props<{ data: any }>()\r\n);\r\n\r\nexport const SaveBookingFailure = createAction(\r\n '[SaveBooking ] SaveBooking Failure',\r\n props<{err:any}>()\r\n);\r\n\r\n\r\nexport const updateSearchCretaria = createAction(\r\n '[FlightSearch] Update Search Cretaria',\r\n props<{searchData:SearchFlightModule}>()\r\n);\r\n\r\nexport const filterFlight = createAction(\r\n '[FlightSearch] Filter Flight',\r\n props<{filter?:FilterInputsModule,airItineraries:airItineraries[],roundTrip:boolean}>()\r\n);\r\n\r\nexport const filterFlightSuccess = createAction(\r\n '[FlightSearch] Filter Flight Success',\r\n props<{airItineraries:airItineraries[][]}>()\r\n);\r\n\r\nexport const filterFlightFailure = createAction(\r\n '[FlightSearch ] Filter Flight Failure',\r\n props<{err:any}>()\r\n);\r\nexport const filterSelectedFlight = createAction(\r\n '[filterSelectedFlight] filterSelected Flight',\r\n props<{filter?:FilterInputsModule,airItineraries:airItineraries[],roundTrip:boolean}>()\r\n);\r\n\r\nexport const filterSelectedFlightSuccess = createAction(\r\n '[filterSelectedFlight] filterSelected Flight Success',\r\n props<{airItineraries:airItineraries[]}>()\r\n);\r\n\r\nexport const filterSelectedFlightFailure = createAction(\r\n '[filterSelectedFlight ] filterSelected Flight Failure',\r\n props<{err:any}>()\r\n);\r\n\r\nexport const sortFlight = createAction(\r\n '[FlightSearch] Sort Flight',\r\n props<{airItineraries:airItineraries[] , sortType:number}>()\r\n);\r\n\r\nexport const sortFlightSuccess = createAction(\r\n '[FlightSearch] Sort Flight Success',\r\n props<{airItineraries:airItineraries[][]}>()\r\n);\r\n\r\nexport const sortFlightFailure = createAction(\r\n '[FlightSearch] Sort Flight Failure',\r\n props<{err:any}>()\r\n);\r\nexport const sortSelectedFlight = createAction(\r\n '[FlightSearch] sortSelected Flight',\r\n props<{airItineraries:airItineraries[] , sortType:number}>()\r\n);\r\n\r\nexport const sortSelectedFlightSuccess = createAction(\r\n '[FlightSearch] sortSelected Flight Success',\r\n props<{airItineraries:airItineraries[]}>()\r\n);\r\n\r\nexport const sortSelectedFlightFailure = createAction(\r\n '[FlightSearch] sortSelected Flight Failure',\r\n props<{err:any}>()\r\n);\r\n\r\nexport const resetSelectedFlight = createAction(\r\n '[FlightSearch] Reset Selected Flight'\r\n);\r\n\r\nexport const updateFlightType = createAction(\r\n '[FlightSearch] Update Flight Type',\r\n props<{flightType:string}>()\r\n);\r\n\r\nexport const cFlightSearchs = createAction(\r\n '[FlightSearch] clear FlightSearchs'\r\n);\r\nexport const updateFlightSummaryData = createAction(\r\n '[FlightSearch] Update Flight Summary Data',\r\n props<{searchData:any}>()\r\n);\r\n","import { Router } from '@angular/router';\r\nimport { loadHotelSearchs, updateHotelSearchCretaria, loadHotelSearchsSuccess, loadHotelSearchsFailure, hotelSaveBooking, hotelSaveBookingSuccess, hotelSaveBookingFailure, loadSelectedHotelSuccess } from './hotel-search.actions';\r\nimport { Injectable } from '@angular/core';\r\nimport { Actions, createEffect , ofType} from '@ngrx/effects';\r\nimport { mergeMap, map, catchError } from \"rxjs/operators\";\r\nimport { Store } from '@ngrx/store';\r\nimport { MyapiService } from '@src/app/services/myapi.service';\r\nimport * as hotelActions from \"../hotel-search/hotel-search.actions\";\r\nimport { of } from \"rxjs\";\r\n\r\n\r\n\r\n@Injectable()\r\nexport class HotelSearchEffects {\r\n\r\n constructor(\r\n private actions$: Actions,\r\n private apiService: MyapiService,\r\n private store: Store,\r\n private route:Router) {}\r\n loadHotels$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(hotelActions.loadHotelSearchs),\r\n mergeMap((searchCrtariea) =>\r\n this.apiService.getHotels(searchCrtariea.data).pipe(\r\n map((v) => {\r\n this.store.dispatch(\r\n updateHotelSearchCretaria({ data: searchCrtariea.data })\r\n );\r\n return hotelActions.loadHotelSearchsSuccess({ data: v });\r\n }),\r\n catchError((err) => {\r\n return of(hotelActions.loadHotelSearchsFailure(err));\r\n })\r\n )\r\n )\r\n )\r\n );\r\n\r\n loadHotelRooms$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(hotelActions.loadHotelRooms),\r\n mergeMap((param) =>\r\n this.apiService.GetHotelRooms(param.pId , param.sId , param.hotelID).pipe(\r\n map((v) => {\r\n \r\n console.log('HOTEL ROOMS RESPONSE',v)\r\n return hotelActions.loadHotelRoomsSuccess({ data: v });\r\n }),\r\n catchError((err) => {\r\n return of(hotelActions.loadHotelSearchsFailure(err));\r\n })\r\n )\r\n )\r\n )\r\n );\r\n\r\n loadHotelAmenties$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(hotelActions.loadHotelAmenties),\r\n mergeMap((param) =>\r\n this.apiService.gethotelAmenities(param.hotelID).pipe(\r\n map((v) => {\r\n \r\n console.log('HOTEL AMENTIES RESPONSE',v)\r\n return hotelActions.loadHotelAmentiesSuccess({ data: v });\r\n }),\r\n catchError((err) => {\r\n return of(hotelActions.loadHotelAmentiesFailure(err));\r\n })\r\n )\r\n )\r\n )\r\n );\r\n\r\n hotelSaveBooking$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(hotelActions.hotelSaveBooking),\r\n mergeMap((param) =>\r\n this.apiService\r\n .HotelSaveBookingData(\r\n param.data\r\n ).pipe(\r\n mergeMap(\r\n (val) =>\r\n (val.status = \"Valid\"\r\n ? this.apiService\r\n .GetHPaymentView(\r\n param.ip,\r\n param.ipLocation,\r\n val.hgNumber,\r\n param.searchId,\r\n param.lang,\r\n )\r\n .pipe(\r\n map((link:any) =>{\r\n if(link == '' || link == ' '){\r\n throw new Error(\"NO LINK\")\r\n }\r\n window.location.href = link.link\r\n return hotelActions.hotelSaveBookingSuccess({\r\n data: link,\r\n })\r\n }\r\n \r\n ),\r\n catchError((err) => {\r\n return of(\r\n hotelActions.hotelSaveBookingFailure(err)\r\n );\r\n })\r\n )\r\n : of(\r\n hotelActions.hotelSaveBookingFailure({\r\n error: \"FAildToSaveBooking\",\r\n })\r\n ))\r\n ),\r\n catchError((err) => {\r\n return of(hotelActions.hotelSaveBookingFailure(err));\r\n })\r\n )\r\n ),\r\n catchError((err) => {\r\n return of(hotelActions.hotelSaveBookingFailure(err));\r\n })\r\n )\r\n )\r\n\r\n loadRoomCancellation$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(hotelActions.loadRoomCancellation),\r\n mergeMap((param) =>\r\n this.apiService.roomcancelation(param.sid , param.hotelcode , param.roomindex , param.PId).pipe(\r\n map((v) => {\r\n \r\n console.log('ROOM CANCELLATION RESPONSE',v)\r\n return hotelActions.loadRoomCancellationSuccess({ data: v });\r\n }),\r\n catchError((err) => {\r\n return of(hotelActions.loadRoomCancellationFailure(err));\r\n })\r\n )\r\n )\r\n )\r\n );\r\n\r\n\r\n loadRequiredHotel$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(hotelActions.loadSelectedHotel),\r\n mergeMap((param) =>\r\n this.apiService.GetHotelRoomsNUM(param.sid , param.hotelID , param.Pid , param.rooms).pipe(\r\n map((v) => {\r\n console.log('REQUIRED HOTEL RESULT',v)\r\n return hotelActions.loadSelectedHotelSuccess({ data: v });\r\n }),\r\n catchError((err) => {\r\n return of(hotelActions.loadSelectedHotelFailure(err));\r\n })\r\n )\r\n )\r\n )\r\n );\r\n \r\n\r\n}\r\n","import { Component, OnInit, Input ,OnDestroy} from '@angular/core';\r\nimport { FlightServiceService } from '../../services/flight-service.service';\r\nimport { MyapiService } from '../../services/myapi.service';\r\nimport {\r\n airItineraries,\r\n fare,\r\n FareRules,\r\n flight,\r\n flightOfflineService,\r\n passengerFareBreakDownDTOs,\r\n Selectedflight,\r\n} from '../../interface/flight-search-result';\r\nimport { ModalDismissReasons, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { FarRulesComponent } from '../far-rules/far-rules.component';\r\nimport {faLuggageCart,faAngleDoubleDown, faForward, faCaretRight, faInfoCircle, faArrowRight, faArrowDown, faSuitcaseRolling, faPlane, faGripVertical, faInfo, faUtensils, faWifi, faChevronDown, faMoon, faHourglassEnd, faChevronUp, faAngleRight, faChevronRight } from '@fortawesome/free-solid-svg-icons';\r\nimport { faYoutubeSquare } from '@fortawesome/free-brands-svg-icons';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { IconProp } from '@fortawesome/fontawesome-svg-core';\r\n\r\ntype fareCalc = (fare:fare[])=>number;\r\ntype calcEqfare =(flightFaresDTO: passengerFareBreakDownDTOs[],type:string,farecalc:fareCalc)=>number;\r\ndeclare var $: any;\r\n\r\nexport interface BreakDownView{\r\n ADT:{\r\n totalFare:[number,string],\r\n ScFare:[number,string,number]\r\n },\r\n CNN:{\r\n totalFare:[number,string],\r\n ScFare:[number,string,number]\r\n },\r\n INF:{\r\n totalFare:[number,string],\r\n ScFare:[number,string,number]\r\n }\r\n}\r\n@Component({\r\n selector: 'app-one-way',\r\n templateUrl: './one-way.component.html',\r\n styleUrls: ['./one-way.component.scss']\r\n})\r\nexport class OneWayComponent implements OnInit ,OnDestroy {\r\n subscribtions:Subscription = new Subscription() ;\r\n faLuggageCart = faLuggageCart as IconProp;\r\n faChevronDown = faChevronDown as IconProp;\r\n faForward=faForward as IconProp;\r\n faMoon=faMoon as IconProp; \r\n faCaretRight=faCaretRight as IconProp;\r\n faAngleRight= faAngleRight as IconProp\r\n faInfoCircle=faInfoCircle as IconProp;\r\n faArrowRight = faArrowRight as IconProp;\r\n faArrowDown = faArrowDown as IconProp;\r\n faChevronRight= faChevronRight as IconProp\r\n faHourglassEnd=faHourglassEnd as IconProp;\r\n faSuitcaseRolling=faSuitcaseRolling as IconProp;\r\n faPlane=faPlane as IconProp;\r\n faGripVertical = faGripVertical as IconProp;\r\n faInfo=faInfo as IconProp;\r\n faUtensils = faUtensils as IconProp;\r\n faYoutubeSquare= faYoutubeSquare as IconProp;\r\n faWifi=faWifi as IconProp;\r\n faChevronUp=faChevronUp as IconProp;\r\n @Input() item: any[] = [];\r\n @Input() i: number = 0;\r\n @Input() over: boolean = false;\r\n @Input () response: any;\r\n @Input() checkout: boolean;\r\n @Input() Selected:Selectedflight;\r\n Loading:boolean= false\r\n FareLoading: boolean = true;\r\n showDetails:boolean=false;\r\n showDetailsMore:boolean[]=[];\r\n disc: [number, string, string];\r\n\r\n fare: FareRules[];\r\n trueT: boolean[] = [];\r\n moreT: boolean = true;\r\n closeResult = '';\r\n term:any;\r\n\r\n public show:boolean = false;\r\n constructor(\r\n public flight: FlightServiceService,\r\n private search: MyapiService, \r\n private modalService: NgbModal,\r\n public translate : TranslateService) { }\r\n\r\n ngOnInit() {\r\n this.trueT = this.flight.valuesoftrue(this.item);\r\n if(this.Selected){\r\n this.item = this.mapSelected(this.Selected);\r\n }\r\n }\r\n toggleDetails(){\r\n this.showDetails = !this.showDetails;\r\n }\r\n toggleDetailsMore(index:number){\r\n this.showDetailsMore[index] = !this.showDetailsMore[index];\r\n }\r\n toggle() {\r\n this.show = !this.show;\r\n\r\n // CHANGE THE NAME OF THE BUTTON.\r\n \r\n }\r\n openLink(link:string){\r\n this.Loading= true;\r\n // this.Loading.emit(true);\r\n setTimeout(()=>{\r\n \r\n window.open(link);\r\n this.Loading= false;\r\n \r\n // this.Loading.emit(false);\r\n \r\n }, 10000);\r\n \r\n \r\n }\r\n showFareRules(squencNumber: number, pKey: string) {\r\n\r\n \r\n this.FareLoading = true;\r\n this.subscribtions.add(\r\n this.subscribtions.add(this.search.fareRules(this.flight.serachId, squencNumber, pKey).subscribe(\r\n (result) => {\r\n this.FareLoading = false;\r\n this.fare = result;\r\n\r\n }\r\n\r\n )));\r\n }\r\n\r\n\r\n togglemodel(index: number, sequenceNum: number, pKey: string) {\r\n let id = '#fareModal' + index;\r\n $(id).modal('toggle');\r\n this.showFareRules(sequenceNum, pKey);\r\n }\r\n\r\n togglemodelt(i: number, m: number, sequenceNum: number, pKey: string) {\r\n let id = '#fareModal' + i + 'l' + m;\r\n $(id).modal('toggle');\r\n this.showFareRules(sequenceNum, pKey);\r\n }\r\n\r\n\r\n\r\n open(sequenceNum: number, pKey: string) {\r\n\r\n const modalRef = this.modalService.open(FarRulesComponent);\r\n modalRef.componentInstance.serachId = this.flight.serachId;\r\n modalRef.componentInstance.squencNumber = sequenceNum;\r\n modalRef.componentInstance.providerKey = pKey;\r\n\r\n\r\n\r\n }\r\n private getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n // openmodel(content,term='') {\r\n // this.term = term;\r\n // this.offcanvasService.open(content, { position: 'end' });\r\n // }\r\n\r\n /**\r\n * \r\n * @param flightFaresDTO \r\n * @param passNumber \r\n * @returns [total value ,curruncy code]\r\n */\r\n returnPassTotalFar(flightFaresDTO: fare[], passNumber: number, calcfare: fareCalc): [number, string] {\r\n let Total: fare = flightFaresDTO.filter(v => v.fareType.toLowerCase() === 'equivfare')[0];\r\n return Total ? [calcfare(flightFaresDTO) * passNumber, Total.currencyCode] : [NaN, 'KWD'];\r\n }\r\n /**\r\n * \r\n * @param flightFaresDTO \r\n * @param passNumber \r\n * @returns [total value per passenger ,curruncy code , number of passenger]\r\n */\r\n returnPassFareScatterd(flightFaresDTO: fare[], passNumber: number, calcfare: fareCalc): [number, string, number] {\r\n let Total: fare = flightFaresDTO.filter(v => v.fareType.toLowerCase() === 'equivfare')[0];\r\n return Total ? [calcfare(flightFaresDTO), Total.currencyCode, passNumber] : [NaN, 'KWD', NaN];\r\n }\r\n /**\r\n * \r\n * @param flightFaresDTO \r\n * @param totalAmount \r\n * @param totalTax \r\n * @param curruncy \r\n * @param calcEqfare \r\n * @param fareCalc \r\n * @returns value of discount or service fees\r\n */\r\n returnPassTotalFarDifferance(flightFaresDTO: passengerFareBreakDownDTOs[], totalAmount: number, totalTax: number, curruncy: string, calcEqfare: calcEqfare, fareCalc: fareCalc): [number, string, string] {\r\n if(!flightFaresDTO){\r\n return [0, '', 'KWD'];\r\n }\r\n let AdtFares = calcEqfare(flightFaresDTO, 'ADT', fareCalc);\r\n let childFare = calcEqfare(flightFaresDTO, 'CNN', fareCalc);\r\n let infentFare = calcEqfare(flightFaresDTO, 'INF', fareCalc);\r\n let TotalFare = AdtFares + childFare + infentFare + totalTax;\r\n let fareDiff = totalAmount - TotalFare;\r\n if (fareDiff > 0) {\r\n return [Math.round(fareDiff), 'Service Fees', curruncy]\r\n } else if (fareDiff < 0) {\r\n return [Math.round(-1 * fareDiff), 'Discount', curruncy]\r\n } else {\r\n return [0, '', 'KWD'];\r\n }\r\n \r\n }\r\n \r\n /**\r\n * \r\n * @param flightFaresDTO \r\n * @param type \r\n * @param farecalc \r\n * @returns numer of passenger * fare of passenger\r\n */\r\n calcEqfare(flightFaresDTO: passengerFareBreakDownDTOs[], type: string, farecalc: fareCalc): number {\r\n let fare = farecalc(flightFaresDTO.filter((v) => v.passengerType === type)[0]?.flightFaresDTOs);\r\n // let fare = flightFaresDTO.filter((v)=>v.passengerType === type)[0]?.flightFaresDTOs.filter(v=>v.fareType.toLowerCase() === 'equivfare')[0].fareAmount;\r\n let quntity = flightFaresDTO.find((v) => v.passengerType === type)?.passengerQuantity;\r\n return fare && quntity ? fare * quntity : 0;\r\n }\r\n \r\n /**\r\n * \r\n * @param fare \r\n * @returns validate equivelent fare\r\n */\r\n \r\n returnCorrectFare(fare: fare[]): number {\r\n if (fare) {\r\n let equivfare = fare.find(v => v.fareType.toLowerCase() === 'equivfare').fareAmount;\r\n let totalFare = fare.find(v => v.fareType.toLowerCase() === 'totalfare').fareAmount;\r\n let totalTax = fare.find(v => v.fareType.toLowerCase() === 'totaltax').fareAmount;\r\n return equivfare > 0 ? equivfare : totalFare - totalTax;\r\n } else {\r\n return 0\r\n }\r\n \r\n }\r\n\r\n mapSelected(selected:Selectedflight):airItineraries[] {\r\n let out:airItineraries = {\r\n sequenceNum: selected.airItineraryDTO.sequenceNum,\r\n pKey: selected.airItineraryDTO.pKey,\r\n isRefundable: selected.airItineraryDTO.isRefundable,\r\n itinTotalFare: selected.airItineraryDTO.itinTotalFare,\r\n totalDuration: selected.airItineraryDTO.totalDuration,\r\n deptDate: selected.airItineraryDTO.deptDate,\r\n arrivalDate: selected.airItineraryDTO.arrivalDate,\r\n cabinClass: selected.airItineraryDTO.cabinClass,\r\n flightType: selected.airItineraryDTO.flightType,\r\n pcc: selected.airItineraryDTO.pcc,\r\n allJourney: {\r\n flights: selected.airItineraryDTO.allJourney.flights\r\n },\r\n baggageInformation:selected.airItineraryDTO.baggageInformation\r\n }\r\n \r\n return [out]\r\n }\r\n \r\n ngOnDestroy(): void {\r\n this.subscribtions.unsubscribe();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n

{{\"SearchResult.save\" | translate}}\r\n\r\n \r\n {{item[0]['itinTotalFare']['currencyCode']|exchange:'code'}}\r\n {{returnPassTotalFarDifferance(\r\n this.item[0].passengerFareBreakDownDTOs,\r\n this.item[0].itinTotalFare.amount,\r\n this.item[0].itinTotalFare.totalTaxes,\r\n this.item[0].itinTotalFare.currencyCode,\r\n this.calcEqfare,this.returnCorrectFare\r\n )[0]}}\r\n \r\n {{\"SearchResult.bySelecting\" | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \"airline\r\n
\r\n \r\n {{item[0].allJourney.flights[0].flightDTO[0].flightAirline.airlineName}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{item[0].allJourney.flights[0].flightDTO[0].departureDate |\r\n date:'shortTime'}}\r\n
\r\n\r\n
\r\n ({{item[0].allJourney.flights[0].flightDTO[0].departureTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{item[0].allJourney.flights[0].elapsedTime\r\n | hourminute}} )\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
0\">\r\n {{item[0].allJourney.flights[0].stopsNum}}\r\n {{\"SearchResult.Stops\"|translate}}\r\n
\r\n
\r\n \r\n {{\"SearchResult.direct\"|translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{item[0].allJourney.flights[0].flightDTO[item[0].allJourney.flights[0].flightDTO.length\r\n -1].arrivalDate | date:'shortTime'}}\r\n
\r\n
\r\n ({{item[0].allJourney.flights[0].flightDTO[item[0].allJourney.flights[0].flightDTO.length\r\n -1].arrivalTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{item[0].allJourney.flights[0].elapsedTime | hourminute}} )\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{item[0]['itinTotalFare']['currencyCode']|exchange:'code'}} \r\n {{item[0].itinTotalFare.amount|exchange:'value'}}\r\n
\r\n
\r\n
{{\"SearchResult.Price\"|translate}}
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{'SearchResult.refundable' | translate}}\r\n
\r\n
\r\n {{'SearchResult.nonRefundable' | translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ \"SearchResult.ViewDetails\" | translate }}\r\n \r\n
\r\n
1\">\r\n \r\n + {{ item.length - 1 }}\r\n {{ \"SearchResult.more\" | translate }}\r\n \r\n \r\n
\r\n
\r\n
\r\n {{'SearchResult.refundable' | translate}}\r\n
\r\n
\r\n {{'SearchResult.nonRefundable' | translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n

TESSSSSSSSSSSSSSSSST

\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n {{\"SearchResult.departure\" | translate}}\r\n ({{ item[0].allJourney.flights[0].flightDTO[0].departureDate | date:'EE, d MMM\r\n y' }})\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n {{\r\n item[0].allJourney.flights[0].flightDTO[0]\r\n .flightAirline.airlineName\r\n }}\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \"\"\r\n\r\n 0\"\r\n src=\"../../../assets/img/albaraq/icons/details-stops-stop.svg\" alt=\"\" />\r\n
\r\n\r\n
\r\n \r\n {{\r\n item[0].allJourney.flights[0]\r\n .elapsedTime | hourminute\r\n }}\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n {{\r\n item[0].allJourney.flights[0]\r\n .flightDTO[0].departureDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n\r\n\r\n
\r\n \r\n {{\r\n item[0].allJourney.flights[0]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n item[0].allJourney.flights[0]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n {{\r\n item[0].allJourney.flights[0]\r\n .flightDTO[item[0].allJourney.flights[0].flightDTO.length\r\n -1].arrivalDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n\r\n\r\n
\r\n \r\n {{\r\n item[0].allJourney.flights[0]\r\n .flightDTO[item[0].allJourney.flights[0].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n item[0].allJourney.flights[0]\r\n .flightDTO[item[0].allJourney.flights[0].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n
0\">\r\n {{item[0].allJourney.flights[0].stopsNum}}\r\n {{\"SearchResult.stop\" | translate}}\r\n :\r\n \r\n \r\n {{item[0].allJourney.flights[0].flightDTO[i].transitTime | durationToHourMin}}\r\n {{\"SearchResult.layover\" | translate}}\r\n {{item[0].allJourney.flights[0].flightDTO[i].arrivalTerminalAirport.cityName}}\r\n ({{item[0].allJourney.flights[0].flightDTO[i].arrivalTerminalAirport.airportCode}})\r\n\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n\r\n
\r\n\r\n\r\n
\r\n
\r\n
{{\"SearchResult.operatedBy\" | translate}} {{ item[0].allJourney.flights[0].flightDTO[0].operatedAirline.airlineName }}
\r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{\"SearchResult.save\" | translate}}\r\n\r\n \r\n {{term['itinTotalFare']['currencyCode']|exchange:'code'}}\r\n {{returnPassTotalFarDifferance(\r\n this.term.passengerFareBreakDownDTOs,\r\n this.term.itinTotalFare.amount,\r\n this.term.itinTotalFare.totalTaxes,\r\n this.term.itinTotalFare.currencyCode,\r\n this.calcEqfare,this.returnCorrectFare\r\n )[0]}}\r\n \r\n {{\"SearchResult.bySelecting\" | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \"airline\r\n \r\n {{term.allJourney.flights[0].flightDTO[0].flightAirline.airlineName}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{term.allJourney.flights[0].flightDTO[0].departureDate |\r\n date:'shortTime'}}\r\n
\r\n\r\n
\r\n ({{term.allJourney.flights[0].flightDTO[0].departureTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n \r\n
\r\n
(\r\n {{term.allJourney.flights[0].elapsedTime | hourminute}} )\r\n
\r\n
\r\n \r\n
\r\n \r\n
0\">\r\n {{term.allJourney.flights[0].stopsNum}}\r\n {{\"SearchResult.Stops\"|translate}}\r\n
\r\n
\r\n \r\n {{\"SearchResult.direct\"|translate}}\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n {{term.allJourney.flights[0].flightDTO[item[0].allJourney.flights[0].flightDTO.length\r\n -1].arrivalDate | date:'shortTime'}}\r\n
\r\n
\r\n ({{term.allJourney.flights[0].flightDTO[item[0].allJourney.flights[0].flightDTO.length\r\n -1].arrivalTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{term.allJourney.flights[0].elapsedTime |\r\n hourminute}} )\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{term['itinTotalFare']['currencyCode']|exchange:'code'}}\r\n \r\n {{term.itinTotalFare.amount|exchange:'value'}}\r\n
\r\n
\r\n
{{\"SearchResult.Price\"|translate}}
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{'SearchResult.refundable' | translate}}\r\n
\r\n
\r\n {{'SearchResult.nonRefundable' | translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ \"SearchResult.ViewDetails\" | translate }}\r\n \r\n
\r\n \r\n
\r\n \r\n {{ \"SearchResult.less\" | translate }}\r\n \r\n \r\n
\r\n
\r\n
\r\n {{'SearchResult.refundable' | translate}}\r\n
\r\n
\r\n {{'SearchResult.nonRefundable' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n {{\"SearchResult.departure\" | translate}}\r\n ({{ term.allJourney.flights[0].flightDTO[0].departureDate | date:'EE, d\r\n MMM y' }})\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n {{\r\n term.allJourney.flights[0].flightDTO[0]\r\n .flightAirline.airlineName\r\n }}\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \"\"\r\n\r\n 0\"\r\n src=\"../../../assets/img/albaraq/icons/details-stops-stop.svg\" alt=\"\" />\r\n
\r\n\r\n
\r\n \r\n {{\r\n term.allJourney.flights[0]\r\n .elapsedTime | hourminute\r\n }}\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n {{\r\n term.allJourney.flights[0]\r\n .flightDTO[0].departureDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n\r\n\r\n
\r\n \r\n {{\r\n term.allJourney.flights[0]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n term.allJourney.flights[0]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n {{\r\n term.allJourney.flights[0]\r\n .flightDTO[term.allJourney.flights[0].flightDTO.length\r\n -1].arrivalDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n\r\n\r\n
\r\n \r\n {{\r\n term.allJourney.flights[0]\r\n .flightDTO[term.allJourney.flights[0].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n term.allJourney.flights[0]\r\n .flightDTO[term.allJourney.flights[0].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n
0\">\r\n {{term.allJourney.flights[0].stopsNum}}\r\n {{\"SearchResult.stop\" | translate}}\r\n :\r\n \r\n \r\n {{term.allJourney.flights[0].flightDTO[i].transitTime | durationToHourMin}}\r\n {{\"SearchResult.layover\" | translate}}\r\n {{term.allJourney.flights[0].flightDTO[i].arrivalTerminalAirport.cityName}}\r\n ({{term.allJourney.flights[0].flightDTO[i].arrivalTerminalAirport.airportCode}})\r\n \r\n
\r\n \r\n\r\n
\r\n\r\n
\r\n\r\n\r\n
\r\n
\r\n
{{\"SearchResult.operatedBy\" | translate}} {{ term.allJourney.flights[0].flightDTO[0].operatedAirline.airlineName }}
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n","import { RequiredHotel } from './../../models/HotelBooking/RequiredHotelData';\r\nimport { state } from '@angular/animations';\r\nimport { SearchHoteltModule } from 'src/app/models/search-hotel/search-hotel.module';\r\nimport { loadHotelSearchsSuccess } from './hotel-search.actions';\r\nimport { Action, createReducer, on } from '@ngrx/store';\r\nimport * as actions from '../hotel-search/hotel-search.actions';\r\nimport { GetHotelModule } from '@src/app/models/search-hotel/get-hotels.module';\r\nimport { HotelRoom, RoomResult } from '@src/app/models/HotelRooms/HotelRooms';\r\nimport { HotelResult, HotelSearchResult } from '@src/app/models/search-hotel/search-hotel-result';\r\nimport { selectSelectedRooms } from '../selectors';\r\n\r\n\r\nexport const hotelSearchFeatureKey = 'hotel';\r\n\r\nexport interface State {\r\n loader : boolean,\r\n searchResult: HotelResult,\r\n hotelAmenties: any,\r\n hotelRooms: HotelRoom,\r\n requiredHotel: RequiredHotel,\r\n selectedRooms: RoomResult[],\r\n totalPrice: number,\r\n paymentLink: any,\r\n cancellationPolicy:any,\r\n filtredHotels: HotelSearchResult[],\r\n searchCriteria: SearchHoteltModule,\r\n roomImages: string[]\r\n error: any\r\n}\r\n\r\nexport const initialState: State = {\r\n loader : false,\r\n searchResult: undefined,\r\n hotelAmenties: undefined,\r\n hotelRooms: undefined,\r\n requiredHotel: undefined,\r\n selectedRooms: [],\r\n totalPrice: 0,\r\n paymentLink: undefined,\r\n cancellationPolicy:undefined,\r\n filtredHotels: [],\r\n searchCriteria: undefined,\r\n roomImages: [],\r\n error : undefined\r\n};\r\n\r\n\r\nexport const reducer = createReducer(\r\n initialState,\r\n on(actions.loadHotelSearchs , (state) => ({...state , loader : true})),\r\n on(actions.loadHotelSearchsSuccess , (state , param) =>({...state , loader:false , searchResult:param.data,filtredHotels:param.data.HotelResult})),\r\n on(actions.loadHotelSearchsFailure , (state , param) => ({...state , loader : false , error : param.error})),\r\n on(actions.updateHotelSearchCretaria ,(state , param) =>({...state , loader:false , searchCriteria:param.data})),\r\n on(actions.updateFiltiredHotels , (state , param) =>({...state , loader:false , filtredHotels:param.data})),\r\n on(actions.loadHotelRooms , (state) => ({...state , loader : true})),\r\n on(actions.loadHotelRoomsSuccess , (state , param) =>({...state , loader:false , hotelRooms:param.data})),\r\n on(actions.loadHotelRoomsFailure , (state , param) => ({...state , loader : false , error : param.error})),\r\n on(actions.updateSelectedRooms , (state , param) =>({...state , loader:false , selectedRooms:check([...state.selectedRooms],param.data) ,totalPrice:state.totalPrice + param.data.TotalSellPrice})),\r\n on(actions.loadHotelAmenties , (state) => ({...state , loader : true})),\r\n on(actions.loadHotelAmentiesSuccess , (state , param) =>({...state , loader:false , hotelAmenties:param.data})),\r\n on(actions.loadHotelAmentiesFailure , (state , param) => ({...state , loader : false , error : param.error})),\r\n on(actions.hotelSaveBooking , (state) => ({...state, loader:true})),\r\n on(actions.hotelSaveBookingSuccess , (state,param)=>({...state , loader:false , paymentLink:param.data})),\r\n on(actions.hotelSaveBookingFailure , (state , param) =>({...state , loader:false , error:param.error})),\r\n on(actions.loadRoomCancellation , (state) => ({...state , loader : true})),\r\n on(actions.loadRoomCancellationSuccess , (state , param) =>({...state , loader:false , cancellationPolicy:param.data})),\r\n on(actions.loadRoomCancellationFailure , (state , param) => ({...state , loader : false , error : param.error})),\r\n on(actions.loadSelectedHotel , (state) => ({...state , loader:true})),\r\n on(actions.loadSelectedHotelSuccess , (state , param) => ({...state , loader : false , requiredHotel:param.data})),\r\n on(actions.loadSelectedHotelFailure , (state , param) => ({...state , loader : false , error : param.error})),\r\n on(actions.updateRoomImages , (state , param) => ({...state , roomImages:param.data})),\r\n);\r\n\r\nexport function HotelReducer(\r\n state: State | undefined,\r\n action: Action) {\r\n return reducer(state, action);\r\n}\r\ntype check = (selectedromes:RoomResult[],actionprop:RoomResult)=>RoomResult[];\r\n\r\nexport const check:check = function(selectedromes:RoomResult[],actionProp:RoomResult):RoomResult[]{\r\n let index = selectedromes.findIndex((v)=>v.roomIndex === actionProp.roomIndex)\r\n let updated = [...selectedromes];\r\n if(index != -1){\r\n updated[index] = actionProp\r\n return updated\r\n }\r\n updated.push(actionProp)\r\n console.log(updated,'NOT FOUNDED')\r\n return updated\r\n\r\n}\r\n","\r\nimport { Component, OnInit, inject } from '@angular/core';\r\nimport { HotelSearchService } from '../services/hotel-search.service';\r\nimport { MyapiService } from '../services/myapi.service';\r\nimport { HotelsCitiesModule } from '../models/hotels-cities/hotels-cities.module';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { DatePipe, Location } from '@angular/common';\r\nimport { CurrencyModule } from '../models/currency/currency.module';\r\nimport { State, selectAppCurrency, selectSettingsFeature } from '../store/selectors';\r\nimport { take } from 'rxjs/operators';\r\nimport { Store } from '@ngrx/store';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-hotelsearch',\r\n templateUrl: './hotelsearch.component.html',\r\n styleUrls: ['./hotelsearch.component.css']\r\n})\r\nexport class HotelsearchComponent implements OnInit {\r\n selectedCurrency$: Observable = this.store.select(selectAppCurrency);\r\n private subscription: Subscription = new Subscription();\r\n setting$ = this.store.select(selectSettingsFeature);\r\n\r\n selectAllcities: HotelsCitiesModule[] = []\r\n RoomsA = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];\r\n childrenA = [0, 1, 2];\r\n currentCurr: string = 'KWD'\r\n lang: string = \"en\";\r\n today=new Date()\r\n lan:string =localStorage.getItem('lang')?localStorage.getItem('lang'):'ar';\r\n\r\n constructor(public route:ActivatedRoute ,public hotelSearch: HotelSearchService, public MyApi: MyapiService, private readonly store: Store, public router: Router, public location: Location, private datePipe: DatePipe) {\r\n\r\n }\r\n getcurr() {\r\n \r\n this.subscription.add(this.selectedCurrency$.pipe(take(1)).subscribe((curr) => {\r\n if (curr) {\r\n this.currentCurr = curr.Currency_Code\r\n }\r\n else {\r\n this.currentCurr = 'KWD'\r\n }\r\n }))\r\n return this.currentCurr\r\n }\r\n //get date of day\r\n todayDate() {\r\n let date = new Date();\r\n return date.toISOString().split('T')[0];\r\n\r\n }\r\n ngOnInit(): void {\r\n this.setting$.subscribe((v) => {\r\n this.lan = v.currentLang;\r\n \r\n\r\n\r\n })\r\n console.log(\"lang\", this.lang,this.currentCurr ,\"lan\", this.lan)\r\n\r\n let form = JSON.parse(localStorage.getItem('form') as string);\r\n this.hotelSearch.initSearchForm(form)\r\n this.hotelSearch.HotelSearchForm.get(\"nation\")?.setValue('Kuwait')\r\n this.hotelSearch.HotelSearchForm.get(\"roomN\")?.setValue(this.hotelSearch.roomNumber);\r\n\r\n }\r\n //show cityname and country\r\n displayFn(city?: HotelsCitiesModule): string | undefined {\r\n return city ? city.City + ',' + city.Country : undefined;\r\n }\r\n applyFilter(event: Event) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n let filter = filterValue.trim().toLowerCase();\r\n this.MyApi.getHotelsCitiesbyKey(filter).subscribe((x) => {\r\n this.selectAllcities = x;\r\n\r\n })\r\n }\r\n onSubmit() {\r\n\r\n \r\n let checkIn = this.datePipe.transform(this.hotelSearch.HotelSearchForm.get(\"checkIn\").value, 'MMMM dd, y')\r\n let checkOut = this.datePipe.transform(this.hotelSearch.HotelSearchForm.get(\"checkOut\").value, 'MMMM dd, y')\r\n this.hotelSearch.onSubmit(this.lan, this.currentCurr, 'KW')\r\n const url = this.router.serializeUrl(this.router.createUrlTree(['hotelResult', this.lan, this.currentCurr, 'EG', this.hotelSearch.searchApi.serachId, this.hotelSearch.searchApi.CityName, this.hotelSearch.searchApi.citywithcountry, this.hotelSearch.searchApi.nation, checkIn, checkOut, this.hotelSearch.searchApi.roomN, this.hotelSearch.stringGuest]));\r\n window.location.href='http://154.41.209.73:5442'+url\r\n // }\r\n }\r\n\r\n}","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n
\r\n\r\n
\r\n
\r\n

{{\"hotelSearch.rooms\"|translate}}

\r\n
\r\n
\r\n \r\n {{\"hotelSearch.roomNo\"|translate}}\r\n \r\n \r\n {{num}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n

\r\n {{i+1}}\r\n

\r\n\r\n \r\n {{\"hotelSearch.adults\"|translate}}\r\n\r\n \r\n \r\n {{num}}\r\n \r\n \r\n \r\n\r\n \r\n {{\"hotelSearch.Children\"|translate}}\r\n \r\n \r\n {{num}}\r\n \r\n \r\n \r\n\r\n
\r\n \r\n
\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n ,\r\n \r\n \r\n \r\n \"departing\"\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n

{{this.hotelSearch.RoomMessageError.enMsg}}

\r\n

{{this.hotelSearch.guestMessageError.enMsg}}

\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
","import { Action, createReducer, on } from '@ngrx/store';\r\nimport { CurrencyModule } from '@src/app/models/currency/currency.module';\r\nimport { PointOfsaleModule } from '@src/app/models/point-ofsale/point-ofsale.module';\r\n\r\nimport * as settings from '../app-setting/app-setting.actions';\r\n\r\n\r\nexport const appSettingFeatureKey = 'appSetting';\r\n\r\nexport interface State {\r\n currency : CurrencyModule,\r\n pos : PointOfsaleModule,\r\n currentLang : string \r\n\r\n}\r\n\r\nexport const initialState: State = {\r\n currency : {\r\n \"ID\": 2027,\r\n \"Currency_Code\": \"KWD\",\r\n \"Currency_Name\": \"Kuwait Dinar\",\r\n \"Is_Base_Currency\": true,\r\n \"Image_Url\": \"https://images.triphands.com/Content/Currencies/KWD.JPG\",\r\n \"rate\":1\r\n},\r\n pos : undefined,\r\n currentLang : 'ar'\r\n};\r\n\r\n\r\nexport const reducer = createReducer(\r\n initialState,\r\n on(settings.updateAppCurrency , (state , param) => ({...state , currency:param.Currency})),\r\n on(settings.updateAppPOS , (state , param) => ({...state , pos:param.POS})),\r\n on(settings.updateAppLang , (state , param) => ({...state , currentLang:param.Lang})),\r\n on(settings.setAirport , (state , param)=>({...state ,pos:{...state.pos,airport:param.data}})),\r\n);\r\n\r\nexport function AppSettingReducer(\r\n state: State | undefined,\r\n action: Action) {\r\n return reducer(state, action);\r\n}\r\n\r\n","import { Action, createReducer, on } from '@ngrx/store';\r\nimport { airItineraries, FareRules, flight, FlightSearchResult, flightOfflineService, pickySelection, Selectedflight } from '@src/app/interface/flight-search-result';\r\nimport { SearchFlightModule } from '@src/app/models/search-flight/search-flight.module';\r\nimport * as flights from '../flight-search/flight-search.actions';\r\n\r\n\r\nexport const flightSearchFeatureKey = 'flight';\r\n\r\nexport interface State {\r\n loader : boolean,\r\n offlineServicesLoader : boolean,\r\n flights : FlightSearchResult,\r\n selectedFlight : Selectedflight,\r\n searchCretaria : SearchFlightModule,\r\n filterdFlights :airItineraries[][],\r\n filterSelectedFlight:airItineraries[],\r\n offlineServices:flightOfflineService[],\r\n fareRules:FareRules[],\r\n link:string,\r\n flightType : string,\r\n selectedFlightTotalAmount:number,\r\n pickySelection:pickySelection,\r\n error:any\r\n}\r\n\r\nexport const initialState: State = {\r\n loader : false,\r\n offlineServicesLoader: false,\r\n flights : undefined,\r\n selectedFlight : undefined,\r\n selectedFlightTotalAmount:0,\r\n searchCretaria : undefined,\r\n filterdFlights: undefined,\r\n filterSelectedFlight:undefined,\r\n error :undefined,\r\n offlineServices:undefined,\r\n fareRules :undefined,\r\n link:undefined,\r\n flightType : undefined,\r\n pickySelection:undefined,\r\n};\r\n\r\n\r\nexport const reducer = createReducer(\r\n initialState,\r\n on(flights.loadFlightSearchs , (state)=> ({...state , loader:true})),\r\n on(flights.loadFlightSearchsSuccess , (state , Flights)=>({...state , loader : false , flights:Flights.data})),\r\n on(flights.loadFlightSearchsFailure , (state,error)=>({...state , loader:false,error:error.err})),\r\n on(flights.loadFares , (state)=> ({...state , loader:true})),\r\n on(flights.loadFaresSuccess , (state ,fares)=>({...state , loader : false , fareRules:fares.data})),\r\n on(flights.loadFaresFailure , (state,error)=>({...state , loader:false,error:error.err})),\r\n on(flights.loadOfflineSrvices , (state)=> ({...state , offlineServicesLoader:true})),\r\n on(flights.loadOfflineSrvicesSuccess, (state ,services)=>({...state , offlineServicesLoader : false , offlineServices:services.data})),\r\n on(flights.loadOfflineSrvicesFailure , (state,error)=>({...state , offlineServicesLoader:false,error:error.err})),\r\n on(flights.loadSelectedFlight , (state)=> ({...state , loader:true})),\r\n on(flights.loadSelectedFlightSuccess , (state , flight)=>({...state , loader : false , selectedFlight:flight.data})),\r\n on(flights.loadSelectedFlightFailure , (state,error)=>({...state , loader:false,error:error.err})),\r\n on(flights.updateTotalAmount,(state,action)=>({...state,selectedFlightTotalAmount:action.totalAmount})),\r\n // on(flights.loadSelectedReturnFlightSuccess , (state , flight)=>({...state , loader : false , selectedReturnFlight:flight.data.for (const iterator of data.airItineraries) {\r\n // iterator.filter(v=>{\r\n // v.\r\n // })\r\n // }\r\n // })),\r\n\r\n// on(flights.loadSelectedReturnFlightSuccess , (state , flight)=>({...state , loader : false , selectedReturnFlight:[...flight.data.airItineraryDTO.flightDTO.filter((v)=>{\r\n \r\n// v.flightInfo.flightNumber && v.flightAirline.airlineCode\r\n\r\n// })]\r\n// })),\r\n on(flights.updateSearchCretaria , (state , searchData)=> ({...state , searchCretaria:searchData.searchData})),\r\n \r\n on(flights.updateFlightSummaryData , (state , param)=> ({...state , flightSummary:param.searchData})),\r\n on(flights.SaveBooking , (state)=> ({...state , loader:true})),\r\n on(flights.SaveBookingFailure , (state,error)=>({...state , loader:false,error:error.err})),\r\n on(flights.SaveBookingSuccess , (state , link)=>({...state , loader : false , link:link.data})),\r\n on(flights.filterFlight , (state)=> ({...state })),\r\n on(flights.filterFlightSuccess , (state , Flights)=>({...state , loader : false ,filterdFlights:Flights.airItineraries})),\r\n on(flights.filterFlightFailure , (state,error)=>({...state , loader:false,error:error.err})),\r\n on(flights.filterSelectedFlight , (state)=> ({...state })),\r\n on(flights.filterSelectedFlightSuccess , (state , Flights)=>({...state , loader : false ,pickySelection:{...state.pickySelection,otherOptions:Flights.airItineraries}})),\r\n on(flights.filterSelectedFlightFailure , (state,error)=>({...state , loader:false,error:error.err})),\r\n on(flights.sortFlightSuccess , (state , param) => ({...state , filterdFlights:param.airItineraries})),\r\n on(flights.sortSelectedFlightSuccess , (state , param) => ({...state , pickySelection:{...state.pickySelection,otherOptions:param.airItineraries}})),\r\n\r\n on(flights.sortSelectedFlightFailure , (state , param) => ({...state , error:param.err})),\r\n on(flights.resetSelectedFlight , (state)=>({...state , selectedFlight:undefined})),\r\n on(flights.updateFlightType , (state , param)=>({...state , flightType:param.flightType})),\r\n on(flights.pickySelectionAction , (state ,params)=>({...state,pickySelection:PickySelect(params.flight,params.flightIndex,params.airItinerary,[...state.flights.airItineraries],filterByFlight)})),\r\n on(flights.cFlightSearchs , (state)=>({...initialState}))\r\n);\r\n\r\nexport function FlightReducer(\r\n state: State | undefined,\r\n action: Action) {\r\n return reducer(state, action);\r\n}\r\n\r\ntype filterByFlight = (flight: flight,flightIndex:number,airItineraries:airItineraries[]) => airItineraries[] ;\r\nexport const filterByFlight: filterByFlight = (flight: flight,flightIndex:number,airItineraries:airItineraries[]):airItineraries[] => {\r\n let flightNumList:any [] = flight?.flightDTO.map(v=>v.flightInfo.flightNumber);\r\n console.log(flightNumList);\r\n let filterdV = airItineraries?.filter((v)=>{ return v.allJourney.flights[flightIndex]?.flightAirline.airlineCode === flight?.flightAirline.airlineCode \r\n && v.allJourney.flights[flightIndex]?.flightDTO.map(v=>v.flightInfo.flightNumber).reduce((p,c)=>{return (flightNumList.indexOf(p ) != -1) && (flightNumList.indexOf(c) != -1)})} )\r\n console.log(filterdV,'filterd arr')\r\n return filterdV?filterdV: []\r\n}\r\ntype PickySelectF = (flight:flight,flightIndex:number,Itinerary:airItineraries,AllItinerary:airItineraries[] | undefined,filterByFlight:filterByFlight) => pickySelection;\r\nexport const PickySelect:PickySelectF =(flight:flight,flightIndex:number,Itinerary:airItineraries,AllItinerary:airItineraries[],filterByFlight) :pickySelection =>\r\n{\r\n console.log(AllItinerary ,\"airt reducer\")\r\n let pickySelection :pickySelection ={\r\n selectedFlight:flight,\r\n selectedFlightItinerary:Itinerary,\r\n flightIndex:flightIndex,\r\n otherOptions: filterByFlight(flight,flightIndex,AllItinerary) \r\n }\r\n console.log(flight,Itinerary,flightIndex)\r\n console.log(pickySelection,'picky')\r\n return pickySelection?pickySelection:undefined;\r\n}\r\n\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'limitTo'\r\n})\r\nexport class LimitToPipe implements PipeTransform {\r\n\r\n transform(value: any[], args: number):any[] {\r\n if(!value || !args) {\r\n return value;\r\n }else {\r\n if(value.length > args){\r\n return value.slice(0,args);\r\n }\r\n else{\r\n return value\r\n }\r\n }\r\n }\r\n \r\n\r\n}\r\n","import { ImagesDTO } from './../../interface/offers';\r\nimport { createAction, props } from \"@ngrx/store\";\r\nimport { BookedOffer } from \"@src/app/interface/BookOffer\";\r\nimport { OfferDTO } from \"@src/app/interface/offers\";\r\nimport { PointOfsaleModule } from \"@src/app/models/point-ofsale/point-ofsale.module\";\r\nimport { Itinerary } from '@src/app/interface/offlineSeats';\r\n\r\nexport const loadAllOffers = createAction(\r\n '[OFFERS] Load Offers',\r\n props<{pos : string}>()\r\n);\r\n \r\n export const loadAllOffersSuccess = createAction(\r\n '[OFFERS] Load Offers Success',\r\n props<{ data: OfferDTO[] }>()\r\n );\r\n \r\n export const loadAllOffersFailure = createAction(\r\n '[OFFERS] Load Offers Failure',\r\n props<{err:any}>()\r\n );\r\n\r\n export const loadOfferById = createAction(\r\n '[OFFERS] Load Offer By ID',\r\n props<{id : number | string}>()\r\n);\r\n \r\n export const loadOfferByIdSuccess = createAction(\r\n '[OFFERS] Load Offer By ID Success',\r\n props<{ data: OfferDTO }>()\r\n );\r\n \r\n export const loadOfferByIdFailure = createAction(\r\n '[OFFERS] Load Offer By ID Failure',\r\n props<{err:any}>()\r\n );\r\n\r\n export const BookOffers = createAction(\r\n '[OFFERS] Book Offers',\r\n props<{Source : string ,LanguageCode:string, searchID:string ,body:BookedOffer}>()\r\n);\r\n \r\n export const BookOffersSuccess = createAction(\r\n '[OFFERS] Book Offers Success',\r\n props<{ data: BookedOffer}>()\r\n );\r\n \r\n export const BookOffersFailure = createAction(\r\n '[OFFERS] Book Offers Failure',\r\n props<{err:any}>()\r\n );\r\n\r\n export const loadServicesImages = createAction(\r\n '[OFFERS] Load Services Images',\r\n props<{data : ImagesDTO[]}>()\r\n);\r\n\r\nexport const retrieveItinerary = createAction(\r\n '[OFFERS] Load Offline Itinerary',\r\n props<{id : number | string}>()\r\n);\r\n\r\nexport const retrieveItinerarySuccess = createAction(\r\n '[OFFERS] Load Offline Itinerary Success',\r\n props<{data : Itinerary}>()\r\n);\r\n\r\nexport const retrieveItineraryFailure = createAction(\r\n '[OFFERS] Load Offline Itinerary Failure',\r\n props<{err : any}>()\r\n);\r\n\r\n\r\n\r\n \r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build ---prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\n\r\nexport const environment = {\r\n production: true,\r\n baseCurrency: 'KWD',\r\n endPoints: {\r\n offlineSeats:\"http://154.41.209.73:7025\",\r\n searchflow: 'https://flightsearch.Tazkrti.com',\r\n BookingFlow: 'https://flightflow.Tazkrti.com',\r\n FareRules: 'https://flightprov.Tazkrti.com',\r\n asm: 'https://backofficeapi.Tazkrti.com',\r\n Apihotels:\"https://Hotelsapi.ticketboarding.com\",\r\n hotelprepay: 'https://prepayapi.Tazkrti.com',\r\n users: 'https://usersapi.Tazkrti.com',\r\n admin: 'https://adminapi.Tazkrti.com/',\r\n getDPayment: 'https://adminapi.Tazkrti.com/',\r\n bookHotels: \"https://hotels.Tazkrti.com\",\r\n hotelPrepay: 'https://prepayapi.Tazkrti.com',\r\n backOffice: 'https://backofficeapi.Tazkrti.com',\r\n FlightTop:'https://flightsearch.Tazkrti.com',\r\n offers: {\r\n getAll: 'http://154.41.209.73:7893/api/GetAllOffersAPI?POS=',\r\n getByID: 'http://154.41.209.73:7893/api/GetOfferByIdAPI?OfferId=',\r\n BookOffer: \"http://154.41.209.73:7895/api/BookOffer\",\r\n RetriveItineraryDetails:'/api/Admin/RetriveItineraryDetails'\r\n }\r\n }\r\n};\r\n\r\n/*\r\n * In development mode, to ignore zone related error stack frames such as\r\n * `zone.run`, `zoneDelegate.invokeTask` for easier debugging, you can\r\n * import the following file, but please comment it out in production mode\r\n * because it will have performance impact when throw error\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { Component, HostListener, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { faAngleRight, faHome } from '@fortawesome/free-solid-svg-icons';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { GoogleTagManagerService } from 'angular-google-tag-manager';\r\n\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-about-us',\r\n templateUrl: './about-us.component.html',\r\n styleUrls: ['./about-us.component.scss']\r\n})\r\nexport class AboutUsComponent implements OnInit {\r\n scrolled:boolean = false;\r\n faHome = faHome;\r\n faAngleRight = faAngleRight;\r\n public getScreenWidth :any;\r\n constructor(\r\n public translate : TranslateService,\r\n private gtmService: GoogleTagManagerService,\r\n private router: Router,) {\r\n const gtmTag = {\r\n event: 'Page View',\r\n pageName: 'About Us',\r\n language: this.translate.currentLang, \r\n url:this.router.url\r\n };\r\n this.gtmService.pushTag(gtmTag);\r\n }\r\n \r\n ngOnInit() {\r\n this.getScreenWidth = window.innerWidth;\r\n }\r\n @HostListener('window:resize',['$event'])onWindowResize(){\r\n this.getScreenWidth = window.innerWidth;\r\n }\r\n }","\r\n\r\n\r\n
\r\n

{{\"aboutUs.aboutTxt\" | translate }}

\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
500\" class=\"col-12 col-lg-6 mb-4\">\r\n
\r\n
\r\n \"\"\r\n
\r\n\r\n
\r\n \"\"\r\n
\r\n
\r\n
\r\n
\r\n

{{\"aboutUs.aboutTxtBayraq\" | translate }}

\r\n

{{\"aboutUs.headerText\" | translate }}

\r\n

\r\n {{\"aboutUs.firstP\" | translate}}\r\n

\r\n

\r\n {{\"aboutUs.secoundP\" | translate}}\r\n

\r\n

\r\n {{\"aboutUs.thirdP\" | translate}}\r\n

\r\n

\r\n {{\"aboutUs.fourthP\" | translate}}\r\n

\r\n

{{\"aboutUs.fifthP\" | translate}}

\r\n

{{\"aboutUs.sixthP\" | translate}}

\r\n

{{\"aboutUs.seventhP\" | translate}}

\r\n\r\n

\r\n {{\"aboutUs.eigthP\" | translate}}\r\n

\r\n\r\n \r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n

{{\"aboutUs.whyHeader\" | translate}}

\r\n

{{\"aboutUs.whyText\" | translate}}

\r\n
\r\n
\r\n
\r\n \"\"\r\n

{{\"aboutUs.whyFeatures.why1\" | translate}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"\r\n

{{\"aboutUs.whyFeatures.why2\" | translate}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"\r\n

{{\"aboutUs.whyFeatures.why3\" | translate}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"\r\n

{{\"aboutUs.whyFeatures.why4\" | translate}}

\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { faCheckCircle, faUserLock } from '@fortawesome/free-solid-svg-icons';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { FacebookLoginProvider, GoogleLoginProvider, SocialAuthService } from 'angularx-social-login';\r\n\r\n@Component({\r\n selector: 'app-change-password',\r\n templateUrl: './change-password.component.html',\r\n styleUrls: ['./change-password.component.scss']\r\n})\r\nexport class ChangePasswordComponent implements OnInit {\r\n\r\n faUserLock= faUserLock;\r\n faCheckCircle =faCheckCircle;\r\n constructor(\r\n public translate :TranslateService,\r\n private authService : SocialAuthService,\r\n ) { }\r\n\r\n ngOnInit() {\r\n }\r\n submitGoogleLogin(){\r\n this.authService.signIn(GoogleLoginProvider.PROVIDER_ID);\r\n }\r\n submitFbLogin(){\r\n this.authService.signIn(FacebookLoginProvider.PROVIDER_ID);\r\n }\r\n}\r\n","
\r\n
\r\n

{{'password.change'| translate}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n

{{'password.verCode'| translate}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'password.or'| translate}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{'password.google' | translate}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{'password.facebook' | translate}}

\r\n
\r\n
\r\n
\r\n
\r\n
","import { Injectable, EventEmitter } from '@angular/core';\r\nimport { MyapiService } from './myapi.service';\r\nimport { CurrencyModule } from '../models/currency/currency.module';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CurruncyServiceService {\r\n curruncyArray:CurrencyModule[] =[];\r\n currentCurruncy:CurrencyModule = new CurrencyModule(2027,'KWD','Kuwait Dinar',true,\"https://images.triphands.com/Content/Currencies/KWD.JPG\",1);\r\n currentRate:number = 1;\r\n baseCurruncy:string = 'KWD';\r\n CurruncyChange:EventEmitter = new EventEmitter();\r\n CurruncyArrayupdate:EventEmitter = new EventEmitter();\r\n// BaseCurruncyChange:EventEmitter = new EventEmitter();\r\n constructor(private myApi: MyapiService) { \r\n \r\n }\r\n // call curruncy api\r\n GetMyCurruncy(){\r\n this.myApi.currencyApi(this.baseCurruncy).subscribe(\r\n (result)=>{this.curruncyArray=result;console.log(this.curruncyArray,\"hollay\");this.CurruncyArrayupdate.emit(this.curruncyArray);this.currentRate = this.curruncyArray.filter(val => val.Currency_Code = this.currentCurruncy.Currency_Code)[0]['rate']},\r\n (error)=>{console.log(error)},\r\n )\r\n }\r\n // change currency and emit currency event\r\n ChangeMyCurruncy(currency:CurrencyModule,rate:number){\r\n this.currentCurruncy = currency;\r\n this.currentRate = rate;\r\n this.CurruncyChange.emit(this.currentCurruncy);\r\n console.log(this.currentCurruncy,this.currentRate);\r\n }\r\n\r\n \r\n\r\n \r\n \r\n}\r\n","import { Injectable, EventEmitter } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SessionService {\r\n sessionExpierd:EventEmitter = new EventEmitter();\r\n expitationTime = 5;\r\n constructor() { }\r\n\r\n // timeLeft: number = 60;\r\n interval;\r\n \r\n setSessionTime(Stime:number){\r\n let time:string = Stime.toString();\r\n sessionStorage.setItem('Timeleft',time);\r\n clearInterval(this.interval);\r\n }\r\n startTimer() {\r\n \r\n this.interval = setInterval(() => {\r\n let time:number = +sessionStorage.getItem('Timeleft');\r\n if(time && time > 0) {\r\n time--;\r\n sessionStorage.setItem('Timeleft',time.toString())\r\n } else {\r\n this.sessionExpierd.emit(true);\r\n sessionStorage.removeItem('Timeleft');\r\n clearInterval(this.interval);\r\n return;\r\n }\r\n },60000)\r\n }\r\n\r\n startsession() {\r\n sessionStorage.setItem('status','Valid');\r\n setTimeout(() => {\r\n console.log('timeOut');\r\n sessionStorage.setItem('status','Invalid');\r\n this.sessionExpierd.emit(true);\r\n }, 60000);\r\n \r\n }\r\n}\r\n","\r\nexport class FlightsInfoModule {\r\n constructor (\r\n public departingCity: string,\r\n public arrivalCity: string,\r\n public departionDate:any,\r\n ) { }\r\n }\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { MyapiService } from '@src/app/services/myapi.service';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-confirm-payment',\r\n templateUrl: './confirm-payment.component.html',\r\n styleUrls: ['./confirm-payment.component.scss']\r\n})\r\nexport class ConfirmPaymentComponent implements OnInit {\r\n lang: string = this.translate.currentLang;\r\n link: string = \"\";\r\n mysafeurl: SafeUrl;\r\n normalErrorStatus:boolean=false;\r\n private subscription: Subscription = new Subscription();\r\n constructor(public translate: TranslateService,private sanitizer: DomSanitizer, public router: Router, private myApi :MyapiService) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n Next(){\r\n this.subscription.add(this.myApi.GetPaymentView(this.myApi.ip, this.myApi.iplocation, this.myApi.hgNumber, this.myApi.searchId, '', this.myApi.selectedserv).subscribe(\r\n (result) => {\r\n this.link = result.link; \r\n window.location.href = this.link;\r\n \r\n this.mysafeurl = this.sanitizer.bypassSecurityTrustResourceUrl(this.link);\r\n if (this.link.length < 5) {\r\n this.normalErrorStatus = true;\r\n\r\n }\r\n },\r\n (error) => {\r\n this.normalErrorStatus = true;\r\n }\r\n ));\r\n }\r\n Back(){\r\nthis.router.navigate(['/home'])\r\n }\r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

\r\n {{ \"ConfirmPayment.title\" | translate }}\r\n \r\n

\r\n

\r\n {{ \"ConfirmPayment.title2\" | translate }}\r\n \r\n

\r\n
    \r\n
  • \r\n

    {{ \"ConfirmPayment.termsOf\" | translate }}

    \r\n
  • \r\n
  • \r\n

    \r\n {{ \"ConfirmPayment.terms1\" | translate }}\r\n

    \r\n
  • \r\n
  • \r\n

    \r\n {{ \"ConfirmPayment.terms2\" | translate }}\r\n

    \r\n
  • \r\n
  • \r\n

    \r\n {{ \"ConfirmPayment.terms3\" | translate }}\r\n

    \r\n
  • \r\n
\r\n \r\n
    \r\n
  • \r\n
    \r\n {{ \"ConfirmPayment.terms4\" | translate }}\r\n
    \r\n
  • \r\n
  • \r\n
    \r\n {{ \"ConfirmPayment.terms5\" | translate }}\r\n
    \r\n
  • \r\n
\r\n

\r\n {{ \"ConfirmPayment.terms6\" | translate }}\r\n \r\n

\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect } from '@ngrx/effects';\r\n\r\n\r\n\r\n@Injectable()\r\nexport class UserEffects {\r\n\r\n\r\n\r\n constructor(private actions$: Actions) {}\r\n\r\n}\r\n","export class FilterInputsModule { \r\n constructor(\r\n public priceMin:number,\r\n public priceMax:number,\r\n public durationMin:number,\r\n public durationMax:number,\r\n public depatingMin:number,\r\n public departingMax:number,\r\n public returnMin:number,\r\n public returnMax:number,\r\n public stops:number[],\r\n public airlines:string[] \r\n ){\r\n\r\n }\r\n}\r\nexport class FilterInputSelectedModule { \r\n constructor(\r\n public priceMin:number,\r\n public priceMax:number,\r\n public durationMin:number,\r\n public durationMax:number,\r\n public depatingMin:number,\r\n public departingMax:number,\r\n public returnMin:number,\r\n public returnMax:number,\r\n public stops:number[],\r\n \r\n ){\r\n\r\n }\r\n}","import { TranslateService } from '@ngx-translate/core';\r\nimport { Component, HostListener, OnDestroy, OnInit } from '@angular/core';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { MyapiService } from '../../../app/services/myapi.service';\r\nimport { Router } from '@angular/router';\r\nimport { MatSnackBar } from '@angular/material/snack-bar';\r\nimport { faFacebook, faTwitter } from '@fortawesome/free-brands-svg-icons';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { UserSignupComponent } from '../user-signup/user-signup.component';\r\nimport { ForgetPasswordComponent } from '../forget-password/forget-password.component';\r\nimport { FacebookLoginProvider, GoogleLoginProvider, SocialAuthService, SocialUser } from 'angularx-social-login';\r\nimport { Store } from '@ngrx/store';\r\nimport { loadAuthUser, loadAuthUserFailure, loadAuthUserSuccess } from '@src/app/store/user/user.actions';\r\nimport { AuthUser } from '@src/app/models/user/user';\r\nimport { selectUserLoader } from '@src/app/store/selectors';\r\nimport { Subscription } from 'rxjs/internal/Subscription';\r\nexport interface userdata {\r\n AccessToken: string,\r\n Comment: number,\r\n Message: string,\r\n applicationUser: {\r\n AccessFailedCount: number,\r\n AccessToken: string,\r\n Email: string,\r\n EmailConfirmed: boolean,\r\n Id: string,\r\n LockoutEnabled: boolean,\r\n LockoutEndDateUtc: any,\r\n Logins: [],\r\n PhoneNumber: string,\r\n PhoneNumberConfirmed: false,\r\n User_Name: string,\r\n FirstName: string,\r\n LastName: string\r\n }\r\n}\r\n\r\n// const LoginWithTwitter = require('login-with-twitter')\r\n\r\n// const tw = new LoginWithTwitter({\r\n// consumerKey: 'TD3a2T5PUYt6JUzqwWwvxeMaH',\r\n// consumerSecret: '8dVlmCWquV6fUqK4ovivPdj3pRPUcmWj9Ps04kAFo9seub29V2',\r\n// callbackUrl: 'https://example.com/twitter/callback'\r\n// })\r\n\r\n@Component({\r\n selector: 'app-user-login',\r\n templateUrl: './user-login.component.html',\r\n styleUrls: ['./user-login.component.scss']\r\n})\r\nexport class UserLoginComponent implements OnInit, OnDestroy {\r\n private subscription: Subscription = new Subscription();\r\n public getScreenWidth: any;\r\n preloader: boolean = true;\r\n loginform: FormGroup;\r\n faFacebook = faFacebook;\r\n faTwitter = faTwitter;\r\n\r\n userLoader$ = this.store.select(selectUserLoader);\r\n userLoader: boolean = false;\r\n showPassword = false;\r\n socialUser!: SocialUser;\r\n isLoggedin?: boolean = undefined;\r\n\r\n constructor(\r\n private myapi: MyapiService,\r\n private _snackBar: MatSnackBar,\r\n private Router: Router,\r\n public translate: TranslateService,\r\n public dialog: MatDialog,\r\n private authService: SocialAuthService,\r\n private readonly store: Store) { }\r\n\r\n ngOnInit() {\r\n // this.subscription.add(this.userLoader$.subscribe((res)=>{\r\n // this.userLoader = res;\r\n // }))\r\n this.getScreenWidth = window.innerWidth;\r\n console.log(\"*****Width*****\", this.getScreenWidth);\r\n this.authService.authState.subscribe((res) => {\r\n this.socialUser = res;\r\n this.isLoggedin = res != null;\r\n console.log(\"SOCIAL AUTH STATE\", res);\r\n })\r\n\r\n this.loginform = new FormGroup({\r\n 'Email': new FormControl('', [Validators.email, Validators.minLength(8), Validators.required]),\r\n 'Password': new FormControl('', [Validators.required, Validators.minLength(6)]),\r\n 'Isbase': new FormControl(0)\r\n })\r\n this.preloader = false;\r\n }\r\n onSubmit() {\r\n if (this.loginform.invalid) return;\r\n console.log(\"form\", this.loginform);\r\n this.preloader = true;\r\n this.userLoader = true;\r\n this.myapi.login(this.loginform.value).subscribe(\r\n (result: AuthUser) => {\r\n this.preloader = false;\r\n console.log(result);\r\n switch (result.Comment) {\r\n case 0: {\r\n this.userLoader = false;\r\n console.log('somthing went wrong');\r\n this.openSnackBar(\"Sorry user does not exist\", \"Login faield\", \"snakFaild\");\r\n this.store.dispatch(loadAuthUserFailure({ error: 'Sorry user does not exist' }))\r\n break\r\n }\r\n case 1: {\r\n this.userLoader = false;\r\n sessionStorage.setItem('cls', result.AccessToken);\r\n // sessionStorage.setItem('cls',result.applicationUser.AccessToken);\r\n console.log(result, \"RESULTTT TESTTT\")\r\n this.store.dispatch(loadAuthUserSuccess({ user: result }))\r\n debugger\r\n this.openSnackBar(\"Welcome Back \" + result.applicationUser.FirstName, 'ok', \"snakSuccess\");\r\n this.closeDialog();\r\n break\r\n }\r\n case -2: {\r\n this.userLoader = false;\r\n this.openSnackBar(\"Sorry user does not exist\", \"Login faield\", \"snakFaild\");\r\n this.loginform.reset();\r\n this.loginform.updateValueAndValidity();\r\n this.store.dispatch(loadAuthUserFailure({ error: 'Sorry user does not exist' }))\r\n break\r\n }\r\n case -1: {\r\n this.userLoader = false;\r\n this.openSnackBar(\"User name or password is incorrect\", \"Login faield\", 'snakFaild');\r\n this.store.dispatch(loadAuthUserFailure({ error: 'User name or password is incorrect' }))\r\n }\r\n }\r\n }\r\n );\r\n\r\n }\r\n openSnackBar(message: string, action: string, Staus: string) {\r\n this._snackBar.open(message, action, {\r\n duration: 2000,\r\n panelClass: [Staus]\r\n });\r\n }\r\n toHomepage() {\r\n this.Router.navigate(['/']);\r\n }\r\n toSignUp() {\r\n this.dialog.closeAll();\r\n const dialogRef = this.dialog.open(UserSignupComponent, { panelClass: 'custom-dialog-container' });\r\n }\r\n toSignUpMob() {\r\n this.dialog.closeAll();\r\n this.Router.navigate(['/signup']);\r\n }\r\n\r\n toForgetPassword() {\r\n this.dialog.closeAll();\r\n const dialogRef = this.dialog.open(ForgetPasswordComponent);\r\n // this.Router.navigate(['/forgetPassword']);\r\n }\r\n\r\n closeDialog() {\r\n this.dialog.closeAll()\r\n }\r\n\r\n submitFbLogin() {\r\n this.authService.signIn(FacebookLoginProvider.PROVIDER_ID).then((data)=>{\r\n console.log(\"hhhh\", data.email);\r\n localStorage.setItem('Facebook-auth', JSON.stringify(data));\r\n this.loginform.get('Email').setValue(data.email);\r\n sessionStorage.setItem('cls', data.authToken);\r\n // this.dialog.closeAll();\r\n });\r\n }\r\n submitGoogleLogin() {\r\n console.log(\"hereeeeeee\");\r\n this.authService.signIn(GoogleLoginProvider.PROVIDER_ID).then((data)=>{\r\n console.log(\"hhhh\", data.email);\r\n localStorage.setItem('Google-auth', JSON.stringify(data));\r\n this.loginform.get('Email').setValue(data.email);\r\n sessionStorage.setItem('cls', data.authToken);\r\n // this.dialog.closeAll();\r\n })\r\n\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscription.unsubscribe()\r\n }\r\n\r\n toggleShowPassword() {\r\n this.showPassword = !this.showPassword;\r\n }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n onWindowResize() {\r\n this.getScreenWidth = window.innerWidth;\r\n }\r\n}","\r\n
\r\n
\r\n
\r\n
\r\n \"logo\"\r\n
\r\n
\r\n X\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \"\"\r\n

{{translate.currentLang=='en'?\r\n 'Explore the world deeper with us':\r\n 'اكتشف العالم أعمق معنا'}}\r\n

\r\n\r\n
\r\n\r\n
\r\n
\r\n X\r\n
\r\n
\r\n
\r\n\r\n
\r\n

{{translate.currentLang=='en'?'Sign in':'تسجيل دخول'}}

\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \"\"\r\n\r\n \r\n
\r\n\r\n
\r\n {{translate.currentLang=='en'?'Forget Password?':'نسيت كلمة\r\n السر؟'}}\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n {{translate.currentLang=='en'?'Don’t have an account?':'ليس لديك\r\n حساب؟'}}\r\n \r\n {{translate.currentLang=='en'?'Sign up':'انشاء حساب جديد'}}\r\n \r\n \r\n
\r\n\r\n\r\n \r\n\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { FormArray, FormControl, FormGroup } from '@angular/forms';\r\nimport { ActivatedRoute, Params, Router } from '@angular/router';\r\nimport { IconProp } from '@fortawesome/fontawesome-svg-core';\r\nimport { faChevronDown, faChevronRight } from '@fortawesome/free-solid-svg-icons';\r\nimport { Store } from '@ngrx/store';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { airItineraries, flight, pickySelection } from '@src/app/interface/flight-search-result';\r\nimport { FlightServiceService } from '@src/app/services/flight-service.service';\r\nimport { pickySelectionAction, resetSelectedFlight, sortFlight, sortSelectedFlight } from '@src/app/store/flight-search/flight-search.actions';\r\n\r\nimport { selectFlightType, selectPickySelection, State } from '@src/app/store/selectors';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { take } from 'rxjs/operators';\r\n// import { arrowIcon } from '@fortawesome/free-solid-svg-icons';\r\n\r\n@Component({\r\n selector: 'app-select-return-flight',\r\n templateUrl: './select-return-flight.component.html',\r\n styleUrls: ['./select-return-flight.component.scss','../flight.component.scss']\r\n})\r\nexport class SelectReturnFlightComponent implements OnInit ,OnDestroy{\r\n selectedpickySelectionFlight$:Observable = this.store.select((statse)=>statse.flight.pickySelection);\r\n @Input() FlightIndex: number;\r\n @Input() FlightData :flight;\r\n @Input() item:airItineraries;\r\n faChevronDown=faChevronDown as IconProp;\r\n flightType$ = this.store.select(selectFlightType);\r\n faChevronRight= faChevronRight as IconProp;\r\n otherOptionsData;\r\n OpenRefined: boolean ;\r\n private subscription: Subscription = new Subscription();\r\n serachId: string = \"\";\r\n flightType: string = \"\";\r\n Data:pickySelection;\r\n Index0=0;\r\n Index1=1;\r\n showDetails: boolean = false;\r\n isShow:boolean= false\r\n selectedSortingValue = \"1\";\r\n priceLowestFare: number = 0;\r\n durationLowesrFare: number = 0;\r\n experienceLowestFare: number = 0;\r\n responseCurrency:string='';\r\n \r\n constructor( private store: Store , private router: Router , private route: ActivatedRoute, public translate : TranslateService,\r\n\r\n public flight: FlightServiceService,) { }\r\n\r\n indexx:number = 1\r\n ngOnInit(): void {\r\n this.flight.Select= false;\r\n\r\n // this.store.dispatch(pickySelectionAction({flight:this.FlightData, airItinerary:this.item ,flightIndex:this.FlightIndex}))\r\n this.OpenRefined =this.flight.OpenDiv\r\n this.subscription.add(\r\n this.selectedpickySelectionFlight$.subscribe((v)=>{\r\n this.Data= v\r\n this.indexx++;\r\n }))\r\n\r\n\r\n\r\n\r\n this.subscription.add(\r\n this.route.params.pipe(take(1)).subscribe((params: Params) => {\r\n \r\n\r\n \r\n\r\n this.serachId = params[\"searchId\"];\r\n this.flight.serachId = this.serachId;\r\n let passengers = params[\"passengers\"];\r\n let Cclass = params[\"Cclass\"];\r\n let showDirect: boolean;\r\n\r\n if (params[\"directOnly\"] == \"false\") {\r\n showDirect = false;\r\n } else {\r\n showDirect = true;\r\n }\r\n \r\n \r\n })\r\n );\r\n this.subscription.add(\r\nthis.flightType$.subscribe((v)=>{\r\n this.flightType = v;\r\n}\r\n \r\n)\r\n )\r\n \r\n }\r\n ShowFilter(){\r\n this.isShow = !this.isShow; \r\n this.flight.fSelect = this.isShow\r\n\r\n }\r\n \r\n ReturnToFlightResult(){\r\n this.flight.SelectOneFlight = false;\r\n }\r\n setLowestFares() {\r\n if (this.Data.otherOptions.length != 0) {\r\n this.responseCurrency = this.Data.selectedFlightItinerary.itinTotalFare.currencyCode;\r\n\r\n var price = [...this.Data.otherOptions].sort((a, b) => { return a.itinTotalFare.amount - b.itinTotalFare.amount });\r\n this.priceLowestFare = Math.round(price[0].itinTotalFare.amount);\r\n\r\n var duration = [...this.Data.otherOptions].sort((a, b) => { return a.totalDuration - b.totalDuration });\r\n this.durationLowesrFare = Math.round(duration[0].itinTotalFare.amount);\r\n\r\n }\r\n\r\n }\r\n\r\n sortMyResult(val: number) {\r\n this.selectedSortingValue = val.toString()\r\n this.store.dispatch(sortSelectedFlight({\r\n airItineraries:this.Data.otherOptions,\r\n sortType: val\r\n })\r\n );\r\n }\r\n toggleDetails() {\r\n this.showDetails = !this.showDetails;\r\n }\r\n toCheckout(sid: string, sequenceNum: number) {\r\n this.store.dispatch(resetSelectedFlight());\r\n this.router.navigate([\"/checkout\"], {\r\n queryParams: { sid: sid, sequenceNum: sequenceNum },\r\n });\r\n }\r\n ngOnDestroy(): void {\r\n this.flight.SelectOneFlight = false;\r\n this.subscription.unsubscribe();\r\n }\r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{'searchFlight.sort' | translate}}\r\n \r\n
\r\n \r\n \r\n
\r\n {{\"SearchResult.sort.text\"|translate}}\r\n
\r\n \r\n
\r\n {{\"SearchResult.sort.price\"|translate}}\r\n
\r\n \r\n
\r\n {{\"SearchResult.sort.duration\"|translate}}\r\n
\r\n
\r\n \r\n \r\n
\r\n {{\"SearchResult.sort.time.depEarly\" | translate}}\r\n
\r\n
\r\n {{\"SearchResult.sort.time.depLate\" | translate}}\r\n
\r\n
\r\n {{\"SearchResult.sort.time.retEarly\" | translate}}\r\n
\r\n
\r\n {{\"SearchResult.sort.time.retLate\" | translate}}\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'searchFlight.filter' | translate}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \"airline\r\n \r\n {{select.selectedFlight.flightDTO[0].flightAirline.airlineName}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{select.selectedFlight.flightDTO[0].departureDate |\r\n date:'shortTime'}}\r\n
\r\n \r\n
\r\n ({{select.selectedFlight.flightDTO[0].departureTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{select.selectedFlight.elapsedTime | hourminute}} )\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{select.selectedFlight.stopsNum}}\r\n {{\"SearchResult.Stops\"|translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n {{select.selectedFlight.flightDTO[ select.selectedFlight.flightDTO.length\r\n -1].arrivalDate | date:'shortTime'}}\r\n
\r\n
\r\n ({{select.selectedFlight.flightDTO[ select.selectedFlight.flightDTO.length\r\n -1].arrivalTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{select.selectedFlight.elapsedTime | hourminute}} )\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{select.selectedFlightItinerary.itinTotalFare.currencyCode | exchange:'code'}}\r\n\r\n \r\n {{select.selectedFlightItinerary.itinTotalFare.amount|exchange:'value'}}\r\n
\r\n
\r\n
{{\"SearchResult.Price\"|translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \"airline\r\n \r\n {{item.allJourney.flights[1].flightDTO[0].flightAirline.airlineName}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{item.allJourney.flights[1].flightDTO[0].departureDate |\r\n date:'shortTime'}}\r\n
\r\n \r\n
\r\n ({{item.allJourney.flights[1].flightDTO[0].departureTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{item.allJourney.flights[1].elapsedTime | hourminute}} )\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{item.allJourney.flights[1].stopsNum}}\r\n {{\"SearchResult.Stops\"|translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{item.allJourney.flights[1].flightDTO[item.allJourney.flights[1].flightDTO.length\r\n -1].arrivalDate | date:'shortTime'}}\r\n
\r\n
\r\n ({{item.allJourney.flights[1].flightDTO[item.allJourney.flights[1].flightDTO.length\r\n -1].arrivalTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{item.allJourney.flights[1].elapsedTime | hourminute}} )\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n = select.selectedFlightItinerary.itinTotalFare.amount \"> + \r\n - \r\n {{item['itinTotalFare']['currencyCode']|exchange:'code'}} \r\n 0\r\n item.itinTotalFare.amount\">{{(select.selectedFlightItinerary.itinTotalFare.amount - item.itinTotalFare.amount ) |exchange:'value'}}\r\n \r\n {{(item.itinTotalFare.amount - select.selectedFlightItinerary.itinTotalFare.amount) |exchange:'value'}}\r\n
\r\n
\r\n
{{\"SearchResult.Price\"|translate}}
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n = select.selectedFlightItinerary.itinTotalFare.amount \"> + \r\n - \r\n {{item['itinTotalFare']['currencyCode']|exchange:'code'}} \r\n 0\r\n item.itinTotalFare.amount\">{{(select.selectedFlightItinerary.itinTotalFare.amount - item.itinTotalFare.amount ) |exchange:'value'}}\r\n \r\n {{(item.itinTotalFare.amount - select.selectedFlightItinerary.itinTotalFare.amount) |exchange:'value'}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ \"SearchResult.ViewDetails\" | translate }}\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n {{\"SearchResult.departure\" | translate}}\r\n ({{ select.selectedFlightItinerary.allJourney.flights[0].flightDTO[0].departureDate | date:'EE, d MMM y' }})\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[0].flightDTO[0]\r\n .flightAirline.airlineName\r\n }}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \"\"\r\n \r\n 0\"\r\n src=\"../../../assets/img/albaraq/icons/details-stops-stop.svg\" alt=\"\" />\r\n
\r\n \r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[0]\r\n .elapsedTime | hourminute\r\n }}\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[0]\r\n .flightDTO[0].departureDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[0]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n select.selectedFlightItinerary.allJourney.flights[0]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[0]\r\n .flightDTO[ select.selectedFlightItinerary.allJourney.flights[0].flightDTO.length\r\n -1].arrivalDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[0]\r\n .flightDTO[ select.selectedFlightItinerary.allJourney.flights[0].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n select.selectedFlightItinerary.allJourney.flights[0]\r\n .flightDTO[ select.selectedFlightItinerary.allJourney.flights[0].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
0\">\r\n {{ select.selectedFlightItinerary.allJourney.flights[0].stopsNum}}\r\n {{\"SearchResult.stop\" | translate}}\r\n :\r\n \r\n \r\n {{ select.selectedFlightItinerary.allJourney.flights[0].flightDTO[i].transitTime | durationToHourMin}} \r\n {{\"SearchResult.layover\" | translate}}\r\n {{ select.selectedFlightItinerary.allJourney.flights[0].flightDTO[i].arrivalTerminalAirport.cityName}}\r\n ({{ select.selectedFlightItinerary.allJourney.flights[0].flightDTO[i].arrivalTerminalAirport.airportCode}})\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n {{\"SearchResult.return\" | translate}}\r\n ({{ select.selectedFlightItinerary.allJourney.flights[1].flightDTO[0].departureDate | date:'EE, d MMM y' }})\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[1].flightDTO[0]\r\n .flightAirline.airlineName\r\n }}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \"\"\r\n \r\n 0\"\r\n src=\"../../../assets/img/albaraq/icons/details-stops-stop.svg\" alt=\"\" />\r\n
\r\n \r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[1]\r\n .elapsedTime | hourminute\r\n }}\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[1]\r\n .flightDTO[0].departureDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[1]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n select.selectedFlightItinerary.allJourney.flights[1]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[1]\r\n .flightDTO[select.selectedFlightItinerary.allJourney.flights[1].flightDTO.length\r\n -1].arrivalDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[1]\r\n .flightDTO[select.selectedFlightItinerary.allJourney.flights[1].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n select.selectedFlightItinerary.allJourney.flights[1]\r\n .flightDTO[select.selectedFlightItinerary.allJourney.flights[1].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
0\">\r\n {{select.selectedFlightItinerary.allJourney.flights[1].stopsNum}}\r\n {{\"SearchResult.stop\" | translate}}\r\n :\r\n \r\n \r\n {{select.selectedFlightItinerary.allJourney.flights[1].flightDTO[i].transitTime | durationToHourMin}} \r\n {{\"SearchResult.layover\" | translate}}\r\n {{select.selectedFlightItinerary.allJourney.flights[1].flightDTO[i].arrivalTerminalAirport.cityName}}\r\n ({{select.selectedFlightItinerary.allJourney.flights[1].flightDTO[i].arrivalTerminalAirport.airportCode}})\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \"airline\r\n \r\n {{item.allJourney.flights[0].flightDTO[0].flightAirline.airlineName}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{item.allJourney.flights[0].flightDTO[0].departureDate |\r\n date:'shortTime'}}\r\n
\r\n \r\n
\r\n ({{item.allJourney.flights[0].flightDTO[0].departureTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{item.allJourney.flights[1].elapsedTime | hourminute}} )\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{item.allJourney.flights[0].stopsNum}}\r\n {{\"SearchResult.Stops\"|translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{item.allJourney.flights[0].flightDTO[item.allJourney.flights[0].flightDTO.length\r\n -1].arrivalDate | date:'shortTime'}}\r\n
\r\n
\r\n ({{item.allJourney.flights[0].flightDTO[item.allJourney.flights[0].flightDTO.length\r\n -1].arrivalTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{item.allJourney.flights[0].elapsedTime | hourminute}} )\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n = select.selectedFlightItinerary.itinTotalFare.amount \"> + \r\n - \r\n {{item['itinTotalFare']['currencyCode']|exchange:'code'}} \r\n 0\r\n item.itinTotalFare.amount\">{{( select.selectedFlightItinerary.itinTotalFare.amount - item.itinTotalFare.amount) |exchange:'value'}}\r\n \r\n {{(item.itinTotalFare.amount - select.selectedFlightItinerary.itinTotalFare.amount) |exchange:'value'}}\r\n
\r\n
\r\n
{{\"SearchResult.Price\"|translate}}
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n = select.selectedFlightItinerary.itinTotalFare.amount \"> + \r\n - \r\n {{item['itinTotalFare']['currencyCode']|exchange:'code'}} \r\n 0\r\n item.itinTotalFare.amount\">{{(select.selectedFlightItinerary.itinTotalFare.amount - item.itinTotalFare.amount ) |exchange:'value'}}\r\n \r\n {{(item.itinTotalFare.amount - select.selectedFlightItinerary.itinTotalFare.amount) |exchange:'value'}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ \"SearchResult.ViewDetails\" | translate }}\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n {{\"SearchResult.departure\" | translate}}\r\n ({{ select.selectedFlightItinerary.allJourney.flights[0].flightDTO[0].departureDate | date:'EE, d MMM y' }})\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[0].flightDTO[0]\r\n .flightAirline.airlineName\r\n }}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \"\"\r\n \r\n 0\"\r\n src=\"../../../assets/img/albaraq/icons/details-stops-stop.svg\" alt=\"\" />\r\n
\r\n \r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[0]\r\n .elapsedTime | hourminute\r\n }}\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[0]\r\n .flightDTO[0].departureDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[0]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n select.selectedFlightItinerary.allJourney.flights[0]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[0]\r\n .flightDTO[ select.selectedFlightItinerary.allJourney.flights[0].flightDTO.length\r\n -1].arrivalDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[0]\r\n .flightDTO[ select.selectedFlightItinerary.allJourney.flights[0].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n select.selectedFlightItinerary.allJourney.flights[0]\r\n .flightDTO[ select.selectedFlightItinerary.allJourney.flights[0].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
0\">\r\n {{ select.selectedFlightItinerary.allJourney.flights[0].stopsNum}}\r\n {{\"SearchResult.stop\" | translate}}\r\n :\r\n \r\n \r\n {{ select.selectedFlightItinerary.allJourney.flights[0].flightDTO[i].transitTime | durationToHourMin}} \r\n {{\"SearchResult.layover\" | translate}}\r\n {{ select.selectedFlightItinerary.allJourney.flights[0].flightDTO[i].arrivalTerminalAirport.cityName}}\r\n ({{ select.selectedFlightItinerary.allJourney.flights[0].flightDTO[i].arrivalTerminalAirport.airportCode}})\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n {{\"SearchResult.return\" | translate}}\r\n ({{ select.selectedFlightItinerary.allJourney.flights[1].flightDTO[0].departureDate | date:'EE, d MMM y' }})\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[1].flightDTO[0]\r\n .flightAirline.airlineName\r\n }}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \"\"\r\n \r\n 0\"\r\n src=\"../../../assets/img/albaraq/icons/details-stops-stop.svg\" alt=\"\" />\r\n
\r\n \r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[1]\r\n .elapsedTime | hourminute\r\n }}\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[1]\r\n .flightDTO[0].departureDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[1]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n select.selectedFlightItinerary.allJourney.flights[1]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[1]\r\n .flightDTO[select.selectedFlightItinerary.allJourney.flights[1].flightDTO.length\r\n -1].arrivalDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n select.selectedFlightItinerary.allJourney.flights[1]\r\n .flightDTO[select.selectedFlightItinerary.allJourney.flights[1].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n select.selectedFlightItinerary.allJourney.flights[1]\r\n .flightDTO[select.selectedFlightItinerary.allJourney.flights[1].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
0\">\r\n {{select.selectedFlightItinerary.allJourney.flights[1].stopsNum}}\r\n {{\"SearchResult.stop\" | translate}}\r\n :\r\n \r\n \r\n {{select.selectedFlightItinerary.allJourney.flights[1].flightDTO[i].transitTime | durationToHourMin}} \r\n {{\"SearchResult.layover\" | translate}}\r\n {{select.selectedFlightItinerary.allJourney.flights[1].flightDTO[i].arrivalTerminalAirport.cityName}}\r\n ({{select.selectedFlightItinerary.allJourney.flights[1].flightDTO[i].arrivalTerminalAirport.airportCode}})\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
","import { Component, OnInit,ViewChild, ElementRef } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { GoogleTagManagerService } from 'angular-google-tag-manager';\r\n\r\n\r\n@Component({\r\n selector: 'app-term-ofuse',\r\n templateUrl: './term-ofuse.component.html',\r\n styleUrls: ['./term-ofuse.component.scss']\r\n})\r\nexport class TermOfuseComponent implements OnInit {\r\n \r\n\r\n constructor(\r\n public translate: TranslateService,\r\n private gtmService: GoogleTagManagerService,\r\n private router: Router,) { \r\n const gtmTag = {\r\n event: 'Page View',\r\n pageName: 'Terms Of Use',\r\n language: this.translate.currentLang, \r\n url:this.router.url\r\n };\r\n this.gtmService.pushTag(gtmTag);\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n \r\n}\r\n","\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n

{{\"termsOfUse.title\" | translate}}

\r\n
\r\n\r\n
\r\n
\r\n

\r\n {{\"termsOfUse.span\" | translate}}\r\n {{\"termsOfUse.item\" | translate}}\r\n

\r\n
\r\n
\r\n

\r\n {{\"termsOfUse.span2\" | translate}}\r\n {{\"termsOfUse.item2\" | translate}}\r\n

\r\n
\r\n
\r\n

\r\n {{\"termsOfUse.span3\" | translate}}\r\n {{\"termsOfUse.item3\" | translate}}\r\n

\r\n
\r\n
\r\n

\r\n {{\"termsOfUse.span4\" | translate}}\r\n {{\"termsOfUse.item4\" | translate}}\r\n

\r\n
\r\n
\r\n

\r\n {{\"termsOfUse.span5\" | translate}}\r\n {{\"termsOfUse.item5\" | translate}}\r\n

\r\n
\r\n
\r\n

\r\n {{\"termsOfUse.span6\" | translate}}\r\n {{\"termsOfUse.item6\" | translate}}\r\n

\r\n
\r\n
\r\n

\r\n {{\"termsOfUse.span7\" | translate}}\r\n {{\"termsOfUse.item7\" | translate}}\r\n

\r\n
\r\n
\r\n

\r\n {{\"termsOfUse.span8\" | translate}}\r\n {{\"termsOfUse.item8\" | translate}}\r\n

\r\n
\r\n
\r\n

\r\n {{\"termsOfUse.span9\" | translate}}\r\n {{\"termsOfUse.item9\" | translate}}\r\n

\r\n
\r\n
\r\n

\r\n {{\"termsOfUse.span10\" | translate}}\r\n {{\"termsOfUse.item10\" | translate}}\r\n

\r\n
\r\n
\r\n

\r\n {{\"termsOfUse.span11\" | translate}}\r\n {{\"termsOfUse.item11\" | translate}}\r\n

\r\n
\r\n
\r\n

\r\n {{\"termsOfUse.span12\" | translate}}\r\n {{\"termsOfUse.item12\" | translate}}\r\n

\r\n
\r\n\r\n
\r\n

{{\"privacyPolicy.title7\" | translate}}

\r\n
\r\n \r\n
\r\n
\r\n

{{\"privacyPolicy.item7\" | translate}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { airItineraries } from '@src/app/interface/flight-search-result';\r\nimport { hotelBookingModel } from '@src/app/models/search-hotel/hotel-booking-model';\r\nimport { AuthUser, User } from '@src/app/models/user/user';\r\n\r\nexport const loadUser = createAction(\r\n '[User] Load User'\r\n);\r\n\r\nexport const loadUserSucces = createAction(\r\n '[User] Load User Success',\r\n props<{ data: User }>()\r\n);\r\n\r\nexport const loadUserFailure = createAction(\r\n '[User] Load User Failure',\r\n props<{ error: any }>()\r\n);\r\n\r\nexport const updateUserData = createAction(\r\n '[User] Update User',\r\n props<{ user: User }>()\r\n);\r\n\r\nexport const UpdateUserDataSucces = createAction(\r\n '[User] Update User Success',\r\n props<{ data: User }>()\r\n);\r\n\r\nexport const UpdateUserDataFailure = createAction(\r\n '[User] Update User Failure',\r\n props<{ error: any }>()\r\n);\r\n\r\n\r\nexport const addUserFlight = createAction(\r\n '[User] Add User Flight',\r\n props<{ flight: airItineraries }>()\r\n);\r\n\r\nexport const addUserFlightSuccess = createAction(\r\n '[User] Add User Flight Success',\r\n props<{ flight: airItineraries }>()\r\n);\r\n\r\nexport const addUserFlightFailure = createAction(\r\n '[User] Add User Flight Failure',\r\n props<{ error: any }>()\r\n);\r\n\r\n\r\nexport const deleteUserFlight = createAction(\r\n '[User] Delete User Flight',\r\n props<{sequenceNumber: any , providerNum:any}>()\r\n);\r\n\r\nexport const deleteUserFlightSuccess = createAction(\r\n '[User] Delete User Flight Success',\r\n props<{ sequenceNumber: any , providerNum:any}>()\r\n);\r\n\r\nexport const deleteUserFlightFailure = createAction(\r\n '[User] Delete User Flight Failure',\r\n props<{ error: any }>()\r\n);\r\n\r\n\r\n\r\nexport const addUserHotel = createAction(\r\n '[User] Add User Hotel',\r\n props<{ hotel: hotelBookingModel }>()\r\n);\r\n\r\nexport const addUserHotelSuccess = createAction(\r\n '[User] Add User Hotel Success',\r\n props<{ hotel: hotelBookingModel }>()\r\n);\r\n\r\nexport const addUserHotelFailure = createAction(\r\n '[User] Add User Hotel Failure',\r\n props<{ error: any }>()\r\n);\r\n\r\nexport const deleteUserHotel = createAction(\r\n '[User] Delete User Hotel',\r\n props<{hotelCode : string}>()\r\n);\r\n\r\nexport const deleteUserHotelSuccess = createAction(\r\n '[User] Delete User Hotel Success',\r\n props<{hotelCode : string}>()\r\n);\r\n\r\nexport const deleteUserHotelFailure = createAction(\r\n '[User] Delete User Hotel Failure',\r\n props<{ error: any }>()\r\n);\r\n\r\nexport const ResetUserState = createAction(\r\n '[User] Reset User Data'\r\n);\r\n\r\nexport const loadAuthUser = createAction(\r\n '[User] AUTH USER'\r\n);\r\n\r\nexport const loadAuthUserSuccess = createAction(\r\n '[User] AUTH USER SUCCESS',\r\n props<{ user: AuthUser }>()\r\n);\r\n\r\nexport const loadAuthUserFailure = createAction(\r\n '[User] AUTH USER FAILURE',\r\n props<{ error: any }>()\r\n);\r\n\r\n","import { Component, OnInit, Input, AfterViewInit } from '@angular/core';\r\nimport { MyapiService } from '@src/app/services/myapi.service';\r\n\r\n@Component({\r\n selector: 'app-upcoming-ahistory',\r\n templateUrl: './upcoming-ahistory.component.html',\r\n styleUrls: ['./upcoming-ahistory.component.css']\r\n})\r\nexport class UpcomingAhistoryComponent implements OnInit,AfterViewInit {\r\n @Input()email:string;\r\n loading :boolean = true;\r\n panelOpenState = false;\r\n upcoming:any[];\r\n history:any[];\r\n upcomingl:number = 0;\r\n historyl:number = 0;\r\n \r\n\r\n constructor(private myapi:MyapiService) { \r\n \r\n }\r\n\r\n ngOnInit() {\r\n console.log(this.email,\"upcoming and history email\")\r\n \r\n }\r\n ngAfterViewInit(){\r\n this.myapi.UpcomingAndHistory(this.email).subscribe(\r\n (result)=>{\r\n this.upcomingl = (<[]>result.upcomingFlights).length;\r\n this.historyl = (<[]>result.historyFlights).length;\r\n this.upcoming = result.upcomingFlights;\r\n this.history = result.historyFlights;\r\n this.loading = false;\r\n console.log(result);\r\n }\r\n )\r\n }\r\n}\r\n","
\r\n \r\n 0 \">\r\n \r\n \r\n {{'user.upcomingtrip'|translate}}\r\n \r\n \r\n {{'user.youhave'|translate}} {{upcomingl}} {{'user.upcomingtrip'|translate}}\r\n \r\n \r\n 0\">\r\n \r\n \r\n\r\n \r\n 0\">\r\n \r\n \r\n {{'user.history'|translate}}\r\n \r\n \r\n {{'user.youhave'|translate}} {{historyl}} {{'user.ofhistory'|translate}}\r\n \r\n \r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

you dont have any reservation

\r\n\r\n \r\n
\r\n\r\n
\r\n

{{'user.BookingStatus'|translate}} : {{item.status}}

\r\n

{{'user.PNR'|translate}} : {{item.pnr}}

\r\n

{{'user.BookingNo'|translate}} : {{item.hgNumber}}

\r\n \r\n
\r\n
\r\n
\r\n

{{term.flightDTO[0].departureTerminalAirport.airportCode}} to {{term.flightDTO[term.flightDTO.length - 1].arrivalTerminalAirport.airportCode}} {{term.flightDTO[0]['departureDate']|date:'mediumDate'}}\r\n

\r\n

{{term.flightDTO[0]['departureDate']|date:'shortTime'}} {{term.flightDTO[term.flightDTO.length - 1]['arrivalDate']|date:'shortTime'}}

\r\n

{{item.airItineraries[0]['totalDuration']| hourminute}}

\r\n
\r\n
\r\n \"\"\r\n

{{term.flightDTO[0]['flightAirline']['airlineName']}}

\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n

{{item.airItineraries[0]['flightType']}}

\r\n

{{'SearchResult.NonRefundable'|translate}}

\r\n

{{'SearchResult.Refundable'|translate}}

\r\n

{{item.airItineraries[0]['itinTotalFare']['currencyCode']}} {{item.airItineraries[0]['itinTotalFare']['amount']}}

\r\n {{'user.taxesandfees'|translate}}\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n

{{'user.BookingStatus'|translate}} : {{item.status}}

\r\n

{{'user.PNR'|translate}} : {{item.pnr}}

\r\n

{{'user.BookingNo'|translate}} : {{item.hgNumber}}

\r\n \r\n
\r\n
\r\n
\r\n

{{term.flightDTO[0].departureTerminalAirport.airportCode}} to {{term.flightDTO[term.flightDTO.length - 1].arrivalTerminalAirport.airportCode}} {{term.flightDTO[0]['departureDate']|date:'mediumDate'}}\r\n

\r\n

{{term.flightDTO[0]['departureDate']|date:'shortTime'}} {{term.flightDTO[term.flightDTO.length - 1]['arrivalDate']|date:'shortTime'}}

\r\n

{{item.airItineraries[0]['totalDuration']| hourminute}}

\r\n
\r\n
\r\n \"\"\r\n

{{term.flightDTO[0]['flightAirline']['airlineName']}}

\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n

{{item.airItineraries[0]['flightType']}}

\r\n

{{'SearchResult.NonRefundable'|translate}}

\r\n

{{'SearchResult.Refundable'|translate}}

\r\n

{{item.airItineraries[0]['itinTotalFare']['currencyCode']}} {{item.airItineraries[0]['itinTotalFare']['amount']}}

\r\n {{'user.taxesandfees'|translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'offlineFilter'\r\n})\r\nexport class OfflineFilterPipe implements PipeTransform {\r\n\r\n transform(value: any[], args?: string): any[] {\r\n if (!value || !args){\r\n return value\r\n }\r\n else {\r\n return value.filter(va => va.placement === args);\r\n }\r\n }\r\n\r\n}","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as actions from '../app-offers/offers.actions';\r\nimport { BookedOffer } from '@src/app/interface/BookOffer';\r\nimport { ImagesDTO, OfferDTO } from '@src/app/interface/offers';\r\nimport { Itinerary } from '@src/app/interface/offlineSeats';\r\n\r\nexport const appOffersFeatureKey = 'appOffers';\r\n\r\nexport interface State {\r\n loading : boolean,\r\n error : any,\r\n offers : OfferDTO[],\r\n selecyedOffer : OfferDTO,\r\n BookOffer: BookedOffer\r\n servicesImages : ImagesDTO[],\r\n offlineItinerary:Itinerary\r\n}\r\n\r\nexport const initialState: State = {\r\n loading : false,\r\n offers : [],\r\n selecyedOffer : undefined,\r\n BookOffer: undefined,\r\n error : undefined,\r\n servicesImages: undefined,\r\n offlineItinerary:undefined\r\n};\r\n\r\n\r\nexport const reducer = createReducer(\r\n initialState,\r\n on(actions.loadAllOffers , (state)=>({...state , loading:true})),\r\n on(actions.loadAllOffersSuccess , (state , param)=>({...state , loading : false , offers:param.data})),\r\n on(actions.loadAllOffersFailure , (state, param)=>({...state , loading: false , error:param.err})),\r\n on(actions.loadOfferById , (state)=>({...state , loading:true})),\r\n on(actions.loadOfferByIdSuccess , (state , param)=>({...state , loading : false , selecyedOffer:param.data})),\r\n on(actions.loadOfferByIdFailure , (state, param)=>({...state , loading: false , error:param.err})),\r\n on(actions.BookOffers , (state)=>({...state , loading:true})),\r\n on(actions.BookOffersSuccess , (state , param)=>({...state , loading : false , BookOffer:param.data})),\r\n on(actions.BookOffersFailure , (state, param)=>({...state , loading: false , error:param.err})),\r\n on(actions.loadServicesImages , (state, param)=>({...state , loading: false , servicesImages:param.data})),\r\n on(actions.retrieveItinerary , (state)=>({...state , loading: true})),\r\n on(actions.retrieveItinerarySuccess , (state , param)=>({...state , loading: false , offlineItinerary:param.data})),\r\n on(actions.retrieveItineraryFailure , (state , param)=>({...state , loading: false , error:param.err})),\r\n);\r\n\r\nexport function OffersReducer(\r\n state: State | undefined,\r\n action: Action) {\r\n return reducer(state, action);\r\n}\r\n\r\n","import { Injectable } from \"@angular/core\";\r\n\r\n@Injectable({\r\n providedIn:\"root\"\r\n})\r\nexport class SearchFlightModule { \r\n \r\n constructor (\r\n public lan:string,\r\n public Currency:string,\r\n public pointOfReservation:string,\r\n public flightType:string,\r\n public flightsInfo:string,\r\n public passengers:string,\r\n public Cclass:string,\r\n public serachId:any,\r\n public showDirect :boolean,\r\n public preferredAirLine :string,\r\n ){} \r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'hourminute'\r\n})\r\nexport class HourMinutePipe implements PipeTransform {\r\n\r\n transform(value: number): string {\r\n const hours = value / 60 | 0 ;\r\n const minutes = value % 60 | 0;\r\n return hours + 'h ' + minutes + 'm';\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { updateAppLang } from './store/app-setting/app-setting.actions';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css']\r\n})\r\nexport class AppComponent implements OnInit{\r\n param = {value: 'world'};\r\n \r\n constructor(private translate: TranslateService,private readonly store : Store) {\r\n sessionStorage.setItem('loaded','true'); \r\n if(localStorage.getItem('lang') && ((localStorage.getItem('lang') != null || localStorage.getItem('lang') != 'null'))){\r\n translate.use(localStorage.getItem('lang'));\r\n this.store.dispatch(updateAppLang({ Lang: localStorage.getItem('lang') }));\r\n }\r\n else{\r\n // the lang to use, if the lang isn't available, it will use the current loader to get them\r\n localStorage.setItem('lang','ar');\r\n translate.use('ar');\r\n this.store.dispatch(updateAppLang({ Lang:'ar' }));\r\n }\r\n \r\n }\r\n \r\n ngOnInit(): void {\r\n }\r\n}\r\n","\r\n","import { Router } from '@angular/router';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\n\r\n\r\nimport { Component, OnInit, Input, OnDestroy } from '@angular/core';\r\nimport { tap, take } from 'rxjs/operators';\r\nimport { FareRules } from '@src/app/interface/flight-search-result';\r\nimport { MyapiService } from '@src/app/services/myapi.service';\r\n\r\n@Component({\r\n selector: 'app-far-rules',\r\n templateUrl: './far-rules.component.html',\r\n styleUrls: ['./far-rules.component.css']\r\n})\r\nexport class FarRulesComponent implements OnInit {\r\n @Input() squencNumber: number;\r\n FareLoading: boolean = true;\r\n @Input() serachId: string;\r\n fare: FareRules[];\r\n @Input() providerKey: string;\r\n // @Input() showFares:boolean=false;\r\n constructor(private search: MyapiService, public activeModal: NgbActiveModal, private router: Router) { }\r\n\r\n ngOnInit() {\r\n\r\n this.showFareRules();\r\n\r\n // Close dialog ref on route changes\r\n this.router.events.pipe(\r\n tap(() => this.activeModal.close()),\r\n take(1),\r\n ).subscribe();\r\n }\r\n\r\n\r\n\r\n // show fairRules\r\n showFareRules() {\r\n\r\n this.FareLoading = true;\r\n this.search.fareRules(this.serachId, this.squencNumber, this.providerKey).subscribe(\r\n (result) => {\r\n this.FareLoading = false;\r\n this.fare = result;\r\n }\r\n\r\n );\r\n }\r\n\r\n\r\n}\r\n","\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n

\r\n {{\"SearchResult.noRules\"|translate}}\r\n

\r\n \r\n
\r\n
\r\n \r\n {{fareitem.departureCountry}} -- {{fareitem.arrivalCountry}}\r\n
\r\n \r\n
\r\n \r\n

\r\n {{\"SearchResult.noAdult\"|translate}}\r\n

\r\n
\r\n \r\n
{{\"SearchResult.AdultRtitle\"|translate}}
\r\n \r\n \r\n
\r\n
{{adultRule.title}}
\r\n

\r\n {{adultRule.fareRule}}\r\n

\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n

\r\n {{\"SearchResult.noChild\"|translate}}\r\n

\r\n
\r\n
0\">\r\n
{{\"SearchResult.childRtitle\"|translate}}
\r\n \r\n
\r\n
{{childRule.title}}
\r\n

\r\n {{childRule.fareRule}}\r\n

\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n

\r\n {{\"SearchResult.noInfent\"|translate}}\r\n

\r\n
\r\n
0\">\r\n
{{\"SearchResult.InfentRtitle\"|translate}}
\r\n \r\n
\r\n
{{infRules.title}}
\r\n

\r\n {{infRules.fareRule}}\r\n

\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n\r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n
","import { Injectable } from \"@angular/core\";\r\n\r\n@Injectable({\r\n providedIn:\"root\"\r\n})\r\nexport class PointOfsaleModule {\r\n constructor(\r\n public ip?:string,\r\n public city?:string,\r\n public region?:string,\r\n public region_code?:string,\r\n public country?:string,\r\n public country_name?:string,\r\n public continent_code?:string,\r\n public airport?:string,\r\n public country_capital?:string,\r\n public in_eu?:boolean,\r\n public postal?:any,\r\n public latitude?:number,\r\n public longitude?:number,\r\n public timezone?:string,\r\n public utc_offset?:string,\r\n public country_calling_code?:string,\r\n public currency?:string,\r\n public languages?:string,\r\n public asn?:string,\r\n public org?:string\r\n ){\r\n }\r\n }\r\n\r\n export interface PointOfsaleModule { \r\n ip?:string,\r\n city?:string,\r\n region?:string,\r\n region_code?:string,\r\n country?:string,\r\n country_name?:string,\r\n country_nameAr?:string,\r\n continent_code?:string,\r\n airport?:string\r\n country_capital?:string,\r\n in_eu?:boolean,\r\n postal?:any,\r\n latitude?:number,\r\n longitude?:number,\r\n timezone?:string,\r\n utc_offset?:string,\r\n country_calling_code?:string,\r\n currency?:string,\r\n languages?:string,\r\n asn?:string,\r\n org?:string\r\n}\r\n","import { GetHotelModule } from './../../models/search-hotel/get-hotels.module';\r\nimport { createAction, props } from '@ngrx/store';\r\nimport { SearchHoteltModule } from '@src/app/models/search-hotel/search-hotel.module';\r\nimport { HotelRoom, Room, RoomResult } from '@src/app/models/HotelRooms/HotelRooms';\r\nimport { BookingObject } from '@src/app/models/search-hotel/hotel-booking-model';\r\nimport { HotelResult, HotelSearchResult } from '@src/app/models/search-hotel/search-hotel-result';\r\nimport { RequiredHotel } from '@src/app/models/HotelBooking/RequiredHotelData';\r\n\r\nexport const loadHotelSearchs = createAction(\r\n '[HotelSearch] Load HotelSearchs',\r\n props<{ data: SearchHoteltModule }>()\r\n);\r\n\r\nexport const loadHotelSearchsSuccess = createAction(\r\n '[HotelSearch] Load HotelSearchs Success',\r\n props<{ data: HotelResult }>()\r\n);\r\n\r\nexport const loadHotelSearchsFailure = createAction(\r\n '[HotelSearch] Load HotelSearchs Failure',\r\n props<{ error: any }>()\r\n);\r\n\r\nexport const updateHotelSearchCretaria = createAction(\r\n '[HotelSearch] Update HotelSearchsCriteria',\r\n props<{ data: SearchHoteltModule }>()\r\n);\r\n\r\nexport const updateFiltiredHotels = createAction(\r\n '[HotelSearch] Update Filtired Hotels',\r\n props<{ data: HotelSearchResult[] }>() \r\n);\r\n\r\nexport const loadHotelRooms = createAction(\r\n '[HotelSearch] Load Hotel Rooms',\r\n props<{ pId: any, sId : any , hotelID:any }>()\r\n);\r\n\r\nexport const loadHotelRoomsSuccess = createAction(\r\n '[HotelSearch] Load Hotel Rooms Success',\r\n props<{ data: HotelRoom }>()\r\n);\r\n\r\nexport const loadHotelRoomsFailure = createAction(\r\n '[HotelSearch] Load Hotel Rooms Failure',\r\n props<{ error: any }>()\r\n);\r\n\r\nexport const updateSelectedRooms = createAction(\r\n '[HotelSearch] Update Selected Rooms',\r\n props<{ data: RoomResult }>()\r\n);\r\n\r\nexport const loadHotelAmenties = createAction(\r\n '[HotelSearch] Load Hotel Amenties',\r\n props<{ hotelID:any }>()\r\n);\r\n\r\nexport const loadHotelAmentiesSuccess = createAction(\r\n '[HotelSearch] Load Hotel Amenties Success',\r\n props<{ data: any }>()\r\n);\r\n\r\nexport const loadHotelAmentiesFailure = createAction(\r\n '[HotelSearch] Load Hotel Amenties Failure',\r\n props<{ error: any }>()\r\n);\r\n\r\n\r\nexport const hotelSaveBooking = createAction(\r\n '[HotelSearch] Hotel Save Booking',\r\n props<{ data:BookingObject , ip:any , ipLocation:any , searchId:any , lang:string}>()\r\n);\r\n\r\nexport const hotelSaveBookingSuccess = createAction(\r\n '[HotelSearch] Hotel Save Booking Success',\r\n props<{ data: BookingObject }>()\r\n);\r\n\r\nexport const hotelSaveBookingFailure = createAction(\r\n '[HotelSearch] Hotel Save Booking Failure',\r\n props<{ error: any }>()\r\n);\r\n\r\nexport const loadRoomCancellation = createAction(\r\n '[HotelSearch] Load Room Cancellation',\r\n props<{ sid: string, hotelcode: any, PId: any , roomindex: any}>()\r\n);\r\n\r\nexport const loadRoomCancellationSuccess = createAction(\r\n '[HotelSearch] Load Room Cancellation Success',\r\n props<{ data: any }>()\r\n);\r\n\r\nexport const loadRoomCancellationFailure = createAction(\r\n '[HotelSearch] Load Room Cancellation Failure',\r\n props<{ error: any }>()\r\n);\r\n\r\nexport const loadSelectedHotel = createAction(\r\n '[HotelSearch] Load Serlected Hotel',\r\n props<{ sid:any, hotelID:any, Pid:any, rooms:any}>()\r\n);\r\n\r\nexport const loadSelectedHotelSuccess = createAction(\r\n '[HotelSearch] Load Serlected Hotel Success',\r\n props<{ data : RequiredHotel }>()\r\n);\r\n\r\nexport const loadSelectedHotelFailure = createAction(\r\n '[HotelSearch] Load Serlected Hotel Failure',\r\n props<{ error : any }>()\r\n);\r\n\r\nexport const updateRoomImages = createAction(\r\n '[HotelSearch] Update Room Images',\r\n props<{ data: string[] }>() \r\n);\r\n\r\n","import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { GoogleTagManagerService } from 'angular-google-tag-manager';\r\n\r\n@Component({\r\n selector: 'app-privacy',\r\n templateUrl: './privacy.component.html',\r\n styleUrls: ['./privacy.component.scss']\r\n})\r\nexport class PrivacyComponent implements OnInit {\r\n @ViewChild('Cf',{static: false}) cf: ElementRef;\r\n @ViewChild('Unsubscribing',{static: false}) unsubscribing: ElementRef;\r\n @ViewChild('FS',{static: false}) fs: ElementRef;\r\n @ViewChild('IA',{static: false})ia: ElementRef;\r\n @ViewChild('Cookies',{static: false})cookies: ElementRef;\r\n @ViewChild('WYS',{static: false})wys: ElementRef;\r\n constructor( \r\n public translate: TranslateService,\r\n private gtmService: GoogleTagManagerService,\r\n private router: Router,) {\r\n const gtmTag = {\r\n event: 'Page View',\r\n pageName: 'Privacy And Policy',\r\n language: this.translate.currentLang, \r\n url:this.router.url\r\n };\r\n this.gtmService.pushTag(gtmTag);\r\n }\r\n scroll(elem:ElementRef) {\r\n elem.nativeElement.scrollIntoView();\r\n }\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n

{{\"privacyPolicy.title\" | translate}}

\r\n
\r\n\r\n
\r\n
\r\n

{{\"privacyPolicy.item\" | translate}}

\r\n
\r\n
\r\n\r\n
\r\n

{{\"privacyPolicy.title2\" | translate}}

\r\n
\r\n\r\n
\r\n
\r\n

{{\"privacyPolicy.item2\" | translate}}

\r\n
\r\n
\r\n\r\n
\r\n

{{\"privacyPolicy.title3\" | translate}}

\r\n
\r\n\r\n
\r\n
\r\n

{{\"privacyPolicy.item3\" | translate}}

\r\n
\r\n
\r\n\r\n
\r\n

{{\"privacyPolicy.title4\" | translate}}

\r\n
\r\n\r\n
\r\n
\r\n

{{\"privacyPolicy.item4\" | translate}}

\r\n
\r\n
\r\n\r\n
\r\n

{{\"privacyPolicy.title5\" | translate}}

\r\n
\r\n\r\n
\r\n
\r\n

{{\"privacyPolicy.item5\" | translate}}

\r\n
\r\n
\r\n\r\n
\r\n

{{\"privacyPolicy.title6\" | translate}}

\r\n
\r\n\r\n
\r\n
\r\n

{{\"privacyPolicy.item6\" | translate}}

\r\n
\r\n
\r\n\r\n
\r\n

{{\"privacyPolicy.title7\" | translate}}

\r\n
\r\n\r\n
\r\n
\r\n

{{\"privacyPolicy.item7\" | translate}}

\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n\r\n","import { DOCUMENT } from '@angular/common';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { map } from 'rxjs/operators';\r\nimport * as appSetting from '../app-setting/app-setting.actions';\r\n\r\n\r\n@Injectable()\r\nexport class AppSettingEffects {\r\n\r\n\r\n\r\n constructor(private actions$: Actions ,private translate:TranslateService,@Inject(DOCUMENT) private document: Document ) {}\r\n\r\n \r\n langChange$ = createEffect(()=>this.actions$.pipe(\r\n ofType(appSetting.updateAppLang),\r\n map((v)=>{\r\n console.log(v.Lang, this.translate.currentLang);\r\n localStorage.removeItem('lang');\r\n localStorage.setItem('lang',v.Lang);\r\n this.translate.use(v.Lang);\r\n \r\n if(v.Lang ==='ar'){\r\n this.document.dir ='rtl';\r\n this.document.body.classList.add('ar')\r\n\r\n }else {\r\n this.document.dir ='ltr';\r\n this.document.body.classList.remove('ar')\r\n\r\n }\r\n return appSetting.updateAppLangSuccess({Lang:v.Lang});\r\n })\r\n ))\r\n \r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { HotelsCitiesModule } from '../models/hotels-cities/hotels-cities.module';\r\n\r\n@Pipe({\r\n name: 'hotelecites'\r\n})\r\nexport class HotelecitesPipe implements PipeTransform {\r\n\r\n transform(value: HotelsCitiesModule[], args: string): HotelsCitiesModule[] {\r\n if (!value || !args) {\r\n return [];\r\n }\r\n else {\r\n if(args.length< 3){\r\n return [];\r\n }\r\n let result: HotelsCitiesModule[] = []\r\n for (let index = 0; index < value.length; index++) {\r\n let element: HotelsCitiesModule = value[index];\r\n let a = element.City.toLowerCase();\r\n let b = element.Country.toLowerCase();\r\n if (a.indexOf(args.toLowerCase()) != -1 || b.indexOf(args.toLowerCase()) != -1 ) {\r\n result.push(element);\r\n }\r\n\r\n }\r\n return result;\r\n }\r\n }\r\n\r\n}\r\n","export class CurrencyModule {\r\n constructor(\r\n public ID:number,\r\n public Currency_Code:string,\r\n public Currency_Name:string,\r\n public Is_Base_Currency:boolean,\r\n public Image_Url:string,\r\n public rate : number\r\n ){}\r\n }\r\n\r\n export interface CurrencyModule {\r\n ID:number,\r\n Currency_Code:string,\r\n Currency_Name:string,\r\n Is_Base_Currency:boolean,\r\n Image_Url:string,\r\n rate : number\r\n }\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { CitiesModule } from '../models/cities/cities.module';\r\n//this pipe take an argument as the input and return a filterd array wich include the search input\r\n@Pipe({\r\n name: 'filterCity'\r\n})\r\nexport class FilterCityPipe implements PipeTransform {\r\n\r\n transform(value: CitiesModule[], args: string): CitiesModule[] {\r\n if (!value || !args) {\r\n return [];\r\n }\r\n else {\r\n if(args.length< 3){\r\n return [];\r\n }\r\n let result: CitiesModule[] = []\r\n // for (let index = 0; index < value.length; index++) {\r\n // let element: CitiesModule = value[index];\r\n // let a = element.cityName.toLowerCase();\r\n // let b = element.airportCode.toLowerCase();\r\n // let c = element.airportName.toLowerCase();\r\n // let d = element.countryName.toLowerCase();\r\n // if (a.slice(0,args.length) == args.toLowerCase() || b.slice(0,args.length) == args.toLowerCase() || c.slice(0,args.length ) == args.toLowerCase()) {\r\n // result.push(element);\r\n // }\r\n // if (a.indexOf(args.toLowerCase()) != -1 || b.indexOf(args.toLowerCase()) != -1 || c.indexOf(args.toLowerCase()) != -1||d.indexOf(args.toLowerCase()) != -1) {\r\n // result.push(element);\r\n // }\r\n \r\n\r\n // }\r\n // filter by index \r\n result = value.filter(val=> \r\n val.cityName.toLowerCase().slice(0,args.length) == args.toLowerCase()||\r\n val.airportCode.toLowerCase().slice(0,args.length) == args.toLowerCase()||\r\n val.airportName.toLowerCase().slice(0,args.length) == args.toLowerCase()||\r\n val.countryName.toLowerCase().slice(0,args.length) == args.toLowerCase()\r\n );\r\n // un filtetrd result \r\n let leftTofilter = value.filter(val=> !(\r\n val.cityName.toLowerCase().slice(0,args.length) == args.toLowerCase()||\r\n val.airportCode.toLowerCase().slice(0,args.length) == args.toLowerCase()||\r\n val.airportName.toLowerCase().slice(0,args.length) == args.toLowerCase()||\r\n val.countryName.toLowerCase().slice(0,args.length) == args.toLowerCase())\r\n );\r\n // search any where \r\n let rstOfResults = leftTofilter.filter(val=>\r\n val.cityName.toLowerCase().indexOf(args.toLowerCase()) != -1||\r\n val.airportCode.toLowerCase().indexOf(args.toLowerCase()) != -1||\r\n val.airportName.toLowerCase().indexOf(args.toLowerCase()) != -1||\r\n val.countryName.toLowerCase().indexOf(args.toLowerCase()) != -1\r\n );\r\n // add total result\r\n result = result.concat(rstOfResults);\r\n return result;\r\n }\r\n // return value.filter ((city)=>{city.cityName.toLowerCase().indexOf(args.toLowerCase()) != -1||\r\n // city.airportName.toLowerCase().indexOf(args.toLowerCase()) != -1||\r\n // city.cityName.toLowerCase().indexOf(args.toLowerCase()) != -1})\r\n }\r\n\r\n}\r\n","import { PointOfsaleModule } from 'src/app/models/point-ofsale/point-ofsale.module';\r\nimport { CurrencyModule } from 'src/app/models/currency/currency.module';\r\nimport { createAction, props } from '@ngrx/store';\r\nimport { AirPorts } from '@src/app/interface/flight-search-result';\r\nimport { CountriescodeModule } from '@src/app/models/countriescode/countriescode.module';\r\nimport { HotelsCitiesModule } from '@src/app/models/hotels-cities/hotels-cities.module';\r\nimport { TopCityFlight, tripideas } from '@src/app/interface/Home-content';\r\n\r\nexport const loadUtilitysAirports = createAction(\r\n '[UtilitysAirports] Load UtilitysAirports',\r\n props <{ lang: string }>()\r\n);\r\n\r\nexport const loadUtilitysAirportsSuccess = createAction(\r\n '[UtilitysAirports] Load UtilitysAirports Success',\r\n props<{ airports: AirPorts[] }>()\r\n);\r\n\r\nexport const loadUtilitysAirportsFailure = createAction(\r\n '[UtilitysAirports] Load UtilitysAirports Failure',\r\n props<{ error: any }>()\r\n);\r\n\r\nexport const loadUtilitysCurrency = createAction(\r\n '[UtilitysCurrency] Load UtilitysCurrency'\r\n);\r\n\r\nexport const loadFlightTopCities = createAction(\r\n '[TopCities] Load FTopCities'\r\n);\r\n\r\nexport const loadFlightTopCitiesSuccess = createAction(\r\n '[TopCities] Load FTopCities Success',\r\n props<{ Tcities: TopCityFlight[][] }>()\r\n);\r\n\r\nexport const loadFlightTopCitiesFailure = createAction(\r\n '[TopCities] Load FTopCities Failure',\r\n props<{ error: any }>()\r\n); \r\nexport const loadFlightTripIdeas= createAction(\r\n '[TopCities] Load TripIdeas',\r\n props<{ Tcities: TopCityFlight[] }>()\r\n);\r\n\r\nexport const loadFlightTripIdeasSuccess = createAction(\r\n '[TopCities] Load TripIdeas Success',\r\n props<{ ideas: tripideas[] }>()\r\n);\r\n\r\nexport const loadFlightTripIdeasFailure = createAction(\r\n '[TopCities] Load TripIdeas Failure',\r\n props<{ error: any }>()\r\n); \r\n\r\nexport const loadUtilitysCurrencySuccess = createAction(\r\n '[UtilitysCurrency] Load UtilitysCurrency Success',\r\n props<{ Currency: CurrencyModule[] }>()\r\n);\r\n\r\nexport const loadUtilitysCurrencyFailure = createAction(\r\n '[UtilitysCurrency] Load UtilitysCurrency Failure',\r\n props<{ error: any }>()\r\n);\r\n\r\nexport const loadUtilitysPOS = createAction(\r\n '[UtilitysPOS] Load UtilitysPOS'\r\n);\r\n\r\nexport const loadUtilitysPOSSuccess = createAction(\r\n '[UtilitysPOS] Load UtilitysPOS Success',\r\n props<{ POS: PointOfsaleModule }>()\r\n);\r\n\r\nexport const loadUtilitysPOSFailure = createAction(\r\n '[UtilitysPOS] Load UtilitysPOS Failure',\r\n props<{ error: any }>()\r\n);\r\n\r\nexport const loadUtilitysCountries= createAction(\r\n '[Countries] Load Countries',\r\n props <{ lang: string }>()\r\n);\r\n\r\nexport const loadUtilitysCountriesSuccess = createAction(\r\n '[Countries] Load Countries Success',\r\n props<{ countries: CountriescodeModule[] }>()\r\n);\r\n\r\nexport const loadUtilitysCountriesFailure = createAction(\r\n '[Countries] Load Countries Failure',\r\n props<{ error: any }>()\r\n);\r\n\r\nexport const loadUtilitysCities= createAction(\r\n '[Cities] Load Cities'\r\n);\r\n\r\nexport const loadUtilitysCitiesSuccess = createAction(\r\n '[Cities] Load Cities Success',\r\n props<{ cities: HotelsCitiesModule[] }>()\r\n);\r\n\r\nexport const loadUtilitysCitiesFailure = createAction(\r\n '[Cities] Load Cities Failure',\r\n props<{ error: any }>()\r\n);\r\n\r\nexport const contactUs = createAction(\r\n '[Contact] Contact Us',\r\n props<{ data: any }>()\r\n);\r\n\r\nexport const contactUsSuccess= createAction(\r\n '[Contact] Contact Us Success',\r\n props<{ data: any }>()\r\n);\r\n\r\nexport const contactUsFailure= createAction(\r\n '[Contact] Contact Us Failure',\r\n props<{ err: any }>()\r\n);\r\n\r\n\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { FlightSearchResult } from '../interface/flight-search-result';\r\nimport { Router } from '@angular/router';\r\nimport { resetSelectedFlight } from '../store/flight-search/flight-search.actions';\r\nimport { Store } from '@ngrx/store';\r\nimport { SearchFlightModule } from '../models/search-flight/search-flight.module';\r\nimport { GoogleTagManagerService } from 'angular-google-tag-manager';\r\nimport { TranslateService } from '@ngx-translate/core';\r\ndeclare var $: any;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FlightServiceService {\r\n lastSearchModule : SearchFlightModule = JSON.parse(localStorage.getItem('lastSearchModule')) || undefined;\r\n\r\n response: FlightSearchResult;\r\n serachId: string;\r\n fSelect:boolean = false;\r\n sequenceNumber: number[] = [];\r\n providerKey: string;\r\n flightsInfo: string;\r\n multiCitySearch : boolean ;\r\n OpenDiv : boolean = false;\r\n Select: boolean = true;\r\n public flightTypeInSearchBox = 'RoundTrip'\r\npublic SelectOneFlight = false;\r\n constructor(\r\n private gtmService: GoogleTagManagerService,\r\n private router: Router,\r\n private translate: TranslateService,\r\n private readonly store : Store) { }\r\n\r\n\r\n \r\n // getDepartueCity&& departueCountry\r\n departureCity() {\r\n // item[0].allJourney.flights[0].flightDTO[0].departureTerminalAirport.cityName\r\n let city: string = this.response.airItineraries[0].allJourney.flights[0].flightDTO[0].departureTerminalAirport.cityName;\r\n let country: string = this.response.airItineraries[0].allJourney.flights[0].flightDTO[0].departureTerminalAirport.countryName;\r\n return city + \",\" + country;\r\n }\r\n // getlanding in oneway \r\n landingCity() {\r\n // airItineraries[\"\"0\"\"].allJourney.flights[\"\"0\"\"].flightDTO[\"\"0\"\"].arrivalTerminalAirport\r\n\r\n let city: string = \"\";\r\n let country: string = '';\r\n // check if stops more than one\r\n let stops = this.response.airItineraries[0].allJourney.flights[0].stopsNum;\r\n\r\n if (stops > 0) {\r\n let flength = this.response.airItineraries[0].allJourney.flights[0].flightDTO.length;\r\n city = this.response.airItineraries[0].allJourney.flights[0].flightDTO[flength - 1].arrivalTerminalAirport.cityName;\r\n country = this.response.airItineraries[0].allJourney.flights[0].flightDTO[flength - 1].arrivalTerminalAirport.countryName;\r\n\r\n }\r\n else {\r\n city = this.response.airItineraries[0].allJourney.flights[0].flightDTO[0].arrivalTerminalAirport.cityName;\r\n country = this.response.airItineraries[0].allJourney.flights[0].flightDTO[0].arrivalTerminalAirport.countryName;\r\n }\r\n return city + \",\" + country;\r\n }\r\n\r\n // get depatrure in oneway \r\n getDepartueDate() {\r\n\r\n\r\n let flight = this.flightsInfo.split(\"-\");\r\n let departure = flight[2];\r\n return departure;\r\n }\r\n\r\n\r\n\r\n // Round Trip //\r\n arrivalCity(item: any, flightN: number) {\r\n let ar: [] = item.allJourney.flights[flightN][\"flightDTO\"];\r\n let m: number = ar.length;\r\n let i: number = m - 1\r\n return item.allJourney.flights[flightN].flightDTO[i][\"arrivalTerminalAirport\"][\"cityName\"];\r\n }\r\n\r\n arrivalAircode(item: any, flightN: number) {\r\n let ar: [] = item.allJourney.flights[flightN][\"flightDTO\"];\r\n let m: number = ar.length;\r\n let i: number = m - 1\r\n return item.allJourney.flights[flightN].flightDTO[i][\"arrivalTerminalAirport\"][\"airportCode\"];\r\n }\r\n arrivalAirName(item: any, flightN: number) {\r\n let ar: [] = item.allJourney.flights[flightN][\"flightDTO\"];\r\n let m: number = ar.length;\r\n let i: number = m - 1\r\n return item.allJourney.flights[flightN].flightDTO[i][\"arrivalTerminalAirport\"][\"airportName\"];\r\n }\r\n arrivalDate(item: any, flightN: number) {\r\n let ar: [] = item.allJourney.flights[flightN][\"flightDTO\"];\r\n let m: number = ar.length;\r\n let i: number = m - 1\r\n return item.allJourney.flights[flightN].flightDTO[i]['arrivalDate'];\r\n }\r\n\r\n arrivalStopCity(item: any, flightN: number) {\r\n let ar: [] = item.allJourney.flights[flightN][\"flightDTO\"];\r\n let m: number = ar.length;\r\n let i: number = 0\r\n for (i; i < m - 1; i++) {\r\n return item.allJourney.flights[flightN].flightDTO[i][\"arrivalTerminalAirport\"][\"cityName\"];\r\n }\r\n\r\n }\r\n arrivalStopAirPort(item: any, flightN: number) {\r\n let ar: [] = item.allJourney.flights[flightN][\"flightDTO\"];\r\n let m: number = ar.length;\r\n let i: number = 0\r\n for (i; i < m - 1; i++) {\r\n return item.allJourney.flights[flightN].flightDTO[i][\"arrivalTerminalAirport\"][\"airportName\"];\r\n }\r\n\r\n }\r\n arrivalStopAircode(item: any, flightN: number) {\r\n let ar: [] = item.allJourney.flights[flightN][\"flightDTO\"];\r\n let m: number = ar.length;\r\n let i: number = 0;\r\n for (i; i < m - 1; i++) {\r\n return item.allJourney.flights[flightN].flightDTO[i][\"arrivalTerminalAirport\"][\"airportCode\"];\r\n }\r\n }\r\n\r\n arrivalStopDate(item: any, flightN: number) {\r\n let ar: [] = item.allJourney.flights[flightN][\"flightDTO\"];\r\n let m: number = ar.length;\r\n let i: number = 0\r\n for (i; i < m - 1; i++) {\r\n return item.allJourney.flights[flightN].flightDTO[i]['arrivalDate'];\r\n }\r\n }\r\n\r\n direct(item: any) {\r\n if (item == 0) {\r\n return 'Direct';\r\n }\r\n else {\r\n return item + 'Stops ';\r\n }\r\n\r\n }\r\n\r\n\r\n showStopStation(item: any, flightN: number) {\r\n let stopArr: [] = [];\r\n let ar: [] = item.allJourney.flights[flightN][\"flightDTO\"];\r\n let m: number = ar.length;\r\n let i: number = 0;\r\n for (i; i < m; i++) {\r\n stopArr.push(ar[i]);\r\n }\r\n return stopArr;\r\n\r\n\r\n }\r\n\r\n fillSequenceArr() {\r\n\r\n for (let i = 0; i < this.response.airItineraries.length; i++) {\r\n this.sequenceNumber.push(this.response.airItineraries[i].sequenceNum);\r\n\r\n }\r\n\r\n }\r\n\r\n // route to check out\r\n toCheckout(sid: string, sequenceNum: number, providerKey: string |number,pcc:string) {\r\n this.store.dispatch(resetSelectedFlight()); \r\n this.router.navigate(['/checkout',this.translate.currentLang], { queryParams: { 'sid': sid+'_'+pcc, 'sequenceNum': sequenceNum, 'providerKey': providerKey } });\r\n }\r\n\r\n // fareRulesbtn\r\n valuesoftrue(array: any[]) {\r\n let out: any[] = [];\r\n let arryalengty = array.length;\r\n for (let index = 0; index < arryalengty; index++) {\r\n let truth: boolean = true;\r\n out.push(truth);\r\n\r\n }\r\n return out;\r\n }\r\n\r\n}\r\n","import { Injectable, EventEmitter, Output, Input } from '@angular/core';\r\nimport { HotelsCitiesModule } from 'src/app/models/hotels-cities/hotels-cities.module';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class HotelnameService {\r\n @Input('isflight') Isflight: boolean = true;\r\n dubai:any;\r\n paris:any;\r\n pavaria:any;\r\n cairo:any;\r\n kuwait:any;\r\n marakesh:any\r\n hcity:EventEmitter = new EventEmitter();\r\n city:EventEmitter = new EventEmitter();\r\n hotelRooms:any[]\r\n \r\n\r\n constructor() { }\r\n\r\n cityName(){\r\n if(this.Isflight){\r\n this.dubai = 'Dubai-Dubai International Airport-DXB';\r\n this.paris=\"Paris-Charles de Gaulle International Airport-CDG\";\r\n // this.pavaria=\"BAVARIA\";\r\n this.pavaria=\"Hamburg-Hamburg Airport-HAM\";\r\n this.cairo=\"Cairo-Cairo International Airport-CAI\";\r\n this.kuwait=\"Kuwait-Kuwait International Airport-KWI\";\r\n // this.marakesh=\"MARRAKECH\";\r\n this.marakesh=\"Casablanca-Mohammed V International Airport-CMN\";\r\n }\r\n else{\r\n this.dubai={\r\n CityId: 6125,\r\n City: 'DUBAI',\r\n Country: 'UNITED ARAB EMIRATES',\r\n CityWithCountry: 'DUBAI,UNITED ARAB EMIRATES'\r\n };\r\n this.paris={\r\n CityId: 18745,\r\n City: 'PARIS',\r\n Country: 'FRANCE',\r\n CityWithCountry: 'PARIS,FRANCE'\r\n };\r\n// this.pavaria=\r\n// {\r\n// CityId: 1150,\r\n// City: 'BAVARIA',\r\n// Country: 'GERMANY',\r\n// CityWithCountry: 'BAVARIA,GERMANY' };\r\nthis.pavaria=\r\n{\r\n \"CityId\": 10131,\r\n \"City\": \"HAMBURG\",\r\n \"Country\": \"GERMANY\",\r\n \"CityWithCountry\": \"HAMBURG,GERMANY\"\r\n };\r\n this.cairo= {\r\n \"CityId\": 2865,\r\n \"City\": \"CAIRO\",\r\n \"Country\": \"EGYPT\",\r\n \"CityWithCountry\": \"CAIRO,EGYPT\"\r\n};\r\n this.kuwait= {\r\n \"CityId\": 13006,\r\n \"City\": \"KUWAIT\",\r\n \"Country\": \"KUWAIT\",\r\n \"CityWithCountry\": \"KUWAIT,KUWAIT\"\r\n};\r\n// this.marakesh= {\r\n// \"CityId\": 15396,\r\n// \"City\": \"MARRAKECH\",\r\n// \"Country\": \"MOROCCO\",\r\n// \"CityWithCountry\": \"MARRAKECH,MOROCCO\"\r\n// };\r\nthis.marakesh= {\r\n \"CityId\": 3486,\r\n \"City\": \"CASABLANCA\",\r\n \"Country\": \"MOROCCO\",\r\n \"CityWithCountry\": \"CASABLANCA,MOROCCO\"\r\n};\r\n\r\n }\r\n }\r\n\r\n cityPick (cityName){\r\n console.log(cityName);\r\n if(this.Isflight)\r\n {\r\n this.city.emit(cityName);\r\n }\r\n else\r\n {\r\n this.hcity.emit(cityName);\r\n }\r\n\r\n }\r\n\r\n}\r\n","import { environment } from '@src/environments/environment';\r\nimport { MyapiService } from 'src/app/services/myapi.service';\r\nimport { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport * as appUtilities from '../app-utilities/app-utilities.actions';\r\nimport * as appSetting from '../app-setting/app-setting.actions';\r\nimport { catchError, map, mergeMap, switchMap, tap } from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport { TopCityFlight } from '@src/app/interface/Home-content';\r\nimport { type } from 'os';\r\nimport { Store } from '@ngrx/store';\r\n\r\n\r\n@Injectable()\r\nexport class AppUtilitiesEffects {\r\n constructor(\r\n private actions$ : Actions,\r\n private apiService : MyapiService,\r\n private readonly store : Store) {}\r\n\r\n loadAirports$ = createEffect(()=>this.actions$.pipe(ofType(appUtilities.loadUtilitysAirports),mergeMap(\r\n (lang) => this.apiService.UtilityAirports(lang.lang).pipe(\r\n map(v=>{\r\n return appUtilities.loadUtilitysAirportsSuccess({airports:v})\r\n }),\r\n catchError(err => {\r\n return of(appUtilities.loadUtilitysAirportsFailure({error:err}))\r\n })\r\n )\r\n ))\r\n )\r\n\r\n loadCurrency$ = createEffect(()=>this.actions$.pipe(ofType(appUtilities.loadUtilitysCurrency),mergeMap(\r\n () => this.apiService.currencyApi(environment.baseCurrency).pipe(\r\n map(v=>{\r\n \r\n return appUtilities.loadUtilitysCurrencySuccess({Currency:v})\r\n }),\r\n catchError(err => {\r\n return of(appUtilities.loadUtilitysCurrencyFailure({error:err}))\r\n })\r\n )\r\n ))\r\n )\r\n\r\n loadPOS$ = createEffect(()=>this.actions$.pipe(ofType(appUtilities.loadUtilitysPOS),mergeMap(\r\n () => this.apiService.pointOfSale().pipe(\r\n \r\n switchMap(v=>[\r\n appSetting.updateAppPOS({POS:v}),\r\n appUtilities.loadUtilitysPOSSuccess({POS:v})\r\n ]),\r\n catchError(err => {\r\n return of(appUtilities.loadUtilitysPOSFailure({error:err}))\r\n })\r\n )\r\n ))\r\n )\r\n\r\n loadCountries$ =createEffect(()=>this.actions$.pipe(ofType(appUtilities.loadUtilitysCountries),mergeMap(\r\n (lang) => this.apiService.countrycode(lang.lang).pipe(\r\n map(v=>{\r\n return appUtilities.loadUtilitysCountriesSuccess({countries:v})\r\n }),\r\n catchError(err => {\r\n return of(appUtilities.loadUtilitysCountriesFailure({error:err}))\r\n })\r\n )\r\n ))\r\n )\r\n \r\n loadCites$ =createEffect(()=>this.actions$.pipe(ofType(appUtilities.loadUtilitysCities),mergeMap(\r\n () => this.apiService.getHotelsCities().pipe(\r\n map(v=>{\r\n return appUtilities.loadUtilitysCitiesSuccess({cities:v.ci})\r\n }),\r\n catchError(err => {\r\n return of(appUtilities.loadUtilitysCitiesFailure({error:err}))\r\n })\r\n )\r\n ))\r\n )\r\n \r\n loadTopCities$ =createEffect(()=>this.actions$.pipe(ofType(appUtilities.loadFlightTopCities),mergeMap(\r\n () => this.apiService.GetTOPDist().pipe(\r\n map(v=>{\r\n let TopDest = v.filter(c=> !c.tripIdeas);\r\n let tripIdeas = v.filter(c=>c.tripIdeas);\r\n if(tripIdeas){\r\n this.store.dispatch(appUtilities.loadFlightTripIdeas({Tcities:tripIdeas}));\r\n }\r\n if(TopDest){\r\n console.log(TopDest,GroupbyFour(TopDest),'sdfgsdf');\r\n return appUtilities.loadFlightTopCitiesSuccess({Tcities:GroupbyFour(TopDest)});\r\n }else{\r\n return appUtilities.loadFlightTopCitiesFailure({error:'No top Disr available'});\r\n }\r\n }),\r\n catchError(err => {\r\n return of(appUtilities.loadUtilitysCitiesFailure({error:err}));\r\n })\r\n )\r\n ))\r\n )\r\n\r\n}\r\n\r\ntype GroupyFour = (FTC:TopCityFlight[])=> TopCityFlight[][];\r\nexport const GroupbyFour:GroupyFour = function(v:TopCityFlight[]):TopCityFlight[][]\r\n{\r\n let gruped:TopCityFlight[][] = [];\r\n let pointer:number =0\r\n for (let index = 0; index < v.length; index++) {\r\n if((index + 1) % 4 === 0 && (index + 1) != v.length){\r\n console.log(index,'ii');\r\n \r\n let sub = v.slice(pointer,index + 1);\r\n pointer = index +1\r\n \r\n gruped.push(sub)\r\n\r\n }else if((index + 1) === v.length) {\r\n let sub = v.slice(pointer);\r\n console.log(index,'iii');\r\n gruped.push(sub)\r\n }\r\n \r\n }\r\n return gruped;\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { CountriescodeModule } from '../models/countriescode/countriescode.module';\r\n\r\n@Pipe({\r\n name: 'councode'\r\n})\r\nexport class CouncodePipe implements PipeTransform {\r\n transform(value: CountriescodeModule[], args: string): CountriescodeModule[] {\r\n if (!value || !args) {\r\n return [];\r\n }\r\n else {\r\n if(args.length< 0){\r\n return [];\r\n }\r\n let result: CountriescodeModule[] = []\r\n for (let index = 0; index < value.length; index++) {\r\n let element: CountriescodeModule = value[index];\r\n let a = element.countryName.toLowerCase();\r\n \r\n if (a.indexOf(args.toLowerCase()) != -1 ) {\r\n result.push(element);\r\n }\r\n\r\n }\r\n return result;\r\n }\r\n }\r\n\r\n}\r\n","import {\r\n ActionReducer,\r\n ActionReducerMap,\r\n createFeatureSelector,\r\n createSelector,\r\n MetaReducer\r\n} from '@ngrx/store';\r\nimport { environment } from '../../environments/environment';\r\n\r\nexport const stateFeatureKey = 'state';\r\n\r\nexport interface State {\r\n\r\n}\r\n\r\nexport const reducers: ActionReducerMap = {\r\n\r\n};\r\n\r\n\r\nexport const metaReducers: MetaReducer[] = !environment.production ? [] : [];\r\n","import { parseMetadata } from '@angular/localize/src/utils';\r\nimport { Action, createReducer, on } from '@ngrx/store';\r\nimport { AuthUser, User } from '@src/app/models/user/user';\r\nimport * as user from '../user/user.actions';\r\n\r\n\r\nexport const userFeatureKey = 'user';\r\n\r\nexport interface State {\r\n loading : boolean,\r\n error : any,\r\n user : User\r\n appUser : AuthUser\r\n}\r\n \r\nexport const initialState: State = {\r\n loading : false,\r\n error: undefined,\r\n user:{\r\n userName:'',\r\n userEmail:'',\r\n userPhoneNumber:'',\r\n flightHistory:undefined,\r\n hotelHistory:undefined,\r\n token:undefined,\r\n id:undefined\r\n },\r\n appUser:undefined\r\n};\r\n\r\n\r\nexport const reducer = createReducer(\r\n initialState,\r\n on(user.loadUser , (state) => ({...state , loading : true})),\r\n on(user.loadUserSucces , (state , param) => ({...state , loading : false , user:param.data})),\r\n on(user.loadUserFailure , (state , err) => ({...state , loading:false , error: err.error})),\r\n on(user.updateUserData , (state) => ({...state , loading:true})),\r\n on(user.UpdateUserDataSucces , (state , param)=> ({...state , loading: false , user:param.data})),\r\n on(user.UpdateUserDataFailure ,(state , err) => ({...state , loading : false , error:err.error})),\r\n on(user.addUserFlight , (state) => ({...state , loading : true})),\r\n on(user.addUserFlightSuccess , (state , param) => ({...state , loading:false , user:{...state.user, flightHistory:[...state.user.flightHistory , {...param.flight}]}})),\r\n on(user.addUserFlightFailure , (state , err) => ({...state , loading : false , error:err.error})),\r\n on(user.deleteUserFlight , (state)=> ({...state , loading:true})),\r\n on(user.deleteUserFlightSuccess , (state , params)=> ({...state , loading : false , user:{...state.user , flightHistory:[...state.user.flightHistory.filter(id => id.sequenceNum != params.sequenceNumber && id.pKey != params.providerNum)]}})),\r\n on(user.deleteUserFlightFailure , (state , err) => ({...state , loading : false , error:err.error})),\r\n\r\n on(user.addUserHotel , (state) => ({...state , loading : true})),\r\n on(user.addUserHotelSuccess , (state , param) => ({...state , loading:false , user:{...state.user, hotelHistory:[...state.user.hotelHistory , {...param.hotel}]}})),\r\n on(user.addUserHotelFailure , (state , err) => ({...state , loading : false , error:err.error})),\r\n on(user.deleteUserHotel , (state)=> ({...state , loading:true})),\r\n on(user.deleteUserHotelSuccess , (state , params)=> ({...state , loading : false , user:{...state.user , hotelHistory:[...state.user.hotelHistory.filter(id => id.hotel.hotelCode != params.hotelCode)]}})),\r\n on(user.deleteUserHotelFailure , (state , err) => ({...state , loading : false , error:err.error})),\r\n \r\n on(user.ResetUserState , (state)=> ({...initialState})),\r\n on(user.loadAuthUser , (state) => ({...state , loading : true})),\r\n on(user.loadAuthUserSuccess , (state , param) => ({...state , loading : false , appUser:param.user})),\r\n on(user.loadAuthUserFailure , (state , param) => ({...state , loading : false , error:param.error})),\r\n);\r\n\r\nexport function UserReducer(\r\n state: State | undefined,\r\n action: Action) {\r\n return reducer(state, action);\r\n}\r\n","import {\r\n ActionReducer,\r\n ActionReducerMap,\r\n createFeatureSelector,\r\n createSelector,\r\n MetaReducer\r\n } from '@ngrx/store';\r\n import { environment } from '../../environments/environment';\r\n\r\n import * as flights from './flight-search/flight-search.reducer';\r\n import * as hotels from './hotel-search/hotel-search.reducer';\r\n import * as utilities from './app-utilities/app-utilities.reducer';\r\n import * as settings from './app-setting/app-setting.reducer';\r\n import * as user from './user/user.reducer';\r\n import * as offers from './app-offers/offers.reducer';\r\nimport { state } from '@angular/animations';\r\n\r\n export interface State {\r\n flight : flights.State,\r\n utilities : utilities.State,\r\n settings : settings.State,\r\n user : user.State\r\n hotel : hotels.State\r\n offers : offers.State\r\n }\r\n\r\n export const reducers: ActionReducerMap = {\r\n flight :flights.FlightReducer,\r\n utilities :utilities.UtilitiesReducer,\r\n settings :settings.AppSettingReducer,\r\n user :user.UserReducer,\r\n hotel :hotels.HotelReducer,\r\n offers :offers.OffersReducer\r\n }\r\n\r\n export const flightFeatureKey = 'flight';\r\n export const utilityFeatureKey = 'utilities';\r\n export const settingFeatureKey = 'settings';\r\n export const userFeatureKey = 'user';\r\n export const hotelFeatureKey = 'hotel';\r\n export const offersFeatureKey = 'offers';\r\n\r\n export const selectFlightFeature = createFeatureSelector(flightFeatureKey);\r\n export const selectUtilitiesFeature = createFeatureSelector(utilityFeatureKey);\r\n export const selectSettingsFeature = createFeatureSelector(settingFeatureKey);\r\n export const selectUserFeature = createFeatureSelector(userFeatureKey);\r\n export const selectHotelFeature = createFeatureSelector(hotelFeatureKey);\r\n export const selectOffersFeature = createFeatureSelector(offersFeatureKey);\r\n\r\n\r\n //-------------> User Selectors\r\n export const selectUserlLoader = createSelector(\r\n selectUserFeature,\r\n (state : user.State) => state.loading\r\n );\r\n\r\n export const selectAppUser= createSelector(\r\n selectUserFeature,\r\n (state : user.State) => state.appUser\r\n);\r\n\r\n //-------------> Offers Search Selectors\r\n\r\n export const selectOfferslLoader = createSelector(\r\n selectOffersFeature,\r\n (state : offers.State) => state.loading\r\n);\r\nexport const paymentview = createSelector(\r\n //selected flight\r\n selectFlightFeature,\r\n \r\n (state:flights.State) => state.link\r\n);\r\nexport const selectTopDestination = createSelector(\r\n selectUtilitiesFeature,\r\n (state:utilities.State)=>state.FTcities\r\n);\r\n\r\nexport const selectTripIdeas = createSelector(\r\n selectUtilitiesFeature,\r\n (state:utilities.State)=>state.FTIdeas\r\n);\r\nexport const selectAllOffers = createSelector(\r\n selectOffersFeature,\r\n (state : offers.State) => state.offers\r\n);\r\n\r\nexport const selectServicesImages = createSelector(\r\n selectOffersFeature,\r\n (state : offers.State) => state.servicesImages\r\n);\r\n\r\nexport const selectSelectedOffer = createSelector(\r\n selectOffersFeature,\r\n (state : offers.State) => state.selecyedOffer\r\n);\r\n\r\nexport const selectOfflineItinerary = createSelector(\r\n selectOffersFeature,\r\n (state : offers.State) => state.offlineItinerary\r\n);\r\n\r\n\r\n //-------------> Hotels Search Selectors\r\n\r\n export const selectHotelLoader = createSelector(\r\n selectHotelFeature,\r\n (state : hotels.State) => state.loader\r\n);\r\n\r\nexport const selectAllHotels = createSelector(\r\n selectHotelFeature,\r\n (state:hotels.State) => state.searchResult\r\n );\r\n\r\n export const selectFilteredHotels = createSelector(\r\n selectHotelFeature,\r\n (state:hotels.State) => state.filtredHotels\r\n );\r\n\r\n export const selectSelectedRooms = createSelector(\r\n selectHotelFeature,\r\n (state:hotels.State) => state.selectedRooms\r\n );\r\n\r\n export const selectTotalPrice = createSelector(\r\n selectHotelFeature,\r\n (state:hotels.State) => state.totalPrice\r\n );\r\n export const selectRequiredHotel = createSelector(\r\n selectHotelFeature,\r\n (state:hotels.State) => state.requiredHotel\r\n );\r\n\r\n export const selectHotelSearchCriteria = createSelector(\r\n selectHotelFeature,\r\n (state:hotels.State) => state.searchCriteria\r\n );\r\n\r\n export const selectCancellationPolicy = createSelector(\r\n selectHotelFeature,\r\n (state:hotels.State) => state.cancellationPolicy\r\n );\r\n\r\n export const selectHotelRooms = createSelector(\r\n selectHotelFeature,\r\n (state:hotels.State) => state.hotelRooms\r\n );\r\n\r\n export const selectHotelAmenties = createSelector(\r\n selectHotelFeature,\r\n (state:hotels.State) => state.hotelAmenties\r\n );\r\n\r\n export const selectRoomImages = createSelector(\r\n selectHotelFeature,\r\n (state:hotels.State) => state.roomImages\r\n );\r\n\r\n\r\n //-------------> Flights Search Selectors\r\n\r\n export const selectFlightLoader = createSelector(\r\n selectFlightFeature,\r\n (state : flights.State) => state.loader\r\n );\r\n\r\n export const selectFlightError = createSelector(\r\n selectFlightFeature,\r\n (state : flights.State) => state.error\r\n);\r\n\r\n export const selectAllFlights = createSelector(\r\n selectFlightFeature,\r\n (state:flights.State) => state.flights\r\n );\r\n\r\n export const selectFilteredFlights = createSelector(\r\n selectFlightFeature,\r\n (state:flights.State) => state.filterdFlights\r\n );\r\n export const selectFilteredSelectedFlights = createSelector(\r\n selectFlightFeature,\r\n (state:flights.State) => state.filterSelectedFlight\r\n );\r\n export const selectFlightType = createSelector(\r\n selectFlightFeature,\r\n (state:flights.State) => state.flightType\r\n );\r\n\r\n export const selectFlightSearchCretaria = createSelector(\r\n selectFlightFeature,\r\n (state:flights.State) => state.searchCretaria\r\n );\r\n \r\n export const selectedFlight = createSelector(\r\n //selected flight\r\n selectFlightFeature,\r\n \r\n (state:flights.State) => state.selectedFlight\r\n );\r\n\r\n export const offlineServicesLoader = createSelector(\r\n //selected flight\r\n selectFlightFeature,\r\n \r\n (state:flights.State) => state.offlineServicesLoader\r\n );\r\n\r\n export const selectedFlightTotalAmount = createSelector(\r\n //selected flight\r\n selectFlightFeature,\r\n \r\n (state:flights.State) => state.selectedFlightTotalAmount\r\n );\r\n export const selectPickySelection = createSelector(\r\n //fare rule selector\r\n selectFlightFeature,\r\n (state:flights.State) => state.pickySelection\r\n );\r\n \r\n export const fareRules = createSelector(\r\n //fare rule selector\r\n selectFlightFeature,\r\n (state:flights.State) => state.fareRules\r\n );\r\n \r\n export const offlineServices = createSelector(\r\n //offline service selector\r\n selectFlightFeature,\r\n (state:flights.State) => state.offlineServices)\r\n //-------------> App Utilities Selectors\r\n\r\n export const selectAllAirports = createSelector(\r\n selectUtilitiesFeature,\r\n (state:utilities.State) => state.airports\r\n );\r\n\r\n export const selectAllCurrency = createSelector(\r\n selectUtilitiesFeature,\r\n (state:utilities.State) => state.currency\r\n ); \r\n\r\n export const selectAllPOS = createSelector(\r\n selectUtilitiesFeature,\r\n (state:utilities.State) => state.pos\r\n );\r\n \r\n export const selectCountries = createSelector(\r\n selectUtilitiesFeature,\r\n (state:utilities.State) => state.countryies\r\n );\r\n\r\n export const selectAllcities = createSelector(\r\n selectUtilitiesFeature,\r\n (state:utilities.State) => state.cities\r\n );\r\n \r\n\r\n //-------------> App Settings Selectors\r\n export const selectAppCurrency = createSelector(\r\n selectSettingsFeature,\r\n (state:settings.State) => state.currency\r\n );\r\n\r\n export const selectAppPOS = createSelector(\r\n selectSettingsFeature,\r\n (state:settings.State) => state.pos\r\n );\r\n\r\n export const selectAppLang = createSelector(\r\n selectSettingsFeature,\r\n (state:settings.State) => state.currentLang\r\n );\r\n\r\n //-------------> user data Selectors.\r\n\r\n export const selectUserLoader = createSelector(\r\n selectUserFeature,\r\n (state:user.State) => state.loading\r\n );\r\n\r\n export const selectUserData = createSelector(\r\n selectUserFeature,\r\n (state:user.State) => state.user\r\n );\r\n\r\n\r\n export const metaReducers: MetaReducer[] = !environment.production ? [] : [];\r\n ","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'durationToHourMin'\r\n})\r\nexport class DurationToHourMinPipe implements PipeTransform {\r\n\r\n transform(value: string): any {\r\n let duration = value.split(':');\r\n let hours = +duration[0] ;\r\n let minutes = +duration[1];\r\n return hours + 'h ' + minutes + 'm';\r\n }\r\n\r\n}\r\n","import { HotelnameService } from 'src/app/services/hotelname.service';\r\nimport { FlightSearchEffects } from './store/flight-search/flight-search.effects';\r\nimport { reducers, metaReducers } from './store/selectors';\r\nimport { Injectable, LOCALE_ID, NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { AppRoutingModule } from '@src/app/app-routing.module';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport { CommonModule, registerLocaleData } from '@angular/common';\r\n\r\nimport { AppComponent } from '@src/app/app.component';\r\n\r\nimport { StoreModule } from '@ngrx/store';\r\nimport { StoreDevtoolsModule } from '@ngrx/store-devtools';\r\nimport { environment } from '../environments/environment';\r\nimport { EffectsModule } from '@ngrx/effects';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport{ServiceWorkerModule, SwRegistrationOptions} from '@angular/service-worker';\r\nimport { HttpClient, HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { SharedModule } from './shared.module';\r\nimport * as fromState from './store';\r\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\r\nimport { MatListModule } from '@angular/material/list'\r\nimport {TranslateHttpLoader} from '@ngx-translate/http-loader';\r\nimport { HammerModule, HammerGestureConfig, HAMMER_GESTURE_CONFIG } from '@angular/platform-browser';\r\nimport * as Hammer from 'hammerjs';\r\nimport { AppUtilitiesEffects } from './store/app-utilities/app-utilities.effects';\r\nimport { AppSettingEffects } from './store/app-setting/app-setting.effects';\r\nimport { HotelSearchEffects } from './store/hotel-search/hotel-search.effects';\r\nimport { UserEffects } from './store/user/user.effects';\r\nimport { OffersEffects } from './store/app-offers/offers.effects';\r\n\r\n\r\nimport * as fromFlights from './store/flight-search/flight-search.reducer';\r\nimport * as fromHotels from './store/hotel-search/hotel-search.reducer';\r\nimport * as fromUtilities from './store/app-utilities/app-utilities.reducer';\r\nimport * as fromSettings from './store/app-setting/app-setting.reducer';\r\nimport * as fromUser from './store/user/user.reducer';\r\nimport * as fromOffers from './store/app-offers/offers.reducer';\r\n\r\nimport { AuthInterceptorService } from './interseptor/auth-interceptor.service';\r\nimport { FlightServiceService } from './services/flight-service.service';\r\n\r\nimport{SocialAuthServiceConfig,SocialAuthService, GoogleLoginProvider, SocialLoginModule} from 'angularx-social-login';\r\nimport{FacebookLoginProvider, SocialUser} from 'angularx-social-login';\r\nimport { GoogleTagManagerModule } from 'angular-google-tag-manager';\r\nimport { DatepickerI18nService } from './services/datepicker-i18n.service';\r\nimport { NgbDatepickerI18n } from '@ng-bootstrap/ng-bootstrap';\r\nimport arSaLocale from '@angular/common/locales/ar-SA'\r\nregisterLocaleData(arSaLocale)\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class HammerConfig extends HammerGestureConfig {\r\n overrides = {\r\n swipe: { direction: Hammer.DIRECTION_ALL },\r\n };\r\n}\r\n\r\nconst googleLoginOptions = {\r\n scope: 'profile email',\r\n plugin_name:'login' //you can use any name here\r\n};\r\nexport function createTranslateLoader(http: HttpClient) {\r\n return new TranslateHttpLoader(http, './assets/i18n/', '.json');\r\n}\r\n@NgModule({\r\n declarations: [\r\n AppComponent\r\n\r\n ],\r\n imports: [\r\n BrowserModule.withServerTransition({ appId: 'serverApp' }),\r\n BrowserAnimationsModule,\r\n HttpClientModule,\r\n AppRoutingModule,\r\n CommonModule,\r\n SocialLoginModule,\r\n MatListModule,\r\n \r\n FontAwesomeModule,\r\n TranslateModule.forRoot({\r\n defaultLanguage: 'ar',\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: createTranslateLoader,\r\n deps: [HttpClient]\r\n },\r\n \r\n }),\r\n GoogleTagManagerModule.forRoot({\r\n id: 'GTM-PD27GN8',\r\n }),\r\n ServiceWorkerModule.register('src/ngsw-worker.js'),\r\n \r\n MatIconModule,\r\n StoreModule.forRoot(reducers, {\r\n metaReducers, \r\n runtimeChecks: {\r\n strictStateImmutability: true,\r\n strictActionImmutability: true,\r\n }\r\n }),\r\n StoreDevtoolsModule.instrument({ maxAge: 25, logOnly: environment.production }),\r\n StoreModule.forFeature(fromFlights.flightSearchFeatureKey, fromFlights.reducer),\r\n StoreModule.forFeature(fromUtilities.appUtilitiesFeatureKey, fromUtilities.reducer),\r\n StoreModule.forFeature(fromSettings.appSettingFeatureKey, fromSettings.reducer),\r\n StoreModule.forFeature(fromUser.userFeatureKey, fromUser.reducer),\r\n StoreModule.forFeature(fromOffers.appOffersFeatureKey, fromOffers.reducer),\r\n HammerModule,\r\n\r\n SharedModule,\r\n StoreModule.forFeature(fromState.stateFeatureKey, fromState.reducers, { metaReducers: fromState.metaReducers }),\r\n ServiceWorkerModule.register('ngsw-worker.js', { enabled: environment.production }),\r\n EffectsModule.forRoot([AppUtilitiesEffects, OffersEffects,AppSettingEffects, HotelSearchEffects, UserEffects,FlightSearchEffects])\r\n ],\r\n \r\n providers: [\r\n // {\r\n // provide: NgbDatepickerI18n,\r\n // useClass: DatepickerI18nService,\r\n // deps: [TranslateService], // Include the TranslateService dependency\r\n // },\r\n FlightServiceService,\r\n {\r\n provide: SwRegistrationOptions,\r\n useFactory: () => ({ enabled: environment.production }),\r\n \r\n }, {\r\n \r\n provide: HAMMER_GESTURE_CONFIG,\r\n useClass: HammerConfig\r\n },HotelnameService , {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: AuthInterceptorService,\r\n multi: true\r\n },\r\n{\r\n provide:'SocialAuthServiceConfig',\r\n useValue:{\r\n autoLogin:false,\r\n providers:[\r\n {\r\n id:FacebookLoginProvider.PROVIDER_ID,\r\n provider:new FacebookLoginProvider(\"3481677202157637\")\r\n },\r\n {\r\n id:GoogleLoginProvider.PROVIDER_ID,\r\n provider: new GoogleLoginProvider('829934546921-lghc6mhmb5jod382m6nkh82hbiuong5j.apps.googleusercontent.com', googleLoginOptions)\r\n },\r\n \r\n // {provide: 'googleTagManagerId', useValue:'GTM-PD27GN8'}\r\n ],\r\n onError:(err) =>{console.log(err)},\r\n } as SocialAuthServiceConfig\r\n},SocialAuthService,\r\n\r\n\r\n\r\n\r\n],\r\n bootstrap: [AppComponent],\r\n exports:[ \r\n // SearchflightComponent,\r\n // HeaderComponent,\r\n // FooterComponent\r\n ]\r\n})\r\nexport class AppModule { }\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, Validators, FormGroup, FormBuilder } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { faAngleRight, faEnvelope, faHome, faInfoCircle } from '@fortawesome/free-solid-svg-icons';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { GoogleTagManagerService } from 'angular-google-tag-manager';\r\n\r\n@Component({\r\n selector: 'app-contact',\r\n templateUrl: './contact.component.html',\r\n styleUrls: ['./contact.component.scss']\r\n})\r\nexport class ContactComponent implements OnInit {\r\n sendmessage: FormGroup;\r\n submitted = false;\r\n faHome = faHome;\r\n faAngleRight = faAngleRight;\r\n faInfoCircle = faInfoCircle\r\n faEnvelope = faEnvelope\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n public translate : TranslateService,\r\n private gtmService: GoogleTagManagerService,\r\n private router: Router,) { \r\n const gtmTag = {\r\n event: 'Page View',\r\n pageName: 'Contact Us',\r\n language: this.translate.currentLang, \r\n url:this.router.url\r\n };\r\n this.gtmService.pushTag(gtmTag);\r\n } \r\n\r\n ngOnInit() {\r\n this.sendmessage = this.formBuilder.group({\r\n FirstName: ['', Validators.required],\r\n LastName: ['', Validators.required],\r\n Phone: ['', Validators.required],\r\n email: ['', [Validators.required, Validators.email]],\r\n message: ['', Validators.required]\r\n\r\n });\r\n }\r\n get f() { return this.sendmessage.controls; }\r\n\r\n\r\n onSubmit() {\r\n this.submitted = true;\r\n\r\n // stop here if form is invalid\r\n if (this.sendmessage.invalid) {\r\n return;\r\n }\r\n\r\n // display form values on success\r\n // alert('SUCCESS!! :-)\\n\\n' + JSON.stringify(this.sendmessage.value, null, 4));\r\n this.sendmessage.reset()\r\n }\r\n\r\n onReset() {\r\n this.submitted = false;\r\n this.sendmessage.reset();\r\n }\r\n\r\n}","\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n

{{\"contact.contactUs2\" | translate }}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'contact.contactInfo' | translate}}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{'contact.phoneNumber' | translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{'footer.whatsApp' | translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'contact.send' | translate}}

\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{\"contact.err1\" | translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{\"contact.err1\" | translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{\"contact.err2\" | translate}}\r\n
\r\n
\r\n {{\"contact.err3\" | translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{\"contact.err4\" | translate}}\r\n
\r\n
\r\n {{\"contact.err4\" | translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {{\"contact.err5\" | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n","import { MatSnackBarModule } from '@angular/material/snack-bar';\r\nimport { NgModule, Directive,OnInit, EventEmitter, Output, OnDestroy, Input,ElementRef } from '@angular/core';\r\nimport { CommonModule, } from '@angular/common';\r\nimport { HeaderComponent } from './header/header.component';\r\nimport { FooterComponent } from './footer/footer.component';\r\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { SearchflightComponent } from './searchflight/searchflight.component';\r\nimport {MatRadioModule} from '@angular/material/radio';\r\n// import { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport{TranslateHttpLoader} from '@ngx-translate/http-loader'\r\nimport { TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport{FilterCityPipe} from './pipes/filter-city.pipe';\r\nimport { LimitToPipe } from './pipes/limit-to.pipe';\r\nimport { HighlighterPipe } from './pipes/highlighter.pipe';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatNativeDateModule, MatRippleModule } from '@angular/material/core';\r\nimport {BidiModule} from '@angular/cdk/bidi';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { OfflineFilterPipe } from './pipes/offline-filter.pipe';\r\nimport { CouncodePipe } from './pipes/councode.pipe';\r\nimport { DurationToHourMinPipe } from './pipes/duration-to-hour-min.pipe';\r\nimport { HourMinutePipe } from './pipes/hour-minute.pipe';\r\nimport { ExchangePipe } from './pipes/exchange.pipe';\r\nimport { AboutUsComponent } from './about-us/about-us.component';\r\nimport { ContactComponent } from './contact/contact.component';\r\nimport {MatExpansionModule} from '@angular/material/expansion';\r\nimport { LazyLoadImageModule, LAZYLOAD_IMAGE_HOOKS, ScrollHooks } from 'ng-lazyload-image';\r\nimport {NgbCollapseModule, NgbDatepicker, NgbDatepickerI18n, NgbDatepickerModule} from '@ng-bootstrap/ng-bootstrap';\r\nimport {MatMenuModule} from '@angular/material/menu';\r\nimport {MatDialogModule} from '@angular/material/dialog';\r\nimport {MatPaginatorIntl, MatPaginatorModule} from '@angular/material/paginator';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatStepperModule } from '@angular/material/stepper';\r\nimport { NgxIntlTelInputModule } from 'ngx-intl-tel-input';\r\n// import { HotelecitesPipe } from './pipes/hotelecites.pipe';\r\nimport { NgxSliderModule } from '@angular-slider/ngx-slider';\r\nimport {MatAutocompleteModule} from '@angular/material/autocomplete';\r\nimport {MatCardModule} from '@angular/material/card';\r\nimport { RoundTripComponent } from '../app/flight/round-trip/round-trip.component';\r\nimport { FlightComponent } from './flight/flight.component';\r\nimport { SegComponent } from './flight/seg/seg.component';\r\nimport { OneWayComponent } from './flight/one-way/one-way.component';\r\nimport { MultiTripComponent } from './flight/multi-trip/multi-trip.component';\r\nimport {MatListModule} from '@angular/material/list';\r\nimport { MatTooltipModule} from '@angular/material/tooltip';\r\nimport { VirtualScrollerModule } from 'ngx-virtual-scroller';\r\nimport { VirtualScrollModule } from 'ngx-virtual-scroll-plus';\r\nimport { RouterModule } from '@angular/router';\r\nimport {MatSidenavModule} from '@angular/material/sidenav';\r\nimport {MatTabsModule} from '@angular/material/tabs';\r\nimport {MatProgressBarModule} from '@angular/material/progress-bar';\r\nimport {MatCheckboxModule} from '@angular/material/checkbox';\r\nimport { UserLoginComponent } from './users/user-login/user-login.component';\r\nimport { UserSignupComponent } from './users/user-signup/user-signup.component';\r\nimport { ForgetPasswordComponent } from './users/forget-password/forget-password.component';\r\nimport {MatProgressSpinnerModule} from '@angular/material/progress-spinner';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NavlistComponent } from './navlist/navlist.component';\r\nimport { ChangePasswordComponent } from './users/change-password/change-password.component';\r\nimport { DatepickerI18nService } from './services/datepicker-i18n.service';\r\nimport { ConfirmPaymentComponent } from './checkout/confirm-payment/confirm-payment.component';\r\nimport { HotelsearchComponent } from './hotelsearch/hotelsearch.component';\r\nimport { HotelecitesPipe } from './pipes/hotelecites.pipe';\r\n\r\n\r\n\r\nexport function rootloaderFactory(http:HttpClient){\r\n return new TranslateHttpLoader (http,'./assets/i18n/', '.json')\r\n}\r\n@NgModule({\r\n imports: [ FontAwesomeModule,HttpClientModule,CommonModule,\r\n MatFormFieldModule,\r\n MatSelectModule,\r\n ReactiveFormsModule,\r\n MatTooltipModule,\r\n MatInputModule,\r\n MatButtonModule,\r\n MatRippleModule,\r\n BidiModule,\r\n NgbModule,\r\n MatRadioModule,\r\n MatExpansionModule,\r\n MatAutocompleteModule,\r\n MatDialogModule,\r\n MatNativeDateModule,\r\n NgxSliderModule,\r\n MatSnackBarModule,\r\n TranslateModule, \r\n MatFormFieldModule,\r\n FormsModule,\r\n MatListModule,\r\n MatStepperModule,\r\n MatCardModule,\r\n MatDatepickerModule,\r\n MatPaginatorModule,\r\n NgbCollapseModule,\r\n MatMenuModule,\r\n VirtualScrollerModule,\r\n VirtualScrollModule,\r\n RouterModule,\r\n MatSidenavModule,\r\n MatProgressBarModule,\r\n MatTabsModule,\r\n MatCheckboxModule,\r\n MatProgressSpinnerModule,\r\n \r\n \r\n ],\r\n declarations: [\r\n HeaderComponent,\r\n NavlistComponent,\r\n FooterComponent,\r\n FilterCityPipe,\r\n LimitToPipe,\r\n SearchflightComponent,\r\n HotelsearchComponent,\r\n CouncodePipe,\r\n DurationToHourMinPipe,\r\n HotelecitesPipe,\r\n HighlighterPipe,\r\n OfflineFilterPipe,\r\n HourMinutePipe,\r\n ExchangePipe,\r\n SegComponent,\r\n RoundTripComponent,\r\n OneWayComponent,\r\n MultiTripComponent,\r\n UserLoginComponent,\r\n UserSignupComponent,\r\n ConfirmPaymentComponent,\r\n ForgetPasswordComponent,\r\n ChangePasswordComponent\r\n \r\n ],\r\n exports: [\r\n FooterComponent,\r\n HeaderComponent,\r\n NavlistComponent,\r\n ConfirmPaymentComponent,\r\n UserLoginComponent,\r\n UserSignupComponent,\r\n ForgetPasswordComponent,\r\n ChangePasswordComponent,\r\n CommonModule,\r\n CouncodePipe,\r\n DurationToHourMinPipe,\r\n MatButtonModule,\r\n SearchflightComponent,\r\n HotelsearchComponent,\r\n MatMenuModule,\r\n TranslateModule,\r\n MatCardModule,\r\n MatAutocompleteModule,\r\n MatDatepickerModule,\r\n MatDialogModule,\r\n NgxIntlTelInputModule,\r\n MatListModule,\r\n FilterCityPipe,\r\n NgxSliderModule,\r\n LimitToPipe,\r\n FormsModule,\r\n MatSnackBarModule,\r\n MatExpansionModule,\r\n MatNativeDateModule,\r\n HighlighterPipe,\r\n MatInputModule,\r\n OfflineFilterPipe,\r\n HourMinutePipe,\r\n MatFormFieldModule,\r\n FontAwesomeModule,\r\n ReactiveFormsModule,\r\n MatStepperModule,\r\n MatSelectModule,\r\n MatPaginatorModule,\r\n LazyLoadImageModule,\r\n ExchangePipe,\r\n HotelecitesPipe,\r\n SegComponent,\r\n NgbCollapseModule,\r\n RoundTripComponent,\r\n OneWayComponent,\r\n MultiTripComponent,\r\n VirtualScrollerModule,\r\n VirtualScrollModule,\r\n RouterModule,\r\n MatProgressBarModule,\r\n MatSidenavModule,\r\n MatTabsModule,\r\n NgbModule,\r\n MatCheckboxModule,\r\n MatProgressSpinnerModule\r\n ],providers:[\r\n ,\r\n HourMinutePipe,ExchangePipe,{ provide: LAZYLOAD_IMAGE_HOOKS, useClass: ScrollHooks },{provide: MatPaginatorIntl}]\r\n})\r\n\r\nexport class SharedModule { }","import { CurrencyModule } from 'src/app/models/currency/currency.module';\r\nimport { Action, createReducer, on } from '@ngrx/store';\r\nimport { AirPorts } from '@src/app/interface/flight-search-result';\r\nimport * as utilities from '../app-utilities/app-utilities.actions';\r\nimport { PointOfsaleModule } from '@src/app/models/point-ofsale/point-ofsale.module';\r\nimport { CountriescodeModule } from '@src/app/models/countriescode/countriescode.module';\r\nimport { HotelsCitiesModule } from '@src/app/models/hotels-cities/hotels-cities.module';\r\nimport { TopCityFlight, tripideas } from '@src/app/interface/Home-content';\r\n\r\nexport const appUtilitiesFeatureKey = 'appUtilities';\r\n\r\nexport interface State {\r\n loading : boolean,\r\n error : any,\r\n airports : AirPorts[],\r\n currency : CurrencyModule[],\r\n pos : PointOfsaleModule,\r\n countryies: CountriescodeModule[],\r\n FTcities : TopCityFlight[][],\r\n cities : HotelsCitiesModule[],\r\n FTIdeas : tripideas[],\r\n}\r\n\r\nexport const initialState: State = {\r\n loading : false,\r\n airports : undefined,\r\n currency : undefined,\r\n pos : undefined,\r\n countryies: undefined,\r\n cities : undefined,\r\n FTcities : undefined,\r\n error : undefined,\r\n FTIdeas:undefined\r\n};\r\n\r\n\r\nexport const reducer = createReducer(\r\n initialState,\r\n on(utilities.loadUtilitysAirports , (state)=>({...state , loading:true})),\r\n on(utilities.loadUtilitysAirportsSuccess , (state , allAirports)=>({...state , loading : false , airports:allAirports.airports})),\r\n on(utilities.loadUtilitysAirportsFailure , (state)=>({...state , loading: false})),\r\n on(utilities.loadUtilitysPOS , (state)=>({...state , loading:true})),\r\n on(utilities.loadUtilitysPOSSuccess , (state , allPOS)=>({...state , loading : false , pos:allPOS.POS})),\r\n on(utilities.loadUtilitysPOSFailure , (state)=>({...state , loading: false})),\r\n on(utilities.loadUtilitysCurrency , (state)=>({...state , loading:true})),\r\n on(utilities.loadUtilitysCurrencySuccess , (state , allCurrency)=>({...state , loading : false , currency:allCurrency.Currency})),\r\n on(utilities.loadUtilitysCurrencyFailure , (state)=>({...state , loading: false})),\r\n on(utilities.loadUtilitysCountries, (state)=>({...state , loading:true})),\r\n on(utilities.loadUtilitysCountriesSuccess , (state , allCountries)=>({...state , loading : false , countryies:allCountries.countries})),\r\n on(utilities.loadUtilitysCountriesFailure , (state)=>({...state , loading: false})),\r\n on(utilities.loadUtilitysCities, (state)=>({...state , loading:true})),\r\n on(utilities.loadUtilitysCitiesSuccess , (state , allcities)=>({...state , loading : false , cities:allcities.cities})),\r\n on(utilities.loadFlightTopCitiesSuccess , (state , fTC)=>({...state , loading : false ,FTcities:fTC.Tcities})),\r\n on(utilities.loadFlightTopCitiesFailure , (state,err)=>({...state , loading: false,error:err})),\r\n on(utilities.loadFlightTripIdeas, (state)=>({...state , loading:true})),\r\n on(utilities.loadFlightTripIdeasSuccess , (state , fTI)=>({...state , loading : false ,FTIdeas:fTI.ideas})),\r\n on(utilities.loadFlightTripIdeasFailure , (state,err)=>({...state , loading: false,error:err})),\r\n on(utilities.loadUtilitysCitiesFailure , (state)=>({...state , loading: false})),\r\n on(utilities.contactUs , (state)=>({...state , loading: true})),\r\n on(utilities.contactUsSuccess , (state)=>({...state , loading: true})),\r\n on(utilities.contactUsFailure , (state , param)=>({...state , loading: true , error:param.err}))\r\n);\r\n\r\nexport function UtilitiesReducer(\r\n state: State | undefined,\r\n action: Action) {\r\n return reducer(state, action);\r\n}\r\n\r\n","import {\r\n Component,\r\n EventEmitter,\r\n HostListener,\r\n Inject,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n} from \"@angular/core\";\r\nimport { MatDialog } from \"@angular/material/dialog\";\r\nimport { Router } from \"@angular/router\";\r\nimport {\r\n faAngleDown,\r\n faCalendar,\r\n faCheckCircle,\r\n faLock,\r\n faPhone,\r\n faUser,\r\n faUserPlus,\r\n} from \"@fortawesome/free-solid-svg-icons\";\r\nimport { Store } from \"@ngrx/store\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { GoogleTagManagerService } from \"angular-google-tag-manager\";\r\nimport { SocialAuthService } from \"angularx-social-login\";\r\nimport { Observable, Subscription } from \"rxjs\";\r\nimport { CurrencyModule } from \"../models/currency/currency.module\";\r\nimport { PointOfsaleModule } from \"../models/point-ofsale/point-ofsale.module\";\r\nimport { AuthUser } from \"../models/user/user\";\r\nimport {\r\n updateAppCurrency,\r\n updateAppLang,\r\n} from \"../store/app-setting/app-setting.actions\";\r\nimport {\r\n loadUtilitysCurrency,\r\n loadUtilitysPOS,\r\n} from \"../store/app-utilities/app-utilities.actions\";\r\nimport {\r\n selectAllCurrency,\r\n selectAppCurrency,\r\n selectAppLang,\r\n selectAppPOS,\r\n selectAppUser,\r\n selectUserLoader,\r\n State,\r\n} from \"../store/selectors\";\r\nimport { selectSettingsFeature } from \"../store/selectors\";\r\nimport { ResetUserState } from \"../store/user/user.actions\";\r\nimport { UserLoginComponent } from \"../users/user-login/user-login.component\";\r\nimport { UserSignupComponent } from \"../users/user-signup/user-signup.component\";\r\ndeclare var $: any;\r\n@Component({\r\n selector: \"app-header\",\r\n templateUrl: \"./header.component.html\",\r\n styleUrls: [\"./header.component.scss\"],\r\n})\r\nexport class HeaderComponent implements OnInit, OnDestroy {\r\n @Input() bg = false;\r\n faLock = faLock;\r\n faUserPlus = faUserPlus;\r\n faAngleDown = faAngleDown;\r\n faPhone = faPhone;\r\n faCalendar = faCalendar;\r\n faCheckCircle = faCheckCircle;\r\n faUser = faUser;\r\n\r\n pointofSale: PointOfsaleModule;\r\n flags: CurrencyModule[] = [];\r\n toggleHF: boolean = true;\r\n logedin: boolean = false;\r\n authinticated:boolean = false;\r\n public getScreenWidth: any;\r\n\r\n appSetting$ = this.store.select(selectSettingsFeature);\r\n POS$ = this.store.select(selectAppPOS);\r\n lang$ = this.store.select(selectAppLang);\r\n \r\n appUser$ = this.store.select(selectAppUser);\r\n appUser:AuthUser;\r\n\r\n lang: string = this.translate.currentLang;\r\n\r\n selectedCurrency$: Observable =\r\n this.store.select(selectAppCurrency);\r\n Currencies$: Observable =\r\n this.store.select(selectAllCurrency);\r\n\r\n currencyValue: any;\r\n private subscription: Subscription = new Subscription();\r\n\r\n constructor(\r\n public translate: TranslateService,\r\n private readonly store: Store,\r\n private router: Router,\r\n public dialog: MatDialog,\r\n private readonly authService :SocialAuthService,\r\n private gtmService: GoogleTagManagerService,\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.getScreenWidth = window.innerWidth;\r\n if(sessionStorage.getItem(\"cls\")){\r\n this.authinticated = true;\r\n }\r\n else{\r\n this.authinticated = false;\r\n }\r\n if(localStorage.getItem('currency')){\r\n this.store.dispatch(updateAppCurrency({ Currency: JSON.parse(localStorage.getItem('currency'))}));\r\n }\r\n this.appUser$.subscribe((res)=>{\r\n this.appUser = res;\r\n })\r\n this.store.dispatch(loadUtilitysCurrency());\r\n this.store.dispatch(loadUtilitysPOS());\r\n if (sessionStorage.getItem(\"type\") == \"flights\") {\r\n this.toggleHF = false;\r\n }\r\n if (localStorage.getItem(\"country\")) {\r\n this.subscription.add(\r\n this.POS$.subscribe((result: PointOfsaleModule) => {\r\n this.pointofSale = result;\r\n })\r\n );\r\n }\r\n if (\r\n this.translate.currentLang == \"ar\" ||\r\n localStorage.getItem(\"lang\") == \"ar\"\r\n ) {\r\n this.switchtoAr();\r\n }\r\n\r\n if (sessionStorage.getItem(\"cls\")) {\r\n this.logedin = true;\r\n }\r\n this.lang$.subscribe((v) => {\r\n if(v){\r\n this.lang = v;\r\n this.translate.use(this.lang);\r\n }\r\n \r\n // }\r\n \r\n });\r\n }\r\n\r\n filterCurrencies: Observable;\r\n\r\n switchtoEn() {\r\n this.store.dispatch(updateAppLang({ Lang: \"en\" }));\r\n }\r\n\r\n switchtoAr() {\r\n this.store.dispatch(updateAppLang({ Lang: \"ar\" }));\r\n }\r\n\r\n /**\r\n * changing the current currency in the whole app\r\n */\r\n changeCurrency(curr: CurrencyModule) {\r\n localStorage.setItem('currency' , JSON.stringify(curr));\r\n this.store.dispatch(updateAppCurrency({ Currency: curr }));\r\n }\r\n\r\n /**\r\n * routing to login view\r\n */\r\n goToLogin() {\r\n this.dialog.closeAll();\r\n const dialogRef = this.dialog.open(UserLoginComponent,{ panelClass: 'custom-dialog-container'});\r\n }\r\n\r\n /**\r\n * routing to signup view\r\n */\r\n goToSignUp() {\r\n this.dialog.closeAll();\r\n const dialogRef = this.dialog.open(UserSignupComponent);\r\n }\r\n\r\n /**\r\n * routing to profile view\r\n */\r\n goToProfile() {\r\n this.router.navigate([\"/profile\"]);\r\n }\r\n\r\n /**\r\n * routing to home view\r\n */\r\n goToHome() {\r\n this.router.navigate([\"/home\"]);\r\n }\r\n\r\n /**\r\n * unsubscripe for all the observables\r\n */\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n /**\r\n * Switching between english lang and arabic lang for the whole website\r\n */\r\n langSwitch() {\r\n this.lang === \"en\" ? this.switchtoAr() : this.switchtoEn();\r\n }\r\n\r\n logout(){\r\n this.store.dispatch(ResetUserState())\r\n sessionStorage.clear();\r\n this.authService.signOut();\r\n localStorage.removeItem('Google-auth');\r\n localStorage.removeItem('Facebook-auth');\r\n }\r\n @HostListener(\"window:resize\", [\"$event\"]) onWindowResize() {\r\n this.getScreenWidth = window.innerWidth;\r\n }\r\n whatsApp(){\r\n const whatsAPP = {\r\n event: 'Whatsapp Button',\r\n position: 'from headder',\r\n language: this.translate.currentLang,\r\n url:this.router.url\r\n };\r\n this.gtmService.pushTag(whatsAPP);\r\n }\r\n call(){\r\n const PhoneCAll = {\r\n event: 'Call Button',\r\n position: 'from headder',\r\n language: this.translate.currentLang,\r\n url:this.router.url\r\n };\r\n this.gtmService.pushTag(PhoneCAll);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n\r\n \r\n\r\n
\r\n \r\n \r\n +96522280802\r\n \r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n \r\n\r\n
\r\n {{'header.login' | translate}}\r\n {{'header.profile' | translate}}\r\n
\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n \r\n\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { FormBuilder, FormGroup, Validators } from \"@angular/forms\";\r\nimport { Router } from \"@angular/router\";\r\nimport {\r\n faFacebook,\r\n faInstagram,\r\n faTwitter,\r\n faYoutube,\r\n faWhatsapp,\r\n faLinkedin,\r\n} from \"@fortawesome/free-brands-svg-icons\";\r\nimport {\r\n faCheck,\r\n faEnvelope,\r\n faInfoCircle,\r\n faMapMarker,\r\n faPhone,\r\n faTimesCircle,\r\n faMapMarkerAlt,\r\n} from \"@fortawesome/free-solid-svg-icons\";\r\n\r\nimport { Store } from \"@ngrx/store\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { GoogleTagManagerService } from \"angular-google-tag-manager\";\r\nimport { contactUs } from \"../store/app-utilities/app-utilities.actions\";\r\n@Component({\r\n selector: \"app-footer\",\r\n templateUrl: \"./footer.component.html\",\r\n styleUrls: [\"./footer.component.scss\"],\r\n})\r\nexport class FooterComponent implements OnInit {\r\n faInstagram = faInstagram;\r\n faFacebook = faFacebook;\r\n faTwitter = faTwitter;\r\n faYoutube = faYoutube;\r\n faLinkedIn= faLinkedin;\r\n faPhone = faPhone;\r\n faWhatsapp = faWhatsapp ;\r\n faMapMarkerAlt =faMapMarkerAlt;\r\n faEnvelope = faEnvelope;\r\n faMapMarker = faMapMarker;\r\n faInfoCircle = faInfoCircle;\r\n faCheck = faCheck;\r\n faTimesCircle = faTimesCircle;\r\n\r\n sendmessage: FormGroup;\r\n\r\n infoAlert: boolean = false;\r\n successAlert: boolean = false;\r\n constructor(\r\n public translate: TranslateService,\r\n private formBuilder: FormBuilder,\r\n private readonly store: Store,\r\n private gtmService: GoogleTagManagerService,\r\n private router: Router,\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.sendmessage = this.formBuilder.group({\r\n Name: [\"\", Validators.required],\r\n subject: [\"\"],\r\n email: [\"\", [Validators.required]],\r\n message: [\"\", Validators.required],\r\n });\r\n }\r\n\r\n /**\r\n * Send Message Through the contact us form & handle alerts\r\n */\r\n sendMesssage() {\r\n this.infoAlert = false;\r\n this.successAlert = false;\r\n if (this.sendmessage.valid) {\r\n this.store.dispatch(contactUs({ data: this.sendmessage.value }));\r\n this.successAlert = true;\r\n } else {\r\n this.infoAlert = true;\r\n }\r\n }\r\n\r\n /**\r\n * close the alert dialogue of the contact us section\r\n */\r\n closeAlert() {\r\n this.infoAlert = false;\r\n this.successAlert = false;\r\n }\r\n\r\n /**\r\n * Scroll Automatically to the top view of the current window\r\n */\r\n scrollToTop() {\r\n window.scroll({\r\n top: 0,\r\n left: 0,\r\n behavior: \"smooth\",\r\n });\r\n }\r\n whatsApp(){\r\n const whatsAPPf = {\r\n event: 'Whatsapp Button',\r\n position: 'from footer',\r\n language: this.translate.currentLang,\r\n url:this.router.url\r\n };\r\n this.gtmService.pushTag(whatsAPPf);\r\n }\r\n call(){\r\n const PhoneCAllf = {\r\n event: 'Call Button',\r\n position: 'from footer',\r\n language: this.translate.currentLang,\r\n url:this.router.url\r\n };\r\n this.gtmService.pushTag(PhoneCAllf);\r\n\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{'footer.text' | translate}}

\r\n {{'footer.follow' | translate}}\r\n \r\n
\r\n
\r\n

{{'footer.contactUs' | translate}}

\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n

{{'footer.payment' | translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{'footer.copyRight' | translate}}\r\n
\r\n
\r\n
","import { Component, OnInit, Input } from '@angular/core';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { MatSnackBar } from '@angular/material/snack-bar';\r\n// import { MyApiService } from 'src/app/Services/my-api.service';\r\n// import { MatSnackBar } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { MyapiService } from '@src/app/services/myapi.service';\r\n\r\n@Component({\r\n selector: 'app-edit-acount',\r\n templateUrl: './edit-acount.component.html',\r\n styleUrls: ['./edit-acount.component.css']\r\n})\r\nexport class EditAcountComponent implements OnInit {\r\n editForm:FormGroup;\r\n constructor(private myapi: MyapiService, private _snackBar: MatSnackBar, private Router: Router) { }\r\n @Input()name ='';\r\n @Input()email = '';\r\n @Input()Phone = '';\r\n preloader:boolean = true;\r\n ngOnInit() {\r\n this.preloader = false;\r\n this.editForm = new FormGroup({\r\n 'Isbase':new FormControl(1),\r\n 'Email': new FormControl(this.email,[Validators.email,Validators.minLength(8),Validators.required]),\r\n 'Password': new FormControl('',[Validators.required,Validators.minLength(8)]),\r\n 'FirstName': new FormControl(''),\r\n 'LastName': new FormControl(''),\r\n 'ImageURL': new FormControl(''),\r\n 'PhoneNumber': new FormControl(this.Phone,[Validators.required,Validators.minLength(5)]),\r\n 'User_Name': new FormControl (this.name)\r\n })\r\n }\r\n onSubmit(){\r\n this.myapi.userupdate(this.editForm.value).subscribe(\r\n (result)=>{\r\n this.openSnackBar('edit succesfully',result,'succes');\r\n console.log(result);\r\n }\r\n )\r\n this.preloader=true;\r\n }\r\n openSnackBar(message: string, action: string,Staus:string) {\r\n this._snackBar.open(message, action, {\r\n duration: 2000,\r\n panelClass:[Staus]\r\n });\r\n}\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n

{{'user.useracount'|translate}}

\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { faCheckCircle, faEnvelope, faTimesCircle, } from '@fortawesome/free-solid-svg-icons';\r\nimport { Store } from '@ngrx/store';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { selectUserLoader } from '@src/app/store/selectors';\r\nimport { FacebookLoginProvider, GoogleLoginProvider, SocialAuthService } from 'angularx-social-login';\r\n\r\n@Component({\r\n selector: 'app-forget-password',\r\n templateUrl: './forget-password.component.html',\r\n styleUrls: ['./forget-password.component.scss']\r\n})\r\nexport class ForgetPasswordComponent implements OnInit {\r\n\r\n faTimesCircle = faTimesCircle;\r\n faCheckCircle =faCheckCircle;\r\n faEnvelope= faEnvelope;\r\n showPassword = false ; \r\n showConfirmPassword = false;\r\n\r\n userLoader$ = this.store.select(selectUserLoader);\r\n userLoader : boolean = false;\r\n\r\n forgetPassForm = new FormGroup({\r\n 'Email': new FormControl('', [Validators.email, Validators.minLength(8), Validators.required]),\r\n })\r\n\r\n constructor(\r\n public translate : TranslateService,\r\n public dialog : MatDialog,\r\n private authService : SocialAuthService,\r\n public store: Store\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.authService.authState.subscribe((res)=>{\r\n console.log(\"SOCIAL AUTH STATE\" , res);\r\n })\r\n }\r\n\r\n onSubmit(){\r\n this.userLoader = true;\r\n }\r\n\r\n submitFbLogin(){\r\n this.authService.signIn(FacebookLoginProvider.PROVIDER_ID);\r\n }\r\n submitGoogleLogin(){\r\n this.authService.signIn(GoogleLoginProvider.PROVIDER_ID);\r\n }\r\n\r\n closeDialog(){\r\n this.dialog.closeAll()\r\n }\r\n toggleShowPassword(){\r\n this.showPassword = !this.showPassword; \r\n }\r\n toggleShowConfirmPassword() {\r\n this.showConfirmPassword = !this.showConfirmPassword;\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n \"logo\"\r\n
\r\n
\r\n X\r\n
\r\n
\r\n
\r\n

{{'password.forget' | translate}}

\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n\r\n \r\n \"\"\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \"\"\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n

{{'password.verCode' | translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
","import { Component, OnInit, EventEmitter, Output} from '@angular/core';\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\n\r\n@Component({\r\n selector: 'app-navlist',\r\n templateUrl: './navlist.component.html',\r\n styleUrls: ['./navlist.component.scss']\r\n})\r\nexport class NavlistComponent implements OnInit {\r\n\r\n @Output() switch: EventEmitter = new EventEmitter();\r\n constructor( public translate: TranslateService) { }\r\n toggleHF: string = \"flight\";\r\n ngOnInit() {\r\n // this.toggleHF = sessionStorage.getItem('type')\r\n // if (sessionStorage.getItem('type') == 'hotel') {\r\n // document.getElementById('hotels').click()\r\n // }\r\n }\r\n\r\n\r\n switchHF(toggle: string) {\r\n this.toggleHF = toggle;\r\n this.switch.emit(this.toggleHF);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n","import { Component, OnInit ,Input, OnDestroy } from '@angular/core';\r\nimport { FarRulesComponent } from './../far-rules/far-rules.component';\r\nimport { NgbModal,ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { MyapiService } from '@src/app/services/myapi.service';\r\nimport { FlightServiceService } from '@src/app/services/flight-service.service';\r\nimport { Subscription } from 'rxjs';\r\nimport {\r\n airItineraries,\r\n fare,\r\n FareRules,\r\n flight,\r\n flightOfflineService,\r\n passengerFareBreakDownDTOs,\r\n Selectedflight,\r\n} from '../../interface/flight-search-result';\r\nimport { faChevronDown, faChevronRight, faInfoCircle, faLuggageCart, faPlane, faUsers, faUtensils, faWifi } from '@fortawesome/free-solid-svg-icons';\r\nimport { faYoutubeSquare } from '@fortawesome/free-brands-svg-icons';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { IconProp } from '@fortawesome/fontawesome-svg-core';\r\n\r\ntype fareCalc = (fare:fare[])=>number;\r\ntype calcEqfare =(flightFaresDTO: passengerFareBreakDownDTOs[],type:string,farecalc:fareCalc)=>number;\r\ndeclare var $: any;\r\n\r\nexport interface BreakDownView{\r\n ADT:{\r\n totalFare:[number,string],\r\n ScFare:[number,string,number]\r\n },\r\n CNN:{\r\n totalFare:[number,string],\r\n ScFare:[number,string,number]\r\n },\r\n INF:{\r\n totalFare:[number,string],\r\n ScFare:[number,string,number]\r\n }\r\n}\r\ninterface flightFilter {\r\n priceMin:number,\r\n priceMax:number,\r\n durationMin:number,\r\n durationMax:number,\r\n depatingMin:number,\r\n departingMax:number,\r\n returnMin:number,\r\n returnMax:number,\r\n \r\n stops:number[],\r\n airlines:string[]\r\n\r\n}\r\n\r\n@Component({\r\n selector: 'app-multi-trip',\r\n templateUrl: './multi-trip.component.html',\r\n styleUrls: ['./multi-trip.component.scss']\r\n})\r\nexport class MultiTripComponent implements OnInit,OnDestroy{\r\n\r\n faInfoCircle=faInfoCircle as IconProp;\r\n faChevronDown=faChevronDown as IconProp ;\r\n faUtensils=faUtensils as IconProp;\r\n faYoutubeSquare=faYoutubeSquare as IconProp;\r\n faLuggageCart=faLuggageCart as IconProp;\r\n faPlane=faPlane as IconProp;\r\n faUsers=faUsers as IconProp;\r\n faChevronRight= faChevronRight as IconProp;\r\n faWifi=faWifi as IconProp;\r\n @Input() item: airItineraries[] = [];\r\n @Input() Selected:Selectedflight ;\r\n @Input() i :number = 0;\r\n @Input()over :boolean = false;\r\n @Input() checkout: boolean;\r\n FareLoading:boolean=true;\r\n fare:FareRules[];\r\n closeResult = '';\r\n term:any;\r\n trueT: boolean[] = [];\r\n moreT:boolean=true;\r\n public show:boolean = false;\r\n showDetails: boolean = false;\r\n showDetailsMore: boolean[] = [];\r\n subscribtions:Subscription = new Subscription() ;\r\n constructor(public translate : TranslateService, public flight:FlightServiceService,private search: MyapiService,private modalService: NgbModal) { }\r\n \r\n ngOnInit() {\r\n this.trueT = this.flight.valuesoftrue(this.item);\r\n\r\n if(this.Selected != undefined){\r\n // debugger\r\n this.item = this.mapSelected(this.Selected);\r\n }\r\n \r\n }\r\n toggle() {\r\n this.show = !this.show;\r\n\r\n // CHANGE THE NAME OF THE BUTTON.\r\n \r\n }\r\n showFareRules(squencNumber: number, pKey: string) {\r\n\r\n this.FareLoading = true;\r\n this.subscribtions.add(\r\n this.subscribtions.add(this.search.fareRules(this.flight.serachId, squencNumber, pKey).subscribe(\r\n (result) => {\r\n this.FareLoading = false;\r\n this.fare = result;\r\n }\r\n\r\n ))); \r\n }\r\n\r\n\r\n togglemodel(index: number, sequenceNum: number, pKey: string) {\r\n let id = '#fareModal' + index;\r\n $(id).modal('toggle');\r\n this.showFareRules(sequenceNum, pKey);\r\n }\r\n\r\n togglemodelt(i: number, m: number, sequenceNum: number, pKey: string) {\r\n let id = '#fareModal' + i + 'l' + m;\r\n $(id).modal('toggle');\r\n this.showFareRules(sequenceNum, pKey);\r\n }\r\n\r\n toggleDetails() {\r\n this.showDetails = !this.showDetails;\r\n }\r\n toggleDetailsMore(index: number) {\r\n this.showDetailsMore[index] = !this.showDetailsMore[index];\r\n }\r\n\r\n\r\n\r\n open(sequenceNum: number, pKey: string) {\r\n\r\n const modalRef = this.modalService.open(FarRulesComponent);\r\n modalRef.componentInstance.serachId = this.flight.serachId;\r\n modalRef.componentInstance.squencNumber = sequenceNum;\r\n modalRef.componentInstance.providerKey = pKey;\r\n\r\n }\r\n \r\n private getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n openmodel(content,term='') {\r\n this.term = term;\r\n this.modalService.open(content, {ariaLabelledBy: 'modal-basic-title'}).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }\r\n mapSelected(selected:Selectedflight):airItineraries[] {\r\n // debugger\r\n let out:airItineraries = {\r\n sequenceNum: selected.airItineraryDTO.sequenceNum,\r\n pKey: selected.airItineraryDTO.pKey,\r\n isRefundable: selected.airItineraryDTO.isRefundable,\r\n itinTotalFare: selected.airItineraryDTO.itinTotalFare,\r\n totalDuration: selected.airItineraryDTO.totalDuration,\r\n deptDate: selected.airItineraryDTO.deptDate,\r\n arrivalDate: selected.airItineraryDTO.arrivalDate,\r\n cabinClass: selected.airItineraryDTO.cabinClass,\r\n flightType: selected.airItineraryDTO.flightType,\r\n pcc: selected.airItineraryDTO.pcc,\r\n allJourney: {\r\n flights: selected.airItineraryDTO.allJourney.flights\r\n },\r\n baggageInformation:selected.airItineraryDTO.baggageInformation\r\n }\r\n \r\n return [out]\r\n }\r\n\r\n \r\n /**\r\n * \r\n * @param flightFaresDTO \r\n * @param passNumber \r\n * @returns [total value ,curruncy code]\r\n */\r\n returnPassTotalFar(flightFaresDTO: fare[], passNumber: number, calcfare: fareCalc): [number, string] {\r\n let Total: fare = flightFaresDTO.filter(v => v.fareType.toLowerCase() === 'equivfare')[0];\r\n return Total ? [calcfare(flightFaresDTO) * passNumber, Total.currencyCode] : [NaN, 'KWD'];\r\n }\r\n /**\r\n * \r\n * @param flightFaresDTO \r\n * @param passNumber \r\n * @returns [total value per passenger ,curruncy code , number of passenger]\r\n */\r\n returnPassFareScatterd(flightFaresDTO: fare[], passNumber: number, calcfare: fareCalc): [number, string, number] {\r\n let Total: fare = flightFaresDTO.filter(v => v.fareType.toLowerCase() === 'equivfare')[0];\r\n return Total ? [calcfare(flightFaresDTO), Total.currencyCode, passNumber] : [NaN, 'KWD', NaN];\r\n }\r\n /**\r\n * \r\n * @param flightFaresDTO \r\n * @param totalAmount \r\n * @param totalTax \r\n * @param curruncy \r\n * @param calcEqfare \r\n * @param fareCalc \r\n * @returns value of discount or service fees\r\n */\r\n returnPassTotalFarDifferance(flightFaresDTO: passengerFareBreakDownDTOs[], totalAmount: number, totalTax: number, curruncy: string, calcEqfare: calcEqfare, fareCalc: fareCalc): [number, string, string] {\r\n if(!flightFaresDTO){\r\n return [0, '', 'KWD'];\r\n }\r\n let AdtFares = calcEqfare(flightFaresDTO, 'ADT', fareCalc);\r\n let childFare = calcEqfare(flightFaresDTO, 'CNN', fareCalc);\r\n let infentFare = calcEqfare(flightFaresDTO, 'INF', fareCalc);\r\n let TotalFare = AdtFares + childFare + infentFare + totalTax;\r\n let fareDiff = totalAmount - TotalFare;\r\n if (fareDiff > 0) {\r\n return [Math.round(fareDiff), 'Service Fees', curruncy]\r\n } else if (fareDiff < 0) {\r\n return [Math.round(-1 * fareDiff), 'Discount', curruncy]\r\n } else {\r\n return [0, '', 'KWD'];\r\n }\r\n \r\n }\r\n \r\n /**\r\n * \r\n * @param flightFaresDTO \r\n * @param type \r\n * @param farecalc \r\n * @returns numer of passenger * fare of passenger\r\n */\r\n calcEqfare(flightFaresDTO: passengerFareBreakDownDTOs[], type: string, farecalc: fareCalc): number {\r\n let fare = farecalc(flightFaresDTO.filter((v) => v.passengerType === type)[0]?.flightFaresDTOs);\r\n // let fare = flightFaresDTO.filter((v)=>v.passengerType === type)[0]?.flightFaresDTOs.filter(v=>v.fareType.toLowerCase() === 'equivfare')[0].fareAmount;\r\n let quntity = flightFaresDTO.find((v) => v.passengerType === type)?.passengerQuantity;\r\n return fare && quntity ? fare * quntity : 0;\r\n }\r\n \r\n /**\r\n * \r\n * @param fare \r\n * @returns validate equivelent fare\r\n */\r\n \r\n returnCorrectFare(fare: fare[]): number {\r\n if (fare) {\r\n let equivfare = fare.find(v => v.fareType.toLowerCase() === 'equivfare').fareAmount;\r\n let totalFare = fare.find(v => v.fareType.toLowerCase() === 'totalfare').fareAmount;\r\n let totalTax = fare.find(v => v.fareType.toLowerCase() === 'totaltax').fareAmount;\r\n return equivfare > 0 ? equivfare : totalFare - totalTax;\r\n } else {\r\n return 0\r\n }\r\n \r\n }\r\n \r\n ngOnDestroy(): void {\r\n this.subscribtions.unsubscribe();\r\n }\r\n}\r\n\r\n\r\n\r\n\r\n","
\r\n
\r\n
\r\n
\r\n

\r\n {{\"SearchResult.save\" | translate}}\r\n\r\n \r\n {{item[0]['itinTotalFare']['currencyCode']|exchange:'code'}}\r\n {{returnPassTotalFarDifferance(\r\n this.item[0].passengerFareBreakDownDTOs,\r\n this.item[0].itinTotalFare.amount,\r\n this.item[0].itinTotalFare.totalTaxes,\r\n this.item[0].itinTotalFare.currencyCode,\r\n this.calcEqfare,this.returnCorrectFare\r\n )[0] | exchange:'value'}}\r\n \r\n {{\"SearchResult.bySelecting\" | translate}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \"airline\r\n
\r\n \r\n {{flightM.flightDTO[0].flightAirline.airlineName}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{flightM.flightDTO[0].departureDate | date:'shortTime'}}\r\n
\r\n
\r\n {{flightM.flightDTO[0].departureTerminalAirport.airportCode}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{flightM.elapsedTime | hourminute}} )\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{flightM.stopsNum}} {{\"SearchResult.Stops\"|translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{flightM.flightDTO[flightM.flightDTO.length -1].arrivalDate |\r\n date:'shortTime'}}\r\n
\r\n
\r\n {{flightM.flightDTO[flightM.flightDTO.length\r\n -1].arrivalTerminalAirport.airportCode}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{flightM.elapsedTime | hourminute}} )\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{item[0]['itinTotalFare']['currencyCode']|exchange:'code'}} \r\n {{item[0].itinTotalFare.amount|exchange:'value'}}\r\n
\r\n
\r\n
{{\"SearchResult.Price\"|translate}}
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{'SearchResult.refundable' | translate}}\r\n
\r\n
\r\n {{'SearchResult.nonRefundable' | translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ \"SearchResult.ViewDetails\" | translate }}\r\n \r\n
\r\n
1\">\r\n \r\n + {{ item.length - 1 }}\r\n {{ \"SearchResult.more\" | translate }}\r\n \r\n \r\n
\r\n
\r\n
\r\n {{'SearchResult.refundable' | translate}}\r\n
\r\n
\r\n {{'SearchResult.nonRefundable' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n
\r\n {{\"SearchResult.flight\" | translate}} {{f+1}}\r\n ({{ flightM.flightDTO[0].departureDate | date:'EE, d MMM y' }})\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n {{\r\n flightM.flightDTO[0]\r\n .flightAirline.airlineName\r\n }}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \"\"\r\n \r\n 0\" src=\"../../../assets/img/albaraq/icons/details-stops-stop.svg\"\r\n alt=\"\" />\r\n
\r\n \r\n
\r\n \r\n {{\r\n flightM\r\n .elapsedTime | hourminute\r\n }}\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n {{\r\n flightM\r\n .flightDTO[0].departureDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n flightM\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n flightM\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n {{\r\n flightM\r\n .flightDTO[flightM.flightDTO.length\r\n -1].arrivalDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n flightM\r\n .flightDTO[flightM.flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n flightM\r\n .flightDTO[flightM.flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
0\">\r\n {{flightM.stopsNum}}\r\n {{\"SearchResult.stop\" | translate}}\r\n :\r\n \r\n \r\n {{flightM.flightDTO[i].transitTime | durationToHourMin}}\r\n {{\"SearchResult.layover\" | translate}}\r\n {{flightM.flightDTO[i].arrivalTerminalAirport.cityName}}\r\n ({{flightM.flightDTO[i].arrivalTerminalAirport.airportCode}})\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
{{\"SearchResult.operatedBy\" | translate}} {{ flightM.flightDTO[0].operatedAirline.airlineName }}
\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n {{\"SearchResult.save\" | translate}}\r\n\r\n \r\n {{term['itinTotalFare']['currencyCode']|exchange:'code'}}\r\n {{returnPassTotalFarDifferance(\r\n this.term.passengerFareBreakDownDTOs,\r\n this.term.itinTotalFare.amount,\r\n this.term.itinTotalFare.totalTaxes,\r\n this.term.itinTotalFare.currencyCode,\r\n this.calcEqfare,this.returnCorrectFare\r\n )[0] | exchange:'value' }}\r\n \r\n {{\"SearchResult.bySelecting\" | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n \"airline\r\n \r\n {{flightM.flightDTO[0].flightAirline.airlineName}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{flightM.flightDTO[0].departureDate | date:'shortTime'}}\r\n
\r\n
\r\n {{flightM.flightDTO[0].departureTerminalAirport.airportCode}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{flightM.elapsedTime | hourminute}} )\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{flightM.stopsNum}} {{\"SearchResult.Stops\"|translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{flightM.flightDTO[flightM.flightDTO.length -1].arrivalDate\r\n |\r\n date:'shortTime'}}\r\n
\r\n
\r\n {{flightM.flightDTO[flightM.flightDTO.length\r\n -1].arrivalTerminalAirport.airportCode}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{flightM.elapsedTime | hourminute}} )\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{term['itinTotalFare']['currencyCode']|exchange:'code'}}\r\n \r\n {{term.itinTotalFare.amount|exchange:'value'}}\r\n
\r\n
\r\n
{{\"SearchResult.Price\"|translate}}
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{'SearchResult.refundable' | translate}}\r\n
\r\n
\r\n {{'SearchResult.nonRefundable' | translate}}\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ \"SearchResult.ViewDetails\" | translate }}\r\n \r\n
\r\n \r\n
\r\n \r\n {{ \"SearchResult.less\" | translate }}\r\n \r\n \r\n
\r\n
\r\n
\r\n {{'SearchResult.refundable' | translate}}\r\n
\r\n
\r\n {{'SearchResult.nonRefundable' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n
\r\n {{\"SearchResult.flight\" | translate}} {{f+1}}\r\n ({{ flightM.flightDTO[0].departureDate | date:'EE, d MMM y' }})\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n {{\r\n flightM.flightDTO[0]\r\n .flightAirline.airlineName\r\n }}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \"\"\r\n \r\n 0\" src=\"../../../assets/img/albaraq/icons/details-stops-stop.svg\"\r\n alt=\"\" />\r\n
\r\n \r\n
\r\n \r\n {{\r\n flightM\r\n .elapsedTime | hourminute\r\n }}\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n {{\r\n flightM\r\n .flightDTO[0].departureDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n flightM\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n flightM\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n {{\r\n flightM\r\n .flightDTO[flightM.flightDTO.length\r\n -1].arrivalDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n flightM\r\n .flightDTO[flightM.flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n flightM\r\n .flightDTO[flightM.flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
0\">\r\n {{flightM.stopsNum}}\r\n {{\"SearchResult.stop\" | translate}}\r\n :\r\n \r\n \r\n {{flightM.flightDTO[i].transitTime | durationToHourMin}}\r\n {{\"SearchResult.layover\" | translate}}\r\n {{flightM.flightDTO[i].arrivalTerminalAirport.cityName}}\r\n ({{flightM.flightDTO[i].arrivalTerminalAirport.airportCode}})\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
{{\"SearchResult.operatedBy\" | translate}} {{ flightM.flightDTO[0].operatedAirline.airlineName }}
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-orders',\r\n templateUrl: './orders.component.html',\r\n styleUrls: ['./orders.component.css']\r\n})\r\nexport class OrdersComponent implements OnInit {\r\n isFlight:boolean =true;\r\n @Input()email:string = '';\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n switch (key:string) {\r\n switch (key) {\r\n case \"hotel\":\r\n this.isFlight=false;\r\n break;\r\n case \"flight\":\r\n this.isFlight=true;\r\n break;\r\n default:\r\n this.isFlight=false;\r\n break;\r\n }\r\n }\r\n\r\n \r\n}\r\n","
\r\n
\r\n

{{'user.myOrders'|translate}}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
","import { Component, OnInit, Input } from '@angular/core';\r\nexport interface minitodo {\r\n isStopSegment:boolean,\r\n transitTime:string,\r\n arrivalTerminalAirport:{\r\n airportCode:string,\r\n airportName:string,\r\n cityName:string,\r\n \r\n }\r\n}\r\n@Component({\r\n selector: 'app-seg',\r\n templateUrl: './seg.component.html',\r\n styleUrls: ['./seg.component.css']\r\n})\r\n\r\nexport class SegComponent implements OnInit {\r\n @Input() Stnumper:number = 0;\r\n @Input()tdolist : minitodo[] =[];\r\n @Input()duration:number = 0;\r\n transitTime:string[]=[];\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n this.transitTime = this.formatTransiteTime();\r\n }\r\n\r\n formatTransiteTime(): string[]\r\n {\r\n let transitTime : string[]=[]\r\n this.tdolist.forEach(element => {\r\n let transit = element.transitTime;\r\n transitTime.push(+transit.slice(0,2) +'H' +' :'+ +transit.slice(3,5)+'M');\r\n });\r\n return transitTime\r\n }\r\n\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n","import { createAction, props } from '@ngrx/store';\r\nimport { CurrencyModule } from '@src/app/models/currency/currency.module';\r\nimport { PointOfsaleModule } from '@src/app/models/point-ofsale/point-ofsale.module';\r\n\r\nexport const loadAppSettings = createAction(\r\n '[AppSetting] Load AppSettings'\r\n);\r\n\r\nexport const loadAppSettingsSuccess = createAction(\r\n '[AppSetting] Load AppSettings Success',\r\n props<{ data: any }>()\r\n);\r\n\r\nexport const loadAppSettingsFailure = createAction(\r\n '[AppSetting] Load AppSettings Failure',\r\n props<{ error: any }>()\r\n);\r\n\r\nexport const updateAppCurrency = createAction(\r\n '[AppSetting] update App Currency',\r\n props<{ Currency: CurrencyModule }>()\r\n);\r\n\r\nexport const updateAppPOS = createAction(\r\n '[AppSetting] update App POS',\r\n props<{ POS: PointOfsaleModule }>()\r\n);\r\n\r\nexport const updateAppLang = createAction(\r\n '[AppSetting] update App Lang',\r\n props<{ Lang: string }>()\r\n);\r\nexport const updateAppLangSuccess = createAction(\r\n '[AppSetting] update App Lang Success',\r\n props<{ Lang: string }>()\r\n);\r\n// set point of sale airport\r\nexport const setAirport = createAction(\r\n '[AppSetting] Set POS Airport ',\r\n props<{ data: string }>()\r\n);","import { MyapiService } from 'src/app/services/myapi.service';\r\nimport { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport * as actions from '../app-offers/offers.actions';\r\nimport { catchError, map, mergeMap} from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport { MatSnackBar } from '@angular/material/snack-bar';\r\n\r\n\r\n@Injectable()\r\nexport class OffersEffects {\r\n constructor(\r\n private _snackBar: MatSnackBar,\r\n private actions$ : Actions,\r\n private apiService : MyapiService) {}\r\n\r\n loadOffers$ = createEffect(()=>this.actions$.pipe(ofType(actions.loadAllOffers),mergeMap(\r\n (a) => this.apiService.GetAllOffers(a.pos).pipe(\r\n map(v=>{\r\n return actions.loadAllOffersSuccess({data:v})\r\n }),\r\n catchError(err => {\r\n return of(actions.loadAllOffersFailure({err:err}))\r\n })\r\n )\r\n ))\r\n )\r\n\r\n loadOfferById$ = createEffect(()=>this.actions$.pipe(ofType(actions.loadOfferById),mergeMap(\r\n (param) => this.apiService.GetOfferBYId(param.id).pipe(\r\n map(v=>{\r\n return actions.loadOfferByIdSuccess({data:v})\r\n }),\r\n catchError(err => {\r\n return of(actions.loadOfferByIdFailure({err:err}))\r\n })\r\n )\r\n ))\r\n )\r\n\r\n loadOfflineItinerary$ = createEffect(()=>this.actions$.pipe(ofType(actions.retrieveItinerary),mergeMap(\r\n (param) => this.apiService.RetriveItinerary(param.id).pipe(\r\n map(v=>{\r\n return actions.retrieveItinerarySuccess({data:v})\r\n }),\r\n catchError(err => {\r\n return of(actions.retrieveItineraryFailure({err:err}))\r\n })\r\n )\r\n ))\r\n )\r\n\r\n BookOffer$ = createEffect(()=>this.actions$.pipe(ofType(actions.BookOffers),mergeMap(\r\n (param) => this.apiService.BookOffers(param.Source, param.LanguageCode,param.body, param.searchID).pipe(\r\n map(v=>{\r\n return actions.loadOfferByIdSuccess({data:v})\r\n this.openSnackBar(\"successed Book Offer \", \"ok\",\"OK\");\r\n\r\n }),\r\n catchError(err => {\r\n return of(actions.loadOfferByIdFailure({err:err}))\r\n })\r\n )\r\n ))\r\n )\r\n\r\n openSnackBar(message: string, action: string,Staus:string) {\r\n this._snackBar.open(message, action, {\r\n duration: 2000,\r\n panelClass:[Staus]\r\n });\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { faChevronRight, faClipboardList, faEnvelope, faPhoneAlt, faSignOutAlt, faUser, faUserEdit, faUserFriends } from '@fortawesome/free-solid-svg-icons';\r\nimport { SocialAuthService } from 'angularx-social-login';\r\nimport { MyapiService } from '../services/myapi.service';\r\nexport interface userinfo {\r\n Email: string,\r\n FullName: string,\r\n HasRegistered: boolean,\r\n PhoneNumber: string,\r\n UserID: string,\r\n}\r\n\r\n@Component({\r\n selector: 'app-users',\r\n templateUrl: './users.component.html',\r\n styleUrls: ['./users.component.css']\r\n})\r\nexport class UsersComponent implements OnInit {\r\n faUser = faUser;\r\n faSignOutAlt = faSignOutAlt;\r\n faEnvelope = faEnvelope;\r\n faPhoneAlt = faPhoneAlt;\r\n faUserEdit = faUserEdit;\r\n faChevronRight = faChevronRight;\r\n faClipboardList = faClipboardList;\r\n faUserFriends = faUserFriends;\r\n selector: string = 'upcoming';\r\n user: object;\r\n username: string = '';\r\n email: string = '';\r\n phone: string = '';\r\n tok: string = '';\r\n id: string = '';\r\n loading: boolean = true;\r\n\r\n constructor(private myapi: MyapiService, private Router: Router, private readonly authService: SocialAuthService) {\r\n if (!sessionStorage.getItem('cls')) {\r\n this.Router.navigate(['/']);\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.tok = sessionStorage.getItem('cls');\r\n this.myapi.getuserinfo().subscribe((result: userinfo) => {\r\n this.username = result.FullName;\r\n this.email = result.Email;\r\n this.phone = result.PhoneNumber;\r\n this.id = result.UserID;\r\n this.loading = false;\r\n console.log(this.username)\r\n })\r\n\r\n }\r\n select(choice: string) {\r\n // switch between component\r\n // this.Router.navigate([choice])\r\n\r\n\r\n console.log(choice)\r\n return this.selector = choice;\r\n }\r\n // logout \r\n logout() {\r\n // this.myapi.logoutapi().subscribe(\r\n // (result)=>{\r\n // console.log(result)\r\n // }\r\n // )\r\n this.authService.signOut();\r\n sessionStorage.clear();\r\n localStorage.removeItem('Google-auth');\r\n localStorage.removeItem('Facebook-auth');\r\n this.Router.navigate(['/']);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n

{{'user.profile'|translate}}

\r\n

\r\n
{{username}}

\r\n

\r\n
{{email}}

\r\n

\r\n
{{phone}}

\r\n
\r\n\r\n \r\n \r\n \r\n \r\n {{'user.editAcount'|translate}}\r\n \r\n\r\n \r\n \r\n \r\n \r\n {{'user.familyMembers'|translate}}\r\n \r\n \r\n \r\n \r\n\r\n {{'user.myOrders'|translate}}\r\n \r\n \r\n \r\n {{'user.signOut'|translate}} \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
","import { Pipe, PipeTransform, Injectable } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { Observable } from 'rxjs';\r\nimport { CurrencyModule } from '../models/currency/currency.module';\r\nimport { CurruncyServiceService } from '../services/curruncy-service.service';\r\nimport { selectAppCurrency, State } from '../store/selectors';\r\n\r\n\r\n@Pipe({\r\n name: 'exchange',\r\n pure:false\r\n})\r\nexport class ExchangePipe implements PipeTransform {\r\n currentCurruncy:CurrencyModule;\r\n currentCurruncy$:Observable = this.store.select(selectAppCurrency);\r\n constructor(private curruncy:CurruncyServiceService,private readonly store: Store){\r\n this.currentCurruncy$.subscribe((v)=>{this.currentCurruncy = v;});\r\n \r\n }\r\n\r\n transform(value: any, args?: any): any {\r\n if(!value || !args) {\r\n return value;\r\n }\r\n else {\r\n if(args == \"value\" && this.currentCurruncy.Currency_Code == 'KWD') {\r\n let total = value * this.currentCurruncy.rate ;\r\n return parseFloat((Math.round(total*1000)/1000).toFixed(3));\r\n }\r\n if(args == \"value\" && this.currentCurruncy.Currency_Code != 'KWD') {\r\n let total = value * this.currentCurruncy.rate;\r\n return parseFloat((Math.round(total*100)/100).toFixed(2));\r\n }\r\n if(args == \"code\") {\r\n return this.currentCurruncy.Currency_Code;\r\n }\r\n }\r\n\r\n }\r\n \r\n\r\n}\r\n\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { CitiesModule } from '../models/cities/cities.module';\r\n\r\n@Pipe({\r\n name: 'codToCity'\r\n})\r\nexport class CodToCityPipe implements PipeTransform {\r\n\r\n transform(value: string, args: CitiesModule[]): string {\r\n if (!value || !args) {\r\n return value;\r\n }\r\n else {\r\n \r\n for (let index = 0; index < args.length; index++) {\r\n let element: CitiesModule = args[index];\r\n let a = element.cityCode.toLowerCase();\r\n \r\n if (a == value.toLowerCase() ) {\r\n return element.cityName\r\n }\r\n\r\n }\r\n return value;\r\n }\r\n }\r\n\r\n}\r\n","import { CodToCityPipe } from \"../pipes/cod-to-city.pipe\";\r\nimport { FlightSearchResult, passengLists } from \"../interface/flight-search-result\";\r\nimport { CurruncyServiceService } from \"../services/curruncy-service.service\";\r\nimport { FlightsInfoModule } from \"src/app/models/flights-info/flights-info.module\";\r\nimport { DatePipe, isPlatformBrowser } from \"@angular/common\";\r\nimport {\r\n FormGroup,\r\n FormControl,\r\n Validators,\r\n FormArray,\r\n} from \"@angular/forms\";\r\nimport {\r\n NgbDate,\r\n NgbCalendar,\r\n NgbDateStruct,\r\n NgbPopover,\r\n NgbDateParserFormatter,\r\n NgbDatepicker,\r\n NgbInputDatepicker,\r\n} from \"@ng-bootstrap/ng-bootstrap\";\r\nimport { BehaviorSubject, Observable, Subject, Subscription } from \"rxjs\";\r\nimport { CitiesModule } from \"../models/cities/cities.module\";\r\nimport {\r\n Component,\r\n OnInit,\r\n Output,\r\n EventEmitter,\r\n Input,\r\n ViewChild,\r\n AfterViewInit,\r\n Inject,\r\n PLATFORM_ID,\r\n OnDestroy,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n} from \"@angular/core\";\r\nimport { MyapiService } from \"src/app/services/myapi.service\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { PointOfsaleModule } from \"src/app/models/point-ofsale/point-ofsale.module\";\r\nimport { SearchFlightModule } from \"src/app/models/search-flight/search-flight.module\";\r\nimport { ActivatedRoute, Router,NavigationEnd } from \"@angular/router\";\r\nimport { SessionService } from \"src/app/services/session.service\";\r\nimport airportar from \"src/assets/airports/airportar.json\";\r\nimport airporten from \"src/assets/airports/airporten.json\";\r\nimport { selectAppCurrency, selectAppPOS, State } from \"../store/selectors\";\r\n\r\nimport {\r\n faAngleDown,\r\n faInfoCircle,\r\n faMinusCircle,\r\n faPlusCircle,\r\n faTimes,\r\n faCheck,\r\n faTimesCircle,\r\n faMapMarker,\r\n faPlane,\r\n\r\n faExchangeAlt,\r\n faSearch,\r\n faCaretDown\r\n} from \"@fortawesome/free-solid-svg-icons\";\r\nimport { MatIconRegistry } from \"@angular/material/icon\";\r\nimport { DomSanitizer } from \"@angular/platform-browser\";\r\nimport { AirportCodeService } from \"../services/airport-code.service\";\r\nimport { selectSettingsFeature } from \"../store/selectors\";\r\nimport { Store } from \"@ngrx/store\";\r\nimport { FlightServiceService } from \"../services/flight-service.service\";\r\nimport { cFlightSearchs, loadFlightSearchs, updateFlightSummaryData, updateFlightType } from \"../store/flight-search/flight-search.actions\";\r\nimport { take } from \"rxjs/internal/operators/take\";\r\nimport { IconProp } from \"@fortawesome/fontawesome-svg-core\";\r\nimport { CurrencyModule } from \"../models/currency/currency.module\";\r\nimport { setAirport } from \"../store/app-setting/app-setting.actions\";\r\n\r\nexport interface flightWithType {\r\n flightIndex: number,\r\n departType: string,\r\n landType: string\r\n}\r\n\r\n@Component({\r\n selector: \"app-searchflight\",\r\n templateUrl: \"./searchflight.component.html\",\r\n styleUrls: [\"./searchflight.component.scss\"],\r\n \r\n})\r\n\r\n\r\nexport class SearchflightComponent implements OnInit, OnDestroy {\r\n @ViewChild('roundTripCalenderTrigger') roundTripCalenderTrigger: ElementRef;\r\n @ViewChild('oneWayCalenderTrigger') oneWayCalenderTrigger: ElementRef;\r\n @ViewChild('myDatepicker') datepicker: NgbInputDatepicker;\r\n @ViewChild('roundTripCalender2') roundTripCalender2!: ElementRef;\r\n @ViewChild(\"multiCityCalenderTrigger_0\") multiCityCalenderTrigger_0: ElementRef;\r\n @ViewChild(\"multiCityCalenderTrigger_1\") multiCityCalenderTrigger_1: ElementRef;\r\n @ViewChild(\"multiCityCalenderTrigger_2\") multiCityCalenderTrigger_2: ElementRef;\r\n @ViewChild(\"multiCityCalenderTrigger_3\") multiCityCalenderTrigger_3: ElementRef;\r\n date1;\r\n date2;\r\n date3;\r\n date4;\r\n alertDate: boolean = false;\r\n\r\n hoveredDate: NgbDate | null = null;\r\n fromDate: NgbDate;\r\n toDate: NgbDate | null = null;\r\n fromDateBinding: Date[] = [];\r\n toDateBinding: any = null;\r\n flightList :any ;\r\n selectedCurrency$: Observable = this.store.select(selectAppCurrency);\r\n adultAlert: boolean = false;\r\n maxPassangers: boolean = false;\r\n infentMax: boolean = false;\r\n faAngleDown = faAngleDown;\r\n faTimes = faTimes;\r\n faPlusCircle = faPlusCircle;\r\n faExchangeAlt = faExchangeAlt;\r\n faInfoCircle = faInfoCircle;\r\n firstDate:NgbDate;\r\n @ViewChild('popOverAirport') public popOverAirport: NgbPopover;\r\n openClass: boolean = false;\r\n searchFlight?: FormGroup;\r\n faCaretDown = faCaretDown as IconProp;\r\n faSearch = faSearch as IconProp;\r\n @Output() research: EventEmitter = new EventEmitter();\r\n maxinfent: number = 1;\r\n maxnumber: number = 9;\r\n //passsenger\r\n adults = [1, 2, 3, 4, 5, 6, 7, 8, 9];\r\n child = [1, 2, 3, 4, 5, 6, 7, 8, 9];\r\n infentL = [1, 2, 3, 4, 5, 6, 7, 8, 9];\r\n travellerNo = [1, 2, 3, 4, 5, 6, 7, 8, 9];\r\n vAdults = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];\r\n vChild = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];\r\n vInfent = [1, 2, 3, 4];\r\n\r\n flightsnumber: number = 0;\r\n cities: CitiesModule[] = [];\r\n citiesar: CitiesModule[] = [];\r\n citiesen: CitiesModule[] = [];\r\n returnlink: Subscription = new Subscription();\r\n citiesNames: string[] = [];\r\n citiesCode: string[] = [];\r\n pointof: PointOfsaleModule = new PointOfsaleModule(\r\n \"\",\r\n \"\",\r\n \"\",\r\n \"\",\r\n \"\",\r\n \"AE\",\r\n \"AE\",\r\n \"\",\r\n \"\",\r\n false,\r\n \"\",\r\n 0,\r\n 0,\r\n \"etyety\",\r\n \"erty\",\r\n \"erty\",\r\n \"AED\",\r\n \"ar\",\r\n \"\",\r\n \"\"\r\n );\r\n datainput?: FlightSearchResult;\r\n storage: boolean = false;\r\n localform?: object;\r\n flightForm?: object;\r\n @ViewChild(\"picker\", { static: false }) picker: any = '';\r\n message: Subject = new BehaviorSubject(\"loading :(\");\r\n\r\n private subscription: Subscription = new Subscription();\r\n pointofSaleCity: any;\r\n return = new FormControl('');\r\n roundType: boolean = false;\r\n multiDest: boolean = false;\r\n single: boolean = true;\r\n flightN: number = 0;\r\n POS$ = this.store.select(selectAppPOS);\r\n lang: string = \"en\";\r\n lan: string = localStorage.getItem(\"lang\") ? localStorage.getItem(\"lang\") as string : 'en';\r\n setting$ = this.store.select(selectSettingsFeature);\r\n\r\n\r\n @Input() homePage: boolean = true;\r\n isHomeComponent: boolean = false;\r\n minDate = this.calendar.getToday();\r\n\tmodel: NgbDateStruct;\r\n departureDate: NgbDate;\r\n arrivalDate: NgbDate;\r\n @ViewChild('departureDatepicker', { static: false })\r\n private departureDatepicker: NgbDatepicker;\r\n\r\n @ViewChild('arrivalDatepicker', { static: false })\r\n private arrivalDatepicker: NgbDatepicker;\r\n\r\n constructor(\r\n private Router: Router,\r\n private calendar: NgbCalendar,\r\n private myApi: MyapiService,\r\n private cdr: ChangeDetectorRef,\r\n private datePipe: DatePipe,\r\n iconRegistry: MatIconRegistry,\r\n sanitizer: DomSanitizer,\r\n private route: ActivatedRoute,\r\n private city: CodToCityPipe,\r\n public translate: TranslateService,\r\n private carruncy: CurruncyServiceService,\r\n private session: SessionService,\r\n private readonly store: Store,\r\n private changeDetectorRef: ChangeDetectorRef,\r\n public formatter: NgbDateParserFormatter,\r\n public sharedData: FlightServiceService,\r\n private elementRef: ElementRef\r\n\r\n\r\n ) {\r\n iconRegistry.addSvgIcon(\r\n \"switch-arrow\",\r\n sanitizer.bypassSecurityTrustResourceUrl(\"assets/img/sw\")\r\n );\r\n this.fromDate = this.calendar.getToday();\r\n this.toDate = this.calendar.getNext(this.fromDate, 'd', 10);\r\n //animation logic\r\n this.Router.events.subscribe(event => {\r\n if (event instanceof NavigationEnd) {\r\n this.isHomeComponent = (this.route.snapshot.url[0].path === 'home');\r\n }\r\n });\r\n \r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.subscription.add(\r\n this.setting$.subscribe((v) => {\r\n this.lan = v.currentLang;\r\n this.pointof = v.pos;\r\n \r\n console.log(\"search point hereeeeee\" , this.pointof)\r\n\r\n\r\n }));\r\n \r\n this.subscription.add(\r\n this.POS$.subscribe((result: PointOfsaleModule) => {\r\n if (result) {\r\n this.pointofSaleCity = result.city;\r\n if (!result.airport) {\r\n this.store.dispatch(setAirport({ data: this.setDcity(result) }));\r\n }\r\n\r\n }\r\n return\r\n }));\r\n if (localStorage.getItem(\"form\")) {\r\n console.log(\"formlast\", JSON.parse(localStorage.getItem(\"form\") as string));\r\n let formo: any = JSON.parse(localStorage.getItem(\"form\") as string);\r\n this.storage = true;\r\n this.searchFlight = new FormGroup({\r\n // intial flightType is one way//\r\n // to set onther flight type as intial stae make sure to\r\n //add Fligts in the Flights array\r\n\r\n flightType: new FormControl(formo[\"flightType\"], [Validators.required]),\r\n Direct: new FormControl(formo[\"Direct\"], [Validators.required]),\r\n Flights: new FormArray([], [Validators.required]),\r\n\r\n returnDate: new FormControl(formo[\"returnDate\"]),\r\n passengers: new FormGroup(\r\n {\r\n adults: new FormControl(formo[\"passengers\"][\"adults\"], [\r\n Validators.required,\r\n Validators.min(1),\r\n ]),\r\n child: new FormControl(formo[\"passengers\"][\"child\"], [\r\n Validators.required,\r\n Validators.min(0),\r\n ]),\r\n infent: new FormControl(formo[\"passengers\"][\"infent\"], [\r\n Validators.required,\r\n Validators.max(this.maxinfent),\r\n Validators.min(0),\r\n ]),\r\n },\r\n [this.maxValueReached.bind(this)]\r\n ),\r\n class: new FormControl(formo[\"class\"], [Validators.required]),\r\n });\r\n this.return.setValue(formo[\"returnDate\"]);\r\n this.intialLocal(this.searchFlight?.get(\"flightType\")?.value);\r\n this.subscription.add(\r\n this.flightType.valueChanges.subscribe((value) => {\r\n\r\n this.intial(this.flightType.value);\r\n this.cdr.detectChanges();\r\n\r\n }));\r\n this.subscription.add(\r\n this.searchFlight.get(\"passengers.adults\")?.valueChanges?.subscribe((value) => {\r\n this.setmaxinfentval(value);\r\n this.searchFlight?.get(\"passengers.infent\")?.updateValueAndValidity();\r\n })\r\n );\r\n\r\n this.flightsnumber = this.searchFlight?.get(\"Flights\")?.value.length;\r\n this.calendersBinding();\r\n } else {\r\n this.fromDateBinding.push(new Date(this.fromDate.year, this.fromDate.month - 1, this.fromDate.day));\r\n this.fromDateBinding.push(new Date(this.fromDate.year, this.fromDate.month - 1, this.fromDate.day + 5));\r\n this.toDateBinding = new Date(this.toDate.year, this.toDate.month - 1, this.toDate.day);\r\n this.searchFlight = new FormGroup({\r\n // intial flightType is one way//\r\n // to set onther flight type as intial stae make sure to\r\n //add Fligts in the Flights array\r\n flightType: new FormControl(\"RoundTrip\", [Validators.required]),\r\n Direct: new FormControl(false, [Validators.required]),\r\n Flights: new FormArray([], [Validators.required]),\r\n returnDate: new FormControl(),\r\n passengers: new FormGroup(\r\n {\r\n adults: new FormControl(1, [\r\n Validators.required,\r\n Validators.min(1),\r\n ]),\r\n child: new FormControl(0, [Validators.required, Validators.min(0)]),\r\n infent: new FormControl(0, [\r\n Validators.required,\r\n Validators.max(this.maxinfent),\r\n Validators.min(0),\r\n ]),\r\n },\r\n [this.maxValueReached.bind(this)]\r\n ),\r\n class: new FormControl(\"Economy\", [Validators.required]),\r\n });\r\n this.searchFlight.get(\"Flights\")?.get(\"0\")?.get(\"departingD\").setValue(this.fromDateBinding[0])\r\n this.searchFlight.get(\"Flights\")?.get(\"1\")?.get(\"departingD\").setValue(this.fromDateBinding[0])\r\n this.onAddFlight();\r\n\r\n this.subscription.add(\r\n this.searchFlight?.get(\"flightType\")?.valueChanges.subscribe((value) => {\r\n\r\n this.intial(this.flightType.value);\r\n })\r\n );\r\n this.searchFlight?.get(\"flightType\").setValue(\"RoundTrip\");\r\n this.subscription.add(this.searchFlight?.get(\"passengers.adults\")?.valueChanges.subscribe((value) => {\r\n this.setmaxinfentval(value);\r\n })\r\n );\r\n this.searchFlight.get(\"Flights\")?.get(\"0\")?.get(\"departingD\").setValue(this.fromDateBinding[0])\r\n this.searchFlight.get(\"Flights\")?.get(\"1\")?.get(\"departingD\").setValue(this.fromDateBinding[0])\r\n\r\n this.searchFlight.get(\"returnDate\").setValue(this.toDateBinding)\r\n this.flightsnumber = this.searchFlight?.get(\"Flights\")?.value.length;\r\n }\r\n\r\n //set inital values of the form\r\n this.citiesar = airportar;\r\n this.citiesNameExtract(this.citiesar);\r\n this.citiesen = airporten;\r\n this.citiesNameExtract(this.citiesen);\r\n if (localStorage.getItem(\"lang\") == \"en\" || !localStorage.getItem(\"lang\")) {\r\n this.cities = this.citiesen;\r\n this.cities = [...this.citiesen, ...this.citiesar];\r\n this.citiesNameExtract(this.cities);\r\n } else {\r\n this.cities = this.citiesar;\r\n this.cities = [...this.citiesar, ...this.citiesen];\r\n this.citiesNameExtract(this.cities);\r\n }\r\n\r\n // check on change langs \r\n this.subscription.add(\r\n this.translate.onLangChange.subscribe((result) => {\r\n this.lang = result.lang;\r\n if (result.lang == \"ar\") {\r\n this.flightLangMapper(this.citiesar);\r\n this.cities = [...this.citiesar, ...this.citiesen];\r\n this.citiesNameExtract(this.cities);\r\n } else {\r\n this.flightLangMapper(this.citiesen);\r\n this.cities = [...this.citiesen, ...this.citiesar];\r\n this.citiesNameExtract(this.cities);\r\n }\r\n })\r\n );\r\n\r\n this.subscription.add(\r\n this.searchFlight.get(\"Flights\")?.valueChanges.subscribe((val) => {\r\n this.flightN = val.length;\r\n this.flightList = this.bendingFlights();\r\n \r\n })\r\n );\r\n this.translate.onLangChange.subscribe((event) => {\r\n console.log(event.translations.datepicker\r\n , 'testtt');\r\n this.cdr.detectChanges();\r\n\r\n // Reinitialize the datepicker after the language changes\r\n if (this.datepicker) {\r\n this.cdr.detectChanges();\r\n }\r\n });\r\n\r\n }\r\n \r\n //set point of sale as defult departing cit\r\n setDcity(point: PointOfsaleModule): string {\r\n if (point) {\r\n let city = point.city.toLocaleLowerCase();\r\n let capital = point.country_capital.toLocaleLowerCase();\r\n\r\n let enairport = this.citiesen.filter(air =>\r\n (air.cityName.toLocaleLowerCase() == city) ? air.cityName.toLocaleLowerCase() == city : air.cityName.toLocaleLowerCase() == capital\r\n )[0];\r\n // let arairport = this.citiesar.filter(air => air.airportCode === enairport.airportCode)[0];\r\n return enairport.airportCode\r\n } else {\r\n return undefined\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n\r\n this.changeDetectorRef.detectChanges();\r\n \r\n }\r\n public get flightType(): FormControl {\r\n return this.searchFlight?.get('flightType') as FormControl\r\n }\r\n public get CClass(): FormControl {\r\n return this.searchFlight?.get('class') as FormControl\r\n }\r\n public get flightsArray(): FormArray {\r\n return this.searchFlight?.get('Flights') as FormArray\r\n }\r\n public get returnDate(): FormControl {\r\n return this.searchFlight?.get('returnDate') as FormControl;\r\n }\r\n\r\n public get totalPassangers(): Number {\r\n return Number(this.searchFlight?.get('passengers').get('adults').value) +\r\n Number(this.searchFlight?.get('passengers').get('child').value) +\r\n Number(this.searchFlight?.get('passengers').get('infent').value)\r\n }\r\n\r\n stopMenuClosing(event: any) {\r\n event.stopPropagation();\r\n }\r\n\r\n roundTripI() {\r\n const flight = new FormGroup(\r\n {\r\n departing: new FormControl(\"\"),\r\n landing: new FormControl(\"\"),\r\n departingD: new FormControl(),\r\n },\r\n [this.invalidFlightDis]\r\n );\r\n\r\n this.removeArrayControllers();\r\n\r\n const Rflight = new FormGroup(\r\n {\r\n departing: new FormControl(\r\n this.searchFlight?.get(\"Flights\")?.get(\"0\")?.get(\"landing\")?.setValidators([Validators.required, this.citynotfound.bind(this)])\r\n ),\r\n landing: new FormControl(\r\n this.searchFlight?.get(\"Flights\")?.get(\"0\")?.get(\"departing\").setValidators([Validators.required, this.citynotfound.bind(this)])\r\n ),\r\n departingD: new FormControl(this.searchFlight.get(\"returnDate\").value),\r\n },\r\n [this.invalidFlightDis]\r\n );\r\n\r\n (this.searchFlight.get(\"Flights\")).push(Rflight);\r\n }\r\n\r\n setreturn() {\r\n if (this.searchFlight.get(\"returnDate\").value != null) {\r\n (this.searchFlight.get(\"Flights\")).updateValueAndValidity();\r\n return (this.searchFlight.get(\"Flights\"))[\"value\"][1][\r\n \"departingD\"\r\n ];\r\n } else {\r\n return (this.searchFlight.get(\"Flights\"))[\"value\"][0][\r\n \"departingD\"\r\n ];\r\n }\r\n }\r\n updateReturn(myvalue) {\r\n this.searchFlight\r\n .get(\"Flights\")\r\n .get(\"1\")\r\n .get(\"departingD\")\r\n .setValue(myvalue),\r\n this.searchFlight\r\n .get(\"Flights\")\r\n .get(\"1\")\r\n .get(\"departing\")\r\n .setValue(\r\n this.searchFlight.get(\"Flights\").get(\"0\").get(\"landing\").value\r\n ),\r\n this.searchFlight\r\n .get(\"Flights\")\r\n .get(\"1\")\r\n .get(\"landing\")\r\n .setValue(\r\n this.searchFlight.get(\"Flights\").get(\"0\").get(\"departing\").value\r\n );\r\n }\r\n\r\n intial(mvalue: string) {\r\n if (mvalue == \"oneway\") {\r\n this.single = true;\r\n this.roundType = false;\r\n this.multiDest = false;\r\n if (this.returnlink) {\r\n this.returnlink.unsubscribe();\r\n }\r\n this.removeArrayControllers();\r\n this.searchFlight\r\n .get(\"returnDate\")\r\n .setValidators(Validators.nullValidator);\r\n this.searchFlight.get(\"returnDate\").updateValueAndValidity();\r\n if ((this.searchFlight.get(\"Flights\")).length < 1) {\r\n this.onAddFlight();\r\n }\r\n\r\n return;\r\n }\r\n if (mvalue == \"RoundTrip\") {\r\n this.single = false;\r\n this.multiDest = false;\r\n this.roundType = true;\r\n\r\n this.returnlink = this.searchFlight\r\n .get(\"returnDate\")\r\n .valueChanges.subscribe((myvalue) => {\r\n this.searchFlight\r\n .get(\"Flights\")\r\n .get(\"1\")\r\n .get(\"departingD\")\r\n .setValue(myvalue),\r\n this.searchFlight\r\n .get(\"Flights\")\r\n .get(\"1\")\r\n .get(\"departing\")\r\n .setValue(\r\n this.searchFlight.get(\"Flights\").get(\"0\").get(\"landing\").value\r\n ),\r\n this.searchFlight\r\n .get(\"Flights\")\r\n .get(\"1\")\r\n .get(\"landing\")\r\n .setValue(\r\n this.searchFlight.get(\"Flights\").get(\"0\").get(\"departing\").value\r\n );\r\n });\r\n this.roundTripI();\r\n this.searchFlight.get(\"returnDate\").setValidators(Validators.required);\r\n this.searchFlight.get(\"returnDate\").updateValueAndValidity();\r\n\r\n return;\r\n }\r\n\r\n if (mvalue == \"Multicity\" || \"multicity\") {\r\n this.single = false;\r\n this.multiDest = true;\r\n this.roundType = false;\r\n if (this.returnlink) {\r\n this.returnlink.unsubscribe();\r\n }\r\n\r\n this.removeArrayControllers();\r\n this.searchFlight\r\n .get(\"returnDate\")\r\n .setValidators(Validators.nullValidator);\r\n this.searchFlight.get(\"returnDate\").updateValueAndValidity();\r\n this.onAddFlight();\r\n }\r\n }\r\n\r\n //reset the value to thatof local storage\r\n intialLocal(mvalue: string) {\r\n this.localform = JSON.parse(localStorage.getItem(\"form\"));\r\n if (mvalue == \"oneway\") {\r\n if (this.returnlink) {\r\n this.returnlink.unsubscribe();\r\n }\r\n this.removeArrayControllers();\r\n this.searchFlight\r\n .get(\"returnDate\")\r\n .setValidators(Validators.nullValidator);\r\n this.searchFlight.get(\"returnDate\").updateValueAndValidity();\r\n (this.searchFlight.get(\"Flights\")).push(\r\n new FormGroup(\r\n {\r\n departing: new FormControl(\r\n this.localform[\"Flights\"][0][\"departing\"],\r\n [Validators.required, this.citynotfound.bind(this)]\r\n ),\r\n landing: new FormControl(this.localform[\"Flights\"][0][\"landing\"], [\r\n Validators.required,\r\n this.citynotfound.bind(this),\r\n ]),\r\n departingD: new FormControl(\r\n this.localform[\"Flights\"][0][\"departingD\"],\r\n [Validators.required]\r\n ),\r\n },\r\n [this.invalidFlightDis]\r\n )\r\n );\r\n\r\n return;\r\n }\r\n if (mvalue == \"RoundTrip\") {\r\n if (this.returnlink) {\r\n this.returnlink.unsubscribe();\r\n }\r\n this.removeArrayControllers();\r\n this.searchFlight?.get(\"returnDate\")?.setValidators(Validators.nullValidator);\r\n this.searchFlight?.get(\"returnDate\")?.updateValueAndValidity();\r\n (this.searchFlight?.get(\"Flights\")).push(\r\n new FormGroup(\r\n {\r\n departing: new FormControl(\r\n (this.localform[\"Flights\"][0][\"departing\"]), [Validators.required, this.citynotfound.bind(this)]\r\n ),\r\n landing: new FormControl(this.localform[\"Flights\"][0][\"landing\"], [\r\n Validators.required,\r\n this.citynotfound.bind(this),\r\n ]),\r\n departingD: new FormControl(\r\n this.localform[\"Flights\"][0][\"departingD\"],\r\n [Validators.required]\r\n ),\r\n },\r\n [this.invalidFlightDis]\r\n )\r\n );\r\n (this.searchFlight.get(\"Flights\")).push(\r\n new FormGroup(\r\n {\r\n departing: new FormControl(\r\n this.localform[\"Flights\"][0][\"landing\"],\r\n [Validators.required, this.citynotfound.bind(this)]\r\n ),\r\n landing: new FormControl(\r\n this.localform[\"Flights\"][0][\"departing\"],\r\n [Validators.required, this.citynotfound.bind(this)]\r\n ),\r\n departingD: new FormControl(this.localform[\"returnDate\"], [\r\n Validators.required,\r\n ]),\r\n },\r\n [this.invalidFlightDis]\r\n )\r\n );\r\n\r\n return;\r\n }\r\n\r\n if (mvalue == \"Multicity\" || \"multicity\") {\r\n if (this.returnlink) {\r\n this.returnlink.unsubscribe();\r\n }\r\n this.removeArrayControllers();\r\n this.searchFlight\r\n .get(\"returnDate\")\r\n .setValidators(Validators.nullValidator);\r\n this.searchFlight.get(\"returnDate\").updateValueAndValidity();\r\n let array: [] = [];\r\n array = this.localform[\"Flights\"];\r\n\r\n array.forEach((element) => {\r\n (this.searchFlight.get(\"Flights\")).push(\r\n new FormGroup(\r\n {\r\n departing: new FormControl(element[\"departing\"], [\r\n Validators.required,\r\n this.citynotfound.bind(this),\r\n ]),\r\n landing: new FormControl(element[\"landing\"], [\r\n Validators.required,\r\n this.citynotfound.bind(this),\r\n ]),\r\n departingD: new FormControl(element[\"departingD\"], [\r\n Validators.required,\r\n ]),\r\n },\r\n [this.invalidFlightDis]\r\n )\r\n );\r\n });\r\n }\r\n }\r\n // city name to citycode\r\n cityNametoCitycode(cityname: string): string {\r\n let code: string = \"\";\r\n this.cities.forEach((element) => {\r\n if (element.cityName + \"(\" + element.airportCode + \")\" == cityname) {\r\n code = element.airportCode;\r\n }\r\n });\r\n return code;\r\n }\r\n //\r\n\r\n // to cities\r\n tocity(code: string): string {\r\n let city: string = \"\";\r\n this.cities.forEach((element) => {\r\n if (code.toLocaleLowerCase() == element.cityCode.toLocaleLowerCase()) {\r\n city = element.cityName;\r\n }\r\n });\r\n return city;\r\n }\r\n\r\n // switch destenation\r\n switchDes(item: FormGroup) {\r\n let value1 = item.get(\"landing\").value;\r\n let value2 = item.get(\"departing\").value;\r\n item.get(\"departing\").setValue(value1);\r\n item.get(\"landing\").setValue(value2);\r\n item.updateValueAndValidity();\r\n }\r\n\r\n //to match the formGroups name with the Flights array index\r\n indexadd1(index: number) {\r\n return index + 1;\r\n }\r\n\r\n //call to rest form array\r\n removeArrayControllers() {\r\n while ((this.searchFlight.get(\"Flights\")).length > 1) {\r\n (this.searchFlight.get(\"Flights\")).removeAt(1);\r\n }\r\n }\r\n\r\n // to add more flights to flights array by add buton\r\n onAddFlight() {\r\n // debugger\r\n let i = (this.searchFlight.get(\"Flights\")).length;\r\n let reval = \"\";\r\n let land = \"\";\r\n if (i > 0) {\r\n reval = (this.searchFlight.get(\"Flights\")).value[i - 1][\r\n \"landing\"\r\n ];\r\n land = \"\";\r\n }\r\n // change depart & land city init 3la 7sab lang\r\n\r\n (this.searchFlight.get(\"Flights\")).push(\r\n new FormGroup(\r\n {\r\n departing: new FormControl(reval, [\r\n Validators.required,\r\n this.citynotfound.bind(this),\r\n ]),\r\n landing: new FormControl(land, [\r\n Validators.required,\r\n this.citynotfound.bind(this),\r\n ]),\r\n departingD: new FormControl('', [Validators.required]),\r\n },\r\n [this.invalidFlightDis]\r\n )\r\n );\r\n this.flightsnumber = this.searchFlight.get(\"Flights\").value.length;\r\n this.fromDateBinding.push(undefined)\r\n }\r\n\r\n // invalid flight number\r\n maxFlights() {\r\n if (this.flightsnumber >= 4) {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n }\r\n // choose date from depart open calender returndata\r\n reOpenCalendar() {\r\n let self = this;\r\n setTimeout(() => {\r\n self.picker.open();\r\n }, 50);\r\n }\r\n //match Flights form array values with FlightInfoModule\r\n bendingFlights() {\r\n let flightout: FlightsInfoModule[] = [];\r\n if (this.searchFlight.get(\"flightType\").value == 'RoundTrip') {\r\n const roundElement1 = (this.searchFlight.get(\"Flights\")).controls[0];\r\n let depart = this.cityNametoCitycode(roundElement1.value['departing'])\r\n let landing = this.cityNametoCitycode(roundElement1.value['landing'])\r\n let flight = new FlightsInfoModule(\r\n depart,\r\n landing,\r\n this.datePipe.transform(roundElement1.value['departingD'], 'MMMM dd, y'));\r\n flightout.push(flight);\r\n\r\n const roundElement2 = (this.searchFlight.get(\"Flights\")).controls[0];\r\n let flight2 = new FlightsInfoModule(\r\n landing,\r\n depart,\r\n this.datePipe.transform(this.returnDate.value, 'MMMM dd, y'));\r\n flightout.push(flight2);\r\n\r\n return flightout\r\n }\r\n for (let index = 0; index < (this.searchFlight.get(\"Flights\")).length; index++) {\r\n const element = (this.searchFlight.get(\"Flights\")).controls[index];\r\n \r\n let flight = new FlightsInfoModule(\r\n this.cityNametoCitycode(element.value['departing']),\r\n this.cityNametoCitycode(element.value['landing']),\r\n this.datePipe.transform(element.value['departingD'], 'MMMM dd, y'));\r\n flightout.push(flight);\r\n }\r\n\r\n return flightout;\r\n }\r\n\r\n citiesNameExtract(cities: CitiesModule[]) {\r\n cities.forEach(element => {\r\n let city = element.cityName\r\n // let airportName = element.airportName\r\n let airportcode = element.airportCode\r\n this.citiesNames.push(city + '(' + airportcode + ')');\r\n });\r\n }\r\n\r\n //return cites code\r\n citiescode() {\r\n this.cities.forEach((element) => {\r\n let city = element.cityCode.toLowerCase();\r\n this.citiesCode.push(city);\r\n });\r\n }\r\n // validation passenger\r\n validatePassangersList(\r\n adultsNumber: number,\r\n child: number,\r\n infent: number\r\n ): passengLists {\r\n\r\n let total = adultsNumber + child + infent;\r\n let AvalidN = 9 - (child + infent);\r\n let CvalidN = 9 - (adultsNumber + infent);\r\n let IvalidN = 9 - (adultsNumber + child);\r\n let validInf = adultsNumber > IvalidN ? IvalidN : adultsNumber;\r\n let Adl =\r\n adultsNumber > AvalidN\r\n ? Array.from(Array(adultsNumber + 1).keys())\r\n : Array.from(Array(AvalidN + 1).keys());\r\n let Chl =\r\n child > CvalidN\r\n ? Array.from(Array(child + 1).keys())\r\n : Array.from(Array(CvalidN + 1).keys());\r\n let infl =\r\n infent > IvalidN\r\n ? Array.from(Array(infent + 1).keys())\r\n : Array.from(Array(validInf + 1).keys());\r\n return {\r\n adult: Adl,\r\n child: Chl,\r\n infent: infl,\r\n };\r\n }\r\n //infents number setup\r\n setmaxinfentval(value) {\r\n this.maxinfent = value;\r\n this.searchFlight\r\n .get(\"passengers.infent\")\r\n .setValidators([Validators.max(this.maxinfent)]);\r\n }\r\n //get curr\r\n getcurr() {\r\n let currentCurr: string = ''\r\n this.subscription.add(this.selectedCurrency$.pipe(take(1)).subscribe((curr) => {\r\n if (curr) {\r\n currentCurr = curr.Currency_Code\r\n }\r\n else {\r\n currentCurr = 'KWD'\r\n }\r\n }))\r\n return currentCurr\r\n }\r\n // to submit the form and call the search api\r\n onSubmit() {\r\n this.searchFlight.updateValueAndValidity();\r\n if (this.searchFlight.get('flightType').value == 'RoundTrip') {\r\n this.updateReturn(this.searchFlight.get('returnDate').value)\r\n }\r\n this.searchFlight.get(\"Flights\")?.get(\"1\")?.get(\"departingD\").setValue(this.fromDateBinding[1])\r\n\r\n if (this.searchFlight.valid) {\r\n console.log(\"flightarrayData\", this.searchFlight.value)\r\n\r\n let searchApi: SearchFlightModule = new SearchFlightModule(\r\n localStorage.getItem(\"lang\") || \"en\",\r\n this.getcurr(),\r\n this.pointof.country? this.pointof.country:\"kw\",\r\n \r\n this.searchFlight.get(\"flightType\").value,\r\n \r\n this.myApi.flightInfoFormatter(this.bendingFlights()),\r\n this.myApi.passingerFormatter([\r\n this.searchFlight.get(\"passengers.adults\").value,\r\n this.searchFlight.get(\"passengers.child\").value,\r\n this.searchFlight.get(\"passengers.infent\").value,\r\n ]),\r\n this.searchFlight.get(\"class\").value,\r\n this.id(),\r\n this.searchFlight.get(\"Direct\").value,\r\n \"all\"\r\n );\r\n\r\n let language = searchApi.lan;\r\n let currency = searchApi.Currency;\r\n let SearchPoint = searchApi.pointOfReservation\r\n ? searchApi.pointOfReservation\r\n : \"kw\";\r\n let flightType = searchApi.flightType;\r\n let flightInfo = searchApi.flightsInfo;\r\n let searchId = searchApi.serachId;\r\n let passengers = searchApi.passengers;\r\n let Cclass = searchApi.Cclass;\r\n let directOnly = searchApi.showDirect; //true Or False \r\n this.session.setSessionTime(30);\r\n this.session.startTimer();\r\n\r\n\r\n this.searchFlight.updateValueAndValidity();\r\n let searchObject = {\r\n flightType: this.searchFlight.get(\"flightType\").value,\r\n Direct: this.searchFlight.get(\"Direct\").value,\r\n returnDate: this.searchFlight.get(\"returnDate\").value,\r\n passengers: this.searchFlight.get(\"passengers\").value,\r\n class: this.searchFlight.get(\"class\").value,\r\n Flights: [],\r\n };\r\n this.flightList = this.bendingFlights()\r\n for (var i = 0; i < this.flightList.length; i++) {\r\n searchObject.Flights.push({\r\n departing: this.flightList[i].departingCity,\r\n departingD: this.flightList[i].departionDate,\r\n landing: this.flightList[i].arrivalCity,\r\n });\r\n }\r\n localStorage.setItem(\"form\", JSON.stringify(this.searchFlight.value));\r\n \r\n this.Router.navigate([\r\n \"/flightResult\",\r\n language,\r\n currency,\r\n SearchPoint,\r\n flightType,\r\n flightInfo,\r\n searchId,\r\n passengers,\r\n Cclass,\r\n directOnly,\r\n ]);\r\n let search: SearchFlightModule = new SearchFlightModule(\r\n language,\r\n currency,\r\n SearchPoint,\r\n flightType,\r\n flightInfo,\r\n passengers,\r\n Cclass,\r\n searchId,\r\n directOnly,\r\n \"All\"\r\n );\r\n localStorage.setItem(\"lastSearchModule\", JSON.stringify(search))\r\n this.sharedData.lastSearchModule = search;\r\n this.store.dispatch(updateFlightSummaryData({ searchData: this.searchFlight.value }));\r\n this.store.dispatch(loadFlightSearchs({ search: search }));\r\n\r\n } \r\n }\r\n id() {\r\n let date = new Date();\r\n let myId =\r\n date.getFullYear() +\r\n \"B\" +\r\n date.getUTCMonth() +\r\n \"I\" +\r\n date.getUTCDay() +\r\n \"S\" +\r\n date.getMilliseconds() +\r\n \"H\" +\r\n Math.floor(Math.random() * (9 - 0 + 1)) +\r\n 0 +\r\n \"B\" +\r\n Math.floor(Math.random() * (9 - 0 + 1)) +\r\n 0 +\r\n \"I\" +\r\n Math.floor(Math.random() * (9 - 0 + 1)) +\r\n 0 +\r\n \"S\" +\r\n Math.floor(Math.random() * (9 - 0 + 1)) +\r\n 0 +\r\n \"H\" +\r\n Math.floor(Math.random() * (9 - 0 + 1)) +\r\n 0 +\r\n \"I\" +\r\n Math.floor(Math.random() * (9 - 0 + 1)) +\r\n 0;\r\n return myId;\r\n }\r\n\r\n //other functions end\r\n //custom validators start\r\n // departing and landing not the same\r\n invalidFlightDis(flight: FormGroup): { [a: string]: boolean } {\r\n if (flight.get(\"departing\").value === flight.get(\"landing\").value) {\r\n return { distenationNotValid: true };\r\n }\r\n return null;\r\n }\r\n radioChange(event: any) {\r\n this.sharedData.flightTypeInSearchBox = event.value;\r\n }\r\n // retun today date\r\n todayDate() {\r\n let date = new Date();\r\n return date.toISOString().split(\"T\")[0];\r\n }\r\n\r\n // passengers number cant be more than 9\r\n maxValueReached(search: FormGroup): { [b: string]: boolean } {\r\n if (\r\n search.get(\"adults\").value +\r\n search.get(\"child\").value +\r\n search.get(\"infent\").value >\r\n 9\r\n ) {\r\n return { maxReched: true };\r\n }\r\n return null;\r\n }\r\n\r\n citynotfound(input: FormControl): { [c: string]: boolean } {\r\n if (this.citiesNames.indexOf(input.value) === -1) {\r\n return { notValidcity: true };\r\n }\r\n return null;\r\n }\r\n\r\n //set values for the form\r\n // return date coing value\r\n returndateInput() {\r\n if (this.datainput.searchCriteria.flightType == \"roundtrip\") {\r\n return this.datainput.searchCriteria.flights[1].departingOnDate;\r\n } else {\r\n return this.todayDate();\r\n }\r\n }\r\n selectClass(classValue: string) {\r\n this.searchFlight.get(\"class\").setValue(classValue);\r\n }\r\n selectFlightType(value: string) {\r\n this.searchFlight.get(\"flightType\").setValue(value);\r\n }\r\n\r\n // // return array of flights\r\n onAddFlightinput() {\r\n for (\r\n let index = 0;\r\n index < this.datainput.searchCriteria.flights.length;\r\n index++\r\n ) {\r\n const element = this.datainput.searchCriteria.flights[index];\r\n (this.searchFlight.get(\"Flights\")).push(\r\n new FormGroup(\r\n {\r\n departing: new FormControl(element.departingFrom, [\r\n Validators.required,\r\n this.citynotfound.bind(this),\r\n ]),\r\n landing: new FormControl(\r\n this.city.transform(element.arrivingTo, this.cities),\r\n [Validators.required, this.citynotfound.bind(this)]\r\n ),\r\n departingD: new FormControl(element.departingOnDate, [\r\n Validators.required,\r\n ]),\r\n },\r\n [this.invalidFlightDis]\r\n )\r\n );\r\n }\r\n this.flightsnumber = this.searchFlight.get(\"Flights\").value.length;\r\n\r\n }\r\n // remove flight from the array\r\n removeflight(flightIndex: number) {\r\n (this.searchFlight.get(\"Flights\")).removeAt(flightIndex);\r\n this.fromDateBinding.splice(flightIndex, 1)\r\n }\r\n //remove all Flights\r\n resetFlights(){\r\n let arrLength = (this.searchFlight.get(\"Flights\"))?.length;\r\n for(let i =2; i< arrLength ; i++){\r\n (this.searchFlight.get(\"Flights\")).removeAt(arrLength-i);\r\n }\r\n }\r\n\r\n //make departure of next flight of multiFlight be landing of prev\r\n updateDepMulti(city: any, i: number) {\r\n if (this.flightType.value === \"Multicity\" || \"multicity\") {\r\n this.searchFlight.get(\"Flights\")[\"controls\"][i + 1].get(\"departing\").setValue(city);\r\n this.searchFlight.get(\"Flights\")[\"controls\"][i + 1].get(\"departing\").updateValueAndValidity();\r\n this.searchFlight.get(\"Flights\").updateValueAndValidity();\r\n }\r\n }\r\n\r\n logReturn(val) {\r\n this.returnDate.setValue(val);\r\n }\r\n\r\n checkAirportPopUp() {\r\n if (this.popOverAirport.isOpen()) this.popOverAirport.close();\r\n }\r\n onOneWayDateSelection(date: NgbDate, flightIndex: number) {\r\n this.fromDate = date;\r\n\r\n if(this.toDate > this.fromDate)\r\n {\r\n this.toDate= this.toDate\r\n }\r\n this.fromDateBinding[flightIndex] = new Date(this.fromDate.year, this.fromDate.month - 1, this.fromDate.day);\r\n \r\n (this.searchFlight.get(\"Flights\")).at(flightIndex).get(\"departingD\").setValue(this.fromDateBinding[flightIndex]);\r\n\r\n // Open the arrival datepicker after setting the departure date\r\n this.roundTripCalender2.nativeElement.click();\r\n\r\n \r\n\r\n }\r\n closeOneWay(){\r\n this.oneWayCalenderTrigger.nativeElement.click();\r\n\r\n }\r\n onMultiCityDateSelection(date: NgbDate, flightIndex: number) {\r\n this.fromDate = date;\r\n\r\n this.fromDateBinding[flightIndex] = new Date(\r\n this.fromDate.year,\r\n this.fromDate.month - 1,\r\n this.fromDate.day\r\n );\r\n (this.searchFlight.get(\"Flights\"))\r\n .at(flightIndex)\r\n .get(\"departingD\")\r\n .setValue(this.fromDateBinding[flightIndex]);\r\n\r\n this.date1 =this.fromDateBinding[0].getTime();\r\n this.date2 =this.fromDateBinding[1].getTime();\r\n \r\n\r\n if(flightIndex == 0){\r\n this.date1 = this.fromDateBinding[flightIndex].getTime(); // convert date to number\r\n this.multiCityCalenderTrigger_0.nativeElement.click();\r\n if(this.date2 < this.date1){\r\n this.alertDate=true;\r\n }\r\n else{\r\n this.alertDate=false;\r\n }\r\n }\r\n else if(flightIndex == 1){\r\n this.date2 = this.fromDateBinding[flightIndex].getTime(); \r\n this.multiCityCalenderTrigger_1.nativeElement.click();\r\n if(this.date2 < this.date1 || this.date3 < this.date2){\r\n this.alertDate=true\r\n }\r\n else{\r\n this.alertDate=false\r\n }\r\n\r\n }\r\n else if(flightIndex == 2){\r\n this.date3 = this.fromDateBinding[flightIndex].getTime();\r\n this.multiCityCalenderTrigger_2.nativeElement.click();\r\n if(this.date3 < this.date2 || this.date4 < this.date3){\r\n this.alertDate=true\r\n }\r\n else{\r\n this.alertDate=false\r\n }\r\n }\r\n else{\r\n this.date4 = this.fromDateBinding[flightIndex].getTime();\r\n this.multiCityCalenderTrigger_3.nativeElement.click();\r\n if(this.date4 < this.date3){\r\n this.alertDate=true\r\n }\r\n else{\r\n this.alertDate=false\r\n }\r\n }\r\n // if(this.fromDateBinding[flightIndex].getTime() > this.fromDateBinding[flightIndex+1].getTime()){\r\n // this.alertDate=true;\r\n // }\r\n // else{\r\n // this.alertDate=false;\r\n // }\r\n }\r\n onDateSelection(date: NgbDate, flightIndex: number) {\r\n //when dep & return have value\r\n if(this.fromDate && this.toDate){\r\nthis.toDate = date;\r\n\r\nthis.roundTripCalenderTrigger.nativeElement.click();\r\n }\r\n //\r\n else if (!this.fromDate && !this.toDate) {\r\n this.fromDate = date;\r\n // this.datepicker.close();\r\n\r\n } \r\n else if (this.fromDate && !this.toDate && date.after(this.fromDate)) {\r\n this.toDate = date;\r\n }\r\n\r\n else {\r\n this.toDate = null;\r\n this.fromDate = date;\r\n\r\n }\r\n\r\n this.fromDateBinding[flightIndex] = new Date(this.fromDate.year, this.fromDate.month - 1, this.fromDate.day);\r\n if (this.toDate) {\r\n this.toDateBinding = new Date(this.toDate.year, this.toDate.month - 1, this.toDate.day);\r\n }\r\n\r\n (this.searchFlight.get(\"Flights\")).at(flightIndex).get(\"departingD\").setValue(this.fromDateBinding[flightIndex]);\r\n this.searchFlight.get(\"returnDate\").setValue(this.toDateBinding);\r\n\r\n }\r\n\r\n isHovered(date: NgbDate) {\r\n return this.fromDate && !this.toDate && this.hoveredDate && date.after(this.fromDate) && date.before(this.hoveredDate);\r\n }\r\n\r\n isInside(date: NgbDate) {\r\n return this.toDate && date.after(this.fromDate) && date.before(this.toDate);\r\n }\r\n\r\n isRange(date: NgbDate) {\r\n return date.equals(this.fromDate) || (this.toDate && date.equals(this.toDate)) || this.isInside(date) || this.isHovered(date);\r\n }\r\n validateInput(currentValue: NgbDate | null, input: string): NgbDate | null {\r\n const parsed = this.formatter.parse(input);\r\n return parsed && this.calendar.isValid(NgbDate.from(parsed)) ? NgbDate.from(parsed) : currentValue;\r\n }\r\n\r\n changeAdultValue(type: string) {\r\n this.adultAlert = false;\r\n this.maxPassangers = false;\r\n var oldVal = this.searchFlight.get(\"passengers\").get(\"adults\").value;\r\n if (type == \"decrease\") {\r\n if ((oldVal - 1) == 0) {\r\n this.adultAlert = true\r\n return\r\n }\r\n this.searchFlight.get(\"passengers\").get(\"adults\").setValue(oldVal - 1);\r\n this.searchFlight.get(\"passengers\").get(\"adults\").updateValueAndValidity();\r\n } \r\n else {\r\n if (((this.searchFlight.get('passengers').get('adults').value + this.searchFlight.get('passengers').get('child').value + this.searchFlight.get('passengers').get('infent').value) + 1) > 9) {\r\n this.maxPassangers = true\r\n return;\r\n }\r\n this.searchFlight.get(\"passengers\").get(\"adults\").setValue(oldVal + 1);\r\n this.searchFlight.get(\"passengers\").get(\"adults\").updateValueAndValidity();\r\n }\r\n }\r\n\r\n changeChildValue(type: string) {\r\n this.maxPassangers = false;\r\n var oldVal = this.searchFlight.get(\"passengers\").get(\"child\").value;\r\n if (type == \"decrease\") {\r\n if ((oldVal - 1) < 0) {\r\n return\r\n }\r\n this.searchFlight.get(\"passengers\").get(\"child\").setValue(oldVal - 1);\r\n this.searchFlight.get(\"passengers\").get(\"child\").updateValueAndValidity();\r\n } else {\r\n if (((this.searchFlight.get('passengers').get('adults').value + this.searchFlight.get('passengers').get('child').value + this.searchFlight.get('passengers').get('infent').value) + 1) > 9) {\r\n this.maxPassangers = true\r\n return;\r\n }\r\n this.searchFlight.get(\"passengers\").get(\"child\").setValue(oldVal + 1);\r\n this.searchFlight.get(\"passengers\").get(\"child\").updateValueAndValidity();\r\n }\r\n }\r\n\r\n changeInfantValue(type: string) {\r\n this.infentMax = false;\r\n this.maxPassangers = false;\r\n var oldVal = this.searchFlight.get(\"passengers\").get(\"infent\").value;\r\n if (type == \"decrease\") {\r\n if ((oldVal - 1) < 0) {\r\n return\r\n }\r\n this.searchFlight.get(\"passengers\").get(\"infent\").setValue(oldVal - 1);\r\n this.searchFlight.get(\"passengers\").get(\"infent\").updateValueAndValidity();\r\n } else {\r\n if (((this.searchFlight.get('passengers').get('adults').value + this.searchFlight.get('passengers').get('child').value + this.searchFlight.get('passengers').get('infent').value) + 1) > 9) {\r\n this.maxPassangers = true\r\n return;\r\n }\r\n else if ((this.searchFlight.get('passengers').get('infent').value) + 1 > this.searchFlight.get('passengers').get('adults').value) {\r\n this.infentMax = true\r\n return\r\n }\r\n this.searchFlight.get(\"passengers\").get(\"infent\").setValue(oldVal + 1);\r\n this.searchFlight.get(\"passengers\").get(\"infent\").updateValueAndValidity();\r\n }\r\n }\r\n\r\n /**\r\n * change the selected airports/cities according to the app current languague\r\n * @param lang app current languague\r\n */\r\n \r\n updateAirportValues(lang: string) {\r\n\r\n let arrr = (this.searchFlight.get('Flights'))\r\n if (arrr) {\r\n if (lang == \"ar\") {\r\n for (var i = 0; i < (this.searchFlight.get('Flights')).length; i++) {\r\n let depart = (this.searchFlight.get('Flights')).at(i).get('departing').value;\r\n let landing = (this.searchFlight.get('Flights')).at(i).get('landing').value;\r\n if (depart != '' && landing != '') {\r\n let dCity = this.citiesar.filter(v => v.airportCode === this.extractAirportCode(depart))[0];\r\n let lCity = this.citiesar.filter(v => v.airportCode === this.extractAirportCode(landing))[0];\r\n { (this.searchFlight.get('Flights')).at(i).get('departing').setValue(dCity.cityName + '(' + dCity.airportCode + ')') };\r\n { (this.searchFlight.get('Flights')).at(i).get('landing').setValue(lCity.cityName + '(' + lCity.airportCode + ')') };\r\n }\r\n else {\r\n return\r\n }\r\n }\r\n } else {\r\n this.cities = this.citiesen;\r\n this.citiesNameExtract(this.citiesen);\r\n for (var i = 0; i < (this.searchFlight.get('Flights')).length; i++) {\r\n let depart = (this.searchFlight.get('Flights')).at(i).get('departing').value;\r\n let landing = (this.searchFlight.get('Flights')).at(i).get('landing').value;\r\n if (depart != '' && landing != '') {\r\n let dCity = this.citiesen.filter(v => v.airportCode === this.extractAirportCode(depart))[0];\r\n let lCity = this.citiesen.filter(v => v.airportCode === this.extractAirportCode(landing))[0];\r\n { (this.searchFlight.get('Flights')).at(i).get('departing').setValue(dCity.cityName + '(' + dCity.airportCode + ')') };\r\n { (this.searchFlight.get('Flights')).at(i).get('landing').setValue(lCity.cityName + '(' + lCity.airportCode + ')') };\r\n } else {\r\n return\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * extract only the airport code from the slected airport format\r\n */\r\n extractAirportCode(val: string) {\r\n var splice = val.split('(');\r\n if (splice[1]) {\r\n var spliceAgain = splice[1].split(')')\r\n return spliceAgain[0];\r\n }\r\n else { return '' }\r\n\r\n }\r\n\r\n calendersBinding() {\r\n for (let i = 0; i < (this.searchFlight.get('Flights')).length; i++) {\r\n var flightDate = new Date((this.searchFlight.get('Flights')).at(i).get('departingD').value)\r\n var fromCalenderDate = new NgbDate(flightDate.getUTCFullYear(), flightDate.getMonth() + 1, flightDate.getDate() - 1)\r\n if(i ==0){\r\n this.firstDate = fromCalenderDate;\r\n }\r\n this.fromDateBinding.push(new Date(flightDate.getUTCFullYear(), flightDate.getMonth(), flightDate.getDate()));\r\n // this.fromDate = this.calendar.getNext(fromCalenderDate);\r\n }\r\n var returnDate = new Date(this.searchFlight.get('returnDate').value)\r\n var returnCalenderDate = new NgbDate(flightDate.getUTCFullYear(), flightDate.getMonth() + 1, flightDate.getDate() - 1)\r\n\r\n this.toDateBinding = new Date(returnDate.getUTCFullYear(), returnDate.getMonth(), returnDate.getDate());\r\n // this.toDate = this.calendar.getNext(returnCalenderDate);\r\n if(this.flightType.value ==='RoundTrip'){\r\n let D1:Date = this.fromDateBinding[0];\r\n let D2:Date = this.toDateBinding;\r\n let deff = (D2.getTime() - D1.getTime())/(1000*60*60*24)\r\n this.fromDate = this.calendar.getNext(this.firstDate);\r\n this.toDate = this.calendar.getNext(this.fromDate,'d',(deff))\r\n }\r\n \r\n\r\n }\r\n\r\n flightLangMapper(citiesArray: CitiesModule[]) {\r\n this.flightsArray.controls.forEach(element => {\r\n if (element.get('departing')?.value && element.get('departing')?.value != '') {\r\n let code: string = (element.get('departing')?.value).split('(')[1].split(')')[0];\r\n let newAirport = citiesArray.filter((v) => v.airportCode == code)[0];\r\n let newValue = newAirport.cityName + \"(\" + newAirport.airportCode + \")\";\r\n element.get('departing')?.setValue(newValue);\r\n }\r\n\r\n if (element.get('landing')?.value && element.get('landing')?.value != '') {\r\n let code = (element.get('landing')?.value).split('(')[1].split(')')[0];\r\n let newAirport = citiesArray.filter((v) => v.airportCode == code)[0];\r\n let newValue = newAirport.cityName + \"(\" + newAirport.airportCode + \")\";\r\n element.get('landing')?.setValue(newValue);\r\n }\r\n return\r\n });\r\n }\r\n getFormattedDate(date: Date,i:number): string {\r\n const day = date.getDate();\r\n \r\n const month = date.getMonth();\r\n const year = date.getFullYear();\r\n\r\n // Translate month and day names\r\n if(this.translate.currentLang==\"en\"){\r\n let translatedMonth = this.translate.instant(`datepicker.monthNames.${month}`).slice(0,3);\r\n let translatedDay = this.translate.instant(`datepicker.dayNames.${date.getDay()}`).slice(0,3);\r\n \r\n return `${day} ${translatedMonth}, ${translatedDay}`;\r\n }\r\n else {\r\n let translatedMonth = this.translate.instant(`datepicker.monthNames.${month}`);\r\n let translatedDay = this.translate.instant(`datepicker.dayNames.${date.getDay()}`);\r\n \r\n return `${day} ${translatedMonth}, ${translatedDay}`;\r\n\r\n }\r\n \r\n }\r\n\r\n // unsubscribe\r\n validateDate(){\r\n if(this.localform){\r\n if(this.fromDateBinding[0].getTime() > this.fromDateBinding[1].getTime()){\r\n this.alertDate=true;\r\n }\r\n else{\r\n this.alertDate=false;\r\n }\r\n }\r\n else{\r\n this.searchFlight.get(\"Flights\")?.get(\"1\")?.get(\"departingD\").setValue(this.fromDateBinding[1])\r\n if(this.fromDateBinding[0].getTime() > this.fromDateBinding[1].getTime()){\r\n this.alertDate=true;\r\n }\r\n else{\r\n this.alertDate=false;\r\n }\r\n }\r\n }\r\n \r\n ngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n}","\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n {{ \"searchFlight.oneway\" | translate }}\r\n \r\n
\r\n
\r\n \r\n {{ \"searchFlight.RoundTrip\" | translate }}\r\n \r\n
\r\n
\r\n \r\n {{ \"searchFlight.multi\" | translate }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n {{ searchFlight.get(\"flightType\").value | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"searchFlight.oneway\" | translate }}\r\n
\r\n \r\n {{ \"searchFlight.RoundTrip\" | translate }}\r\n
\r\n \r\n {{ \"searchFlight.multi\" | translate }}\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{ searchFlight.get(\"class\").value | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"searchFlight.economy\" | translate }}\r\n
\r\n\r\n \r\n {{ \"searchFlight.premium\" | translate }}\r\n
\r\n\r\n \r\n {{ \"searchFlight.business\" | translate }}\r\n \r\n\r\n \r\n {{ \"searchFlight.first\" | translate }}\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n {{\r\n searchFlight.get(\"passengers\").get(\"adults\").value +\r\n searchFlight.get(\"passengers\").get(\"child\").value +\r\n searchFlight.get(\"passengers\").get(\"infent\").value\r\n }}\r\n {{ \"searchFlight.tAndC\" | translate }}\r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n {{ \"searchFlight.adults\" | translate }}\r\n
\r\n
\r\n {{ \"searchFlight.adultsIndicator\" | translate }}\r\n
\r\n
\r\n
\r\n -\r\n {{\r\n searchFlight.get(\"passengers\").get(\"adults\").value\r\n }}\r\n +\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n {{ \"searchFlight.child\" | translate }}\r\n
\r\n
\r\n {{ \"searchFlight.childIndicator\" | translate }}\r\n
\r\n
\r\n
\r\n -\r\n {{\r\n searchFlight.get(\"passengers\").get(\"child\").value\r\n }}\r\n +\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{ \"searchFlight.infent\" | translate }}\r\n
\r\n
\r\n {{ \"searchFlight.infentIndicator\" | translate }}\r\n
\r\n
\r\n
\r\n -\r\n {{\r\n searchFlight.get(\"passengers\").get(\"infent\").value\r\n }}\r\n +\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n -\r\n \r\n (\r\n \r\n )\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n -\r\n \r\n (\r\n )\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n \r\n {{\r\n getFormattedDate(fromDateBinding[i])\r\n }}\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n {{ date.day | translate }}\r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n \r\n

\r\n {{ getFormattedDate(fromDateBinding[i]) }}\r\n

\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n {{ \"searchFlight.search\" | translate }}\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {{\r\n \"searchFlight.dirc\" | translate\r\n }}\r\n
\r\n
\r\n {{\r\n \"searchFlight.dirc\" | translate\r\n }}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n -\r\n \r\n (\r\n \r\n )\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n -\r\n \r\n (\r\n )\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {{getFormattedDate(fromDateBinding[i]) }}\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n {{ date.day }}\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n\r\n {{getFormattedDate(fromDateBinding[i]) }}\r\n - \r\n {{getFormattedDate(toDateBinding) }}\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n \r\n \r\n {{ date.day }}\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n

{{getFormattedDate(fromDateBinding[i]) }}

\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n\r\n

{{getFormattedDate(toDateBinding) }}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n {{ \"searchFlight.search\" | translate }}\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n {{\r\n \"searchFlight.dirc\" | translate\r\n }}\r\n
\r\n
\r\n {{\r\n \"searchFlight.dirc\" | translate\r\n }}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n -\r\n \r\n (\r\n \r\n )\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n -\r\n \r\n (\r\n )\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n \r\n \r\n
\r\n \r\n {{fromDateBinding[i] | date:'d MMM , EEE':null:\"en-US\" }}\r\n\r\n {{fromDateBinding[i] | date:'d MMM , EEE':null:\"ar-SA\" }}\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n\r\n \r\n \r\n {{ date.day }}\r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n

\r\n {{ getFormattedDate(fromDateBinding[i]) }}\r\n

\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n

\r\n {{fromDateBinding[i] | date:'d MMM , EEE':null:\"en-US\" }}\r\n {{fromDateBinding[i] | date:'d MMM , EEE':null:\"ar-SA\" }}\r\n

\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n

\r\n {{fromDateBinding[i] | date:'d MMM , EEE':null:\"en-US\" }}\r\n\r\n {{fromDateBinding[i] | date:'d MMM , EEE':null:\"ar-SA\" }}\r\n

\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n

\r\n {{fromDateBinding[i] | date:'d MMM , EEE':null:\"en-US\" }}\r\n\r\n {{fromDateBinding[i] | date:'d MMM , EEE':null:\"ar-SA\" }}

\r\n \r\n
\r\n
\r\n
\r\n\r\n
= 2\">\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{\r\n \"searchFlight.dirc\" | translate\r\n }}\r\n
\r\n
\r\n
\r\n
2\">\r\n \r\n {{ \"searchFlight.clearAll\" | translate }}\r\n
\r\n\r\n \r\n \r\n {{ \"searchFlight.addNewFlight\" | translate }}\r\n
\r\n
\r\n
\r\n
\r\n {{\r\n \"searchFlight.dirc\" | translate\r\n }}\r\n
\r\n
\r\n \r\n {{ \"searchFlight.search\" | translate }}\r\n \r\n
\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n\r\n\r\n
\r\n
\r\n \r\n {{ \"searchFlight.alert3\" | translate }}\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n {{ \"searchFlight.alert1\" | translate }}\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n {{ \"searchFlight.alert2\" | translate }}\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n {{ \"searchFlight.alert4\" | translate }}\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n {{ \"searchFlight.alert5\" | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n {{ \"searchFlight.alert6\" | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n {{ \"searchFlight.alert7\" | translate }}\r\n
\r\n
\r\n
\r\n","import { updateSearchCretaria } from \"./flight-search.actions\";\r\nimport { MyapiService } from \"src/app/services/myapi.service\";\r\nimport {\r\n mergeMap,\r\n map,\r\n catchError,\r\n retry,\r\n take,\r\n toArray,\r\n tap,\r\n} from \"rxjs/operators\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Actions, createEffect, ofType } from \"@ngrx/effects\";\r\nimport * as flightActions from \"../flight-search/flight-search.actions\";\r\nimport { from, of } from \"rxjs\";\r\nimport { Store } from \"@ngrx/store\";\r\nimport {\r\n airItineraries,\r\n flightFilter,\r\n FlightSearchResult,\r\n} from \"@src/app/interface/flight-search-result\";\r\nimport { CurrencyModule } from \"@src/app/models/currency/currency.module\";\r\nexport var Tflights: airItineraries[] = undefined;\r\n\r\n@Injectable()\r\nexport class FlightSearchEffects {\r\n constructor(\r\n private actions$: Actions,\r\n private apiService: MyapiService,\r\n private store: Store\r\n ) {}\r\n\r\n loadFlights$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(flightActions.loadFlightSearchs),\r\n mergeMap((searchCrtariea) =>\r\n this.apiService.searchFlight(searchCrtariea.search).pipe(\r\n map((v) => {\r\n this.store.dispatch(\r\n updateSearchCretaria({ searchData: searchCrtariea.search })\r\n );\r\n Tflights = v.airItineraries;\r\n return flightActions.loadFlightSearchsSuccess({\r\n data: assignBestpriceTag(v),\r\n });\r\n }),\r\n catchError((err) => {\r\n this.apiService.openSnackBar(\r\n \"loadFlightSearchsFailure\",\r\n \" faild\",\r\n \"snakFaild\"\r\n );\r\n\r\n // const errorMessage = this.apiService.getErrorMessage(err)\r\n console.log(err);\r\n return of(flightActions.loadFlightSearchsFailure(err));\r\n })\r\n )\r\n )\r\n )\r\n );\r\n filterFlight$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(flightActions.filterFlight),\r\n map((ac) => {\r\n console.log(ac.airItineraries, \"filterinput\");\r\n if (!ac.filter) {\r\n return flightActions.filterFlightSuccess({\r\n airItineraries: orgnize(ac.airItineraries),\r\n });\r\n } else {\r\n return flightActions.filterFlightSuccess({\r\n airItineraries: orgnize(\r\n ac.airItineraries.filter(\r\n (v) =>\r\n filterFlighWithPrice(v, ac.filter) &&\r\n filterFlighWithDuration(v, ac.filter) &&\r\n filterFlighWithDepartionTime(v, ac.filter, convertToMin) &&\r\n filterFlighWithReturnTime(\r\n v,\r\n ac.filter,\r\n ac.roundTrip,\r\n convertToMin\r\n ) &&\r\n filterFlightWithNumberofStopsFunction(v, ac.filter) &&\r\n filterFlightWithAirlineFunction(v, ac.filter)\r\n )\r\n ),\r\n });\r\n }\r\n })\r\n )\r\n );\r\n filterSelectedFlight$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(flightActions.filterSelectedFlight),\r\n map((ac) => {\r\n console.log(ac.airItineraries, \"filterinput\");\r\n if (!ac.filter) {\r\n return flightActions.filterSelectedFlightSuccess({\r\n airItineraries: ac.airItineraries,\r\n });\r\n }\r\n else if(ac.airItineraries.length == 1){\r\n\r\n return flightActions.filterSelectedFlightSuccess({\r\n airItineraries: ac.airItineraries,\r\n });\r\n\r\n }\r\n else {\r\n return flightActions.filterSelectedFlightSuccess({\r\n airItineraries: ac.airItineraries.filter(\r\n (v) =>\r\n filterFlighWithPrice(v, ac.filter) &&\r\n filterFlighWithDuration(v, ac.filter) &&\r\n filterFlighWithDepartionTime(v, ac.filter, convertToMin) &&\r\n filterFlighWithReturnTime(\r\n v,\r\n ac.filter,\r\n ac.roundTrip,\r\n convertToMin\r\n ) &&\r\n filterFlightWithNumberofStopsFunction(v, ac.filter) &&\r\n filterFlightWithAirlineFunction(v, ac.filter)\r\n ),\r\n });\r\n }\r\n })\r\n )\r\n );\r\n GetFareRules$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(flightActions.loadFares),\r\n mergeMap((param) =>\r\n this.apiService\r\n .fareRules(param.searchid, param.sequenceNum, param.providerKey)\r\n .pipe(\r\n map((fares) => {\r\n return flightActions.loadFaresSuccess({ data: fares });\r\n }),\r\n catchError((err) => {\r\n this.apiService.openSnackBar(\r\n \"loadFaresFailure\",\r\n \" faild\",\r\n \"snakFaild\"\r\n );\r\n\r\n return of(flightActions.loadFaresFailure(err));\r\n })\r\n )\r\n )\r\n )\r\n );\r\n\r\n GetSelectedFlight$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(flightActions.loadSelectedFlight),\r\n mergeMap((param) =>\r\n this.apiService\r\n .getSelectedFlight(\r\n param.searchid.split('_')[0],\r\n param.sequenceNum,\r\n param.providerKey,\r\n param.pcc\r\n )\r\n .pipe(\r\n map((SelectdeFlights) => {\r\n return flightActions.loadSelectedFlightSuccess({\r\n data: SelectdeFlights,\r\n });\r\n }),\r\n catchError((err) => {\r\n this.apiService.openSnackBar(\r\n \"loadSelectedFlightFailure\",\r\n \" faild\",\r\n \"snakFaild\"\r\n );\r\n\r\n return of(flightActions.loadSelectedFlightFailure(err));\r\n })\r\n )\r\n )\r\n )\r\n );\r\n\r\n GetOfflineServices$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(flightActions.loadOfflineSrvices),\r\n mergeMap((param) =>\r\n this.apiService.offlineServices(param.searchid, param.POS).pipe(\r\n map((offlineService) => {\r\n return flightActions.loadOfflineSrvicesSuccess({\r\n data: offlineService,\r\n });\r\n }),\r\n catchError((err) => {\r\n this.apiService.openSnackBar(\r\n \"loadSelectedFlightFailure\",\r\n \" faild\",\r\n \"snakFaild\"\r\n );\r\n\r\n return of(flightActions.loadSelectedFlightFailure(err));\r\n })\r\n )\r\n )\r\n )\r\n );\r\n\r\n saveBooking$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(flightActions.SaveBooking),\r\n take(1),\r\n mergeMap((param) =>\r\n this.apiService\r\n .saveBooking(\r\n param.searchid,\r\n param.sequenceNum,\r\n param.body,\r\n param.pkey,\r\n param.pcc\r\n )\r\n .pipe(\r\n mergeMap((v) =>\r\n v.hgNumber\r\n ? this.apiService\r\n .CheckFlightValidation(\r\n v.hgNumber,\r\n param.lang,\r\n param.searchid,\r\n param.sequenceNum,\r\n param.pkey\r\n )\r\n .pipe(\r\n retry(3),\r\n mergeMap(\r\n (val) =>\r\n (val.status = \"Valid\"\r\n ? this.apiService\r\n .GetPaymentView(\r\n param.ip,\r\n param.iplocation,\r\n v.hgNumber,\r\n param.searchid,\r\n \"\",\r\n param.selectedServices\r\n )\r\n .pipe(\r\n map((link) => {\r\n // window.location.href = link.link;\r\n return flightActions.SaveBookingSuccess({\r\n data: link.link,\r\n });\r\n }),\r\n catchError((err) => {\r\n return of(\r\n flightActions.SaveBookingFailure(err)\r\n );\r\n })\r\n )\r\n : of(\r\n flightActions.SaveBookingFailure({\r\n err: \"FAildToSaveBooking\",\r\n })\r\n ))\r\n ),\r\n catchError((err) => {\r\n this.apiService.openSnackBar(\r\n \"SaveBookingFailure\",\r\n \" faild\",\r\n \"snakFaild\"\r\n );\r\n\r\n return of(flightActions.SaveBookingFailure(err));\r\n })\r\n )\r\n : of(\r\n flightActions.SaveBookingFailure({\r\n err: \"FAildToSaveBooking\",\r\n })\r\n )\r\n ),\r\n catchError((err) => {\r\n this.apiService.openSnackBar(\r\n \"SaveBookingFailure\",\r\n \" faild\",\r\n \"snakFaild\"\r\n );\r\n\r\n return of(flightActions.SaveBookingFailure(err));\r\n })\r\n )\r\n )\r\n )\r\n );\r\n // saveBooking$ = createEffect(() =>\r\n // this.actions$.pipe(\r\n // ofType(flightActions.SaveBooking),\r\n // take(1),\r\n // mergeMap((param) =>\r\n // this.apiService\r\n // .saveBooking(\r\n // param.searchid,\r\n // param.sequenceNum,\r\n // param.body,\r\n // param.pkey\r\n // )\r\n // .pipe(\r\n // tap(v=>console.log(v,'save booking')),\r\n // mergeMap(\r\n // (val) =>\r\n \r\n // (val.hgNumber\r\n // ? this.apiService\r\n // .GetPaymentView(\r\n // param.ip,\r\n // param.iplocation,\r\n // val.hgNumber,\r\n // param.searchid,\r\n // \"\",\r\n // param.selectedServices\r\n // )\r\n // .pipe(\r\n // map((link) => {\r\n // // window.location.href = link.link;\r\n // return flightActions.SaveBookingSuccess({\r\n // data: link.link,\r\n // });\r\n // }),\r\n // catchError((err) => {\r\n // return of(\r\n // flightActions.SaveBookingFailure(err)\r\n // );\r\n // })\r\n // )\r\n // : of(\r\n // flightActions.SaveBookingFailure({\r\n // err: \"FAildToSaveBooking\",\r\n // })\r\n // ))\r\n // ),\r\n // catchError((err) => {\r\n // this.apiService.openSnackBar(\r\n // \"SaveBookingFailure\",\r\n // \" faild\",\r\n // \"snakFaild\"\r\n // );\r\n\r\n // return of(flightActions.SaveBookingFailure(err));\r\n // })\r\n // )\r\n // )\r\n // )\r\n // );\r\n\r\n sortFlight$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(flightActions.sortFlight),\r\n map((param) => {\r\n return flightActions.sortFlightSuccess({\r\n airItineraries: orgnize(\r\n sortMyResult(param.sortType, param.airItineraries)\r\n ),\r\n });\r\n })\r\n )\r\n );\r\n\r\n sortFlightSelected$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(flightActions.sortSelectedFlight),\r\n map((param) => {\r\n console.log(param);\r\n return flightActions.sortSelectedFlightSuccess({\r\n airItineraries: sortMyResult(param.sortType, [\r\n ...param.airItineraries,\r\n ]),\r\n });\r\n })\r\n )\r\n );\r\n}\r\n\r\ntype filterFlightWithAirlineFunction = (\r\n airItineraries: airItineraries,\r\n filter: flightFilter\r\n) => boolean;\r\ntype filterFlightWithNumberofStopsFunction = (\r\n airItineraries: airItineraries,\r\n filter: flightFilter\r\n) => boolean;\r\ntype filterFlighWithDepartionTime = (\r\n airItineraries: airItineraries,\r\n filter: flightFilter,\r\n timeTOmin: timeToMinits\r\n) => boolean;\r\ntype filterFlighWithReturnTime = (\r\n airItineraries: airItineraries,\r\n filter: flightFilter,\r\n isRound: boolean,\r\n timeTOmin: timeToMinits\r\n) => boolean;\r\ntype filterFlighWithDuration = (\r\n airItineraries: airItineraries,\r\n filter: flightFilter\r\n) => boolean;\r\ntype filterFlighWithPrice = (\r\n airItineraries: airItineraries,\r\n filter: flightFilter\r\n) => boolean;\r\ntype timeToMinits = (time: string) => number;\r\ntype orgnizeArr = (airItineraries: airItineraries[]) => airItineraries[][];\r\ntype filterCompose = (\r\n airItineraries: airItineraries[],\r\n filter: flightFilter,\r\n isRound: boolean,\r\n fn1: filterFlighWithPrice,\r\n fn2: filterFlightWithNumberofStopsFunction,\r\n fn3: filterFlighWithDepartionTime,\r\n fn4: filterFlighWithReturnTime,\r\n fn5: filterFlighWithDuration,\r\n fn6: filterFlighWithPrice,\r\n fn7: timeToMinits,\r\n fn8: orgnizeArr\r\n) => airItineraries[][];\r\n\r\n// export const filterFlighWithPrice: filterFlighWithPrice = (flight, filter) =>{\r\n// flight.itinTotalFare.amount >= filter.priceMin &&\r\n// flight.itinTotalFare.amount < filter.priceMax;\r\n// }\r\n\r\nexport function filterFlighWithPrice(flight: airItineraries,filter: flightFilter): boolean{\r\n if(localStorage.getItem('currency')){\r\n let currenyObj : CurrencyModule = JSON.parse(localStorage.getItem('currency'))\r\n return (flight.itinTotalFare.amount * currenyObj.rate) >= filter.priceMin && (flight.itinTotalFare.amount * currenyObj.rate)< filter.priceMax;\r\n }else{\r\n console.log(\"thie price filter body IN ELSE\",flight.itinTotalFare.amount)\r\n return flight.itinTotalFare.amount >= filter.priceMin && flight.itinTotalFare.amount < filter.priceMax;\r\n }\r\n}\r\n \r\n\r\nexport const filterFlighWithDuration: filterFlighWithDuration = (\r\n flight,\r\n filter\r\n) =>\r\n flight.totalDuration >= filter.durationMin &&\r\n flight.totalDuration < filter.durationMax;\r\n\r\nexport const filterFlighWithReturnTime: filterFlighWithReturnTime = (\r\n flight,\r\n filter,\r\n round,\r\n convertToMin\r\n) =>\r\n round\r\n ? convertToMin(flight.allJourney.flights[1].flightDTO[0].departureDate) >=\r\n filter.returnMin &&\r\n convertToMin(flight.allJourney.flights[1].flightDTO[0].departureDate) <\r\n filter.returnMax\r\n : true;\r\n\r\n export const filterFlighWithDepartionTime: filterFlighWithDepartionTime = (flight, filter, convertToMin) => convertToMin(flight.allJourney.flights[0].flightDTO[0].departureDate) >= filter.depatingMin && convertToMin(flight.allJourney.flights[0].flightDTO[0].departureDate) < filter.departingMax;\r\n\r\n// take date string return number\r\nexport const convertToMin = function (time: string): number {\r\n let date = time;\r\n let T = date.indexOf(\"T\");\r\n let h = date.slice(T + 1);\r\n let hr = +h.slice(0, 2) * 60;\r\n let m = +h.slice(3, 5);\r\n let tm = hr + m;\r\n return tm;\r\n};\r\n\r\nexport const filterFlightWithNumberofStopsFunction: filterFlightWithNumberofStopsFunction =\r\n (airItineraries: airItineraries, filter: flightFilter) =>\r\n airItineraries.allJourney.flights\r\n .map((v) => filter.stops.indexOf(v.stopsNum) != -1)\r\n .reduce((sum, next) => sum && next, true);\r\nexport const filterFlightWithAirlineFunction: filterFlightWithAirlineFunction =\r\n (airItineraries: airItineraries, filter: flightFilter) =>\r\n filter.airlines.length > 0\r\n ? filter.airlines.indexOf(\r\n airItineraries.allJourney.flights[0].flightDTO[0].flightAirline\r\n .airlineName\r\n ) != -1\r\n : true;\r\nexport const orgnize: orgnizeArr = function (\r\n array: airItineraries[]\r\n): airItineraries[][] {\r\n let out: airItineraries[][] = [];\r\n let remain: airItineraries[] = array;\r\n let i = 0;\r\n while (remain.length > 0 || !remain) {\r\n if (i > 50) {\r\n break;\r\n } else {\r\n out.push(\r\n remain.filter(\r\n (v, i, a) =>\r\n v.allJourney.flights[0].flightDTO[0].flightAirline.airlineCode ===\r\n a[0].allJourney.flights[0].flightDTO[0].flightAirline\r\n .airlineCode &&\r\n v.itinTotalFare.amount === a[0].itinTotalFare.amount\r\n )\r\n );\r\n remain = remain.filter(\r\n (v, i, a) =>\r\n v.allJourney.flights[0].flightDTO[0].flightAirline.airlineCode !=\r\n a[0].allJourney.flights[0].flightDTO[0].flightAirline.airlineCode ||\r\n v.itinTotalFare.amount != a[0].itinTotalFare.amount\r\n );\r\n }\r\n i = i + 1;\r\n }\r\n\r\n console.log(i, out);\r\n return out;\r\n};\r\n\r\nexport function sortMyResult(\r\n type: number,\r\n data: airItineraries[]\r\n): airItineraries[] {\r\n /* Cheapest */\r\n if (type == 1) {\r\n console.log(\r\n data,\r\n \"before sorting\",\r\n type,\r\n [...data].sort((a, b) => {\r\n return a.itinTotalFare.amount - b.itinTotalFare.amount;\r\n })\r\n );\r\n return [...data].sort((a, b) => {\r\n return a.itinTotalFare.amount - b.itinTotalFare.amount;\r\n });\r\n }\r\n if (type == 2) {\r\n return [...data].sort((a, b) => {\r\n return a.totalDuration - b.totalDuration;\r\n });\r\n }\r\n if (type == 3) {\r\n return [...data].sort((a, b) => {\r\n return new Date(a.deptDate) - new Date(b.deptDate);\r\n });\r\n }\r\n if (type == 4) {\r\n return [...data].sort((a, b) => {\r\n return new Date(b.deptDate) - new Date(a.deptDate);\r\n });\r\n }\r\n if (type == 5) {\r\n return [...data].sort((a, b) => {\r\n return (\r\n new Date(a.allJourney.flights[1].flightDTO[0].departureDate) -\r\n new Date(b.allJourney.flights[1].flightDTO[0].departureDate)\r\n );\r\n });\r\n }\r\n\r\n if (type == 6) {\r\n return [...data].sort((a, b) => {\r\n return (\r\n new Date(b.allJourney.flights[1].flightDTO[0].departureDate) -\r\n new Date(a.allJourney.flights[1].flightDTO[0].departureDate)\r\n );\r\n });\r\n }\r\n return [...data];\r\n}\r\n\r\nexport function assignBestpriceTag(\r\n data: FlightSearchResult\r\n): FlightSearchResult {\r\n var newData = data;\r\n var sorted = newData.airItineraries.sort((a, b) => {\r\n return a.itinTotalFare.amount - b.itinTotalFare.amount;\r\n });\r\n sorted[0].bestPrice = true;\r\n newData.airItineraries = sorted;\r\n return newData;\r\n}\r\n\r\n","import { Injectable, inject } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { FormArray, FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { DatePipe } from '@angular/common';\r\nimport { Router } from '@angular/router';\r\nimport { AlertMsgModels, CountriescodeModule, SearchHoteltModule, hotelSearchForm } from '../interface/HotelSearch'\r\nimport { HotelsCitiesModule } from '../models/hotels-cities/hotels-cities.module';\r\nimport { MyapiService } from './myapi.service';\r\nimport { skip } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class HotelSearchService {\r\n searchApi: SearchHoteltModule\r\n allGuest: number = 0;\r\n roomNumber: number = 1;\r\n adultNum: number = 1\r\n childNum: number = 0\r\n today: Date =new Date();\r\n formday: Date =new Date();\r\n stringGuest:string=''\r\n citiesNames: string[] = [];\r\n selectAllcities: any\r\n LocalStorage!: hotelSearchForm;\r\n DateMessageError: AlertMsgModels = {\r\n arMsg: '',\r\n enMsg: '',\r\n };\r\n RoomMessageError: AlertMsgModels = {\r\n arMsg: '',\r\n enMsg: '',\r\n };\r\n guestMessageError: AlertMsgModels = {\r\n arMsg: '',\r\n enMsg: '',\r\n };\r\n\r\n subscription: Subscription = new Subscription()\r\n /**\r\n * \r\n * inital form Search Hotel\r\n * \r\n */\r\n HotelSearchForm: FormGroup = new FormGroup({\r\n location: new FormControl(\"\", [Validators.required, Validators.minLength(3)]),\r\n nation: new FormControl(\"Kuwait\"),\r\n checkIn: new FormControl(this.formday, Validators.required),\r\n checkOut: new FormControl(this.today, Validators.required),\r\n roomN: new FormControl(1, [Validators.required, Validators.min(1)]),\r\n guestInfo: new FormArray([], [this.guestNumberValidation.bind(this)]),\r\n });\r\n\r\n constructor(private router: Router, public http: HttpClient, public MyApi: MyapiService) {\r\n\r\n }\r\n\r\n /**\r\n * \r\n *geter value control guestInfo \r\n * \r\n */\r\n public get GuestData(): FormArray {\r\n return this.HotelSearchForm.get('guestInfo') as FormArray;\r\n }\r\n /**\r\n * \r\n *inital HotelSearchForm Form \r\n * \r\n */\r\n initSearchForm(form: hotelSearchForm) {\r\n // set data in storage in form\r\n if (form) {\r\n this.SetDataFromStorage(form)\r\n }\r\n // if no value in storage\r\n else {\r\n this.HotelSearchForm = new FormGroup({\r\n location: new FormControl(\"\", [Validators.required, Validators.minLength(3)]),\r\n nation: new FormControl(\"Kuwait\"),\r\n checkIn: new FormControl(this.formday, Validators.required),\r\n checkOut: new FormControl(this.today, Validators.required),\r\n roomN: new FormControl(1, [Validators.required, Validators.min(1)]),\r\n guestInfo: new FormArray([], [this.guestNumberValidation.bind(this)]),\r\n\r\n });\r\n\r\n (this.HotelSearchForm.get(\"guestInfo\")).push(\r\n new FormGroup({\r\n adult: new FormControl(2, [Validators.required, Validators.min(1), Validators.max(5)]),\r\n child: new FormControl(0, [Validators.required, Validators.max(2)]),\r\n childGroup: new FormArray([])\r\n\r\n }));\r\n }\r\n \r\n this.subscription.add(this.HotelSearchForm.get(\"roomN\")?.valueChanges.subscribe(\r\n (val) => {\r\n if (val != null) {\r\n this.roomNumber = val;\r\n }\r\n else {\r\n this.roomNumber = 1;\r\n }\r\n }));\r\n }\r\n /**\r\n * \r\n * this function set data from starge in form \r\n * \r\n */\r\n SetDataFromStorage(FormStorage: hotelSearchForm) {\r\n this.HotelSearchForm = new FormGroup({\r\n location: new FormControl(FormStorage['location'], [Validators.required, Validators.minLength(3)]),\r\n nation: new FormControl(FormStorage['nation']),\r\n checkIn: new FormControl(FormStorage['checkIn'], Validators.required),\r\n checkOut: new FormControl(FormStorage['checkOut'], Validators.required),\r\n roomN: new FormControl(FormStorage['roomN'], [Validators.required, Validators.min(1)]),\r\n guestInfo: new FormArray([], [this.guestNumberValidation.bind(this)]),\r\n\r\n });\r\n\r\n (this.HotelSearchForm.get(\"guestInfo\")).push(\r\n new FormGroup({\r\n adult: new FormControl(2, [Validators.required, Validators.min(1), Validators.max(5)]),\r\n child: new FormControl(0, [Validators.required, Validators.max(2)]),\r\n childGroup: new FormArray([])\r\n\r\n }));\r\n }\r\n \r\n /**\r\n * \r\n *get all Cities \r\n * \r\n */\r\n getCities() {\r\n this.subscription.add(\r\n this.MyApi.getHotelsCities().subscribe((res) => {\r\n // this.selectAllcities=res\r\n })\r\n )\r\n }\r\n /**\r\n * \r\n *get Nationality based on lang \r\n * \r\n */\r\n getNationality(lang: string) {\r\n this.subscription.add(\r\n this.MyApi.countrycode(lang).subscribe((nati) => {\r\n this.extractNationality(nati)\r\n })\r\n )\r\n }\r\n /**\r\n * \r\n *extract nationality based on country \r\n * \r\n */\r\n\r\n extractNationality(countries: CountriescodeModule[]) {\r\n if (countries) {\r\n return countries.map(v => v.countryName.toLowerCase())\r\n }\r\n return\r\n\r\n }\r\n\r\n\r\n /**\r\n * \r\n * add Roome to Room Array\r\n * \r\n */\r\n addRoom() {\r\n \r\n let numRoom = this.HotelSearchForm.get('roomN')?.value;\r\n if (numRoom > 5) {\r\n this.RoomMessageError.enMsg = \"Maximun Rooms Shouldn't be more than 5\"\r\n this.RoomMessageError.arMsg = \"لا يجب حجز اكثر من 5 غرف\"\r\n }\r\n else {\r\n this.HotelSearchForm.get('roomN')?.setValue(numRoom + 1);\r\n this.HotelSearchForm.get('roomN')?.updateValueAndValidity();\r\n (this.HotelSearchForm.get(\"guestInfo\")).push(\r\n new FormGroup({\r\n adult: new FormControl(1, [Validators.required, Validators.min(1), Validators.max(5)]),\r\n child: new FormControl(0, [Validators.required, Validators.max(2)]),\r\n childGroup: new FormArray([])\r\n\r\n }));\r\n (this.HotelSearchForm.get(\"guestInfo\")).updateValueAndValidity();\r\n }\r\n\r\n }\r\n\r\n /**\r\n * \r\n * Remove Roome from Room Array\r\n * \r\n */\r\n removeRoom() {\r\n let numRoom = this.roomNumber;\r\n if (numRoom > 1) {\r\n this.HotelSearchForm.get('roomN')?.setValue(numRoom - 1);\r\n this.HotelSearchForm.get('roomN')?.updateValueAndValidity();\r\n (this.HotelSearchForm.get(\"guestInfo\")).removeAt(numRoom - 1);\r\n }\r\n\r\n }\r\n /**\r\n * \r\n * validation on guest Number con't be more than 9\r\n * \r\n */\r\n\r\n guestNumberValidation(search: FormArray) {\r\n // let numberGuest = this.adultNum + this.childNum\r\n\r\n let adults = 0;\r\n let childs = 0;\r\n for (let i = 0; i < search.length; i++) {\r\n\r\n adults += Number((this.HotelSearchForm.get(\"guestInfo\")).controls[i].get('adult').value)\r\n childs += Number((this.HotelSearchForm.get(\"guestInfo\")).controls[i].get('child').value)\r\n }\r\n this.allGuest = adults + childs;\r\n if (adults + childs > 9) {\r\n this.guestMessageError.enMsg = \"Maximun Number guest Shouldn't be more than 9\"\r\n this.guestMessageError.arMsg = \"لا يجب يزيد عدد الحجزين عن 9 افراد\"\r\n }\r\n }\r\n /**\r\n * \r\n * validation on checkIn & checkout Date\r\n * \r\n */\r\n ValidationDate() {\r\n this.subscription.add(\r\n this.HotelSearchForm.get('checkOut')?.valueChanges.subscribe(\r\n (val) => {\r\n if (val < this.HotelSearchForm.get('checkIn')?.value) {\r\n this.DateMessageError.enMsg = \"Please Enter checkoutDate after CheckInDate\"\r\n this.DateMessageError.arMsg = \"يجب ان يكون وقت الوصول اكبر من وقت الذهاب\"\r\n }\r\n }\r\n\r\n ))\r\n }\r\n /**\r\n * \r\n * search id value \r\n * \r\n */\r\n id() {\r\n let date = new Date();\r\n let myId = date.getFullYear() + 'B' + date.getUTCMonth() + 'I' + date.getUTCDay() + 'S' + date.getMilliseconds() + 'H' + Math.floor(Math.random() * (9 - 0 + 1)) + 0 + 'B' + Math.floor(Math.random() * (9 - 0 + 1)) + 0 + 'I'\r\n + Math.floor(Math.random() * (9 - 0 + 1)) + 0\r\n + 'S' + Math.floor(Math.random() * (9 - 0 + 1)) + 0 + 'H' + Math.floor(Math.random() * (9 - 0 + 1)) + 0 + 'I' + Math.floor(Math.random() * (9 - 0 + 1)) + 0;\r\n return myId;\r\n }\r\n\r\n /**\r\n * \r\n * push cities Data To citiesNames to show data \r\n * \r\n */\r\n\r\n extractcites(hotelcities: HotelsCitiesModule[]) {\r\n hotelcities.forEach((city) => {\r\n let cityt = city.City.toLowerCase();\r\n this.citiesNames.push(cityt);\r\n });\r\n }\r\n /**\r\n * \r\n * format guestInfo To used in Routing \r\n * \r\n */\r\n formatGuestInfo(guestInfo: FormArray) {\r\n let guesttxt = '';\r\n\r\n for (let i = 0; i < guestInfo.length; i++) {\r\n guesttxt += \"R\" + i + \"A\" + guestInfo[i]['adult'] + \"C\" + guestInfo[i]['child']\r\n let guestValue = guestInfo[i]['childGroup']\r\n for (let j = 0; j < guestValue.length; j++) {\r\n\r\n guesttxt += \"G\" + 7;\r\n\r\n }\r\n }\r\n return guesttxt;\r\n }\r\n /**\r\n * this function is responsible to return link to use it to navigate to search results with all data of search box\r\n */\r\n\r\n onSubmit(lang: string, currency: string, pointOfSale: string) {\r\n if (this.HotelSearchForm.valid) {\r\n\r\n let location: HotelsCitiesModule = this.HotelSearchForm.get(\"location\")?.value;\r\n let locationId: string = location.CityId;\r\n let citywithcountry = location.CityWithCountry;\r\n let nation = this.HotelSearchForm.get(\"nation\")?.value;\r\n let checkIn = this.HotelSearchForm.get(\"checkIn\")?.value;\r\n let checkOut = this.HotelSearchForm.get(\"checkOut\")?.value;\r\n let roomNumber = this.HotelSearchForm.get(\"roomN\")?.value;\r\n let guestInfo = this.HotelSearchForm.get(\"guestInfo\")?.value;\r\n this.stringGuest = this.formatGuestInfo(guestInfo);\r\n this.searchApi= {\r\n lan: lang,\r\n Currency: currency,\r\n POS: pointOfSale,\r\n serachId: this.id(),\r\n citywithcountry: citywithcountry,\r\n nation: nation,\r\n checkIn: checkIn,\r\n checkOut: checkOut,\r\n roomN: roomNumber,\r\n guestInfo: guestInfo,\r\n CityName: locationId\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * this function is responsible to destory any opened subscription on this service\r\n */\r\n destroyer() {\r\n this.subscription.unsubscribe()\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {\r\n HttpInterceptor,\r\n HttpRequest,\r\n HttpHandler,\r\n HttpParams\r\n} from '@angular/common/http';\r\nimport { MyapiService } from '../services/myapi.service';\r\n@Injectable()\r\nexport class AuthInterceptorService implements HttpInterceptor {\r\n constructor(private myapi:MyapiService) { }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler) {\r\n const token: string = sessionStorage.getItem('cls');\r\n if (token && req.url.includes(this.myapi.users)||req.url.includes(this.myapi.admin)) {\r\n console.log(token);\r\n req = req.clone({ headers: req.headers.set('Authorization', 'Bearer ' + token) });\r\n return next.handle(req);\r\n } else {\r\n return next.handle(req);\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { AboutUsComponent } from './about-us/about-us.component';\r\nimport { ContactComponent } from './contact/contact.component';\r\nimport { PrivacyComponent } from './privacy/privacy.component';\r\nimport { TermOfuseComponent } from './term-ofuse/term-ofuse.component';\r\nimport { UserLoginComponent } from './users/user-login/user-login.component';\r\nimport { UserSignupComponent } from './users/user-signup/user-signup.component';\r\nimport { UsersComponent } from './users/users.component';\r\n// import { TermOfuseComponent } from './term-ofuse/term-ofuse.component';\r\nimport{OrdersComponent} from './users/orders/orders.component'\r\nimport { SelectReturnFlightComponent } from './flight/select-return-flight/select-return-flight.component';\r\nimport { ChangePasswordComponent } from './users/change-password/change-password.component';\r\nimport { ForgetPasswordComponent } from './users/forget-password/forget-password.component';\r\nimport { HomeComponent } from './home/home.component';\r\nimport { ConfirmPaymentComponent } from './checkout/confirm-payment/confirm-payment.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path:'',\r\n loadChildren:() =>import('./home/home.models').then((m)=> m.HomeModule) \r\n },\r\n {\r\n path:'SelectReturn',\r\n component: SelectReturnFlightComponent,\r\n pathMatch: 'full'\r\n },\r\n {\r\n path:'login' , component:UserLoginComponent\r\n },\r\n {\r\n path:'changePassword' , component:ChangePasswordComponent\r\n },\r\n {\r\n path:'profile' , component:UsersComponent\r\n },\r\n {path:'confirmPayment', component:ConfirmPaymentComponent},\r\n\r\n {\r\n path:'signup' , component:UserSignupComponent\r\n },\r\n {\r\n path:'forgetPassword' , component:ForgetPasswordComponent\r\n },\r\n {\r\n path:'flightResult',\r\n \r\n loadChildren:() =>import('./flight/flight.models').then((m)=> m.FlightModule) \r\n },\r\n { path: 'paymentresult', loadChildren: () => import('./flight-cofirmation/comfirmation.module').then(m => m.PreComfirmationModule) },\r\n\r\n {\r\n path:'hotelResult',\r\n // loadChildren:() =>import('./hotel/hotel.models').then((m)=> m.HotelModule) \r\n },\r\n {\r\n path:'rooms/:pId/:sId/:hotelId',\r\n loadChildren:()=>import('./hotel-room/hotel-room.models').then((m)=>m.HotelRoomModule)\r\n },\r\n\r\n \r\n {\r\n path:'setting',\r\n loadChildren:() =>import('./setting/setting.models').then((m)=> m.SettingModule) \r\n },\r\n {\r\n path:'aboutUs',component: AboutUsComponent},\r\n \r\n { path:'Contact',component: ContactComponent}, \r\n { path:'termsOfuse',component: TermOfuseComponent},\r\n { path:'privacyPolicy',component:PrivacyComponent },\r\n //add checkout routing\r\n {\r\n path:'checkout',\r\n loadChildren:() =>import('./checkout/checkout.module').then((m)=> m.CheckoutModule) \r\n },\r\n {\r\n path:'hotelCheckout/:pId/:sId/:hotelId/:rooms',\r\n loadChildren:() =>import('./hotel-checkout/hotel-checkout.models').then((m)=> m.HotelCheckoutModule) \r\n },\r\n {\r\n path:'CheckoutOffer/:id',\r\n loadChildren:() =>import('./checkout-offer/checkout-offer.module').then((m)=> m.CheckoutOfferModule) \r\n\r\n \r\n },\r\n {\r\n path:'confirmation-hotel',\r\n loadChildren:() =>import('./hotel-confirmation/hotel-confirmation.models').then((m)=> m.HotelConfirmationModule) \r\n }\r\n];\r\nconst routesEn: Routes = [\r\n {\r\n path:'/:lang',\r\n loadChildren:() =>import('./home/home.models').then((m)=> m.HomeModule) \r\n },\r\n {\r\n path:'SelectReturn/:lang',\r\n component: SelectReturnFlightComponent,\r\n pathMatch: 'full'\r\n },\r\n {\r\n path:'login/:lang' , component:UserLoginComponent\r\n },\r\n {\r\n path:'changePassword/:lang' , component:ChangePasswordComponent\r\n },\r\n {\r\n path:'profile/:lang' , component:UsersComponent\r\n },\r\n \r\n {\r\n path:'signup/:lang' , component:UserSignupComponent\r\n },\r\n {\r\n path:'forgetPassword/:lang' , component:ForgetPasswordComponent\r\n },\r\n {\r\n path:'flightResult/',\r\n \r\n loadChildren:() =>import('./flight/flight.models').then((m)=> m.FlightModule) \r\n },\r\n { path: 'paymentresult/:lang', loadChildren: () => import('./flight-cofirmation/comfirmation.module').then(m => m.PreComfirmationModule) },\r\n\r\n {\r\n path:'hotelResult/:lang',\r\n // loadChildren:() =>import('./hotel/hotel.models').then((m)=> m.HotelModule) \r\n },\r\n {\r\n path:'rooms/:lang/:pId/:sId/:hotelId',\r\n loadChildren:()=>import('./hotel-room/hotel-room.models').then((m)=>m.HotelRoomModule)\r\n },\r\n\r\n \r\n {\r\n path:'setting/:lang',\r\n loadChildren:() =>import('./setting/setting.models').then((m)=> m.SettingModule) \r\n },\r\n {\r\n path:'aboutUs/:lang',component: AboutUsComponent},\r\n \r\n { path:'Contact/:lang',component: ContactComponent}, \r\n { path:'termsOfuse/:lang',component: TermOfuseComponent},\r\n { path:'privacyPolicy/:lang',component:PrivacyComponent },\r\n //add checkout routing\r\n {\r\n path:'checkout/:lang',\r\n loadChildren:() =>import('./checkout/checkout.module').then((m)=> m.CheckoutModule) \r\n },\r\n {\r\n path:'hotelCheckout/:lang/:pId/:sId/:hotelId/:rooms',\r\n loadChildren:() =>import('./hotel-checkout/hotel-checkout.models').then((m)=> m.HotelCheckoutModule) \r\n },\r\n {\r\n path:'CheckoutOffer/:lang/:id',\r\n loadChildren:() =>import('./checkout-offer/checkout-offer.module').then((m)=> m.CheckoutOfferModule) \r\n },\r\n {\r\n path:'confirmation-hotel/:lnag',\r\n loadChildren:() =>import('./hotel-confirmation/hotel-confirmation.models').then((m)=> m.HotelConfirmationModule) \r\n }\r\n];\r\n@NgModule({\r\n imports: [RouterModule.forRoot([...routes,...routesEn], {\r\n initialNavigation: 'enabled',scrollPositionRestoration: 'enabled'\r\n})],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","import { cFlightSearchs, filterSelectedFlight } from '../../store/flight-search/flight-search.actions';\r\nimport { airItineraries, pickySelection } from \"@src/app/interface/flight-search-result\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport {\r\n selectAppCurrency,\r\n selectFilteredFlights,\r\n selectFlightLoader,\r\n selectFlightType,\r\n selectPickySelection,\r\n selectSettingsFeature,\r\n State,\r\n} from \"@src/app/store/selectors\";\r\nimport { CurrencyModule } from \"src/app/models/currency/currency.module\";\r\nimport { CurruncyServiceService } from \"src/app/services/curruncy-service.service\";\r\nimport { Router, ActivatedRoute, Params } from \"@angular/router\";\r\nimport { DatePipe } from \"@angular/common\";\r\nimport { Store } from \"@ngrx/store\";\r\nimport { Subscription } from \"rxjs\";\r\nimport { Options } from \"@angular-slider/ngx-slider\";\r\nimport { FormGroup, FormArray, FormControl } from \"@angular/forms\";\r\n\r\nimport {\r\n Component,\r\n OnInit,\r\n ViewChild,\r\n ChangeDetectorRef,\r\n Inject,\r\n OnDestroy,\r\n HostListener,\r\n AfterViewChecked,\r\n EventEmitter,\r\n} from \"@angular/core\";\r\nimport { DOCUMENT } from \"@angular/common\";\r\nimport { MyapiService } from \"../../services/myapi.service\";\r\nimport { FlightServiceService } from \"../../services/flight-service.service\";\r\nimport { SearchFlightModule } from \"../../models/search-flight/search-flight.module\";\r\nimport { FlightSearchResult } from \"../../interface/flight-search-result\";\r\nimport { FilterInputsModule } from \"../../models/filter-inputs/filter-inputs.module\";\r\nimport { FareRules } from \"../../interface/flight-search-result\";\r\n\r\nimport {\r\n filterFlight,\r\n loadFlightSearchs,\r\n resetSelectedFlight,\r\n sortFlight,\r\n updateFlightType,\r\n} from \"../../store/flight-search/flight-search.actions\";\r\nimport { selectAllFlights } from \"../../store/selectors\";\r\nimport { Observable } from \"rxjs\";\r\nimport {\r\n faAngleLeft,\r\n faAngleRight,\r\n faBars,\r\n faChevronLeft,\r\n faFilter,\r\n faSearch,\r\n faSlidersH,\r\n faSortAmountDown,\r\n} from \"@fortawesome/free-solid-svg-icons\";\r\nimport { mergeMap, skipUntil, take, takeUntil, takeWhile } from \"rxjs/operators\";\r\nimport { convertToMin } from '@src/app/store/flight-search/flight-search.effects';\r\nimport { MatAccordion } from '@angular/material/expansion';\r\nimport { ThisReceiver, ThrowStmt } from '@angular/compiler';\r\n\r\ninterface customAirlineFilter {\r\n logo: string;\r\n stops: string | number;\r\n price: string | number;\r\n currency: string;\r\n name: string;\r\n selected: boolean;\r\n}\r\n\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-filter-selected-flight',\r\n templateUrl: './filter-selected-flight.component.html',\r\n styleUrls: ['./filter-selected-flight.component.css', '../flight.component.scss']\r\n})\r\nexport class FilterSelectedFlightComponent implements OnDestroy, AfterViewChecked {\r\n\r\n @ViewChild(MatAccordion) accordion: MatAccordion;\r\n rate: number = 1;\r\n code: string = \"KWD\";\r\n showFilter: boolean = false;\r\n searchCriteria: any;\r\n formINIT: boolean = false;\r\n filterCalled: EventEmitter = new EventEmitter();\r\n private subscription: Subscription = new Subscription();\r\n currentCurruncy$: Observable = this.store.select(selectAppCurrency);\r\n loading$: Observable = this.store.select(selectFlightLoader);\r\n currency$ = this.store.select(selectAppCurrency);\r\n FilterChanges$: Subscription = new Subscription();\r\n PickyChange$: Subscription = new Subscription();\r\n loading: boolean = true;\r\n shownAirPortsFilter = 5;\r\n selectedpickySelectionFlight$: Observable = this.store.select((statse) => statse.flight.pickySelection);\r\n optionsArriving: Options ;\r\n Data: number;\r\n filterForm = new FormGroup({\r\n airline: new FormGroup({\r\n airlines: new FormArray([])\r\n }),\r\n\r\n\r\n\r\n stopsForm: new FormGroup({\r\n noStops: new FormControl(false),\r\n oneStop: new FormControl(false),\r\n twoAndm: new FormControl(false)\r\n }),\r\n\r\n priceSlider: new FormControl([0, 0]),\r\n durationSlider: new FormControl([0, 7000]),\r\n dpartingSlider: new FormControl([0, 7000]),\r\n arrivingSlider: new FormControl([0, 7000]),\r\n\r\n\r\n\r\n });\r\n\r\n optionsLoading: Options = {\r\n ceil: 0,\r\n floor: 500,\r\n }\r\n\r\n options3: Options;\r\n options3Loading: Options = {\r\n ceil: 0,\r\n floor: 500,\r\n }\r\n\r\n priceMinValue: number = 0;\r\n priceMaxValue: number = 5000;\r\n\r\n options: Options;\r\n\r\n\r\n departingMin: number = 0;\r\n departingMax: number = 7000\r\n optionsdeparting: Options = {\r\n floor: 0,\r\n ceil: 5000,\r\n noSwitching: true,\r\n translate: (value: number): string => {\r\n let h = (value / 60) | 0;\r\n let m = value % 60 | 0;\r\n return h + \":\" + m;\r\n },\r\n };\r\n\r\n\r\n durationMin: number = 0;\r\n durationMax: number = 7000;\r\n optionsDurathion: Options;\r\n\r\n response: pickySelection;\r\n normalError: any;\r\n normalErrorStatus: any;\r\n sequenceNumber: number[] = [];\r\n\r\n noResultAlert: boolean;\r\n roundT: boolean;\r\n Multi: boolean;\r\n\r\n minValue: number = 0\r\n maxValue: number = 5000\r\n\r\n arrivingMin : number = 0;\r\n arrivingMax : number = 7000\r\n airlinesA: any[] = [];\r\n airlinesForm: any = [];\r\n bookingSites: any[] = ['KhaleejGate', 'other'];\r\n bookingSitesForm: any[] = []\r\n\r\n filter?: FilterInputsModule;\r\n constructor(\r\n private store: Store,\r\n private datePipe: DatePipe,\r\n private route: ActivatedRoute,\r\n private flight: FlightServiceService,\r\n private changeDetectorRef: ChangeDetectorRef\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n\r\n this.subscription.add(\r\n this.currency$.subscribe(v=>{\r\n this.rate = v.rate;\r\n this.code = v.Currency_Code;\r\n })\r\n )\r\n\r\n this.subscription.add(\r\n this.selectedpickySelectionFlight$.subscribe((v) => {\r\n this.Data = v.flightIndex\r\n\r\n }))\r\n\r\n this.filterForm = new FormGroup({\r\n airline: new FormGroup({\r\n airlines: new FormArray([])\r\n }),\r\n\r\n bookingSite: new FormGroup({\r\n bookingSites: new FormArray([])\r\n }),\r\n\r\n stopsForm: new FormGroup({\r\n noStops: new FormControl(false),\r\n oneStop: new FormControl(false),\r\n twoAndm: new FormControl(false)\r\n }),\r\n sameAirline: new FormControl(false),\r\n priceSlider: new FormControl([0, 0]),\r\n durationSlider: new FormControl([0, 7000]),\r\n dpartingSlider: new FormControl([0, 7000]),\r\n // arrivingSlider:new FormControl([0,7000]),\r\n arrivingSlider: new FormControl([0, 7000]),\r\n\r\n experience: new FormGroup({\r\n overNight: new FormControl(false),\r\n longStops: new FormControl(false)\r\n }),\r\n\r\n flexibleTickets: new FormGroup({\r\n refund: new FormControl(false),\r\n nonRefund: new FormControl(false)\r\n })\r\n });\r\n\r\n\r\n // this.filterForm.reset();\r\n this.subscription.add(\r\n this.loading$.subscribe(v => {\r\n // this.loading = v;\r\n if (!v) {\r\n setTimeout(() => this.filterForm.enable(), 500);\r\n }\r\n else {\r\n setTimeout(() => this.filterForm.disable(), 200);\r\n }\r\n }));\r\n this.subscription.add(\r\n this.filterForm.valueChanges.pipe(skipUntil(this.filterCalled)).subscribe((v) => {\r\n if (this.response) {\r\n this.filter = new FilterInputsModule(\r\n this.filterForm.get(\"priceSlider\").value[0],\r\n this.filterForm.get(\"priceSlider\").value[1],\r\n // new\r\n this.filterForm.get(\"durationSlider\").value[0],\r\n this.filterForm.get(\"durationSlider\").value[1],\r\n this.filterForm.get(\"dpartingSlider\").value[0],\r\n this.filterForm.get(\"dpartingSlider\").value[1],\r\n this.filterForm.get(\"arrivingSlider\").value[0],\r\n this.filterForm.get(\"arrivingSlider\").value[1],\r\n this.stopsvalues(),\r\n this.filteringbyairline(\r\n this.filterForm.get(\"airline\").get(\"airlines\").value\r\n )\r\n );\r\n\r\n this.store.dispatch(\r\n filterSelectedFlight({\r\n filter: this.filter,\r\n airItineraries: this.response.otherOptions,\r\n roundTrip: this.roundT,\r\n })\r\n );\r\n\r\n }\r\n\r\n })\r\n )\r\n\r\n // this.subscription.add(this.store.select(selectPickySelection).subscribe((v)=>this.response = v.otherOptions));\r\n this.PickyChange$ = this.store.select(selectPickySelection).pipe(takeUntil(this.filterCalled)).subscribe(\r\n (res) => {\r\n this.response = res;\r\n\r\n if (!this.response) {\r\n return\r\n }\r\n else if (!this.response.selectedFlight || this.response.otherOptions.length === 0) {\r\n this.normalError = \"No result found.
please search again\"\r\n this.normalErrorStatus = true;\r\n return\r\n }\r\n else {\r\n // this.FilterChanges$.unsubscribe();\r\n\r\n // debugger\r\n // this.fillSequenceArr();\r\n // this.filterForm.get('durationSlider')?.setValue(this.findDurationMinMax(this.response.otherOptions));\r\n this.findDurationMinMax(this.response.otherOptions)\r\n this.filterForm.get('durationSlider')?.updateValueAndValidity();\r\n\r\n // this.filterForm.get('dpartingSlider')?.setValue(this.findDepartingnMinMax(this.response.otherOptions));\r\n this.findDepartingnMinMax(this.response.otherOptions)\r\n this.filterForm.get('dpartingSlider')?.updateValueAndValidity();\r\n \r\n this.filterForm.get('arrivingSlider')?.setValue(this.findArrivingMinMax(this.response.otherOptions));\r\n this.filterForm.get('arrivingSlider')?.updateValueAndValidity();\r\n // this.filterForm.get('arrivingSlider')?.setValue(this.findArrivingMinMax(this.response.otherOptions))\r\n \r\n\r\n this.filterForm.get('priceSlider')?.setValue(this.minAnMax());\r\n // this.minAnMax();\r\n // this.options = {\r\n // floor: this.minAnMax()[0],\r\n // ceil: Math.round(this.minAnMax()[1]),\r\n // minLimit:this.minAnMax()[0],\r\n // maxLimit:this.minAnMax()[1],\r\n // translate: (value: number): string => {\r\n // return this.code + Math.round(value*this.rate);\r\n // }\r\n // };\r\n // this.filterForm.get('priceSlider')?.updateValueAndValidity(); \r\n\r\n\r\n\r\n // this.removeArrayControllers();\r\n this.airlinesA = [];\r\n this.airlinesForm = []\r\n this.airlinesA.forEach(element => {\r\n // this.airlinesForm.push(new FormControl(false));\r\n (this.filterForm.get('airline')?.get('airlines')).push(new FormControl(false));\r\n });\r\n\r\n this.bookingSitesForm = []\r\n this.bookingSites.forEach(element => {\r\n // this.bookingSitesForm.push(new FormControl(false));\r\n (this.filterForm.get('bookingSite')?.get('bookingSites')).push(new FormControl(false));\r\n })\r\n\r\n\r\n this.store.dispatch(filterSelectedFlight({ airItineraries: this.response.otherOptions, roundTrip: true }));\r\n this.setSliderOptions();\r\n this.filterForm.enable();\r\n this.formINIT = true;\r\n this.showFilter = true;\r\n this.filterCalled.emit(true)\r\n };\r\n }\r\n );\r\n\r\n\r\n\r\n\r\n }\r\n\r\n fillSequenceArr() {\r\n for (let i = 0; i < this.response.otherOptions.length; i++) {\r\n this.sequenceNumber.push(this.response.otherOptions[i].sequenceNum);\r\n }\r\n\r\n }\r\n\r\n findDurationMinMax(array: any[]) {\r\n let sorted = [...array].sort((a, b) => b.totalDuration - a.totalDuration);\r\n let min = sorted[sorted.length - 1]['totalDuration'];\r\n let max = sorted[0]['totalDuration'];\r\n this.durationMax = max + 100;\r\n this.durationMin = min;\r\n this.optionsDurathion = {\r\n floor: min,\r\n ceil: max + 100,\r\n noSwitching: true,\r\n translate: (value: number): string => {\r\n let h = value / 60 | 0;\r\n let m = value % 60 | 0;\r\n return h + \"h\" + \":\" + m + \"m\";\r\n }\r\n }\r\n return [min, max + 100];\r\n }\r\n\r\n /**\r\n * after finding the min and max values for all filtiration critirias .. update the sliders with these ,,\r\n * minimum and maximum values\r\n */\r\n setSliderOptions() {\r\n this.optionsDurathion = {\r\n floor: this.durationMin,\r\n ceil: this.durationMax,\r\n noSwitching: true,\r\n translate: (value: number): string => {\r\n let h = value / 60 | 0;\r\n let m = value % 60 | 0;\r\n return h + \"h\" + \":\" + m + \"m\";\r\n }\r\n }\r\n\r\n this.optionsdeparting = {\r\n floor: this.departingMin,\r\n ceil: this.departingMax,\r\n noSwitching: false,\r\n translate: (value: number): string => {\r\n let h = value / 60 | 0;\r\n let m = value % 60 | 0;\r\n \r\n return `${this.hoursFormater(h)}:${this.mFormater(m)} ${this.DayOrNight(h,m)}`;\r\n }\r\n };\r\n \r\n this.optionsArriving = {\r\n floor: this.arrivingMin,\r\n ceil: this.arrivingMax,\r\n noSwitching: true,\r\n translate: (value: number): string => {\r\n let h = value / 60 | 0;\r\n let m = value % 60 | 0;\r\n return `${this.hoursFormater(h)}:${this.mFormater(m)} ${this.DayOrNight(h,m)}`;\r\n }\r\n };\r\n\r\n \r\n this.options = {\r\n floor: this.priceMinValue,\r\n ceil: Math.round(this.priceMaxValue),\r\n minLimit: Math.round(this.priceMinValue),\r\n maxLimit: Math.round(this.priceMaxValue),\r\n translate: (value: number): string => {\r\n return this.code + Math.round(value * this.rate);\r\n }\r\n };\r\n }\r\n\r\n\r\n //filter by departing date\r\n findDepartingnMinMax(array: any[]) {\r\n let min = convertToMin(array[0].allJourney.flights[0].flightDTO[0].departureDate);\r\n let max = convertToMin(array[0].allJourney.flights[0].flightDTO[0].departureDate);\r\n array.forEach((element) => {\r\n let t = convertToMin(element.deptDate);\r\n if (t < min) {\r\n min = t;\r\n }\r\n if (t > max) {\r\n max = t;\r\n }\r\n });\r\n\r\n this.departingMin = min;\r\n this.departingMax = max;\r\n this.optionsdeparting = {\r\n floor: min,\r\n ceil: this.departingMax,\r\n noSwitching: true,\r\n translate: (value: number): string => {\r\n let h = (value / 60) | 0;\r\n let m = value % 60 | 0;\r\n return h + \":\" + m;\r\n },\r\n };\r\n return [min, max];\r\n }\r\n //filter by arriving date\r\n findArrivingMinMax(array: airItineraries[]){\r\n \r\n let min = convertToMin(array[0].allJourney.flights[0].flightDTO[0].arrivalDate);\r\n let max = convertToMin(array[0].allJourney.flights[0].flightDTO[array[0].allJourney.flights[0].flightDTO.length -1].arrivalDate);\r\n array.forEach(element => {\r\n let t = convertToMin(element.allJourney.flights[0].flightDTO[element.allJourney.flights[0].flightDTO.length -1].arrivalDate)\r\n if (t < min) {\r\n min = t;\r\n }\r\n if (t > max) {\r\n max = t;\r\n }\r\n });\r\n \r\n this.arrivingMin = min;\r\n this.arrivingMax = max;\r\n this.optionsArriving = {\r\n floor: min,\r\n ceil: max,\r\n noSwitching: true,\r\n translate: (value: number): string => {\r\n let h = (value / 60) | 0;\r\n let m = value % 60 | 0;\r\n return h + \":\" + m;\r\n },\r\n };\r\n return [min, max];\r\n \r\n }\r\n\r\n DayOrNight(h:number,m:number):string{\r\n let hourOfday = h > 24?h%24:h;\r\n return hourOfday+(m/100) > 12?'PM':\"AM\"\r\n }\r\n hoursFormater(h:number):string{\r\n let hourOfday = h > 24?h%24:h;\r\n let fHourOfday = hourOfday >12? hourOfday -12 : hourOfday;\r\n \r\n return fHourOfday >= 10 ?fHourOfday.toString():`0${fHourOfday}`;\r\n }\r\n mFormater(m:number):string{\r\n return m >=10?m.toString():`0${m}`;\r\n }\r\n \r\n\r\n\r\n /**\r\n * Filter With Day Time Slots (Return Flight)\r\n **/\r\n\r\n\r\n //filter by price\r\n minAnMax() {\r\n let len: number = 20;\r\n let arr: airItineraries[] = [...this.response.otherOptions]\r\n let sortedRes = [...arr.sort((a, b) => { return a.itinTotalFare.amount - b.itinTotalFare.amount })]\r\n let minValue = sortedRes[0].itinTotalFare.amount -1;\r\n\r\n\r\n len = arr.length;\r\n len = len - 1;\r\n\r\n let maxValue1 = sortedRes[len].itinTotalFare.amount;\r\n\r\n\r\n // this.options.ceil = Math.round(maxValue1+100 );\r\n // this.options.floor = minValue\r\n this.priceMinValue = Math.round(minValue);\r\n this.priceMaxValue = Math.round(maxValue1);\r\n this.options = {\r\n floor: this.priceMinValue,\r\n ceil: this.priceMaxValue,\r\n minLimit: this.priceMinValue,\r\n maxLimit: this.priceMaxValue,\r\n translate: (value: number): string => {\r\n return this.code + Math.round(value * this.rate);\r\n }\r\n };\r\n this.maxValue = Math.round(maxValue1 + 100);\r\n return [minValue, this.maxValue];\r\n\r\n }\r\n\r\n // remove airlines arr\r\n removeArrayControllers() {\r\n if (((this.filterForm.get('airline')?.get(\"airlines\")).length)) {\r\n while (((this.filterForm.get('airline')?.get(\"airlines\"))).length >= 1) {\r\n (this.filterForm.get('airline')?.get(\"airlines\")).removeAt(0);\r\n }\r\n }\r\n\r\n }\r\n\r\n //filter by stops value\r\n stopsvalues() {\r\n let out: number[] = [];\r\n if (this.filterForm.get('stopsForm')?.get('noStops')?.value) {\r\n out.push(0)\r\n }\r\n if (this.filterForm.get('stopsForm')?.get('oneStop')?.value) {\r\n out.push(1)\r\n }\r\n if (this.filterForm.get('stopsForm')?.get('twoAndm')?.value) {\r\n out.push(2);\r\n out.push(3);\r\n out.push(4);\r\n }\r\n\r\n if (!this.filterForm.get('stopsForm')?.get('noStops')?.value && !this.filterForm.get('stopsForm')?.get('oneStop')?.value && !this.filterForm.get('stopsForm')?.get('twoAndm')?.value) {\r\n out = [0, 1, 2, 3, 4];\r\n }\r\n return out\r\n }\r\n\r\n //filter by airline\r\n filteringbyairline(val: any[]) {\r\n let airL: any[] = [];\r\n for (let index = 0; index < val.length; index++) {\r\n const element = val[index];\r\n if (element) {\r\n airL.push(this.airlinesA[index]);\r\n }\r\n\r\n };\r\n if (airL.length == 0) {\r\n let out = airL;\r\n return out\r\n }\r\n else {\r\n return airL;\r\n }\r\n }\r\n ngAfterViewChecked(): void {\r\n this.changeDetectorRef.detectChanges();\r\n\r\n }\r\n //filter by booking sites\r\n filteringbyBookingSites(val: any[]) {\r\n let selectedSites: any[] = [];\r\n for (let index = 0; index < val.length; index++) {\r\n const element = val[index];\r\n if (element) {\r\n selectedSites.push(this.bookingSites[index]);\r\n }\r\n\r\n };\r\n if (selectedSites.length == 0) {\r\n let out = selectedSites;\r\n return out\r\n }\r\n else {\r\n return selectedSites;\r\n }\r\n }\r\n\r\n\r\n /**\r\n* here is the unsubscripe from all observables\r\n*/\r\n ngOnDestroy() {\r\n this.filterForm = new FormGroup({\r\n airline: new FormGroup({\r\n airlines: new FormArray([])\r\n }),\r\n\r\n bookingSite: new FormGroup({\r\n bookingSites: new FormArray([])\r\n }),\r\n\r\n stopsForm: new FormGroup({\r\n noStops: new FormControl(false),\r\n oneStop: new FormControl(false),\r\n twoAndm: new FormControl(false)\r\n }),\r\n sameAirline: new FormControl(false),\r\n priceSlider: new FormControl([0, 0]),\r\n durationSlider: new FormControl([0, 7000]),\r\n dpartingSlider: new FormControl([0, 7000]),\r\n arrivingSlider: new FormControl([0, 7000]),\r\n\r\n experience: new FormGroup({\r\n overNight: new FormControl(false),\r\n longStops: new FormControl(false)\r\n }),\r\n\r\n flexibleTickets: new FormGroup({\r\n refund: new FormControl(false),\r\n nonRefund: new FormControl(false)\r\n })\r\n });\r\n this.subscription.unsubscribe();\r\n this.PickyChange$.unsubscribe();\r\n }\r\n\r\n\r\n}","\r\n\r\n
\r\n {{\"SearchResult.filteredBy\" | translate }}\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {{'SearchResult.Stops' | translate}}\r\n \r\n \r\n
\r\n
\r\n {{'SearchResult.direct' |\r\n translate}}\r\n
\r\n
\r\n {{'SearchResult.oneStop' |\r\n translate}}\r\n
\r\n
\r\n {{'SearchResult.twoStop' |\r\n translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n \r\n \r\n \r\n {{'SearchResult.priceFilter' | translate}}\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n

\r\n \r\n {{'SearchResult.DpartingTime' | translate}}\r\n \r\n \r\n \r\n

\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n

\r\n {{'SearchResult.Arrivaltime' | translate}}\r\n \r\n \r\n \r\n \r\n

\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n {{'SearchResult.Duration' | translate}}\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n\r\n \r\n \r\n\r\n
\r\n
\r\n","import { Component, OnInit, Input, OnDestroy } from '@angular/core';\r\nimport { FarRulesComponent } from './../far-rules/far-rules.component';\r\nimport { ModalDismissReasons, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\n\r\n\r\nimport {\r\n airItineraries,\r\n fare,\r\n FareRules,\r\n flight,\r\n flightOfflineService,\r\n passengerFareBreakDownDTOs,\r\n Selectedflight,\r\n} from '../../interface/flight-search-result';\r\nimport { MyapiService } from '@src/app/services/myapi.service';\r\nimport { FlightServiceService } from '@src/app/services/flight-service.service';\r\nimport { faAngleDoubleDown, faArrowDown, faArrowRight, faCaretRight, faChevronDown, faChevronRight, faForward, faGripVertical, faInfo, faInfoCircle, faLuggageCart, faPlane, faPlaneArrival, faPlaneDeparture, faSlidersH, faSuitcaseRolling, faUsers, faUtensils, faWifi } from '@fortawesome/free-solid-svg-icons';\r\nimport { faYoutubeSquare } from '@fortawesome/free-brands-svg-icons';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { SelectReturnFlightComponent } from '../select-return-flight/select-return-flight.component';\r\nimport { Router } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\nimport { State } from '@src/app/store/flight-search/flight-search.reducer';\r\nimport { selectedFlight } from '@src/app/store/selectors';\r\nimport { pickySelectionAction } from '@src/app/store/flight-search/flight-search.actions';\r\nimport { Subscription } from 'rxjs';\r\n\r\ntype fareCalc = (fare:fare[])=>number;\r\ntype calcEqfare =(flightFaresDTO: passengerFareBreakDownDTOs[],type:string,farecalc:fareCalc)=>number;\r\ndeclare var $: any;\r\n\r\nexport interface BreakDownView{\r\n ADT:{\r\n totalFare:[number,string],\r\n ScFare:[number,string,number]\r\n },\r\n CNN:{\r\n totalFare:[number,string],\r\n ScFare:[number,string,number]\r\n },\r\n INF:{\r\n totalFare:[number,string],\r\n ScFare:[number,string,number]\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'app-round-trip',\r\n templateUrl: './round-trip.component.html',\r\n styleUrls: ['./round-trip.component.scss']\r\n})\r\nexport class RoundTripComponent implements OnInit,OnDestroy {\r\n subscribtions:Subscription = new Subscription() ;\r\n faLuggageCart = faLuggageCart;\r\n faPlaneDeparture = faPlaneDeparture;\r\n faPlaneArrival = faPlaneArrival;\r\n faUsers = faUsers;\r\n faPlane = faPlane;\r\n faAngleDoubleDown = faAngleDoubleDown;\r\n faForward = faForward;\r\n faSlidersH = faSlidersH;\r\n faCaretRight = faCaretRight;\r\n faInfoCircle = faInfoCircle;\r\n faArrowRight = faArrowRight;\r\n faArrowDown = faArrowDown;\r\n faChevronRight= faChevronRight;\r\n faSuitcaseRolling=faSuitcaseRolling;\r\n showDetails: boolean = false;\r\n showDetailsMore: boolean[] = [];\r\n disc: [number, string, string];\r\n fareView:BreakDownView;\r\n faGripVertical = faGripVertical;\r\n faInfo=faInfo;\r\n faUtensils = faUtensils;\r\n faYoutubeSquare= faYoutubeSquare;\r\n faWifi=faWifi;\r\n faChevronDown=faChevronDown;\r\n @Input() item: airItineraries[] = [];\r\n @Input() Selected:Selectedflight ;\r\n @Input() i: number = 0;\r\n @Input() over: boolean = false;\r\n @Input() checkout: boolean;\r\n FareLoading: boolean = true;\r\n fare: FareRules[];\r\n trueT: boolean[] = [];\r\n FlightData:any;\r\n moreT: boolean = true;\r\n airItinerData:airItineraries\r\n fN:number\r\n constructor(\r\n public flight: FlightServiceService,\r\n private search: MyapiService,\r\n private modalService: NgbModal,\r\n private router: Router,\r\n public translate : TranslateService,\r\n private store: Store,) { }\r\n \r\n ngOnInit() {\r\n this.trueT = this.flight.valuesoftrue(this.item);\r\n if (this.Selected != undefined) {\r\n this.item = this.mapSelected(this.Selected);\r\n }\r\n\r\n this.item.map(v=>{\r\n this.airItinerData= v\r\n })\r\n\r\n }\r\n showFareRules(squencNumber: number, pKey: string) {\r\n this.FareLoading = true;\r\n this.subscribtions.add(\r\n this.subscribtions.add(this.search.fareRules(this.flight.serachId, squencNumber, pKey).subscribe(\r\n (result) => {\r\n this.FareLoading = false;\r\n this.fare = result;\r\n }\r\n \r\n )));\r\n }\r\n \r\n \r\n togglemodel(index: number, sequenceNum: number, pKey: string) {\r\n let id = '#fareModal' + index;\r\n $(id).modal('toggle');\r\n this.showFareRules(sequenceNum, pKey);\r\n }\r\n \r\n togglemodelt(i: number, m: number, sequenceNum: number, pKey: string) {\r\n let id = '#fareModal' + i + 'l' + m;\r\n $(id).modal('toggle');\r\n this.showFareRules(sequenceNum, pKey);\r\n }\r\n \r\n \r\n open(sequenceNum: number, pKey: string) {\r\n \r\n const modalRef = this.modalService.open(FarRulesComponent);\r\n modalRef.componentInstance.serachId = this.flight.serachId;\r\n modalRef.componentInstance.squencNumber = sequenceNum;\r\n modalRef.componentInstance.providerKey = pKey;\r\n \r\n \r\n \r\n }\r\n selectReturnFlight(item: airItineraries, FlightIndex:number){\r\n if(item ){\r\n this.FlightData= item.allJourney.flights[FlightIndex];\r\n this.store.dispatch(pickySelectionAction({flight:item.allJourney.flights[FlightIndex], airItinerary:item ,flightIndex:FlightIndex}));\r\n this.flight.SelectOneFlight = true;\r\n }else {\r\n return\r\n }\r\n }\r\n\r\n toggleDetails() {\r\n this.showDetails = !this.showDetails;\r\n }\r\n toggleDetailsMore(index: number) {\r\n this.showDetailsMore[index] = !this.showDetailsMore[index];\r\n }\r\n\r\n\r\n\r\n mapSelected(selected: Selectedflight): airItineraries[] {\r\n debugger\r\n let out: airItineraries = {\r\n sequenceNum: selected.airItineraryDTO.sequenceNum,\r\n pKey: selected.airItineraryDTO.pKey,\r\n isRefundable: selected.airItineraryDTO.isRefundable,\r\n itinTotalFare: selected.airItineraryDTO.itinTotalFare,\r\n totalDuration: selected.airItineraryDTO.totalDuration,\r\n deptDate: selected.airItineraryDTO.deptDate,\r\n arrivalDate: selected.airItineraryDTO.arrivalDate,\r\n cabinClass: selected.airItineraryDTO.cabinClass,\r\n flightType: selected.airItineraryDTO.flightType,\r\n pcc: selected.airItineraryDTO.pcc,\r\n allJourney: {\r\n flights: selected.airItineraryDTO.allJourney.flights\r\n },\r\n baggageInformation: selected.airItineraryDTO.baggageInformation\r\n }\r\n\r\n return [out]\r\n }\r\n\r\n \r\n /**\r\n * \r\n * @param flightFaresDTO \r\n * @param passNumber \r\n * @returns [total value ,curruncy code]\r\n */\r\n returnPassTotalFar(flightFaresDTO: fare[], passNumber: number, calcfare: fareCalc): [number, string] {\r\n let Total: fare = flightFaresDTO.filter(v => v.fareType.toLowerCase() === 'equivfare')[0];\r\n return Total ? [calcfare(flightFaresDTO) * passNumber, Total.currencyCode] : [NaN, 'KWD'];\r\n }\r\n /**\r\n * \r\n * @param flightFaresDTO \r\n * @param passNumber \r\n * @returns [total value per passenger ,curruncy code , number of passenger]\r\n */\r\n returnPassFareScatterd(flightFaresDTO: fare[], passNumber: number, calcfare: fareCalc): [number, string, number] {\r\n let Total: fare = flightFaresDTO.filter(v => v.fareType.toLowerCase() === 'equivfare')[0];\r\n return Total ? [calcfare(flightFaresDTO), Total.currencyCode, passNumber] : [NaN, 'KWD', NaN];\r\n }\r\n /**\r\n * \r\n * @param flightFaresDTO \r\n * @param totalAmount \r\n * @param totalTax \r\n * @param curruncy \r\n * @param calcEqfare \r\n * @param fareCalc \r\n * @returns value of discount or service fees\r\n */\r\n returnPassTotalFarDifferance(flightFaresDTO: passengerFareBreakDownDTOs[], totalAmount: number, totalTax: number, curruncy: string, calcEqfare: calcEqfare, fareCalc: fareCalc): [number, string, string] {\r\n if(!flightFaresDTO){\r\n return [0, '', 'KWD'];\r\n }\r\n let AdtFares = calcEqfare(flightFaresDTO, 'ADT', fareCalc);\r\n let childFare = calcEqfare(flightFaresDTO, 'CNN', fareCalc);\r\n let infentFare = calcEqfare(flightFaresDTO, 'INF', fareCalc);\r\n let TotalFare = AdtFares + childFare + infentFare + totalTax;\r\n let fareDiff = totalAmount - TotalFare;\r\n if (fareDiff > 0) {\r\n return [Math.round(fareDiff), 'Service Fees', curruncy]\r\n } else if (fareDiff < 0) {\r\n return [Math.round(-1 * fareDiff), 'Discount', curruncy]\r\n } else {\r\n return [0, '', 'KWD'];\r\n }\r\n\r\n }\r\n\r\n /**\r\n * \r\n * @param flightFaresDTO \r\n * @param type \r\n * @param farecalc \r\n * @returns numer of passenger * fare of passenger\r\n */\r\n calcEqfare(flightFaresDTO: passengerFareBreakDownDTOs[], type: string, farecalc: fareCalc): number {\r\n let fare = farecalc(flightFaresDTO.filter((v) => v.passengerType === type)[0]?.flightFaresDTOs);\r\n // let fare = flightFaresDTO.filter((v)=>v.passengerType === type)[0]?.flightFaresDTOs.filter(v=>v.fareType.toLowerCase() === 'equivfare')[0].fareAmount;\r\n let quntity = flightFaresDTO.find((v) => v.passengerType === type)?.passengerQuantity;\r\n return fare && quntity ? fare * quntity : 0;\r\n }\r\n\r\n /**\r\n * \r\n * @param fare \r\n * @returns validate equivelent fare\r\n */\r\n\r\n returnCorrectFare(fare: fare[]): number {\r\n if (fare) {\r\n let equivfare = fare.find(v => v.fareType.toLowerCase() === 'equivfare').fareAmount;\r\n let totalFare = fare.find(v => v.fareType.toLowerCase() === 'totalfare').fareAmount;\r\n let totalTax = fare.find(v => v.fareType.toLowerCase() === 'totaltax').fareAmount;\r\n return equivfare > 0 ? equivfare : totalFare - totalTax;\r\n } else {\r\n return 0\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n ngOnDestroy(): void {\r\n this.subscribtions.unsubscribe();\r\n }\r\n}\r\n\r\n","\r\n
\r\n
\r\n
\r\n
\r\n

{{\"SearchResult.save\" | translate}}\r\n\r\n \r\n {{item[0]['itinTotalFare']['currencyCode']|exchange:'code'}}\r\n {{returnPassTotalFarDifferance(\r\n this.item[0].passengerFareBreakDownDTOs,\r\n this.item[0].itinTotalFare.amount,\r\n this.item[0].itinTotalFare.totalTaxes,\r\n this.item[0].itinTotalFare.currencyCode,\r\n this.calcEqfare,this.returnCorrectFare\r\n )[0] | exchange:'value'}}\r\n \r\n {{\"SearchResult.bySelecting\" | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n\r\n \"airline\r\n\r\n \r\n {{item[0].allJourney.flights[0].flightDTO[0].flightAirline.airlineName}}\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{item[0].allJourney.flights[0].flightDTO[0].departureDate |\r\n date:'shortTime'}}\r\n
\r\n
\r\n ({{item[0].allJourney.flights[0].flightDTO[0].departureTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{item[0].allJourney.flights[0].elapsedTime\r\n | hourminute}} )\r\n
\r\n
\r\n \r\n
\r\n
0\">\r\n {{item[0].allJourney.flights[0].stopsNum}}\r\n {{\"SearchResult.Stops\"|translate}}\r\n
\r\n
\r\n \r\n {{\"SearchResult.direct\"|translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{item[0].allJourney.flights[0].flightDTO[item[0].allJourney.flights[0].flightDTO.length\r\n -1].arrivalDate | date:'shortTime'}}\r\n
\r\n
\r\n ({{item[0].allJourney.flights[0].flightDTO[item[0].allJourney.flights[0].flightDTO.length\r\n -1].arrivalTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{item[0].allJourney.flights[0].elapsedTime | hourminute}} )\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \"airline\r\n
\r\n \r\n {{item[0].allJourney.flights[1].flightDTO[0].flightAirline.airlineName}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{item[0].allJourney.flights[1].flightDTO[0].departureDate |\r\n date:'shortTime'}}\r\n
\r\n
\r\n ({{item[0].allJourney.flights[1].flightDTO[0].departureTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{item[0].allJourney.flights[0].elapsedTime\r\n | hourminute}} )\r\n
\r\n
\r\n \r\n
\r\n
0\">\r\n {{item[0].allJourney.flights[0].stopsNum}}\r\n {{\"SearchResult.Stops\"|translate}}\r\n
\r\n
\r\n \r\n {{\"SearchResult.direct\"|translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{item[0].allJourney.flights[1].flightDTO[item[0].allJourney.flights[1].flightDTO.length\r\n -1].arrivalDate | date:'shortTime'}}\r\n
\r\n\r\n
\r\n ({{item[0].allJourney.flights[1].flightDTO[item[0].allJourney.flights[1].flightDTO.length\r\n -1].arrivalTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{item[0].allJourney.flights[1].elapsedTime | hourminute}} )\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{item[0]['itinTotalFare']['currencyCode']|exchange:'code'}} \r\n {{item[0].itinTotalFare.amount|exchange:'value'}}\r\n
\r\n
\r\n
{{\"SearchResult.Price\"|translate}}
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{'SearchResult.refundable' | translate}}\r\n
\r\n
\r\n {{'SearchResult.nonRefundable' | translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ \"SearchResult.ViewDetails\" | translate }}\r\n \r\n
\r\n
1\">\r\n \r\n + {{ item.length - 1 }}\r\n {{ \"SearchResult.more\" | translate }}\r\n \r\n \r\n
\r\n
\r\n
\r\n {{'SearchResult.refundable' | translate}}\r\n
\r\n
\r\n {{'SearchResult.nonRefundable' | translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n {{\"SearchResult.departure\" | translate}}\r\n ({{ item[0].allJourney.flights[0].flightDTO[0].departureDate | date:'EE, d MMM\r\n y' }})\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n {{\r\n item[0].allJourney.flights[0].flightDTO[0]\r\n .flightAirline.airlineName\r\n }}\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \"\"\r\n\r\n 0\"\r\n src=\"../../../assets/img/albaraq/icons/details-stops-stop.svg\" alt=\"\" />\r\n
\r\n\r\n
\r\n \r\n {{\r\n item[0].allJourney.flights[0]\r\n .elapsedTime | hourminute\r\n }}\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n {{\r\n item[0].allJourney.flights[0]\r\n .flightDTO[0].departureDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n\r\n\r\n
\r\n \r\n {{\r\n item[0].allJourney.flights[0]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n item[0].allJourney.flights[0]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n {{\r\n item[0].allJourney.flights[0]\r\n .flightDTO[item[0].allJourney.flights[0].flightDTO.length\r\n -1].arrivalDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n\r\n\r\n
\r\n \r\n {{\r\n item[0].allJourney.flights[0]\r\n .flightDTO[item[0].allJourney.flights[0].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n item[0].allJourney.flights[0]\r\n .flightDTO[item[0].allJourney.flights[0].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n
0\">\r\n {{item[0].allJourney.flights[0].stopsNum}}\r\n {{\"SearchResult.stop\" | translate}}\r\n :\r\n \r\n \r\n {{item[0].allJourney.flights[0].flightDTO[i].transitTime | durationToHourMin}}\r\n {{\"SearchResult.layover\" | translate}}\r\n {{item[0].allJourney.flights[0].flightDTO[i].arrivalTerminalAirport.cityName}}\r\n ({{item[0].allJourney.flights[0].flightDTO[i].arrivalTerminalAirport.airportCode}})\r\n\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n\r\n
\r\n\r\n \r\n
\r\n
\r\n
{{\"SearchResult.operatedBy\" | translate}} {{ item[0].allJourney.flights[0].flightDTO[0].operatedAirline.airlineName }}
\r\n
\r\n \r\n \r\n \r\n
\r\n {{\"SearchResult.return\" | translate}}\r\n ({{ item[0].allJourney.flights[1].flightDTO[0].departureDate | date:'EE, d MMM\r\n y' }})\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n {{\r\n item[0].allJourney.flights[1].flightDTO[0]\r\n .flightAirline.airlineName\r\n }}\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \"\"\r\n\r\n 0\"\r\n src=\"../../../assets/img/albaraq/icons/details-stops-stop.svg\" alt=\"\" />\r\n
\r\n\r\n
\r\n \r\n {{\r\n item[0].allJourney.flights[1]\r\n .elapsedTime | hourminute\r\n }}\r\n \r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n {{\r\n item[0].allJourney.flights[1]\r\n .flightDTO[0].departureDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n\r\n\r\n
\r\n \r\n {{\r\n item[0].allJourney.flights[1]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n item[0].allJourney.flights[1]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n {{\r\n item[0].allJourney.flights[1]\r\n .flightDTO[item[0].allJourney.flights[1].flightDTO.length\r\n -1].arrivalDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n\r\n\r\n
\r\n \r\n {{\r\n item[0].allJourney.flights[1]\r\n .flightDTO[item[0].allJourney.flights[1].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n item[0].allJourney.flights[1]\r\n .flightDTO[item[0].allJourney.flights[1].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n
0\">\r\n {{item[0].allJourney.flights[1].stopsNum}}\r\n {{\"SearchResult.stop\" | translate}}\r\n :\r\n \r\n \r\n {{item[0].allJourney.flights[1].flightDTO[i].transitTime | durationToHourMin}}\r\n {{\"SearchResult.layover\" | translate}}\r\n {{item[0].allJourney.flights[1].flightDTO[i].arrivalTerminalAirport.cityName}}\r\n ({{item[0].allJourney.flights[1].flightDTO[i].arrivalTerminalAirport.airportCode}})\r\n\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n\r\n
\r\n\r\n\r\n
\r\n
\r\n
{{\"SearchResult.operatedBy\" | translate}} {{ item[0].allJourney.flights[1].flightDTO[0].operatedAirline.airlineName }}
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{\"SearchResult.save\" | translate}}\r\n \r\n \r\n {{term['itinTotalFare']['currencyCode']|exchange:'code'}}\r\n {{returnPassTotalFarDifferance(\r\n this.term.passengerFareBreakDownDTOs,\r\n this.term.itinTotalFare.amount,\r\n this.term.itinTotalFare.totalTaxes,\r\n this.term.itinTotalFare.currencyCode,\r\n this.calcEqfare,this.returnCorrectFare\r\n )[0] | exchange:'value' }}\r\n \r\n {{\"SearchResult.bySelecting\" | translate}}\r\n

\r\n \r\n

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \"airline\r\n \r\n {{term.allJourney.flights[0].flightDTO[0].flightAirline.airlineName}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{term.allJourney.flights[0].flightDTO[0].departureDate\r\n |\r\n date:'shortTime'}}\r\n
\r\n
\r\n ({{term.allJourney.flights[0].flightDTO[0].departureTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n \r\n
\r\n
(\r\n {{term.allJourney.flights[0].elapsedTime |\r\n hourminute}} )\r\n
\r\n
\r\n \r\n
\r\n
0\">\r\n {{term.allJourney.flights[0].stopsNum}}\r\n {{\"SearchResult.Stops\"|translate}}\r\n
\r\n
\r\n \r\n {{\"SearchResult.direct\"|translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{term.allJourney.flights[0].flightDTO[item[0].allJourney.flights[0].flightDTO.length\r\n -1].arrivalDate | date:'shortTime'}}\r\n
\r\n
\r\n ({{term.allJourney.flights[0].flightDTO[item[0].allJourney.flights[0].flightDTO.length\r\n -1].arrivalTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{term.allJourney.flights[0].elapsedTime |\r\n hourminute}} )\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \"airline\r\n \r\n {{term.allJourney.flights[1].flightDTO[0].flightAirline.airlineName}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{term.allJourney.flights[1].flightDTO[0].departureDate\r\n |\r\n date:'shortTime'}}\r\n
\r\n
\r\n ({{term.allJourney.flights[1].flightDTO[0].departureTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n \r\n
\r\n
(\r\n {{term.allJourney.flights[1].elapsedTime | hourminute}} )\r\n
\r\n
\r\n \r\n
\r\n
0\">\r\n {{term.allJourney.flights[1].stopsNum}}\r\n {{\"SearchResult.Stops\"|translate}}\r\n
\r\n
\r\n \r\n {{\"SearchResult.direct\"|translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{term.allJourney.flights[1].flightDTO[item[0].allJourney.flights[1].flightDTO.length\r\n -1].arrivalDate | date:'shortTime'}}\r\n
\r\n \r\n
\r\n ({{term.allJourney.flights[1].flightDTO[item[0].allJourney.flights[1].flightDTO.length\r\n -1].arrivalTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{term.allJourney.flights[1].elapsedTime |\r\n hourminute}} )\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{term['itinTotalFare']['currencyCode']|exchange:'code'}}\r\n \r\n {{term.itinTotalFare.amount|exchange:'value'}}\r\n
\r\n
\r\n
{{\"SearchResult.Price\"|translate}}
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{'SearchResult.refundable' | translate}}\r\n
\r\n
\r\n {{'SearchResult.nonRefundable' | translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ \"SearchResult.ViewDetails\" | translate }}\r\n \r\n
\r\n \r\n
\r\n \r\n {{ \"SearchResult.less\" | translate }}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {{'SearchResult.refundable' | translate}}\r\n
\r\n
\r\n {{'SearchResult.nonRefundable' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n {{\"SearchResult.departure\" | translate}}\r\n ({{ term.allJourney.flights[0].flightDTO[0].departureDate | date:'EE, d\r\n MMM y' }})\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n {{\r\n term.allJourney.flights[0].flightDTO[0]\r\n .flightAirline.airlineName\r\n }}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \"\"\r\n \r\n 0\"\r\n src=\"../../../assets/img/albaraq/icons/details-stops-stop.svg\" alt=\"\" />\r\n
\r\n \r\n
\r\n \r\n {{\r\n term.allJourney.flights[0]\r\n .elapsedTime | hourminute\r\n }}\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n {{\r\n term.allJourney.flights[0]\r\n .flightDTO[0].departureDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n term.allJourney.flights[0]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n term.allJourney.flights[0]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n {{\r\n term.allJourney.flights[0]\r\n .flightDTO[term.allJourney.flights[0].flightDTO.length\r\n -1].arrivalDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n term.allJourney.flights[0]\r\n .flightDTO[term.allJourney.flights[0].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n term.allJourney.flights[0]\r\n .flightDTO[term.allJourney.flights[0].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
0\">\r\n {{term.allJourney.flights[0].stopsNum}}\r\n {{\"SearchResult.stop\" | translate}}\r\n :\r\n \r\n \r\n {{term.allJourney.flights[0].flightDTO[i].transitTime | durationToHourMin}}\r\n {{\"SearchResult.layover\" | translate}}\r\n {{term.allJourney.flights[0].flightDTO[i].arrivalTerminalAirport.cityName}}\r\n ({{term.allJourney.flights[0].flightDTO[i].arrivalTerminalAirport.airportCode}})\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
{{\"SearchResult.operatedBy\" | translate}} {{ term.allJourney.flights[0].flightDTO[0].operatedAirline.airlineName }}
\r\n
\r\n \r\n \r\n
\r\n {{\"SearchResult.return\" | translate}}\r\n ({{ term.allJourney.flights[1].flightDTO[0].departureDate | date:'EE, d\r\n MMM y' }})\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n {{\r\n term.allJourney.flights[1].flightDTO[0]\r\n .flightAirline.airlineName\r\n }}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \"\"\r\n \r\n 0\"\r\n src=\"../../../assets/img/albaraq/icons/details-stops-stop.svg\" alt=\"\" />\r\n
\r\n \r\n
\r\n \r\n {{\r\n term.allJourney.flights[1]\r\n .elapsedTime | hourminute\r\n }}\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n {{\r\n term.allJourney.flights[1]\r\n .flightDTO[0].departureDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n term.allJourney.flights[1]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n term.allJourney.flights[1]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n {{\r\n term.allJourney.flights[1]\r\n .flightDTO[term.allJourney.flights[1].flightDTO.length\r\n -1].arrivalDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n term.allJourney.flights[1]\r\n .flightDTO[term.allJourney.flights[1].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n term.allJourney.flights[1]\r\n .flightDTO[term.allJourney.flights[1].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
0\">\r\n {{term.allJourney.flights[1].stopsNum}}\r\n {{\"SearchResult.stop\" | translate}}\r\n :\r\n \r\n \r\n {{term.allJourney.flights[1].flightDTO[i].transitTime | durationToHourMin}}\r\n {{\"SearchResult.layover\" | translate}}\r\n {{term.allJourney.flights[1].flightDTO[i].arrivalTerminalAirport.cityName}}\r\n ({{term.allJourney.flights[1].flightDTO[i].arrivalTerminalAirport.airportCode}})\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
{{\"SearchResult.operatedBy\" | translate}} {{ term.allJourney.flights[1].flightDTO[0].operatedAirline.airlineName }}
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n
\r\n

{{\"SearchResult.save\" | translate}}\r\n\r\n \r\n {{item[0]['itinTotalFare']['currencyCode']|exchange:'code'}}\r\n {{returnPassTotalFarDifferance(\r\n this.item[0].passengerFareBreakDownDTOs,\r\n this.item[0].itinTotalFare.amount,\r\n this.item[0].itinTotalFare.totalTaxes,\r\n this.item[0].itinTotalFare.currencyCode,\r\n this.calcEqfare,this.returnCorrectFare\r\n )[0] | exchange:'value'}}\r\n \r\n {{\"SearchResult.bySelecting\" | translate}}\r\n

\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \"airline\r\n \r\n {{term.allJourney.flights[0].flightDTO[0].flightAirline.airlineName}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{term.allJourney.flights[0].flightDTO[0].departureDate\r\n |\r\n date:'shortTime'}}\r\n
\r\n
\r\n ({{term.allJourney.flights[0].flightDTO[0].departureTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{term.allJourney.flights[0].elapsedTime\r\n | hourminute}} )\r\n
\r\n
\r\n \r\n
\r\n
0\">\r\n {{term.allJourney.flights[0].stopsNum}}\r\n {{\"SearchResult.Stops\"|translate}}\r\n
\r\n
\r\n \r\n {{\"SearchResult.direct\"|translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{term.allJourney.flights[0].flightDTO[term.allJourney.flights[0].flightDTO.length\r\n -1].arrivalDate | date:'shortTime'}}\r\n
\r\n
\r\n ({{term.allJourney.flights[0].flightDTO[term.allJourney.flights[0].flightDTO.length\r\n -1].arrivalTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{term.allJourney.flights[0].elapsedTime |\r\n hourminute}} )\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \"airline\r\n \r\n {{term.allJourney.flights[1].flightDTO[0].flightAirline.airlineName}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{term.allJourney.flights[1].flightDTO[0].departureDate\r\n |\r\n date:'shortTime'}}\r\n
\r\n
\r\n ({{term.allJourney.flights[1].flightDTO[0].departureTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{term.allJourney.flights[0].elapsedTime\r\n | hourminute}} )\r\n
\r\n
\r\n \r\n
\r\n
0\">\r\n {{term.allJourney.flights[1].stopsNum}}\r\n {{\"SearchResult.Stops\"|translate}}\r\n
\r\n
\r\n \r\n {{\"SearchResult.direct\"|translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{term.allJourney.flights[1].flightDTO[term.allJourney.flights[1].flightDTO.length\r\n -1].arrivalDate | date:'shortTime'}}\r\n
\r\n\r\n
\r\n ({{term.allJourney.flights[1].flightDTO[term.allJourney.flights[1].flightDTO.length\r\n -1].arrivalTerminalAirport.airportCode}})\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
( {{term.allJourney.flights[1].elapsedTime |\r\n hourminute}} )\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{term['itinTotalFare']['currencyCode']|exchange:'code'}}\r\n \r\n {{term.itinTotalFare.amount|exchange:'value'}}\r\n
\r\n
\r\n
{{\"SearchResult.Price\"|translate}}
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{'SearchResult.refundable' | translate}}\r\n
\r\n
\r\n {{'SearchResult.nonRefundable' | translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ \"SearchResult.ViewDetails\" | translate }}\r\n \r\n
\r\n \r\n
\r\n \r\n {{ \"SearchResult.less\" | translate }}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {{'SearchResult.refundable' | translate}}\r\n
\r\n
\r\n {{'SearchResult.nonRefundable' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n {{\"SearchResult.departure\" | translate}}\r\n ({{ term.allJourney.flights[0].flightDTO[0].departureDate | date:'EE, d MMM y' }})\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n {{\r\n term.allJourney.flights[0].flightDTO[0]\r\n .flightAirline.airlineName\r\n }}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \"\"\r\n \r\n 0\"\r\n src=\"../../../assets/img/albaraq/icons/details-stops-stop.svg\" alt=\"\" />\r\n
\r\n \r\n
\r\n \r\n {{\r\n term.allJourney.flights[0]\r\n .elapsedTime | hourminute\r\n }}\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n {{\r\n term.allJourney.flights[0]\r\n .flightDTO[0].departureDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n term.allJourney.flights[0]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n term.allJourney.flights[0]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n {{\r\n term.allJourney.flights[0]\r\n .flightDTO[term.allJourney.flights[0].flightDTO.length\r\n -1].arrivalDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n term.allJourney.flights[0]\r\n .flightDTO[term.allJourney.flights[0].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n term.allJourney.flights[0]\r\n .flightDTO[term.allJourney.flights[0].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
0\">\r\n {{term.allJourney.flights[0].stopsNum}}\r\n {{\"SearchResult.stop\" | translate}}\r\n :\r\n \r\n \r\n {{term.allJourney.flights[0].flightDTO[i].transitTime | durationToHourMin}} \r\n {{\"SearchResult.layover\" | translate}}\r\n {{term.allJourney.flights[0].flightDTO[i].arrivalTerminalAirport.cityName}}\r\n ({{term.allJourney.flights[0].flightDTO[i].arrivalTerminalAirport.airportCode}})\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
{{\"SearchResult.operatedBy\" | translate}} {{ term.allJourney.flights[0].flightDTO[0].operatedAirline.airlineName }}
\r\n
\r\n \r\n \r\n
\r\n {{\"SearchResult.return\" | translate}}\r\n ({{ term.allJourney.flights[1].flightDTO[0].departureDate | date:'EE, d MMM y' }})\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n {{\r\n term.allJourney.flights[1].flightDTO[0]\r\n .flightAirline.airlineName\r\n }}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \"\"\r\n \r\n 0\"\r\n src=\"../../../assets/img/albaraq/icons/details-stops-stop.svg\" alt=\"\" />\r\n
\r\n \r\n
\r\n \r\n {{\r\n term.allJourney.flights[1]\r\n .elapsedTime | hourminute\r\n }}\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n {{\r\n term.allJourney.flights[1]\r\n .flightDTO[0].departureDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n term.allJourney.flights[1]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n term.allJourney.flights[1]\r\n .flightDTO[0]\r\n .departureTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n {{\r\n term.allJourney.flights[1]\r\n .flightDTO[term.allJourney.flights[1].flightDTO.length\r\n -1].arrivalDate\r\n | date: \"shortTime\"\r\n }}\r\n
\r\n \r\n \r\n
\r\n \r\n {{\r\n term.allJourney.flights[1]\r\n .flightDTO[term.allJourney.flights[1].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .cityName\r\n }}\r\n \r\n \r\n ({{\r\n term.allJourney.flights[1]\r\n .flightDTO[term.allJourney.flights[1].flightDTO.length\r\n -1]\r\n .arrivalTerminalAirport\r\n .airportCode\r\n }})\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
0\">\r\n {{term.allJourney.flights[1].stopsNum}}\r\n {{\"SearchResult.stop\" | translate}}\r\n :\r\n \r\n \r\n {{term.allJourney.flights[1].flightDTO[i].transitTime | durationToHourMin}} \r\n {{\"SearchResult.layover\" | translate}}\r\n {{term.allJourney.flights[1].flightDTO[i].arrivalTerminalAirport.cityName}}\r\n ({{term.allJourney.flights[1].flightDTO[i].arrivalTerminalAirport.airportCode}})\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
{{\"SearchResult.operatedBy\" | translate}} {{ term.allJourney.flights[1].flightDTO[0].operatedAirline.airlineName }}
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n","import { EventEmitter, Injectable } from \"@angular/core\";\r\nimport { CurrencyModule } from \"../models/currency/currency.module\";\r\nimport { FlightsInfoModule } from \"../models/flights-info/flights-info.module\";\r\nimport { HttpClient, HttpHeaders } from \"@angular/common/http\";\r\nimport { catchError, map, mergeMap, retry, take } from \"rxjs/operators\";\r\nimport { CitiesModule, destinationCard } from \"../models/cities/cities.module\";\r\nimport { Observable } from \"rxjs\";\r\nimport { PointOfsaleModule } from \"../models/point-ofsale/point-ofsale.module\";\r\nimport { SearchHoteltModule } from \"../models/search-hotel/search-hotel.module\";\r\nimport { GetHotelModule } from \"../models/search-hotel/get-hotels.module\";\r\nimport { HotelRoom } from \"../models/HotelRooms/HotelRooms\";\r\nimport { RequiredHotel } from \"../models/HotelBooking/RequiredHotelData\";\r\nimport { airItineraries, FareRules, flightOfflineService, PassengersModule, FlightSearchResult, AirPorts, Selectedflight } from \"../interface/flight-search-result\";\r\nimport { MatSnackBar } from \"@angular/material/snack-bar\";\r\nimport { SearchFlightModule } from \"../models/search-flight/search-flight.module\";\r\nimport { environment } from \"@src/environments/environment\";\r\nimport { CountriescodeModule } from \"../models/countriescode/countriescode.module\";\r\nimport { Cobon } from \"../interface/cobon\";\r\nimport { familymember } from \"../users/family-members/family-members.component\";\r\nimport { OfferDTO } from \"../interface/offers\";\r\nimport { BookedOffer } from \"../interface/BookOffer\";\r\nimport { Itinerary } from \"../interface/offlineSeats\";\r\nimport { TopCityFlight } from \"../interface/Home-content\";\r\nimport { HotelsCitiesModule } from \"../models/hotels-cities/hotels-cities.module\";\r\nexport interface ipA {\r\n ip: string;\r\n}\r\nexport interface guest {\r\n adult: number;\r\n child: number[];\r\n}\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class MyapiService {\r\n ip:string=''\r\n iplocation:string=''\r\n hgNumber :string=''\r\n \r\n searchId:string=''\r\n selectedserv:any[]=[]\r\n backOffice: string = environment.endPoints.backOffice;\r\n Apihotels: string = environment.endPoints.Apihotels;\r\n hotelPrepay: string = environment.endPoints.hotelPrepay;\r\n FareRules: string = environment.endPoints.FareRules;\r\n FlightTop: string = environment.endPoints.FlightTop;\r\n BookingOffer: string = environment.endPoints.offers.BookOffer;\r\n searchFlow: string = environment.endPoints.searchflow;\r\n BookingFlow: string = environment.endPoints.BookingFlow;\r\n users: string = environment.endPoints.users;\r\n admin: string = environment.endPoints.admin;\r\n // resultUpdate:Observable;\r\n resultUpdate: EventEmitter = new EventEmitter();\r\n selectedFlight: EventEmitter = new EventEmitter();\r\n typeChange: EventEmitter = new EventEmitter();\r\n selectedHotel: EventEmitter = new EventEmitter();\r\n pointofsale: EventEmitter = new EventEmitter();\r\n constructor(private httpClient: HttpClient, private _snackBar: MatSnackBar) { }\r\n\r\n\r\n getTopDestination(){\r\n const Api= `https://flightsearch.travasky.com/api/FlightsTopDistinations/GetAll`\r\n return this.httpClient.get(Api);\r\n\r\n }\r\n\r\n GetAllOffers(pos: string): Observable {\r\n let API = `${environment.endPoints.offers.getAll}${pos}`;\r\n return this.httpClient.get(API).pipe(\r\n take(1), retry(3), catchError(err => { console.log(err, \"ERROR IN GETTING ALL OFFERS\"); throw err })\r\n )\r\n }\r\n\r\n GetTOPDist(): Observable {\r\n // Return home page flight ofer content\r\n let api = `${this.FlightTop}/api/FlightsTopDistinations/GetAll`;\r\n return this.httpClient.get(api).pipe(take(1));\r\n\r\n }\r\n GetOfferBYId(id: number | string): Observable {\r\n let API = `${environment.endPoints.offers.getByID}${id}`;\r\n return this.httpClient.get(API).pipe(\r\n retry(3), take(1), map(\r\n (res: any) => { return res }\r\n ), catchError(err => { console.log(err, \"ERROR IN GETTING OFFER BY ID\"); throw err })\r\n )\r\n }\r\n\r\n BookOffers(Source: string, LanguageCode: string, body: BookedOffer, searchID: string) {\r\n\r\n let API = `${environment.endPoints.offers.BookOffer}`;\r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n\r\n 'Source': Source, 'LanguageCode': LanguageCode, 'searchID': ''\r\n })\r\n };\r\n let Body = {\r\n BookedOffer: body\r\n }\r\n return this.httpClient.post(API, Body, httpOptions).pipe(\r\n take(1),\r\n map(\r\n (result) => { console.log(result); return result }\r\n )\r\n )\r\n\r\n }\r\n flightInfoFormatter(array: FlightsInfoModule[]) {\r\n //return string of flights in KWI-CAI-March%2015%202019_ format\r\n console.log(array,'FlightArray');\r\n let FlightsInfoArray: string = \"\";\r\n for (let element of array) {\r\n let fligt: string =\r\n element.departingCity +\r\n \"-\" +\r\n element.arrivalCity +\r\n \"-\" +\r\n element.departionDate +\r\n \"_\";\r\n FlightsInfoArray = FlightsInfoArray + fligt;\r\n }\r\n return FlightsInfoArray.slice(0, -1);\r\n }\r\n passingerFormatter(array: any[]) {\r\n // convert array of passanger type number to A-1-C-0-I-0\r\n let passengersString: string;\r\n passengersString = \"A-\" + array[0] + \"-C-\" + array[1] + \"-I-\" + array[2];\r\n return passengersString;\r\n }\r\n cityData(lang: string) {\r\n //return cities data\r\n let headers = new HttpHeaders();\r\n headers = headers.set(\"Content-Type\", \"application/json; charset=utf-8\");\r\n\r\n let api = `${this.backOffice}/api/GetSearchFlowMapping?LangCode=${lang}`;\r\n let result: any;\r\n let errorOut: any;\r\n return this.httpClient.get(api, { headers: headers });\r\n }\r\n\r\n currencyApi(currency: string) {\r\n //return currency\r\n\r\n let api = ` ${this.admin}/api/CurrencyApi?currency=${currency}`;\r\n\r\n return this.httpClient.get(api).pipe(\r\n take(1),\r\n map((result) => {\r\n console.log(result, \"curruncy\");\r\n return result;\r\n })\r\n );\r\n }\r\n pointOfSale(): Observable {\r\n //return point of sale\r\n // let api = \"https://ipapi.co/json\";\r\n let api = \"https://api.ipify.org/?format=json\";\r\n console.log(\"calll\");\r\n return this.httpClient.get(api).pipe(\r\n take(1),\r\n retry(3),\r\n mergeMap((result) =>\r\n this.httpClient.get(\r\n `https://ipapi.co/${result.ip}/json/`\r\n ).pipe((retry(3)))\r\n )\r\n // this.pointofsale.emit(result);\r\n );\r\n }\r\n getHotelsCities() {\r\n //return all cities data;\r\n\r\n let api = `${this.Apihotels}/Api/SearchRequireData`;\r\n\r\n console.log(api);\r\n // return this.httpClient.get(api,{headers:headers}) \r\n return this.httpClient.get(api).pipe(\r\n take(1),\r\n map(\r\n (result) => {\r\n\r\n console.log(result.cities);\r\n return result.cities;\r\n }\r\n )\r\n\r\n )\r\n }\r\n\r\n\r\n getHotelsCitiesbyKey(key: string) {\r\n\r\n let api = `${this.Apihotels}/api/City?city=${key}`;\r\n console.log(api);\r\n return this.httpClient.get(api).pipe(take(1))\r\n }\r\n \r\n\r\n\r\n getHotels(searchHotel: SearchHoteltModule) {\r\n console.log(searchHotel, 'search hotel data')\r\n let CityName = searchHotel.CityName;\r\n let DateFrom = searchHotel.checkIn;\r\n let DateTo = searchHotel.checkOut;\r\n let currency = searchHotel.Currency;\r\n let Nat = searchHotel.nation;\r\n let POS = searchHotel.POS;\r\n let Source = \"Direct\";\r\n let sID = searchHotel.serachId;\r\n let Lang = searchHotel.lan;\r\n let guestInfo = searchHotel.guestInfo;\r\n let SearchRooms: guest[] = [];\r\n\r\n // R0A3C2G4G3R1A2C0R2A1C1G3\r\n // str.split('-')[1];\r\n let arr = guestInfo.split(\"R\");\r\n arr.splice(0, 1);\r\n // getSearchRooms();\r\n let room: guest = { adult: 1, child: [0] };\r\n\r\n for (let i = 0; i < arr.length; i++) {\r\n\r\n let chNum: number = 0;\r\n let age: number[] = [];\r\n chNum = Number(arr[i].slice(4, 5));\r\n console.log(\"child\", typeof chNum, chNum);\r\n if (chNum === 0) {\r\n age = [];\r\n console.log(chNum, \"0child\")\r\n }\r\n if (chNum === 1) {\r\n age = [];\r\n console.log(chNum, \"1child\")\r\n age.push(Number(arr[i].slice(6, 7)));\r\n }\r\n if (chNum === 2) {\r\n console.log(chNum, \"2child\")\r\n age = [];\r\n age.push(Number(arr[i].slice(6, 7)));\r\n age.push(Number(arr[i].slice(8, 9)));\r\n console.log(age, \"age\")\r\n }\r\n\r\n SearchRooms[i] = { adult: Number(arr[i].slice(2, 3)), child: age };\r\n\r\n\r\n }\r\n\r\n console.log(\"allRooms\", SearchRooms);\r\n\r\n let getHotels: GetHotelModule = {\r\n CityName: CityName,\r\n DateFrom: DateFrom,\r\n DateTo: DateTo,\r\n Currency: currency,\r\n Nat: Nat,\r\n POS: POS,\r\n Source: Source,\r\n sID: sID,\r\n Lang: Lang,\r\n SearchRooms: SearchRooms\r\n }\r\n\r\n let api = `${this.Apihotels}/api/HotelSearch`;\r\n\r\n let headers = new HttpHeaders();\r\n headers = headers.set('Content-Type', 'application/json; charset=utf-8');\r\n\r\n return this.httpClient\r\n .post(api, getHotels, {\r\n headers,\r\n })\r\n .pipe(take(1));\r\n }\r\n GetHotelRooms(Pid, sid, hotelID) {\r\n // RETURN hOTELS ROOM\r\n let apiHotel = `${this.Apihotels}/`; // salama1472019446 /37094/4\r\n console.log(apiHotel, \"myapi\");\r\n return this.httpClient\r\n .get(\r\n apiHotel +\r\n \"api/HotelRooms?sid=\" +\r\n sid +\r\n \"&hotel=\" +\r\n hotelID +\r\n \"&Pid=\" +\r\n Pid\r\n )\r\n .pipe(take(1));\r\n }\r\n GetHotelRoomsNUM(sid, hotelID, Pid, rooms) {\r\n // RETURN hOTELS ROOM\r\n let apiHotel = `${this.Apihotels}/`; // salama1472019446 /37094/4\r\n return this.httpClient\r\n .get(\r\n apiHotel +\r\n \"api/HotelRooms?sid=\" +\r\n sid +\r\n \"&hotel=\" +\r\n hotelID +\r\n \"&Pid=\" +\r\n Pid +\r\n \"&rooms=\" +\r\n rooms\r\n )\r\n .pipe(take(1));\r\n }\r\n HotelSaveBookingData(data) {\r\n // RETURN hOTELS ROOM\r\n // let apiHotel=`http://192.168.1.102:3030/`;// salama1472019446 /37094/4\r\n let apiHotel = `${this.Apihotels}/`;\r\n\r\n return this.httpClient\r\n .post(apiHotel + \"api/HotelBooking\", data)\r\n .pipe(take(1));\r\n }\r\n getPaymentResult(url: string) {\r\n // get the payment result status\r\n let api = `${this.hotelPrepay}/api/paymentresult?${url}`;\r\n return this.httpClient.get(api).pipe(\r\n take(1),\r\n map(\r\n (result) => { return result; }\r\n )\r\n )\r\n }\r\n PostProcessing(HGNu: string, searchid: string, tok: string, url: string) {\r\n // get satus after succesful payment\r\n let api = `${url}&tok=${tok}`;\r\n console.log(\"this is tok\", tok);\r\n console.log(\"this is api\", api);\r\n return this.httpClient.get(api).pipe(\r\n take(1),\r\n map((result) => {\r\n return result;\r\n })\r\n );\r\n }\r\n // get direct payment\r\n getDirectPayment(searchid: string, tok: string, BNu: string) {\r\n let api = `${this.admin}/api/DirectPayment?sid=${searchid}&token=${tok}&bookingNumber=${BNu}`;\r\n return this.httpClient.get(api).pipe(\r\n take(3),\r\n map((result) => {\r\n console.log(\"apidirect\", api);\r\n return result;\r\n })\r\n );\r\n }\r\n GetHPaymentView(\r\n ip: string,\r\n iplocation: string,\r\n HGNu: string,\r\n searchid: string,\r\n lang: string\r\n ) {\r\n let api = `${this.Apihotels}/api/PaymentView?bookingnum=${HGNu}&sid=${searchid}&ip=${ip}&Pos=${iplocation}&lang=${lang}&NotificationTok=\"\"`;\r\n console.log(api);\r\n return this.httpClient.get(api).pipe(take(1));\r\n }\r\n\r\n getHPaymentResult(url: string) {\r\n // get the payment result status for hotels\r\n let api = `${this.hotelPrepay}api/paymentresult?${url}`;\r\n return this.httpClient.get(api).pipe(take(1));\r\n }\r\n PostProcessingH(HGNu: string, searchid: string, tok: string, url: string) {\r\n // get satus after succesful payment\r\n let api = `${this.Apihotels}/Api/ConfirmHotelStatus?sid=${searchid}&bookingNum=${HGNu}&tok=${tok}`;\r\n console.log(api);\r\n return this.httpClient.get(api).pipe(take(1));\r\n }\r\n\r\n getConfirmationH(HGNu: string, searchid: string) {\r\n // get return conformtion from the clint\r\n let api = `${this.Apihotels}/Api/Confirmation?sid=${searchid}&bookingNum=${HGNu}`;\r\n return this.httpClient.get(api).pipe(take(3));\r\n }\r\n\r\n gethotelAmenities(id: any) {\r\n // return hotel amenities by hotel is\r\n let api = `${this.Apihotels}/api/getAmenities?id=${id}`;\r\n return this.httpClient.get(api).pipe(take(1));\r\n }\r\n roomcancelation(sid: string, hotelcode: any, roomindex: any, PId: any) {\r\n // return room cancelation roles\r\n let api = `${this.Apihotels}/api/getcancelpolicy?sid=${sid}&hotelcode=${hotelcode}&roomindex=${roomindex}&PId=${PId}`;\r\n return this.httpClient.get(api).pipe(take(2));\r\n }\r\n fareRules(sid: string, seq: number, pKey: string) {\r\n //get fare rules for each flight\r\n let api = `${this.FareRules}/api/GetFareRules?SId=${sid}&SeqNum=${seq}&PKey=${pKey}`;\r\n console.log(api);\r\n\r\n return this.httpClient.get(api).pipe(take(1));\r\n }\r\n changeFlightClick(cvalue: boolean) {\r\n this.typeChange.emit(cvalue);\r\n }\r\n\r\n searchFlight(searchFlight: SearchFlightModule) {\r\n let language = searchFlight.lan;\r\n let currency = searchFlight.Currency;\r\n let SearchPoint = searchFlight.pointOfReservation;\r\n let flightType = searchFlight.flightType;\r\n let flightInfo = searchFlight.flightsInfo;\r\n let searchId = searchFlight.serachId;\r\n let passengers = searchFlight.passengers;\r\n let Cclass = searchFlight.Cclass;\r\n let directOnly = searchFlight.showDirect;\r\n // !!!dont add spaces between the constracted Api below\r\n let api: string = `${this.searchFlow}/flights/flightsSearch/${language}/${currency}/${SearchPoint}/${flightType}/${flightInfo}/${passengers}/${Cclass}/${directOnly}/all/0/0/Direct?searchID=${searchId}`;\r\n console.log(api)\r\n return this.httpClient.get(api).pipe(take(1));\r\n }\r\n\r\n getSelectedFlight(\r\n searchid: string,\r\n sequenceNum: number,\r\n providerKey: string,\r\n pcc:string\r\n ) {\r\n //retern selected flight\r\n let api = `${this.searchFlow}/api/GetSelectedFlight?searchid=${searchid}&SequenceNum=${sequenceNum}&PKey=${providerKey}&sCode=${pcc}`;\r\n console.log(api);\r\n return this.httpClient.get(api).pipe(take(1));\r\n }\r\n CheckFlightValidation(\r\n HGNu: string,\r\n lang: string,\r\n searchid: string,\r\n SeqNum: number,\r\n pkey: string\r\n ) {\r\n // check if the flight is still available\r\n let api = `${this.BookingFlow}/api/CheckFlightValidation?HGNum=${HGNu}&Language=${lang}&SearchId=${searchid}&SeqNum=${SeqNum}&PKey=${pkey}`;\r\n console.log(\"checkapi\", api);\r\n return this.httpClient.get(api).pipe(take(1));\r\n }\r\n\r\n offlineServices(SID: string, POS: string) {\r\n //return array of services\r\n let api = `${this.BookingFlow}/api/GetOfflineServices?SID=${SID}&POS=${POS}`;\r\n console.log(api, 'ofline service req');\r\n return this.httpClient.get(api).pipe(\r\n take(1),\r\n map((result) => {\r\n return result;\r\n })\r\n );\r\n }\r\n saveBooking(searchid: string, sequenceNum: number, body: PassengersModule, pkey: string,pcc:string) {\r\n //take passengers information and return HGNu number\r\n let api = `${this.BookingFlow}/api/SaveBooking?SearchId=${searchid}&SeqNum=${sequenceNum}&PKey=${pkey}&sCode=${pcc}`;\r\n console.log(api);\r\n let headers = new HttpHeaders();\r\n headers = headers.set('Content-Type', 'application/json; charset=utf-8');\r\n return this.httpClient.post(api, body, {\r\n headers\r\n }).pipe(\r\n take(1),\r\n retry(3),\r\n map(\r\n (result) => { console.log(result); return result }\r\n )\r\n )\r\n }\r\n\r\n\r\n getConfirmation(HGNu: string, searchid: string) {\r\n // get return conformtion from the clint\r\n let api = `${this.BookingFlow}/api/BookingConfirmation?HG=${HGNu}&SId=${searchid}`;\r\n return this.httpClient.get(api).pipe(\r\n take(3),\r\n map((result) => {\r\n return result;\r\n })\r\n );\r\n }\r\n GetPaymentView(\r\n ip: string,\r\n iplocation: string,\r\n HGNu: string,\r\n searchid: string,\r\n productId: any,\r\n selectedServvices: any[]\r\n ) {\r\n //return payment link//\r\n let api = `${this.BookingFlow}/api/GetPaymentView?IP=${ip}&IPLoc=${iplocation}&HG=${HGNu}&SId=${searchid}&NotifyToken=`;\r\n console.log(api, selectedServvices);\r\n let headers = new HttpHeaders();\r\n headers = headers.set(\"Content-Type\", \"application/json; charset=utf-8\");\r\n let body = {\r\n UserSeletedInsurance: { ProductId: productId },\r\n UserSeletedServices: { SeletedServicesCodes: selectedServvices },\r\n };\r\n return this.httpClient\r\n .post(api, body, {\r\n headers,\r\n })\r\n .pipe(\r\n take(1),\r\n map((result) => {\r\n console.log(result);\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n findinsurance(HGNu: string, searchid: string) {\r\n // return selected insurance\r\n let api = `${this.BookingFlow}/api/Insurance?HG=${HGNu}&SearchId=${searchid}`;\r\n return this.httpClient.get(api).pipe(\r\n take(1),\r\n map((result) => {\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n\r\n activateCobon(promo: string, Sid: string, sequenceNum: any, pkey: string) {\r\n //check the validity of cobon and return \r\n // new price\r\n let api = `${this.BookingFlow}/api/GetPromotionDetails?PromoCode=${promo}&SearchId=${Sid}&SeqNum=${sequenceNum}&PKey=${pkey} `;\r\n return this.httpClient.get(api).pipe(take(1));\r\n }\r\n\r\n\r\n UtilityAirports(lang: string = 'en'): Observable {\r\n let API: string = `${this.backOffice}/api/GetSearchFlowMapping?LangCode=${lang}`;\r\n return this.httpClient.get(API).pipe(retry(3), take(1), catchError(err => { console.log(err); throw err }))\r\n }\r\n\r\n countrycode(lang: string) {\r\n // take language and return contries and countries codes\r\n lang = lang.toUpperCase();\r\n let api = `${this.backOffice}/api/GetAllCountriesByLangName?LangCode=${lang}`;\r\n return this.httpClient.get(api).pipe(\r\n take(1),\r\n );\r\n }\r\n\r\n\r\n // users api \r\n login(body: object) {\r\n //login api\r\n let api = `${this.users}/api/Account/Login`\r\n // let api = `http://46.166.160.65:7099/api/Account/Login`\r\n console.log(api);\r\n console.log(body, 'this is body');\r\n let headers = new HttpHeaders();\r\n headers = headers.set('Content-Type', 'application/json; charset=utf-8');\r\n return this.httpClient.post(api, body).pipe(\r\n take(1),\r\n map(\r\n (result) => { console.log(result); return result }\r\n )\r\n )\r\n }\r\n signup(body: object) {\r\n // sign up\r\n let api = `${this.users}/api/Account/Register`\r\n // let api = `http://46.166.160.65:7099/api/Account/Register`\r\n console.log(api);\r\n console.log(body, 'this is body');\r\n let headers = new HttpHeaders();\r\n headers = headers.set('Content-Type', 'application/json; charset=utf-8');\r\n return this.httpClient.post(api, body, {\r\n headers\r\n }).pipe(\r\n take(1),\r\n map(\r\n (result) => { console.log(result); return result }\r\n )\r\n )\r\n }\r\n forgetPassword(email) {\r\n // forget password\r\n let api = `${this.users}/api/Account/ForgotPassword`\r\n // let api = `http://46.166.160.65:7099/api/Account/Register`\r\n console.log(api);\r\n console.log(email, 'this is body');\r\n let headers = new HttpHeaders();\r\n headers = headers.set('Content-Type', 'application/json; charset=utf-8');\r\n return this.httpClient.post(api, email, {\r\n headers\r\n }).pipe(\r\n take(1),\r\n map(\r\n (result) => { console.log(result); return result }\r\n )\r\n )\r\n }\r\n UpdatePassword(email) {\r\n //change password\r\n let api = `${this.users}/api/Account/ChangePassword`\r\n // let api = `http://46.166.160.65:7099/api/Account/Register`\r\n console.log(api);\r\n console.log(email, 'this is body');\r\n let headers = new HttpHeaders();\r\n headers = headers.set('Content-Type', 'application/json; charset=utf-8');\r\n return this.httpClient.post(api, email, {\r\n headers\r\n }).pipe(\r\n take(1),\r\n map(\r\n (result) => { console.log(result); return result }\r\n )\r\n )\r\n }\r\n UpcomingAndHistory(email: string) {\r\n //get upcoming and hestory data;\r\n // let api = `${this.BookingFlow}/api/HistoryAndUpcomingFlights?Email=${email}`;\r\n let api = `${this.BookingFlow}/api/HistoryAndUpcomingFlights?Email=${email}`;\r\n return this.httpClient.get(api).pipe(\r\n take(1),\r\n map(\r\n (result) => { return result; }\r\n )\r\n )\r\n }\r\n UpcomingAndHistoryH(email: string) {\r\n //get upcoming and hestory data;\r\n // let api = `${this.BookingFlow}/api/HistoryAndUpcomingFlights?Email=${email}`;\r\n let api = `${this.Apihotels}/Api/UpcomingAndHistory?mail=${email}`;\r\n return this.httpClient.get(api).pipe(\r\n take(1),\r\n map(\r\n (result) => { return result; }\r\n )\r\n )\r\n }\r\n logoutapi() {\r\n // for user logout\r\n let api = `${this.users}/api/Account/Logout`;\r\n console.log(api);\r\n let headers = new HttpHeaders();\r\n headers = headers.set('Content-Type', 'application/json; charset=utf-8');\r\n return this.httpClient.post(api, {\r\n headers\r\n }).pipe(\r\n take(1),\r\n map(\r\n (result) => { console.log(result); return result }\r\n )\r\n )\r\n\r\n }\r\n\r\n userupdate(body: object) {\r\n //edit user account\r\n let api = `${this.users}/api/Account/Update?Isbase=1`\r\n // let api = `http://46.166.160.65:7099/api/Account/Register`\r\n console.log(api);\r\n console.log(body, 'this is body');\r\n let headers = new HttpHeaders();\r\n headers = headers.set('Content-Type', 'application/json; charset=utf-8');\r\n return this.httpClient.post(api, body, {\r\n headers\r\n }).pipe(\r\n take(1),\r\n map(\r\n (result) => { console.log(result); return result }\r\n )\r\n )\r\n }\r\n\r\n // user family member Apis \r\n getFamilymembers(userid: string) {\r\n // return all users family members registered data\r\n let api = `${this.admin}/api/FamilyMembersApi?customerId=${userid}`\r\n return this.httpClient.get(api).pipe(\r\n take(1),\r\n map(\r\n (result) => { return result; }\r\n )\r\n )\r\n }\r\n updateFamilymembers(body: object) {\r\n // updatefamily members registered data\r\n let api = `${this.admin}/api/FamilyMembersApi`\r\n let headers = new HttpHeaders();\r\n headers = headers.set('Content-Type', 'application/json; charset=utf-8');\r\n return this.httpClient.put(api, body, {\r\n headers\r\n }).pipe(\r\n take(2),\r\n map(\r\n (result) => { console.log(result); return result }\r\n )\r\n )\r\n }\r\n addFamilymember(body: object) {\r\n // add family member to existing user\r\n let api = `${this.admin}/api/FamilyMembersApi`\r\n let headers = new HttpHeaders();\r\n headers = headers.set('Content-Type', 'application/json; charset=utf-8');\r\n return this.httpClient.post(api, body, {\r\n headers\r\n }).pipe(\r\n take(2),\r\n map(\r\n (result) => { console.log(result); return result }\r\n )\r\n )\r\n }\r\n deletFamilymember(userid: any, memberid: any) {\r\n // delete famely member from exitting user\r\n let api = `${this.admin}/api/FamilyMembersApi?id=${memberid}&custId=${userid}`\r\n return this.httpClient.delete(api).pipe(\r\n take(1),\r\n map(\r\n (result) => { return result; }\r\n )\r\n )\r\n }\r\n getuserinfo() {\r\n // return all users family members registered data\r\n let api = `${this.users}/api/Account/UserInfo`;\r\n console.log(api);\r\n return this.httpClient.get(api).pipe(\r\n take(1),\r\n map(\r\n (result) => { console.log(\"GET USER INFO\", result); return result; }\r\n )\r\n )\r\n }\r\n\r\n /**\r\n * \r\n * @returns itinerary with id\r\n */\r\n RetriveItinerary(id: string | number) {\r\n let API: string = `${environment.endPoints.offlineSeats}${environment.endPoints.offers.RetriveItineraryDetails}?ItineraryId=${id}`;\r\n return this.httpClient.get(API).pipe(retry(3), take(1), catchError(err => { console.log(err); throw err }));\r\n }\r\n\r\n openSnackBar(message: string, action: string, Staus: string) {\r\n this._snackBar.open(message, action, {\r\n duration: 2000,\r\n panelClass: [Staus]\r\n });\r\n }\r\n}\r\n","import { TranslateService } from '@ngx-translate/core';\r\nimport { Component, HostListener, OnInit } from '@angular/core';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { MatSnackBar } from '@angular/material/snack-bar';\r\nimport { userdata, UserLoginComponent } from '../user-login/user-login.component';\r\nimport { MyapiService } from '../../services/myapi.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { AuthUser } from '@src/app/models/user/user';\r\nimport { Store } from '@ngrx/store';\r\nimport { loadAuthUserFailure, loadAuthUserSuccess } from '@src/app/store/user/user.actions';\r\nimport { FacebookLoginProvider, SocialAuthService } from 'angularx-social-login';\r\nimport { Location } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'app-user-signup',\r\n templateUrl: './user-signup.component.html',\r\n styleUrls: ['./user-signup.component.scss']\r\n})\r\nexport class UserSignupComponent implements OnInit {\r\n userLoader: boolean = false;\r\n showPassword = false;\r\n showConfirmPassword = false;\r\n signupform: FormGroup;\r\n public getScreenWidth: any;\r\n constructor(\r\n private myapi: MyapiService,\r\n private _snackBar: MatSnackBar,\r\n private Router: Router,\r\n public translate: TranslateService,\r\n public dialog: MatDialog,\r\n private authService : SocialAuthService,\r\n private location: Location,\r\n private readonly store: Store) { }\r\n\r\n ngOnInit() {\r\n this.getScreenWidth = window.innerWidth;\r\n\r\n this.signupform = new FormGroup({\r\n 'Isbase': new FormControl(1),\r\n 'Email': new FormControl('', [Validators.email, Validators.minLength(8), Validators.required]),\r\n 'Password': new FormControl('', [Validators.required, Validators.minLength(8)]),\r\n 'FirstName': new FormControl(''),\r\n 'LastName': new FormControl(''),\r\n 'ImageURL': new FormControl(''),\r\n 'PhoneNumber': new FormControl('', [Validators.required, Validators.minLength(5)]),\r\n 'ConfirmPassword': new FormControl('', [Validators.required, Validators.minLength(8)]),\r\n 'User_Name': new FormControl(''),\r\n 'notification': new FormControl(true)\r\n })\r\n }\r\n onSubmit() {\r\n if(this.signupform.invalid) return;\r\n this.userLoader = true;\r\n this.signupform.get('User_Name').setValue(\r\n this.signupform.get('FirstName').value + this.signupform.get('LastName').value\r\n )\r\n this.myapi.signup(this.signupform.value).subscribe(\r\n (result: AuthUser) => {\r\n switch (result.Comment) {\r\n case 0: {\r\n this.userLoader = false;\r\n this.store.dispatch(loadAuthUserFailure({ error: 'somthing went wrong' }))\r\n break\r\n }\r\n case 1: {\r\n this.userLoader = false;\r\n sessionStorage.setItem('cls', result.AccessToken);\r\n this.openSnackBar(\"Welcome \" + result.applicationUser.FirstName, 'Ok', \"snakSuccess\");\r\n this.store.dispatch(loadAuthUserSuccess({ user: result }))\r\n this.closeDialog()\r\n // this.toHomepage();\r\n break\r\n }\r\n case -2: {\r\n this.userLoader = false;\r\n this.openSnackBar(\"Sorry user does not exist\", \"Signup faield\", \"snakFaild\");\r\n this.signupform.reset();\r\n this.signupform.updateValueAndValidity();\r\n this.store.dispatch(loadAuthUserFailure({ error: 'Signup faield' }))\r\n break\r\n }\r\n case -1: {\r\n this.userLoader = false;\r\n this.openSnackBar(\"User already exist\", \"Signup faield\", 'snakFaild');\r\n this.store.dispatch(loadAuthUserFailure({ error: 'User already exist' }))\r\n }\r\n }\r\n }\r\n );\r\n\r\n }\r\n openSnackBar(message: string, action: string, Staus: string) {\r\n this._snackBar.open(message, action, {\r\n duration: 2000,\r\n panelClass: [Staus]\r\n });\r\n }\r\n toHomepage() {\r\n this.Router.navigate(['/']);\r\n }\r\n\r\n toLogin() {\r\n this.dialog.closeAll();\r\n const dialogRef = this.dialog.open(UserLoginComponent,{ panelClass: 'custom-dialog-container'});\r\n }\r\n\r\n closeDialog() {\r\n this.dialog.closeAll()\r\n }\r\n close(){\r\n \r\n }\r\n\r\n toggleShowPassword() {\r\n this.showPassword = !this.showPassword;\r\n }\r\n\r\n toggleShowConfirmPassword() {\r\n this.showConfirmPassword = !this.showConfirmPassword;\r\n }\r\n\r\n submitFbLogin(){\r\n this.authService.signIn(FacebookLoginProvider.PROVIDER_ID);\r\n }\r\n \r\n @HostListener('window:resize', ['$event'])\r\n onWindowResize() {\r\n this.getScreenWidth = window.innerWidth;\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n \"logo\"\r\n
\r\n
\r\n X\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \"\"\r\n

{{translate.currentLang=='en'?\r\n 'Explore the world deeper with us':\r\n 'اكتشف العالم أعمق معنا'}}\r\n

\r\n\r\n
\r\n\r\n
\r\n
\r\n X\r\n
\r\n
\r\n
\r\n\r\n
\r\n

{{translate.currentLang=='en'?'Sign up':'إنشاء حساب'}}

\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \"\"\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \"\"\r\n\r\n \r\n
\r\n\r\n\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n {{translate.currentLang=='en'?'Already have an account?':'مستخدم\r\n حالي؟'}}\r\n \r\n {{translate.currentLang=='en'?'Sign in':'سجل دخول'}}\r\n \r\n
\r\n \r\n\r\n \r\n\r\n \r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport {AppModule} from './app/app.module';\r\nimport { environment } from '@src/environments/environment';\r\nimport \"hammerjs\";\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\ndocument.addEventListener('DOMContentLoaded', () => {\r\n platformBrowserDynamic().bootstrapModule(AppModule)\r\n .then(()=>{\r\n if(navigator.serviceWorker){\r\n navigator.serviceWorker.register('/ngsw-worker.js');\r\n }\r\n })\r\n .catch(err => console.log(err));\r\n });\r\n","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"zn8P\";"],"sourceRoot":"webpack:///"}