{"version":3,"sources":["./src/app/components/navigation-bar/navigation-bar.component.ts","./src/app/components/navigation-bar/navigation-bar.component.html","./src/app/components/header/header.component.ts","./src/app/components/header/header.component.html","./src/app/components/child-elements/provider-field/provider-field.component.ts","./src/app/components/child-elements/provider-field/provider-field.component.html","./src/app/components/history/history.component.ts","./src/app/components/history/history.component.html","./src/app/components/redirect/redirect.component.ts","./src/app/components/redirect/redirect.component.html","./src/app/components/provider/providers-home/providers-home.component.ts","./src/app/components/provider/providers-home/providers-home.component.html","./src/app/components/basket/basket.component.ts","./src/app/components/basket/basket.component.html","./src/environments/environment.ts","./src/app/models/provider-info.ts","./src/app/components/not-found/not-found.component.ts","./src/app/components/not-found/not-found.component.html","./src/app/util/common.ts","./src/app/components/provider/provider/provider.component.ts","./src/app/components/provider/provider/provider.component.html","./src/app/models/provider-item-inputs.ts","./src/app/components/popup/popup.component.ts","./src/app/components/popup/popup.component.html","./src/app/components/footer/footer.component.ts","./src/app/components/footer/footer.component.html","./src/app/components/child-elements/provider-info/provider-info.component.ts","./src/app/components/child-elements/provider-info/provider-info.component.html","./src/app/models/provider-input.ts","./src/app/util/lang.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/models/check-provider-data.ts","./src/app/util/constants.ts","./src/app/components/check-provider/check-provider.component.ts","./src/app/components/check-provider/check-provider.component.html","./src/app/app.module.ts","./src/app/models/provider-validation.ts","./src/app/components/provider/providers/providers.component.ts","./src/app/components/provider/providers/providers.component.html","./src/app/components/child-elements/modal/modal.component.ts","./src/app/components/child-elements/modal/modal.component.html","./src/app/components/child-elements/loading/loading.component.ts","./src/app/components/child-elements/loading/loading.component.html","./src/app/components/choose-abonent/choose-abonent.component.ts","./src/app/components/choose-abonent/choose-abonent.component.html","./src/app/models/cart-order.ts","./src/app/components/bread-crumbs/bread-crumbs.component.ts","./src/app/components/bread-crumbs/bread-crumbs.component.html","./src/app/components/child-elements/provider-item/provider-item.component.ts","./src/app/components/child-elements/provider-item/provider-item.component.html","./src/app/util/tools.ts","./src/app/services/payment.service.ts","./src/app/services/providers.service.ts","./src/app/app-routing.module.ts","./src/app/models/cart-item.ts","./src/main.ts","./src/app/util/user.ts","./src/app/components/receipt/receipt.component.ts","./src/app/components/receipt/receipt.component.html","./$_lazy_route_resource lazy namespace object"],"names":[],"mappings":"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","file":"main-es2015.js","sourcesContent":["import { faShoppingBasket, faSearchPlus, faHistory } from '@fortawesome/free-solid-svg-icons';\r\nimport { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-navigation-bar',\r\n templateUrl: './navigation-bar.component.html',\r\n styleUrls: ['./navigation-bar.component.scss']\r\n})\r\nexport class NavigationBarComponent implements OnInit {\r\n\r\n public search = faSearchPlus;\r\n public basket = faShoppingBasket;\r\n public history = faHistory;\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void { }\r\n\r\n}\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 {Language} from './../../util/lang';\r\nimport {Component, OnInit} from '@angular/core';\r\nimport {TranslateService} from '@ngx-translate/core';\r\nimport {getRoute} from '../../util/tools';\r\n\r\n@Component({\r\n selector: 'app-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.scss']\r\n})\r\n\r\nexport class HeaderComponent implements OnInit {\r\n public lang: string = Language.getCurrentLang();\r\n public getRoute = getRoute;\r\n\r\n public Languages: object[] = [\r\n {display: 'ՀԱՅ', code: 'hy'},\r\n {display: 'ENG', code: 'en'},\r\n {display: 'РУС', code: 'ru'}\r\n ];\r\n\r\n constructor(private translate: TranslateService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public changeLanuage(lang: string): void {\r\n this.translate.use(lang);\r\n Language.setCurrentLang(lang, true);\r\n }\r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"logo_m\"\r\n\r\n
\r\n
\r\n
    \r\n
  • \r\n \"language\"\r\n
  • \r\n
  • \r\n
    \r\n \r\n \"language\"\r\n \r\n
    \r\n
      \r\n
    • {{ lang.display }}
    • \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 { ProviderInput } from './../../../models/provider-input';\r\nimport { Component, OnInit, Input } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-provider-field',\r\n templateUrl: './provider-field.component.html',\r\n styleUrls: ['./provider-field.component.scss']\r\n})\r\nexport class ProviderFieldComponent implements OnInit {\r\n\r\n @Input() providerInput: ProviderInput;\r\n @Input() form: FormGroup;\r\n @Input() onDropdownChange: Function;\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void { }\r\n\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 { HistoryItem } from './../../models/history';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { PaymentService } from './../../services/payment.service';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { getStatus } from 'src/app/util/tools';\r\nimport { setUserId } from 'src/app/util/user';\r\nimport { Language } from 'src/app/util/lang';\r\nimport { faBoxOpen, IconDefinition } from '@fortawesome/free-solid-svg-icons';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n\r\n@Component({\r\n selector: 'app-history',\r\n templateUrl: './history.component.html',\r\n styleUrls: ['./history.component.scss']\r\n})\r\nexport class HistoryComponent implements OnInit {\r\n\r\n public historyItems: HistoryItem[];\r\n public showModal: boolean = false;\r\n public showLoading: boolean = false;\r\n public modalHistoryItem: HistoryItem;\r\n public getStatus: Function = getStatus;\r\n public currentLang: string = Language.getCurrentLang();\r\n public emptyIcon: IconDefinition = faBoxOpen;\r\n private count: number = 2;\r\n\r\n constructor(private paymentService: PaymentService, private router: Router, private titleService: Title , private translate: TranslateService,\r\n\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getOrdersWithItemsByDeviceUUID();\r\n this.getTranslations();\r\n }\r\n\r\n public getTranslations() {\r\n this.translate.get('Title').subscribe((data) => {\r\n this.setTitle( data.TitleHistory);\r\n });\r\n }\r\n\r\n public setTitle(newTitle: string) {\r\n this.titleService.setTitle(newTitle);\r\n }\r\n\r\n public continuePayment(url: string): void {\r\n window.open(url, '_blank')\r\n };\r\n\r\n public getReceipt(guid: string): void {\r\n this.router.navigate([`receipt/${guid}`]);\r\n };\r\n\r\n public showMoreInfo(modalHistoryItem: HistoryItem): void {\r\n this.modalHistoryItem = modalHistoryItem;\r\n this.showModal = true;\r\n }\r\n\r\n public changeUserId(): void {\r\n setUserId();\r\n window.location.reload();\r\n }\r\n\r\n public updateHistory(): void {\r\n this.getOrdersWithItemsByDeviceUUID();\r\n }\r\n\r\n public async getOrdersWithItemsByDeviceUUID(): Promise {\r\n this.showLoading = true;\r\n this.paymentService.getOrdersWithItemsByDeviceUUID().subscribe(response => {\r\n if (response instanceof HttpErrorResponse) {\r\n // alert('Փորձեք մի փոքր ուշ');\r\n // this.router.navigate([`notfound`]);\r\n } else if (!response) {\r\n if (this.count != 0) {\r\n this.count--;\r\n this.getOrdersWithItemsByDeviceUUID();\r\n };\r\n } else {\r\n this.historyItems = response;\r\n };\r\n this.showLoading = false;\r\n });\r\n }\r\n\r\n}\r\n","
\r\n \r\n\r\n 0; else elseBlock\">\r\n

{{ 'Title.TitleHistory' | 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 {{historyItem.Items[0].ProviderName}}\r\n \r\n\r\n
{{itemInputs.InputName }}{{itemInputs.Value}}
{{ 'label.amount' | translate }}{{historyItem.Amount}}
{{ 'label.date' | translate }}{{historyItem.CreationDate | date:'dd-MM-yyyy'}}
{{ 'label.state' | translate }}{{getStatus(item.State)}}
\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 { ProvidersService } from 'src/app/services/providers.service';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ProviderItemInputs } from 'src/app/models/provider-item-inputs';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { ProviderDetails } from 'src/app/models/provider-details';\r\nimport {checkFormat} from '../../util/tools';\r\nimport {STRING_IS_INTEGER} from '../../util/constants';\r\n\r\n@Component({\r\n selector: 'app-redirect',\r\n templateUrl: './redirect.component.html',\r\n styleUrls: ['./redirect.component.scss']\r\n})\r\nexport class RedirectComponent implements OnInit {\r\n\r\n public guid: string;\r\n constructor(public providersService: ProvidersService, private router: Router, private activatedRoute: ActivatedRoute) { }\r\n\r\n ngOnInit(): void {\r\n this.activatedRoute.params.subscribe(params => {\r\n this.guid = params.id;\r\n });\r\n this.setValuesFromQueryParams();\r\n }\r\n\r\n /// http://localhost:4200/redirect/06B9FD02-032D-4956-A0A3-A2ED9352C409?v3=1660010196100100&a=1000\r\n public setValuesFromQueryParams(): void {\r\n this.activatedRoute.queryParams.subscribe(params => {\r\n const items: ProviderItemInputs[] = [];\r\n let amount;\r\n for (const [key, value] of Object.entries(params)) {\r\n const providerId = key;\r\n if (providerId.charAt(0) === 'v') {\r\n items.push(new ProviderItemInputs(providerId.substring(1), value));\r\n } else if (key === 'a'){\r\n amount = value;\r\n } else {\r\n this.router.navigate([`notfound`]);\r\n }\r\n }\r\n if (items.length > 0) {\r\n this.checkProviderItemInputs(items, amount);\r\n } else {\r\n this.router.navigate([`notfound`]);\r\n }\r\n });\r\n }\r\n\r\n public checkProviderItemInputs(items: ProviderItemInputs[], amount: string) {\r\n this.providersService.checkProviderItemInputs(items).subscribe(response => {\r\n if (response instanceof HttpErrorResponse || response.Status === 400) {\r\n this.router.navigate([`notfound`]);\r\n }\r\n else {\r\n if (amount && !checkFormat(amount, STRING_IS_INTEGER)){\r\n this.router.navigate([`pay/${this.guid}?${amount}`]);\r\n } else {\r\n this.router.navigate([`pay/${this.guid}`]);\r\n }\r\n }\r\n });\r\n }\r\n\r\n}\r\n","","import { HttpErrorResponse } from '@angular/common/http';\r\nimport { Provider } from './../../../models/provider';\r\nimport { ProvidersService } from './../../../services/providers.service';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-providers-home',\r\n templateUrl: './providers-home.component.html',\r\n styleUrls: ['./providers-home.component.scss']\r\n})\r\nexport class ProvidersHomeComponent implements OnInit {\r\n\r\n public Providers: Provider[];\r\n\r\n constructor(private providerService: ProvidersService, private router: Router, private activatedRoute: ActivatedRoute) { }\r\n\r\n ngOnInit(): void {\r\n this.activatedRoute.params.subscribe(params => {\r\n const { id } = params;\r\n this.getProviders(id ? id : null);\r\n })\r\n }\r\n\r\n private getProviders(id: string | null) {\r\n this.providerService.getProviders(id).subscribe(response => {\r\n if (response instanceof HttpErrorResponse) {\r\n this.router.navigate(['notfound']);\r\n } else if (!response) {\r\n this.router.navigate(['providers']);\r\n } else {\r\n this.Providers = response;\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\n\r\n@Component({\r\n selector: 'app-basket',\r\n templateUrl: './basket.component.html',\r\n styleUrls: ['./basket.component.scss']\r\n})\r\nexport class BasketComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
\r\n

basket works!

\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\nexport const environment = {\r\n production: false\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","export class ProviderInfo {\r\n public Name: string;\r\n public BannerPath: string;\r\n public InfoMessage: InfoMessageFields;\r\n constructor(providerInfo: ProviderInfo) {\r\n const { Name, BannerPath, InfoMessage } = providerInfo;\r\n this.Name = Name;\r\n this.BannerPath = BannerPath;\r\n this.InfoMessage = InfoMessage ? new InfoMessageFields(JSON.parse(InfoMessage.toString())) : null;\r\n }\r\n}\r\n\r\n\r\nclass InfoMessageFields {\r\n public TEXT: string;\r\n public URL: string;\r\n public URLText: string;\r\n constructor(infoMessageFields: InfoMessageFields) {\r\n const { TEXT, URL, URLText } = infoMessageFields;\r\n this.TEXT = TEXT;\r\n this.URL = URL;\r\n this.URLText = URLText;\r\n }\r\n\r\n}","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-not-found',\r\n templateUrl: './not-found.component.html',\r\n styleUrls: ['./not-found.component.scss']\r\n})\r\nexport class NotFoundComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
\r\n

404

\r\n

ERROR

\r\n
Page Not Found
\r\n
","import { Language } from './lang';\r\nimport { HttpHeaders } from '@angular/common/http';\r\nimport { Observable, of } from 'rxjs';\r\nimport { getUserId } from './user';\r\n\r\nexport const actionUrl: string = \"https://publicservice.evoca.am/api/PaymentService\";\r\n\r\nexport function getHeaders(standardCase: boolean) {\r\n const headers = {\r\n 'Content-Type': 'application/json',\r\n 'X-Device': getUserId(),\r\n 'ServiceAuthToken': standardCase ? 'UTGZBQllANzpFY2dYNdi5POSVtwO3q7j' : 'e04d22dd-e8a8-4645-bd1c-977983281ad7',\r\n 'X-Language': Language.getCurrentLang()\r\n };\r\n return {\r\n headers: new HttpHeaders(headers)\r\n };\r\n};\r\n\r\nexport function handleError(operation = 'operation', result?: T) {\r\n return (error: any): Observable => {\r\n // log(`${operation} failed: ${error.message}`); /// todo comment for production\r\n result = error;\r\n return of(result as T);\r\n };\r\n}\r\n\r\nfunction log(message: string) {\r\n console.log(`errormessage: ${message}`);\r\n}\r\n","import { Language } from 'src/app/util/lang';\r\nimport { ProviderItemInputs } from './../../../models/provider-item-inputs';\r\nimport { ProviderInfo } from './../../../models/provider-info';\r\nimport { ProvidersService } from './../../../services/providers.service';\r\nimport { ProviderInput } from './../../../models/provider-input';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { getKeyAndValueFromForm, checkProviderValidations } from 'src/app/util/tools';\r\nimport { ProviderDetails } from 'src/app/models/provider-details';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { Location } from '@angular/common';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\n\r\n@Component({\r\n selector: 'app-provider',\r\n templateUrl: './provider.component.html',\r\n styleUrls: ['./provider.component.scss']\r\n})\r\nexport class ProviderComponent implements OnInit {\r\n\r\n public providerInput: ProviderInput[] = [];\r\n public providerInfo: ProviderInfo;\r\n public form: FormGroup;\r\n public items: ProviderItemInputs[] = [];\r\n public errors: ProviderItemInputs[] = [];\r\n public showPopup: boolean = false;\r\n public popupMessage: string;\r\n public popupMessages: ProviderItemInputs[];\r\n public group: any = {};\r\n public guid: string;\r\n public showLoading: boolean = false;\r\n public messages: any;\r\n constructor(\r\n public providersService: ProvidersService,\r\n private router: Router,\r\n private activatedRoute: ActivatedRoute,\r\n public location: Location,\r\n private translate: TranslateService,\r\n private titleService: Title\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.activatedRoute.params.subscribe(params => {\r\n const { id } = params;\r\n this.getTranslations();\r\n this.getProviderInputs(id)\r\n .then(() => this.getProviderInfo(id))\r\n .catch();\r\n this.guid = id;\r\n })\r\n }\r\n\r\n public getTranslations() {\r\n this.translate.get('Messages').subscribe((data) => {\r\n this.messages = data;\r\n });\r\n }\r\n\r\n public onDropdownChange(event){\r\n\r\n }\r\n\r\n toFormGroup(providerInputs: ProviderInput[]) {\r\n for (let i = 0; i < providerInputs.length; i++) {\r\n if (providerInputs[i].Keyboard == \"dropdown\") {\r\n this.group[`input_${providerInputs[i].Id}`] = new FormControl( providerInputs[i].Format[0].value);\r\n }\r\n else {\r\n this.group[`input_${providerInputs[i].Id}`] = new FormControl(providerInputs[i].DefaultValue);\r\n }\r\n }\r\n return new FormGroup(this.group);\r\n }\r\n\r\n public async getProviderInputs(id: string): Promise {\r\n this.providersService.getProviderInputs(id).subscribe(response => {\r\n if (response instanceof HttpErrorResponse) {\r\n this.router.navigate([`notfound`]);\r\n } else if (!response) { /// in some case the operation status is ok, but data is null, api error, but handled here\r\n this.router.navigate([`notfound`]);///\r\n }\r\n else {\r\n response.forEach(i => {\r\n this.providerInput.push(new ProviderInput(i));\r\n });\r\n this.providersService.setCurrency(null);\r\n this.form = this.toFormGroup(this.providerInput);\r\n };\r\n });\r\n }\r\n\r\n public getProviderInfo(id: string): void {\r\n this.providersService.getProviderInfo(id).subscribe(response => {\r\n if (response instanceof HttpErrorResponse) {\r\n this.router.navigate([`notfound`]);\r\n }\r\n else {\r\n this.providerInfo = new ProviderInfo(response.Object);\r\n this.setTitle(this.providerInfo.Name);\r\n }\r\n })\r\n }\r\n\r\n public setTitle(newTitle: string) {\r\n this.titleService.setTitle(newTitle);\r\n }\r\n\r\n public showErrors(errors: ProviderItemInputs[]): void {\r\n let message: string = '';\r\n for (let i = 0; i < errors.length; i++) {\r\n message += ` ${errors[i].Value},`;\r\n }\r\n this.showPopup = true;\r\n this.popupMessages = errors;\r\n }\r\n\r\n public handleResult(item: ProviderDetails): void {\r\n const { Status } = item;\r\n const lang = Language.getCurrentLang();\r\n switch (Status) {\r\n case 200:\r\n this.router.navigate([`${lang}/pay/${this.guid}`]);\r\n break;\r\n case 300:\r\n this.router.navigate([`${lang}/chooseabonent/${this.guid}`]);\r\n break;\r\n default:\r\n this.popupMessage = this.messages.wrongdata;\r\n this.showPopup = true;\r\n break;\r\n }\r\n }\r\n\r\n\r\n public back(): void {\r\n this.location.back();\r\n }\r\n\r\n\r\n public onSubmit() {\r\n const formData = this.form.getRawValue();\r\n this.items = getKeyAndValueFromForm(formData);\r\n const providerData = checkProviderValidations(this.providerInput, this.items, this.translate.getDefaultLang());\r\n if (!providerData.valid) {\r\n this.showErrors(providerData.errors);\r\n } else {\r\n this.showLoading = true;\r\n this.providersService.checkProviderItemInputs(providerData.items).subscribe(response => {\r\n if (response instanceof HttpErrorResponse || response.status === 400) {\r\n this.popupMessage = this.messages.wrongdata;\r\n this.showPopup = true;\r\n }\r\n else {\r\n this.items.map(i => {\r\n this.providerInput.map(input => {\r\n if (input.ForRequest && input.Id.toString() == i.ProviderInputId) {\r\n this.providersService.setCurrency(i.Value);\r\n }\r\n });\r\n });\r\n this.handleResult(response);\r\n }\r\n this.showLoading = false;\r\n });\r\n }\r\n }\r\n}\r\n","
\r\n \r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n","export class ProviderItemInputs {\r\n public ProviderInputId: string;\r\n public Value: string | any;\r\n constructor(ProviderInputId: string, Value: string | any) {\r\n this.ProviderInputId = ProviderInputId;\r\n this.Value = Value ? Value : '';\r\n }\r\n}","import { Component, EventEmitter, HostListener, Input, OnInit, Output } from '@angular/core';\r\nimport { ProviderItemInputs } from 'src/app/models/provider-item-inputs';\r\n\r\n@Component({\r\n selector: 'app-popup',\r\n templateUrl: './popup.component.html',\r\n styleUrls: ['./popup.component.scss']\r\n})\r\nexport class PopupComponent {\r\n\r\n constructor() { }\r\n\r\n @Input() show: boolean;\r\n @Input() message: string;\r\n @Input() messages: ProviderItemInputs[] = [];\r\n @Output() closed = new EventEmitter();\r\n\r\n public onBackgroundClickClose(event): void {\r\n const { id, className } = event.target;\r\n if (id == 'myModal' && className == 'modal') {\r\n this.show = false;\r\n this.isClosedToParent(this.show);\r\n }\r\n }\r\n\r\n @HostListener('document:keydown.escape', ['$event']) onKeydownHandler(event: KeyboardEvent) {\r\n this.show = false;\r\n this.isClosedToParent(this.show);\r\n }\r\n\r\n public onClose(): void {\r\n this.show = false;\r\n this.isClosedToParent(this.show);\r\n }\r\n\r\n public isClosedToParent(value: boolean): void {\r\n this.messages = null\r\n this.closed.emit(value);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n ×\r\n

{{ 'Title.message' | translate }}

\r\n
\r\n
\r\n
{{message}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n {{item.Value}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\n\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\r\n constructor() { }\r\n \r\n year: Number;\r\n\r\n ngOnInit(): void {\r\n this.year = new Date().getFullYear();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
    \r\n
  • \"evoca_logo\"\r\n\r\n
  • \r\n
  • {{ 'Footer.textAbout' | translate }}
  • \r\n
  • Copyright © 1990-{{year}} Evocabank
  • \r\n
\r\n
\r\n
\r\n
    \r\n
  • {{ 'Footer.address' | translate }}
  • \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \"qr\"\r\n
\r\n
\r\n
\r\n
    \r\n
  • \r\n
      \r\n
    • \r\n \r\n
    • \r\n
    • \r\n \r\n
    • \r\n
    • \r\n \"youtube\"\r\n\r\n
    • \r\n
    • \r\n \r\n
    • \r\n
    • \r\n \"pinterest\"\r\n
    • \r\n
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n \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.aboutWeb' | translate }}\r\n

\r\n
\r\n
\r\n
\r\n \"cb\"\r\n
\r\n
\r\n \"financial_systen_mediator\"\r\n
\r\n\r\n
\r\n \"abc_finance\"\r\n
\r\n\r\n
\r\n \"deposit_guarantee\"\r\n
\r\n\r\n
\r\n \"arca\"\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n \"evoca_logo\"\r\n\r\n
\r\n
\r\n
\r\n
\r\n
    \r\n
  • {{ 'Footer.address' | 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 \"youtube\"\r\n\r\n
  • \r\n
  • \r\n \r\n
  • \r\n
  • \r\n \r\n
  • \r\n
    \r\n
    \r\n
  • \r\n
    \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.textAbout' | translate }}
  • \r\n
  • Copyright © 1990-{{year}} Evocabank
  • \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n","import { ProviderInfo } from './../../../models/provider-info';\r\nimport { Component, OnInit, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-provider-info',\r\n templateUrl: './provider-info.component.html',\r\n styleUrls: ['./provider-info.component.scss']\r\n})\r\nexport class ProviderInfoComponent implements OnInit {\r\n\r\n @Input() providerInfo: ProviderInfo;\r\n constructor() { }\r\n\r\n ngOnInit(): void { }\r\n\r\n}\r\n","
\r\n
\r\n

{{providerInfo.Name}}

\r\n
{{providerInfo.InfoMessage.TEXT}}\r\n {{providerInfo.InfoMessage.URLText}}\r\n
\r\n
\r\n
\r\n

{{providerInfo.Name}}

\r\n
\r\n
","export class ProviderInput {\r\n public BannerPath: String;\r\n public Format: String | Dropdown;\r\n public Id: Number;\r\n public Keyboard: String;\r\n public MaxLength: Number;\r\n public MinLength: Number;\r\n public Name: String;\r\n public PageOrder: Number;\r\n public Placeholder: String;\r\n public Required: Boolean;\r\n public ForRequest: Boolean;\r\n public IsHidden: Boolean;\r\n public DefaultValue: String;\r\n \r\n constructor(public providerInput: ProviderInput) {\r\n this.BannerPath = providerInput.BannerPath;\r\n this.Format = providerInput.Format;\r\n this.Id = providerInput.Id;\r\n this.Keyboard = providerInput.Keyboard;\r\n this.MaxLength = providerInput.MaxLength;\r\n this.MinLength = providerInput.MinLength;\r\n this.Name = providerInput.Name;\r\n this.PageOrder = providerInput.PageOrder;\r\n this.Placeholder = providerInput.Placeholder;\r\n this.Required = providerInput.Required;\r\n this.ForRequest = providerInput.ForRequest;\r\n this.IsHidden = providerInput.IsHidden;\r\n this.DefaultValue = providerInput.DefaultValue;\r\n if (this.Keyboard == 'dropdown') {\r\n this.Format = JSON.parse(this.Format.toString());\r\n } else if(this.Keyboard == null){\r\n this.Keyboard = 'text';\r\n }\r\n }\r\n}\r\n\r\nclass Dropdown {\r\n public name: String;\r\n public value: String;\r\n \r\n constructor(public dropdown: Dropdown) {\r\n this.name = dropdown.name;\r\n this.value = dropdown.value;\r\n }\r\n}","export class Language {\r\n\r\n public static getCurrentLang(): string {\r\n const lang = localStorage.getItem('payLang');\r\n return lang ? lang : 'hy';\r\n }\r\n\r\n public static setCurrentLang(lang: string, updatePage: boolean) {\r\n localStorage.setItem('payLang', lang);\r\n if (updatePage) {\r\n const path: string = '/' + lang + window.location.pathname.substring(3);\r\n window.location.pathname = path;\r\n }\r\n }\r\n}","import { Language } from './util/lang';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { getUserId, detectUser } from './util/user';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss']\r\n})\r\n\r\nexport class AppComponent implements OnInit {\r\n ngOnInit(): void {\r\n detectUser();\r\n }\r\n\r\n public getLangFromUrl(): void {\r\n const pathName = window.location.pathname;\r\n let lang;\r\n switch (pathName.substr(0, 3)) {\r\n case '/en':\r\n lang = 'en';\r\n break;\r\n case '/ru':\r\n lang = 'ru';\r\n break;\r\n default:\r\n lang = 'hy';\r\n break;\r\n }\r\n Language.setCurrentLang(lang, false);\r\n }\r\n\r\n title = 'PaymentServiceWeb';\r\n constructor(translate: TranslateService) {\r\n this.getLangFromUrl();\r\n translate.setDefaultLang(Language.getCurrentLang());\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n
\r\n","import { ProviderItemInputs } from './provider-item-inputs';\r\nimport { ProviderDetails } from 'src/app/models/provider-details';\r\n\r\nexport class CheckProviderData {\r\n public providerDetails: ProviderDetails;\r\n public providerItemInputs: ProviderItemInputs[];\r\n constructor(providerDetails: ProviderDetails, providerItemInputs: ProviderItemInputs[]) {\r\n this.providerDetails = providerDetails;\r\n this.providerItemInputs = providerItemInputs;\r\n }\r\n}","export const EMAIL_REGEXP: RegExp =\r\n /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\r\n\r\nexport const STRING_IS_INTEGER: RegExp = /^\\+?(0|[1-9]\\d*)$/;\r\n","import { HttpErrorResponse } from '@angular/common/http';\r\nimport { CartItems } from './../../models/cart-order';\r\nimport { CartItem } from './../../models/cart-item';\r\nimport { PaymentService } from './../../services/payment.service';\r\nimport { ProviderItemInputs } from './../../models/provider-item-inputs';\r\nimport { Commission } from './../../models/commission';\r\nimport { ProviderDetails } from 'src/app/models/provider-details';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ProvidersService } from 'src/app/services/providers.service';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { CartOrder } from 'src/app/models/cart-order';\r\nimport { PaymentProviderInputs } from 'src/app/models/paymentItem';\r\nimport { Language } from './../../util/lang';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-check-provider',\r\n templateUrl: './check-provider.component.html',\r\n styleUrls: ['./check-provider.component.scss']\r\n})\r\nexport class CheckProviderComponent implements OnInit {\r\n public guid: string;\r\n public showLoading: boolean = false;\r\n public providerDetails: ProviderDetails;\r\n public providerItemInputs: ProviderItemInputs[];\r\n public providerName: string;\r\n public commissions: Commission[];\r\n public form: FormGroup;\r\n public amount: number = 0;\r\n public commissionAmount: string;\r\n public formUrl: string;\r\n public buttonDisabled: boolean = false;\r\n public showPopup: boolean = false;\r\n public popupMessage: string;\r\n public popupMessages: ProviderItemInputs[];\r\n public amountFromRedirect: number;\r\n\r\n constructor(\r\n public providersService: ProvidersService,\r\n public paymentService: PaymentService,\r\n private router: Router,\r\n private activatedRoute: ActivatedRoute,\r\n private translate: TranslateService\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.activatedRoute.params.subscribe((params) => {\r\n const { id } = params;\r\n let guid;\r\n if (id.includes('?')){\r\n const splitArray = id.split('?');\r\n guid = splitArray[0];\r\n this.amountFromRedirect = splitArray[1];\r\n }\r\n else {\r\n guid = id;\r\n }\r\n let path;\r\n this.activatedRoute.url.subscribe(route => {\r\n path = route[1].path;\r\n });\r\n this.init(guid, path);\r\n\r\n });\r\n }\r\n\r\n public async getCommissions(id): Promise {\r\n const currency = this.providersService.getCurrency() ? this.providersService.getCurrency() : 'AMD';\r\n this.providersService.getCommissions(id, currency).subscribe(response => {\r\n if (response instanceof HttpErrorResponse) {\r\n this.router.navigate([`${Language.getCurrentLang()}/provider/${this.guid}`]);\r\n } else {\r\n this.commissions = response;\r\n this.setCommission();\r\n }\r\n });\r\n }\r\n\r\n public async getProviderInfo(id): Promise {\r\n this.providersService.getProviderInfo(id).subscribe(response => {\r\n if (response instanceof HttpErrorResponse) {\r\n this.router.navigate([`${Language.getCurrentLang()}/provider/${this.guid}`]);\r\n }\r\n else {\r\n const { Name } = response.Object;\r\n this.providerName = Name;\r\n }\r\n });\r\n }\r\n\r\n public setAmount(): void {\r\n const currency = this.providersService.getCurrency();\r\n const { Debt, MinAmount, MaxAmount, RangeByCurrency } = this.providerDetails;\r\n let min;\r\n let max;\r\n let amount;\r\n const debt = Debt;\r\n if (currency && RangeByCurrency) {\r\n const { AmountStart, AmountEnd } = RangeByCurrency.filter(el => el.Currency == currency)[0];\r\n min = AmountStart;\r\n max = AmountEnd;\r\n } else {\r\n min = MinAmount;\r\n max = MaxAmount;\r\n }\r\n if (debt > MaxAmount) {\r\n amount = MaxAmount;\r\n } else if (debt < min) {\r\n amount = min;\r\n } else {\r\n amount = debt;\r\n }\r\n if (this.amountFromRedirect){\r\n this.amount = this.amountFromRedirect;\r\n } else {\r\n this.amount = Math.ceil(amount * 10) / 10;\r\n }\r\n }\r\n\r\n public validate(paymentProviderInputs: PaymentProviderInputs[]): ProviderItemInputs[] {\r\n const items: ProviderItemInputs[] = [];\r\n paymentProviderInputs.forEach(i => {\r\n if (i.providerInputId != 0) {\r\n items.push(new ProviderItemInputs(i.providerInputId.toFixed(), i.value))\r\n }\r\n });\r\n return items;\r\n }\r\n\r\n public async standardCase(id: string): Promise {\r\n const { providerDetails, providerItemInputs } = this.providersService.getProviderDetails();\r\n this.providerDetails = providerDetails;\r\n this.providerItemInputs = providerItemInputs;\r\n this.guid = id;\r\n if (!providerDetails) {\r\n this.router.navigate([`${Language.getCurrentLang()}/provider/${this.guid}`]);\r\n return;\r\n };\r\n }\r\n\r\n public async fromUrlCase(id: string) {\r\n this.providersService.getItem(id).subscribe(itemResponse => {\r\n if (itemResponse instanceof HttpErrorResponse || !itemResponse) {\r\n this.router.navigate([`${Language.getCurrentLang()}/notfound`]);\r\n } else {\r\n this.providerItemInputs = this.validate(itemResponse.paymentProviderInputs);\r\n this.guid = itemResponse.paymentProviderGUID;\r\n this.providersService.checkProviderItemInputs(this.providerItemInputs).subscribe(response => {\r\n if (response instanceof HttpErrorResponse || response.status === 400) {\r\n this.router.navigate([`${Language.getCurrentLang()}/notfound`]);\r\n }\r\n else {\r\n this.providerDetails = response;\r\n this.setValues();\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n public init(id: string, path: string): void {\r\n if (id && path === `pay`) {\r\n this.standardCase(id).then(() => {\r\n this.setValues();\r\n });\r\n } else if (id && path === \"prepayment\") {\r\n this.fromUrlCase(id);\r\n }\r\n }\r\n\r\n public setValues(): void {\r\n this.getCommissions(this.guid).then(() => {\r\n this.getProviderInfo(this.guid);\r\n }).then(() => {\r\n this.setAmount();\r\n }).then(() => {\r\n this.form = new FormGroup({\r\n amount: new FormControl(this.amount)\r\n });\r\n }).catch((err) => { });\r\n }\r\n\r\n public setCommission(): void {\r\n const value = this.amount;\r\n let commissionAmount = 0;\r\n this.commissions.forEach((commission) => {\r\n const { AmountStart, AmountEnd, Fixed, Percentage, PercentageMaxAmount, PercentageMinAmount } = commission;\r\n if (value >= AmountStart && value <= AmountEnd) {\r\n if (Fixed > 0) {\r\n commissionAmount = Fixed;\r\n } else {\r\n commissionAmount = value * Percentage / 100;\r\n if (commissionAmount > PercentageMaxAmount) {\r\n commissionAmount = PercentageMaxAmount;\r\n } else if (commissionAmount < PercentageMinAmount) {\r\n commissionAmount = PercentageMinAmount;\r\n }\r\n }\r\n }\r\n });\r\n this.commissionAmount = commissionAmount.toFixed(1);\r\n }\r\n\r\n public onSubmit() {\r\n\r\n const currentLang = Language.getCurrentLang();\r\n const formData = this.form.getRawValue();\r\n const { amount } = formData;\r\n this.showLoading = true;\r\n const currency = this.providersService.getCurrency();\r\n const sessionData = this.providersService.getSessionData() ? this.providersService.getSessionData() : null;\r\n if (sessionData) this.providerItemInputs.push(sessionData);\r\n const { MinAmount, MaxAmount, RangeByCurrency } = this.providerDetails;\r\n let min;\r\n let max;\r\n if (currency && RangeByCurrency) {\r\n const { AmountStart, AmountEnd } = RangeByCurrency.filter(el => el.Currency == currency)[0];\r\n min = AmountStart;\r\n max = AmountEnd;\r\n } else {\r\n min = MinAmount;\r\n max = MaxAmount;\r\n }\r\n\r\n if (amount > max || amount < min) {\r\n const message = currentLang == \"en\" ? `Minimal value is ${min}, maximal value is ${max}` : (currentLang == 'hy' ?\r\n `Մինիմալ արժեքն է ${min}, առավելագույն արժեքն է ${max}` : `Mинимальное значение ${min}, максимальное значение значение ${max}`);\r\n this.popupMessage = message;\r\n this.showPopup = true;\r\n this.showLoading = false;\r\n }\r\n else {\r\n const curr = this.providersService.getCurrency() ? this.providersService.getCurrency() : 'AMD';\r\n this.paymentService.addCartItem(new CartItem(amount.toString(), parseFloat(this.commissionAmount), curr, this.guid, this.providerItemInputs))\r\n .subscribe(cartItemResponse => {\r\n if (cartItemResponse instanceof HttpErrorResponse) {\r\n alert('Փորձեք մի փոքր ուշ'); // todo\r\n this.showLoading = false;\r\n }\r\n else {\r\n const cartItems: CartItems[] = [];\r\n cartItems.push(new CartItems(cartItemResponse))\r\n this.paymentService.addCartOrderSync(new CartOrder(null, cartItems, 'Payment system', '1')).subscribe(cartOrderResponse => {\r\n if (cartOrderResponse instanceof HttpErrorResponse) {\r\n alert('Փորձեք մի փոքր ուշ'); // todo\r\n this.showLoading = false;\r\n }\r\n else {\r\n this.formUrl = cartOrderResponse.FormUrl;\r\n window.open(this.formUrl, \"_blank\");\r\n this.router.navigate([`${Language.getCurrentLang()}/paymenthistory`]);\r\n this.buttonDisabled = true;\r\n this.showLoading = false;\r\n };\r\n });\r\n };\r\n });\r\n };\r\n }\r\n\r\n public onKeyUp(event) {\r\n const { value } = event.target;\r\n this.amount = value;\r\n this.setCommission();\r\n }\r\n}\r\n","
\r\n
\r\n

{{providerName}}

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
{{detail[0]}}{{detail[1]}}
\r\n
\r\n
\r\n \r\n \r\n

{{ 'label.commission' | translate }} {{commissionAmount}}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n","import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\r\nimport { BrowserModule, Meta, MetaDefinition} from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\n\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { HeaderComponent } from './components/header/header.component';\r\nimport { FooterComponent } from './components/footer/footer.component';\r\n\r\nimport { HttpClientModule, HttpClient } from '@angular/common/http';\r\nimport { ProvidersHomeComponent } from './components/provider/providers-home/providers-home.component';\r\nimport { ProvidersComponent } from './components/provider/providers/providers.component';\r\nimport { ProviderItemComponent } from './components/child-elements/provider-item/provider-item.component';\r\nimport { ProviderComponent } from './components/provider/provider/provider.component';\r\nimport { NotFoundComponent } from './components/not-found/not-found.component';\r\nimport { ProviderFieldComponent } from './components/child-elements/provider-field/provider-field.component';\r\n\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { NavigationBarComponent } from './components/navigation-bar/navigation-bar.component';\r\nimport { BasketComponent } from './components/basket/basket.component';\r\nimport { HistoryComponent } from './components/history/history.component';\r\nimport { LoadingComponent } from './components/child-elements/loading/loading.component';\r\nimport { ProviderInfoComponent } from './components/child-elements/provider-info/provider-info.component';\r\nimport { ChooseAbonentComponent } from './components/choose-abonent/choose-abonent.component';\r\nimport { CheckProviderComponent } from './components/check-provider/check-provider.component';\r\nimport { ReceiptComponent } from './components/receipt/receipt.component';\r\nimport { ModalComponent } from './components/child-elements/modal/modal.component';\r\nimport { RedirectComponent } from './components/redirect/redirect.component';\r\n\r\nimport {TranslateModule, TranslateLoader} from '@ngx-translate/core';\r\nimport {TranslateHttpLoader} from '@ngx-translate/http-loader';\r\nimport { BreadCrumbsComponent } from './components/bread-crumbs/bread-crumbs.component';\r\nimport { PopupComponent } from './components/popup/popup.component';\r\n\r\nexport function HttpLoaderFactory(http: HttpClient) {\r\n return new TranslateHttpLoader(http);\r\n}\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n HeaderComponent,\r\n FooterComponent,\r\n ProvidersHomeComponent,\r\n ProvidersComponent,\r\n ProviderItemComponent,\r\n ProviderComponent,\r\n NotFoundComponent,\r\n ProviderFieldComponent,\r\n NavigationBarComponent,\r\n BasketComponent,\r\n HistoryComponent,\r\n LoadingComponent,\r\n ProviderInfoComponent,\r\n ChooseAbonentComponent,\r\n CheckProviderComponent,\r\n ReceiptComponent,\r\n ModalComponent,\r\n RedirectComponent,\r\n BreadCrumbsComponent,\r\n PopupComponent\r\n ],\r\n imports: [\r\n BrowserModule,\r\n AppRoutingModule,\r\n HttpClientModule,\r\n ReactiveFormsModule,\r\n FontAwesomeModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: HttpLoaderFactory,\r\n deps: [HttpClient]\r\n }\r\n })\r\n ],\r\n providers: [Meta],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n","import { ProviderItemInputs } from './provider-item-inputs';\r\n\r\nexport class ProviderValidation {\r\n public items: ProviderItemInputs[];\r\n public errors: ProviderItemInputs[];\r\n public valid: boolean;\r\n constructor(items: ProviderItemInputs[], errors: ProviderItemInputs[]) {\r\n this.items = items;\r\n this.errors = errors;\r\n this.valid = errors.length > 0 ? false : true;\r\n }\r\n}","import { ActivatedRoute } from '@angular/router';\r\nimport { Meta, Title } from '@angular/platform-browser';\r\nimport { PaymentService } from 'src/app/services/payment.service';\r\nimport { Provider } from './../../../models/provider';\r\nimport { Component, OnInit, Input } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-providers',\r\n templateUrl: './providers.component.html',\r\n styleUrls: ['./providers.component.scss']\r\n})\r\nexport class ProvidersComponent implements OnInit {\r\n\r\n @Input() Providers: Provider[];\r\n public providersName: string;\r\n\r\n constructor(\r\n public paymentService: PaymentService,\r\n public titleService: Title,\r\n public activatedRoute: ActivatedRoute,\r\n private metaService: Meta,\r\n private translate: TranslateService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n\r\n this.activatedRoute.params.subscribe(params => {\r\n let { id } = params;\r\n id = id ? id : \"NULL\";\r\n this.paymentService.ProviderDetails(id).subscribe(response => {\r\n this.translate.get('Title').subscribe(({ homePageTitle, ogTitle }) => {\r\n const title = id == \"NULL\" ? homePageTitle : response.Name;\r\n this.titleService.setTitle(title);\r\n this.setMetaTags(ogTitle);\r\n });\r\n this.providersName = response.Name;\r\n });\r\n });\r\n }\r\n\r\n public setMetaTags(ogTitle: string) {\r\n this.metaService.addTag({ name: \"og:title\", content: ogTitle });\r\n }\r\n}\r\n","
\r\n \r\n \r\n
\r\n \r\n

{{providersName}}

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

{{ 'Title.paymentTitle' | 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, Input, EventEmitter, OnChanges, SimpleChanges, Output, HostListener } from '@angular/core';\r\nimport { HistoryItem } from 'src/app/models/history';\r\nimport { getStatus } from '../../../util/tools'\r\n\r\n\r\n@Component({\r\n selector: 'app-modal',\r\n templateUrl: './modal.component.html',\r\n styleUrls: ['./modal.component.scss']\r\n})\r\nexport class ModalComponent {\r\n\r\n @Input() show: boolean;\r\n @Input() modalHistoryItem: HistoryItem;\r\n @Output() closed = new EventEmitter();\r\n public getStatus: Function = getStatus;\r\n\r\n public onBackgroundClickClose(event): void {\r\n const { id, className } = event.target;\r\n if (id == 'myModal' && className == 'modal') {\r\n this.show = false;\r\n this.isClosedToParent(this.show);\r\n }\r\n }\r\n\r\n @HostListener('document:keydown.escape', ['$event']) onKeydownHandler(event: KeyboardEvent) {\r\n this.show = false;\r\n this.isClosedToParent(this.show);\r\n }\r\n\r\n public onClose(): void {\r\n this.show = false;\r\n this.isClosedToParent(this.show);\r\n }\r\n\r\n public isClosedToParent(value: boolean): void {\r\n this.closed.emit(value);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n ×\r\n

{{ 'label.moreInfo' | 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 {{ 'label.fullAmount' | translate }}\r\n \r\n {{modalHistoryItem.Amount}} {{modalHistoryItem.Currency}}\r\n
\r\n {{item.ProviderName}}\r\n \r\n {{item.UniqId}}\r\n
\r\n {{itemInputs.InputName}}\r\n \r\n {{itemInputs.Value}}\r\n
\r\n {{ 'label.amount' | translate }}\r\n \r\n {{item.Amount}} {{item.Currency}}\r\n
\r\n {{ 'label.commission' | translate }}\r\n \r\n {{item.Commission}} {{item.Currency}}\r\n
{{ 'label.date' | translate }}{{modalHistoryItem.CreationDate | date:'dd-MM-yyyy'}}
{{ 'label.state' | translate }}{{getStatus(item.State)}}
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-loading',\r\n templateUrl: './loading.component.html',\r\n styleUrls: ['./loading.component.scss']\r\n})\r\nexport class LoadingComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
\r\n","import { HttpErrorResponse } from '@angular/common/http';\r\nimport { ProvidersService } from './../../services/providers.service';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ProviderDetails } from 'src/app/models/provider-details';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { Language } from 'src/app/util/lang';\r\n\r\n\r\n@Component({\r\n selector: 'app-choose-abonent',\r\n templateUrl: './choose-abonent.component.html',\r\n styleUrls: ['./choose-abonent.component.scss']\r\n})\r\n\r\nexport class ChooseAbonentComponent implements OnInit {\r\n\r\n public providerDetail: ProviderDetails;\r\n public guid: string;\r\n public chooseAbonent: any; /// TODO to make a model \r\n public form: FormGroup;\r\n public showLoading: boolean = false;\r\n\r\n constructor(private router: Router, private activatedRoute: ActivatedRoute, private providersService: ProvidersService) { }\r\n\r\n ngOnInit(): void { // TODO CREATE METHODS\r\n this.showLoading == true;\r\n this.form = new FormGroup({\r\n user: new FormControl()\r\n });\r\n this.activatedRoute.params.subscribe(params => {\r\n const { id } = params;\r\n this.guid = id;\r\n })\r\n if (!this.providersService.getProviderDetails().providerDetails) {\r\n this.router.navigate([`${Language.getCurrentLang()}/provider/${this.guid}`]);\r\n }\r\n else {\r\n let records = this.providersService.getProviderDetails().providerDetails.MultipleData;\r\n let data = [];\r\n let record;\r\n for (let i = 0; i < records.length; ++i) {\r\n record = records[i];\r\n let abonent = { /// TODO too make a model\r\n Items: [],\r\n Data: []\r\n };\r\n let items = [];\r\n for (let j = 0; j < 4; ++j) {\r\n items.push({ ProviderInputId: record[j][0], Value: record[j][1] })\r\n }\r\n abonent.Items = items;\r\n let rowData = [];\r\n for (let j = 4; j < record.length; ++j) {\r\n rowData.push(record[j]);\r\n }\r\n abonent.Data = rowData;\r\n data.push(abonent);\r\n this.chooseAbonent = data;\r\n\r\n }\r\n if (this.chooseAbonent.length === 1) {\r\n this.showLoading == true;\r\n this.providersService.checkProviderItemInputs(this.chooseAbonent[0].Items).subscribe(response => {\r\n if (response instanceof HttpErrorResponse || response.status === 400) {\r\n alert('Փորձեք մի փոքր ուշ'); // todo\r\n }\r\n else {\r\n this.providerDetail = response;\r\n this.router.navigate([`${Language.getCurrentLang()}/pay/${this.guid}`]);\r\n };\r\n this.showLoading == false;\r\n\r\n });\r\n }\r\n }\r\n this.showLoading == false;\r\n }\r\n\r\n\r\n public onSubmit() {\r\n const formData = this.form.getRawValue();\r\n this.showLoading == true;\r\n const { user } = formData;\r\n if (!user) {\r\n alert('Ընտրեք բաժանորդ'); // todo\r\n } else {\r\n this.providersService.checkProviderItemInputs(user).subscribe(response => {\r\n if (response instanceof HttpErrorResponse || response.status === 400) {\r\n alert('Փորձեք մի փոքր ուշ'); // todo\r\n }\r\n else {\r\n this.providerDetail = response;\r\n this.router.navigate([`${Language.getCurrentLang()}/pay/${this.guid}`]);\r\n };\r\n });\r\n }\r\n this.showLoading == false;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

{{ 'Title.abonentTitle' | 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","export class CartOrder {\r\n public CardName: string;\r\n public CartItems: CartItems[];\r\n public Description: string;\r\n public PaymentReceiveMethodId: string;\r\n constructor(CardName: string, CartItems: CartItems[], Description: string, PaymentReceiveMethodId: string) {\r\n this.CardName = CardName;\r\n this.CartItems = CartItems;\r\n this.Description = Description;\r\n this.PaymentReceiveMethodId = PaymentReceiveMethodId;\r\n }\r\n}\r\n\r\n\r\nexport class CartItems {\r\n public CartItemGUID: string;\r\n constructor(CartItemGUID: string) {\r\n this.CartItemGUID = CartItemGUID;\r\n }\r\n}","import { Language } from 'src/app/util/lang';\r\nimport { IBreadCrumb } from './../../interfaces/breadcrumb.interface';\r\nimport { Component, OnInit } from \"@angular/core\";\r\nimport { ActivatedRoute, Router, NavigationEnd } from \"@angular/router\";\r\nimport { filter } from \"rxjs/operators\";\r\nimport { Input } from \"@angular/core\";\r\nimport { Location } from \"@angular/common\";\r\nimport { PaymentService } from 'src/app/services/payment.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n\r\n@Component({\r\n selector: \"app-bread-crumbs\",\r\n templateUrl: \"./bread-crumbs.component.html\",\r\n styleUrls: [\"./bread-crumbs.component.scss\"]\r\n})\r\nexport class BreadCrumbsComponent implements OnInit {\r\n @Input()\r\n public deliminator: string = \">\";\r\n public providerTree: any;\r\n public breadcrumbs: Array;\r\n public curretBreadCrumb: string;\r\n public currentPath: string;\r\n\r\n constructor(\r\n private router: Router,\r\n public location: Location,\r\n public paymentService: PaymentService,\r\n public translate: TranslateService\r\n ) { }\r\n\r\n public generateBreadCrumbs(): void {\r\n const pathname = this.location.path();\r\n const splitedPathname = pathname.substring(1).split('/');\r\n this.breadcrumbs = [];\r\n let path = splitedPathname[1];\r\n let pathId = splitedPathname[2] ? splitedPathname[2] : null;\r\n this.currentPath = path;\r\n const lang = Language.getCurrentLang();\r\n this.translate.get('Title').subscribe((data) => {\r\n const { TitleHistory, receipt, pay } = data;\r\n this.paymentService.getProviderTree(pathId).subscribe(response => {\r\n if (response instanceof Array) {\r\n response.forEach((item, index) => {\r\n this.breadcrumbs.push({\r\n label: item.Name,\r\n url: this.createUrl(path, item.Id, index, response.length)\r\n });\r\n });\r\n if (path == `paymenthistory`) {\r\n this.breadcrumbs.push({\r\n label: TitleHistory,\r\n url: 'paymenthistory'\r\n });\r\n }\r\n else if (path == `receipt`) {\r\n this.breadcrumbs.push({\r\n label: TitleHistory,\r\n url: 'paymenthistory'\r\n }, {\r\n label: receipt,\r\n url: `receipt/${pathId}`\r\n });\r\n }\r\n else if (path == `pay`) {\r\n this.breadcrumbs.push({\r\n label: pay,\r\n url: `pay/${pathId}`\r\n });\r\n };\r\n this.breadcrumbs = [...new Map(this.breadcrumbs.map(item => [item.label, item])).values()];\r\n };\r\n });\r\n });\r\n\r\n }\r\n\r\n public createUrl(path: string, Id: string, index: number, navigationLength): string {\r\n let url;\r\n const lang = Language.getCurrentLang();\r\n switch (path) {\r\n case `pay`: {\r\n if (++index == navigationLength) {\r\n url = `${lang}/provider/${Id}`;\r\n } else {\r\n url = `${lang}/providers/${Id ? Id : ''}`;\r\n }\r\n break;\r\n }\r\n case `provider`: {\r\n url = ++index == navigationLength ? `${lang}/provider/${Id}` : `${lang}/providers/${Id ? Id : ''}`;\r\n break;\r\n }\r\n default:\r\n {\r\n url = `${lang}/providers/${Id ? Id : ''}`;\r\n break;\r\n }\r\n }\r\n return url;\r\n }\r\n\r\n ngOnInit() {\r\n this.router.events\r\n .pipe(filter(event => event instanceof NavigationEnd))\r\n .subscribe(event => {\r\n this.generateBreadCrumbs();\r\n });\r\n }\r\n}\r\n","
1\">\r\n
\r\n \r\n
\r\n
","import { Language } from './../../../util/lang';\r\nimport { Router } from '@angular/router';\r\nimport { Component, OnInit, Input } from '@angular/core';\r\nimport { Provider } from 'src/app/models/provider';\r\n\r\n@Component({\r\n selector: 'app-provider-item',\r\n templateUrl: './provider-item.component.html',\r\n styleUrls: ['./provider-item.component.scss']\r\n})\r\nexport class ProviderItemComponent implements OnInit {\r\n\r\n @Input() Provider: Provider;\r\n\r\n constructor(private router: Router) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n navigateTo(Provider): void {\r\n const lang = Language.getCurrentLang();\r\n const { Leaf, GUID } = Provider;\r\n let path;\r\n if (Leaf == 0) {\r\n path = `${lang}/providers`;\r\n } else if (Leaf == 1) {\r\n path = `${lang}/provider`;\r\n }\r\n this.router.navigate([`${path}/${GUID}`]);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n \r\n

{{Provider.Name}}

\r\n
\r\n
","import { Language } from 'src/app/util/lang';\r\nimport { ProviderItemInputs } from '../models/provider-item-inputs';\r\nimport { ProviderInput } from '../models/provider-input';\r\nimport { ProviderValidation } from '../models/provider-validation';\r\n\r\nexport function getKeyAndValueFromForm(formData: any): any[] {\r\n let result = [];\r\n for (const [key, value] of Object.entries(formData)) {\r\n result.push(new ProviderItemInputs(key.replace('input_', ''), value));\r\n }\r\n return result;\r\n}\r\n\r\nexport function checkProviderValidations(providerInput: ProviderInput[], inputs: ProviderItemInputs[], currenLang: any): ProviderValidation {\r\n const items: ProviderItemInputs[] = [];\r\n const errors: ProviderItemInputs[] = [];\r\n for (let i = 0; i < providerInput.length; i++) {\r\n const { Id, Name, Format, MaxLength, MinLength, Required, ForRequest } = providerInput[i];\r\n let validId;\r\n let validValue;\r\n for (let j = 0; j < inputs.length; j++) {\r\n const { ProviderInputId, Value } = inputs[i];\r\n if (Id.toString() == ProviderInputId) {\r\n if (!ForRequest && Required && !Value) {\r\n const message = currenLang == 'en' ? `\"${Name}\" field is required` : (currenLang == 'hy' ?\r\n `<<${Name}>> դաշտը պարտադիր է` : `Поле \"${Name}\", обязательное для заполнения`);\r\n errors.push(new ProviderItemInputs(ProviderInputId, `${message}`));\r\n break;\r\n }\r\n\r\n if (!ForRequest && MinLength && Value.length < MinLength) {\r\n const message = currenLang == 'en' ? `\"${Name}\" minimal value is ${MinLength}` : (currenLang == 'hy' ?\r\n `<<${Name}>> նվազագույն արժեքն է ${MinLength}` : `\"${Name}\" минимальное значение ${MinLength}`);\r\n errors.push(new ProviderItemInputs(ProviderInputId, ` ${message}`));\r\n break;\r\n }\r\n\r\n if (!ForRequest && Format && providerInput[i].Keyboard != \"dropdown\" && checkFormat(Value, new RegExp(Format.toString()))) {\r\n const message = currenLang == \"en\" ? `\"${Name}\" incorrect data ${MaxLength}` : (currenLang == 'hy' ?\r\n `<<${Name}>> սխալ տվյալներ ${MaxLength}` : `\"${Name}\" неверные данные ${MaxLength}`);\r\n errors.push(new ProviderItemInputs(ProviderInputId, ` ${message} `));\r\n break;\r\n }\r\n validId = ProviderInputId;\r\n validValue = Value;\r\n }\r\n }\r\n items.push(new ProviderItemInputs(validId, validValue));\r\n }\r\n return new ProviderValidation(items, errors);\r\n}\r\n\r\nexport function checkFormat(value: string, pattern: RegExp) {\r\n return !new RegExp(pattern).test(value);\r\n}\r\n\r\n\r\nexport function getStatus(state: string): string {\r\n const currentLang = Language.getCurrentLang();\r\n let result: string;\r\n switch (state) {\r\n case '1':\r\n result = currentLang == 'en' ? 'New' : (currentLang == 'hy' ? 'Նոր' : 'Новая');\r\n break;\r\n case '2':\r\n case '3':\r\n result = currentLang == 'en' ? 'Processing' : (currentLang == 'hy' ? 'Մշակվում է' : 'Обрабатывается');\r\n break;\r\n case '4':\r\n result = currentLang == 'en' ? 'Payment Accepted' : (currentLang == 'hy' ? 'Վճարումը կատարված է' : 'Оплата завершена');\r\n break;\r\n case '5':\r\n result = currentLang == 'en' ? 'Payment Rejected' : (currentLang == 'hy' ? 'Վճարումը մերժված է' : 'Оплата откланена');\r\n result = 'Վճարումը մերժված է';\r\n break;\r\n default:\r\n result = currentLang == 'en' ? 'Processing' : (currentLang == 'hy' ? 'Մշակվում է' : 'Обрабатывается');\r\n break;\r\n }\r\n return result;\r\n}\r\n\r\nexport function getDate(duration: number | null): Date {\r\n const date = new Date();\r\n const currentDay = date.getDate();\r\n let days = duration ? currentDay - duration : currentDay;\r\n return new Date(Date.UTC(date.getFullYear(), date.getMonth(), days, date.getHours(), date.getMinutes(), date.getSeconds()));\r\n}\r\n\r\n\r\nexport function downloadPdf(pdfBase64, fileName) {\r\n const linkSource = `data:application/pdf;base64,${pdfBase64}`;\r\n const downloadLink = document.createElement('a');\r\n downloadLink.href = linkSource;\r\n downloadLink.download = fileName;\r\n downloadLink.click();\r\n}\r\n\r\nexport function getRoute(routeName: string): string {\r\n const lang = Language.getCurrentLang();\r\n return `/${lang}/${routeName}`;\r\n}\r\n\r\n","import { CartOrder } from './../models/cart-order';\r\nimport { CartItem } from './../models/cart-item';\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { actionUrl, handleError, getHeaders } from '../util/common';\r\nimport { map, catchError } from 'rxjs/operators';\r\nimport { Observable } from 'rxjs';\r\nimport { HistoryItem } from '../models/history';\r\nimport { Receipt } from '../models/receipt';\r\nimport { getDate } from '../util/tools';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PaymentService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n\r\n public addCartItem(cartItem: CartItem): Observable {\r\n const url = `${actionUrl}/AddCartItem`;\r\n return this.http.post(url, cartItem, getHeaders(true)).pipe(\r\n map(CartItemGUID => {\r\n return CartItemGUID;\r\n }),\r\n catchError(handleError(` not found`))\r\n );\r\n }\r\n\r\n public addCartOrderSync(cartOrder: CartOrder): Observable {\r\n const url = `${actionUrl}/addCartOrderSync`;\r\n return this.http.post(url, cartOrder, getHeaders(true)).pipe(\r\n map(response => {\r\n return response;\r\n }),\r\n catchError(handleError(` not found`))\r\n );\r\n }\r\n\r\n public getOrdersWithItemsByDeviceUUID(): any {\r\n\r\n const url = `${actionUrl}/GetOrdersWithItemsByDeviceUUID`;\r\n return this.http.post(url,\r\n { \"StartDate\": getDate(7), \"EndDate\": getDate(null) }\r\n , getHeaders(true)).pipe(\r\n map(հistoryItem => {\r\n return հistoryItem;\r\n }),\r\n catchError(handleError(` not found`))\r\n );\r\n }\r\n\r\n public getItemReceipt(id: string): any {\r\n const url = `${actionUrl}/GetItemReceipt?Guid=${id}`;\r\n return this.http.get(url, getHeaders(true)).pipe(\r\n map(receipt => {\r\n return receipt;\r\n }),\r\n catchError(handleError(` not found`))\r\n );\r\n }\r\n\r\n\r\n public getProviderTree(id: string): Observable {\r\n const url = `${actionUrl}/GetProviderTree?Guid=${id}`;\r\n return this.http.get(url, getHeaders(true)).pipe(\r\n map(tree => {\r\n return tree;\r\n }),\r\n catchError(handleError(` not found`))\r\n );\r\n }\r\n\r\n public ProviderDetails(id: string): Observable {\r\n \r\n const url = `${actionUrl}/GetProviderDetails?Guid=${id}`;\r\n return this.http.get(url, getHeaders(true)).pipe(\r\n map(details => {\r\n return details;\r\n }),\r\n catchError(handleError(` not found`))\r\n );\r\n }\r\n\r\n public sendReceiptToEmail(id: string, email: string): Observable {\r\n const url = `${actionUrl}/SendReceiptEmail`;\r\n return this.http.post(url, {\r\n \"ItemGuid\": id,\r\n \"Email\": email,\r\n \"Lang\": \"hy\"\r\n }, getHeaders(true)).pipe(\r\n map(sendedMailResponse => {\r\n return sendedMailResponse;\r\n }),\r\n catchError(handleError(` not found`))\r\n );\r\n }\r\n}\r\n","import { PaymentItem } from './../models/paymentItem';\r\nimport { Commission } from './../models/commission';\r\nimport { CheckProviderData } from './../models/check-provider-data';\r\nimport { ProviderItemInputs } from './../models/provider-item-inputs';\r\nimport { ProviderInfo } from './../models/provider-info';\r\nimport { QueryResult } from './../models/query-result';\r\nimport { ProviderInput } from './../models/provider-input';\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\n\r\nimport { Observable, of } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\n\r\nimport { actionUrl, handleError, getHeaders } from '../util/common';\r\nimport { Provider } from '../models/provider';\r\nimport { ProviderDetails } from '../models/provider-details';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ProvidersService {\r\n constructor(private http: HttpClient) { }\r\n\r\n private providerDetail: ProviderDetails;\r\n private providerItemInputs: ProviderItemInputs[];\r\n private currency: string;\r\n private sessionData: ProviderItemInputs;\r\n\r\n public getProviders(id: string | null): Observable {\r\n const url = `${actionUrl}/getProviders`\r\n return this.http.post(url, { 'PaymentProviderGroupGUID': id }, getHeaders(true)).pipe(\r\n map(provider => provider),\r\n catchError(handleError(`id = ${id} not found`))\r\n );\r\n }\r\n\r\n public getProviderInputs(id: string): Observable {\r\n const url = `${actionUrl}/GetProviderInputs`\r\n return this.http.post(url, { 'ProviderGUID': id }, getHeaders(true)).pipe(\r\n map(providerInput => providerInput),\r\n catchError(handleError(`id = ${id} not found`))\r\n );\r\n }\r\n\r\n public getProviderInfo(id: string): Observable {\r\n const url = `${actionUrl}/GetProviderInfo/?guid=${id}`\r\n return this.http.get(url, getHeaders(true)).pipe(\r\n map(providerInfo => providerInfo),\r\n catchError(handleError(`id = ${id} not found`))\r\n );\r\n }\r\n\r\n public checkProviderItemInputs(providerItemInputs: ProviderItemInputs[]): Observable {\r\n const url = `${actionUrl}/CheckProviderItemInputs`;\r\n return this.http.post(url, { 'Items': providerItemInputs }, getHeaders(true)).pipe(\r\n map(providerDetails => {\r\n this.providerDetail = providerDetails;\r\n this.providerItemInputs = providerItemInputs;\r\n this.sessionData = providerDetails.SessionData ? new ProviderItemInputs(providerDetails.SessionData[0][0], providerDetails.SessionData[0][1]) : null;\r\n return providerDetails;\r\n }),\r\n catchError(handleError(` not found`))\r\n );\r\n }\r\n\r\n public getCommissions(id: string, currency: string): Observable {\r\n const url = `${actionUrl}/GetCommissions`\r\n return this.http.post(url, {\r\n ProviderGUID: id,\r\n Currency: currency\r\n }, getHeaders(true)).pipe(\r\n map(commission => commission),\r\n catchError(handleError(`id = ${id} not found`))\r\n );\r\n }\r\n\r\n public getItem(id: string): Observable {\r\n const url = `https://publicservice.evoca.am/api/CustomPayment/GetItem/${id}`\r\n return this.http.get(url, getHeaders(false)).pipe(\r\n map(paymentItem => paymentItem),\r\n catchError(handleError(`id = ${id} not found`))\r\n );\r\n }\r\n\r\n public setCurrency(currency: string) {\r\n this.currency = currency;\r\n }\r\n\r\n public getCurrency() {\r\n return this.currency;\r\n }\r\n\r\n public getProviderDetails(): CheckProviderData {\r\n return new CheckProviderData(this.providerDetail, this.providerItemInputs);\r\n }\r\n\r\n public getSessionData(): ProviderItemInputs {\r\n return this.sessionData;\r\n }\r\n}\r\n","import { RedirectComponent } from './components/redirect/redirect.component';\r\nimport { ReceiptComponent } from './components/receipt/receipt.component';\r\nimport { CheckProviderComponent } from './components/check-provider/check-provider.component';\r\nimport { ChooseAbonentComponent } from './components/choose-abonent/choose-abonent.component';\r\nimport { NotFoundComponent } from './components/not-found/not-found.component';\r\nimport { ProviderComponent } from './components/provider/provider/provider.component';\r\nimport { ProvidersHomeComponent } from './components/provider/providers-home/providers-home.component';\r\nimport { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule, UrlMatcher } from '@angular/router';\r\nimport { BasketComponent } from './components/basket/basket.component';\r\nimport { HistoryComponent } from './components/history/history.component';\r\nimport { Language } from './util/lang';\r\n\r\n\r\nconst lang = Language.getCurrentLang();\r\n\r\nconst routes: Routes = [\r\n { path: '', redirectTo: `${lang}/providers`, pathMatch: 'full' },\r\n { path: `providers`, redirectTo: `hy/providers` },\r\n { path: `:lang/providers`, component: ProvidersHomeComponent },\r\n { path: `providers/:id`, redirectTo: `hy/providers/:id` },\r\n { path: `:lang/providers/:id`, component: ProvidersHomeComponent },\r\n { path: `provider/:id`, redirectTo: `hy/provider/:id` },\r\n { path: `:lang/provider/:id`, component: ProviderComponent },\r\n { path: `chooseabonent/:id`, redirectTo: `hy/chooseabonent/:id` },\r\n { path: `:lang/chooseabonent/:id`, component: ChooseAbonentComponent },\r\n { path: `prepayment/:id`,redirectTo: `hy/prepayment/:id` },\r\n { path: `:lang/prepayment/:id`, component: CheckProviderComponent },\r\n { path: `pay/:id`, redirectTo: `hy/pay/:id`},\r\n { path: `:lang/pay/:id`, component: CheckProviderComponent },\r\n { path: `redirect/:id`, redirectTo:`hy/redirect/:id` },\r\n { path: `:lang/redirect/:id`, component: RedirectComponent },\r\n { path: `paymenthistory`, redirectTo:`hy/paymenthistory`},\r\n { path: `:lang/paymenthistory`, component: HistoryComponent },\r\n { path: `receipt/:id`, redirectTo:`hy/receipt/:id`},\r\n { path: `:lang/receipt/:id`, component: ReceiptComponent },\r\n { path: `:lang/notfound`, component: NotFoundComponent },\r\n { path: '**', redirectTo: `hy/notfound` }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","import { ProviderItemInputs } from './provider-item-inputs';\r\nexport class CartItem {\r\n public amount: string;\r\n public commission: number;\r\n public currency: string;\r\n public paymentProviderGUID: string;\r\n public paymentProviderInputs: ProviderItemInputs[];\r\n\r\n constructor(amount: string, commission: number, currency: string, paymentProviderGUID: string, paymentProviderInputs: ProviderItemInputs[]) {\r\n this.amount = amount;\r\n this.commission = commission;\r\n this.currency = currency;\r\n this.paymentProviderGUID = paymentProviderGUID;\r\n this.paymentProviderInputs = paymentProviderInputs;\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 './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n","import { async } from '@angular/core/testing';\r\nimport * as uuid from 'uuid';\r\n\r\nfunction createUUID(): string {\r\n return uuid.v4();\r\n}\r\n\r\nexport function detectUser(): void {\r\n let userId = localStorage.getItem('userId');\r\n if (!userId) {\r\n setUserId();\r\n }\r\n}\r\n\r\nexport function getUserId(): string {\r\n return localStorage.getItem('userId');\r\n}\r\n\r\nexport function setUserId(): void {\r\n localStorage.setItem('userId', createUUID())\r\n}","import { Receipt } from './../../models/receipt';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { PaymentService } from 'src/app/services/payment.service';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { faPrint, IconDefinition, faArrowLeft, faEnvelope } from '@fortawesome/free-solid-svg-icons';\r\nimport { Location } from '@angular/common';\r\nimport { downloadPdf } from 'src/app/util/tools';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { checkFormat } from \"../../util/tools\"\r\nimport { EMAIL_REGEXP } from 'src/app/util/constants';\r\n\r\n\r\n@Component({\r\n selector: 'app-receipt',\r\n templateUrl: './receipt.component.html',\r\n styleUrls: ['./receipt.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class ReceiptComponent implements OnInit {\r\n\r\n public receipt: Receipt;\r\n public printIcon: IconDefinition = faPrint;\r\n public backIcon: IconDefinition = faArrowLeft;\r\n public sendMailIcon: IconDefinition = faEnvelope;\r\n public form: FormGroup;\r\n public emailWrongFormat: boolean;\r\n public userEmail: string;\r\n public emailSuccess: boolean;\r\n public guid: string;\r\n\r\n constructor(public paymentService: PaymentService, private router: Router, private activatedRoute: ActivatedRoute, public location: Location) { }\r\n\r\n ngOnInit(): void {\r\n this.activatedRoute.params.subscribe((params) => {\r\n const { id } = params;\r\n this.guid = id;\r\n this.getItemReceipt(id);\r\n });\r\n this.createEmailForm();\r\n }\r\n\r\n public createEmailForm(): void {\r\n this.form = new FormGroup({\r\n email: new FormControl()\r\n });\r\n }\r\n\r\n public validateEmail(value: string): void {\r\n const emailRegex = EMAIL_REGEXP;\r\n this.emailWrongFormat = checkFormat(value, emailRegex);\r\n }\r\n\r\n onKeyUp(event) {\r\n const { value } = event.target;\r\n this.validateEmail(value);\r\n }\r\n\r\n public onSubmit() {\r\n const { email } = this.form.getRawValue();\r\n this.validateEmail(email);\r\n if (!this.emailWrongFormat) {\r\n this.paymentService.sendReceiptToEmail(this.guid, email).subscribe(response => {\r\n const { IsSuccess } = response[0];\r\n this.emailSuccess = !(response instanceof HttpErrorResponse || !IsSuccess);\r\n this.userEmail = email;\r\n });\r\n }\r\n }\r\n\r\n public print(): void {\r\n const { PDF } = this.receipt;\r\n downloadPdf(PDF, 'Receipt');\r\n }\r\n\r\n public back(): void {\r\n this.location.back();\r\n }\r\n\r\n public getItemReceipt(id: string): void {\r\n this.paymentService.getItemReceipt(id).subscribe(response => {\r\n if (response instanceof HttpErrorResponse) {\r\n this.router.navigate(['notfound']);\r\n } else {\r\n this.receipt = response[0];\r\n }\r\n })\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\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:///"}