{ "version": 3, "sources": ["src/app/services/models/collection-detail.ts", "src/app/collection-manager/collection-detail/providers/collection-detail-providers-search/collection-detail-providers-search.component.ts", "src/app/collection-manager/collection-detail/providers/collection-detail-providers-search/collection-detail-providers-search.component.html", "src/app/collection-manager/collection-detail/providers/providers.component.ts", "src/app/collection-manager/collection-detail/providers/providers.component.html", "src/app/collection-manager/collection-detail/users/users.component.ts", "src/app/collection-manager/collection-detail/users/users.component.html", "src/app/collection-manager/collection-detail/collection-detail.component.ts", "src/app/collection-manager/collection-detail/collection-detail.component.html", "src/app/collection-manager/collection-list/collection-list.component.ts", "src/app/collection-manager/collection-list/collection-list.component.html", "src/app/collection-manager/collection-verify/collection-verify.component.ts", "src/app/collection-manager/collection-verify/collection-verify.component.html", "src/app/collection-manager/collection-verify/collection-verify-user/collection-verify-user.component.ts", "src/app/collection-manager/collection-verify/collection-verify-user/collection-verify-user.component.html", "src/app/collection-manager/collection-manager-routing.module.ts", "src/app/collection-manager/collection-manager.module.ts"], "sourcesContent": ["import { CollectionListItem } from './collection-list-item'\r\nimport { ProviderDetail } from './provider-detail';\r\nimport { PortalUser } from './portal-user';\r\n\r\nexport class CollectionDetail extends CollectionListItem {\r\n public totalUsers: number;\r\n public users: PortalUser[];\r\n public providers: ProviderDetail[];\r\n}", "import { Component, EventEmitter, Output } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-collection-detail-providers-search',\r\n templateUrl: './collection-detail-providers-search.component.html',\r\n styleUrl: './collection-detail-providers-search.component.scss'\r\n})\r\nexport class CollectionDetailProvidersSearchComponent {\r\n public providerName: string = '';\r\n public providerId: string = '';\r\n public providerTin: string = '';\r\n\r\n @Output() onCollectionProviderSearch: EventEmitter = new EventEmitter(null);\r\n\r\n constructor() {}\r\n \r\n public searchProviders() {\r\n this.onCollectionProviderSearch.emit({ providerId: this.providerId, providerName: this.providerName, providerTin: this.providerTin });\r\n }\r\n\r\n public resetProviderSearch() {\r\n this.providerId = '';\r\n this.providerName = '';\r\n this.providerTin = '';\r\n\r\n this.onCollectionProviderSearch.emit({ providerId: '', providerName: '', providerTin: '' });\r\n }\r\n}\r\n", "
\r\n
\r\n \r\n
\r\n
\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, OnDestroy, ViewChild } from '@angular/core';\r\nimport { Observable, BehaviorSubject, Subscription } from 'rxjs';\r\nimport { ConfirmationService, MessageService } from 'primeng/api';\r\n\r\nimport { CollectionService } from '../../../services/collection.service';\r\nimport { BusyService } from '../../../services/busy.service';\r\nimport { SessionService } from '../../../services/session.service';\r\nimport { CollectionListItem } from '../../../services/models/collection-list-item';\r\nimport { CollectionDetail } from '../../../services/models/collection-detail';\r\nimport { CollectionType } from '../../../services/models/collection-type';\r\nimport { ProviderDetail } from '../../../services/models/provider-detail';\r\nimport { PagerClasses } from '../../../services/models/pager-classes';\r\nimport { Messages } from '../../../app.messages';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { ProviderTaxDetails } from '../../../services/models/provider-tax-details';\r\nimport { ProviderGroupDetails } from '../../../services/models/provider-group-details';\r\nimport { UiUtility } from 'src/app/utils/ui-utility';\r\n\r\n@Component({\r\n selector: 'collection-manager-providers',\r\n templateUrl: './providers.component.html',\r\n styleUrls: ['./providers.component.scss']\r\n})\r\nexport class ProvidersComponent implements OnInit, OnDestroy {\r\n public collectionItem: CollectionListItem;\r\n\r\n public totalProviders = 0;\r\n public totalTins = 0;\r\n public totalGroups = 0;\r\n\r\n public providerPageNumber: number;\r\n public tinPageNumber: number;\r\n public groupPageNumber: number;\r\n\r\n private sortColumnProvider: string;\r\n private sortColumnTin: string;\r\n private sortColumnGroup: string;\r\n\r\n private sortAscendingProvider: boolean;\r\n private sortAscendingTin: boolean;\r\n private sortAscendingGroup: boolean;\r\n private providerClientSearch: boolean = false;\r\n\r\n private allProviders: ProviderDetail[];\r\n private allTins: ProviderTaxDetails[];\r\n private allGroups: ProviderGroupDetails[]\r\n\r\n public displayproviders: ProviderDetail[];\r\n public filteredproviders: ProviderDetail[];\r\n public displaytins: ProviderTaxDetails[];\r\n public displaygroups : ProviderGroupDetails[];\r\n\r\n public cssClasses = PagerClasses.cssClasses;\r\n public rowsPerPage: number;\r\n public providerToRemove: string;\r\n public selectedProvider: ProviderDetail;\r\n public selectedTin: ProviderTaxDetails;\r\n public selectedGroup : ProviderGroupDetails;\r\n public showProviderInfo = false;\r\n public collectionType: CollectionType;\r\n public collectionId: number;\r\n public tin: string;\r\n public groupId: string;\r\n public groupView:number;\r\n public tinView:number;\r\n public addEnabled: boolean;\r\n private collectionItemSubscription: Subscription; \r\n public isNewBuildCollection: boolean;\r\n public get DisplaySearchProviderView(): boolean {\r\n return ((this.collectionType === CollectionType.MultipleTIN && this.tinView.toString() === '2') || (this.collectionType === CollectionType.MultipleGroupId && this.groupView === 2));\r\n }\r\n\r\n @ViewChild('addProviders', {static: true}) addProviders: any;\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private collectionService: CollectionService,\r\n private messageService: MessageService,\r\n private busy: BusyService,\r\n private confirm: ConfirmationService,\r\n public session: SessionService,\r\n private messages: Messages\r\n ) {\r\n this.collectionId = 0;\r\n this.rowsPerPage = 10;\r\n this.providerPageNumber = 1;\r\n this.tinPageNumber = 1;\r\n this.groupPageNumber = 1;\r\n this.sortColumnProvider = 'name';\r\n this.sortColumnTin = \"providerTaxId\";\r\n this.sortColumnGroup = \"groupName\";\r\n this.sortAscendingProvider = true;\r\n this.sortAscendingTin = true;\r\n this.sortAscendingGroup = true;\r\n this.allProviders = [];\r\n this.filteredproviders = [];\r\n this.allTins = [];\r\n this.allGroups = [];\r\n this.tinView = 1;\r\n this.groupView = 1;\r\n this.addEnabled = true;\r\n this.providerClientSearch = false;\r\n }\r\n\r\n ngOnInit() {\r\n this.isNewBuildCollection = this.route.snapshot.params['id'] && this.route.snapshot.params['id'] === 'new';\r\n this.collectionItemSubscription = this.collectionService.collectionListItemChanged$\r\n .subscribe(data => {\r\n this.collectionItem = data;\r\n if (this.collectionItem != null) {\r\n this.collectionType = data.collectionType;\r\n this.collectionId = data.id;\r\n this.groupId = data.groupId;\r\n this.tin = data.tin;\r\n this.tinView = 1;\r\n this.groupView = 1;\r\n this.providerClientSearch = false;\r\n \r\n if (this.collectionItem.id != null) {\r\n this.addEnabled = true;\r\n this.busy.emit(true);\r\n this.getProvidersTinsGroups();\r\n }\r\n else {\r\n if (this.collectionItem.tins.length > 0) {\r\n this.addEnabled = false;\r\n }\r\n this.getProvidersTinsGroupsForNew();\r\n }\r\n }\r\n return data;\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.collectionItemSubscription != null) {\r\n this.collectionItemSubscription.unsubscribe();\r\n }\r\n this.collectionService.setCurrentCollection(null);\r\n }\r\n\r\n private isBusy(busy: boolean): void {\r\n this.busy.emit(busy);\r\n }\r\n\r\n private updateProviders(providers: ProviderDetail[]): void {\r\n if (providers == null) {\r\n providers = [];\r\n }\r\n this.totalProviders = providers.length;\r\n this.allProviders = providers;\r\n }\r\n\r\n private updateTins(tins: ProviderTaxDetails[]): void {\r\n if(tins == null) {\r\n tins = [];\r\n }\r\n\r\n this.totalTins = tins.length;\r\n this.allTins = tins;\r\n }\r\n\r\n private updateGroups(groups: ProviderGroupDetails[]) : void {\r\n if(groups == null) {\r\n groups = [];\r\n }\r\n\r\n this.totalGroups = groups.length;\r\n this.allGroups = groups;\r\n }\r\n\r\n private showProviders(providers: ProviderDetail[]): void {\r\n this.updateProviders(providers);\r\n this.onPage(1);\r\n this.isBusy(false);\r\n }\r\n\r\n private showTins(tins: ProviderTaxDetails[]): void {\r\n this.updateTins(tins);\r\n this.onTinPage(1);\r\n this.isBusy(false);\r\n }\r\n\r\n private showGroups(groups: ProviderGroupDetails[]): void {\r\n this.updateGroups(groups);\r\n this.onGroupPage(1);\r\n this.isBusy(false);\r\n }\r\n\r\n private getProvidersTinsGroups(): void {\r\n let sub = this.collectionService.getCollectionDetail(this.collectionItem.id).subscribe((detail) => { \r\n\r\n this.showProviders(detail.providers.sort((a, b) => {\r\n return a.name.localeCompare(b.name);\r\n }));\r\n\r\n this.showTins(detail.tins.sort((a, b) => {\r\n return a.providerTaxId.localeCompare(b.providerTaxId);\r\n }));\r\n\r\n this.showGroups(detail.groups.sort((a, b) => {\r\n return a.providerGroupName.localeCompare(b.providerGroupName);\r\n }));\r\n\r\n if (sub != null) {\r\n sub.unsubscribe();\r\n }\r\n });\r\n }\r\n\r\n private getProvidersTinsGroupsForNew(): void {\r\n\r\n let keys: string[] = [];\r\n let type: CollectionType;\r\n\r\n if(this.collectionItem.collectionType == CollectionType.MultipleTIN) {\r\n this.collectionItem.tins.forEach(x=>{\r\n keys.push(x.providerTaxId);\r\n }); \r\n type = CollectionType.TIN; \r\n }\r\n else if ( this.collectionItem.collectionType == CollectionType.MultipleGroupId) {\r\n this.collectionItem.groups.forEach(x=>{\r\n keys.push(x.providerGroupId);\r\n });\r\n\r\n type = CollectionType.Group;\r\n }\r\n\r\n if(type) {\r\n let sub = this.collectionService.findMultipleCollectionProviders(type, keys, null).subscribe((result)=> {\r\n this.showProviders(result.sort((a, b) => {\r\n return a.name.localeCompare(b.name);\r\n }));\r\n \r\n if(this.collectionItem.collectionType == CollectionType.MultipleTIN) {\r\n this.showTins(this.collectionItem.tins.sort((a, b) => {\r\n return a.providerTaxId.localeCompare(b.providerTaxId);\r\n }));\r\n }\r\n else if(this.collectionItem.collectionType == CollectionType.MultipleGroupId) {\r\n this.showGroups(this.collectionItem.groups.sort((a, b) => {\r\n return a.providerGroupId.localeCompare(b.providerGroupId);\r\n }));\r\n }\r\n\r\n if (sub != null) {\r\n sub.unsubscribe();\r\n }\r\n });\r\n }\r\n }\r\n\r\n private sortProviders(sortColumn: string, sortAscending: boolean): void {\r\n if (this.providerClientSearch) {\r\n this.filteredproviders.sort((data1, data2) => {\r\n return this.sortProviderLogic(data1, data2, sortColumn, sortAscending);\r\n });\r\n } else {\r\n this.allProviders.sort((data1, data2) => {\r\n return this.sortProviderLogic(data1, data2, sortColumn, sortAscending);\r\n });\r\n }\r\n }\r\n\r\n private sortTins(sortColumn: string, sortAscending: boolean): void {\r\n this.allTins.sort((data1, data2) => {\r\n let value1 = data1[sortColumn];\r\n let value2 = data2[sortColumn];\r\n let result = null;\r\n\r\n if (value1 == null && value2 != null) {\r\n result = -1;\r\n }\r\n else if (value1 != null && value2 == null) {\r\n result = 1;\r\n }\r\n else if (value1 == null && value2 == null) {\r\n result = 0;\r\n }\r\n else if (typeof value1 === 'string' && typeof value2 === 'string') {\r\n result = value1.localeCompare(value2);\r\n }\r\n else {\r\n result = (value1 < value2) ? -1 : (value1 > value2) ? 1 : 0;\r\n }\r\n\r\n return (sortAscending ? result : -result);\r\n });\r\n }\r\n\r\n private sortGroups(sortColumn: string, sortAscending: boolean): void {\r\n \r\n this.allGroups.sort((data1, data2) => {\r\n let value1 = data1[sortColumn];\r\n let value2 = data2[sortColumn];\r\n let result = null;\r\n\r\n if (value1 == null && value2 != null) {\r\n result = -1;\r\n }\r\n else if (value1 != null && value2 == null) {\r\n result = 1;\r\n }\r\n else if (value1 == null && value2 == null) {\r\n result = 0;\r\n }\r\n else if (typeof value1 === 'string' && typeof value2 === 'string') {\r\n result = value1.localeCompare(value2);\r\n }\r\n else {\r\n result = (value1 < value2) ? -1 : (value1 > value2) ? 1 : 0;\r\n }\r\n\r\n return (sortAscending ? result : -result);\r\n });\r\n }\r\n\r\n public get collectionValid(): boolean {\r\n return this.allProviders != null && this.allProviders.length > 0;\r\n }\r\n\r\n public get collectionModified(): boolean {\r\n return this.collectionService.isEditCollectionModified();\r\n }\r\n\r\n public get isLastProvider(): boolean {\r\n return this.collectionService.providers.length == 1;\r\n }\r\n\r\n public renameCollection(): void {\r\n this.collectionItem = this.collectionService.selectedCollectionItem;\r\n let sub = this.saveCollection(true).subscribe(() => {\r\n if (sub != null) {\r\n sub.unsubscribe();\r\n }\r\n });\r\n }\r\n\r\n public get canDisplayProvider() : boolean {\r\n if(this.collectionItem != null) {\r\n\r\n if(this.collectionType == CollectionType.MultipleTIN )\r\n return this.tinView == 2;\r\n else if ( this.collectionType == CollectionType.MultipleGroupId)\r\n return this.groupView == 2;\r\n else\r\n return true;\r\n } \r\n else {\r\n return false;\r\n } \r\n }\r\n\r\n public get canRemoveTinGroup() : boolean {\r\n return this.session.isEnterpriseAdmin;\r\n }\r\n\r\n public saveCollection(rename: boolean): Observable {\r\n let subject: BehaviorSubject = new BehaviorSubject(0);\r\n if (this.allProviders.length === 0) {\r\n this.isBusy(false);\r\n this.messageService.add({ severity: this.messages.SeverityError, detail: this.messages.MessageNoCollectionProviders, life: this.messages.ToasterLife });\r\n }\r\n else {\r\n let detail: CollectionDetail = new CollectionDetail();\r\n detail.id = this.collectionItem.id;\r\n detail.name = this.collectionItem.name;\r\n detail.collectionType = this.collectionType;\r\n detail.groupId = this.groupId;\r\n detail.tin = this.tin;\r\n \r\n if(this.collectionType == CollectionType.MultipleTIN)\r\n detail.tins = this.allTins;\r\n else if(this.collectionType == CollectionType.MultipleGroupId)\r\n detail.groups = this.allGroups;\r\n\r\n if (!rename) {\r\n if(this.collectionType == CollectionType.Manual)\r\n detail.providers = this.allProviders;\r\n }\r\n this.isBusy(true);\r\n let sub = this.collectionService.createOrUpdateCollection(detail).subscribe(\r\n result => {\r\n if (typeof result === 'number') {\r\n\r\n if(this.collectionItem.id == 0) {\r\n console.log(\"Changing the collection Id from 0 to \", result);\r\n this.collectionItem.id = result;\r\n }\r\n\r\n this.collectionService.setCurrentCollection(this.collectionItem);\r\n subject.next(result);\r\n this.getProvidersTinsGroups();\r\n }\r\n else {\r\n this.isBusy(false);\r\n this.messageService.add({ severity: this.messages.SeverityError, detail: result, life: this.messages.ToasterLife });\r\n }\r\n },\r\n (error) => {\r\n this.isBusy(false);\r\n this.messageService.add({ severity: this.messages.SeverityError, detail: \"TIN/Group ID mapped to another collection.\", life: this.messages.ToasterLife });\r\n }, \r\n () => {\r\n if (sub != null) {\r\n sub.unsubscribe();\r\n }\r\n });\r\n }\r\n return subject.asObservable();\r\n }\r\n\r\n public sortClassProvider(column: string): string {\r\n let cls: string;\r\n if (column == this.sortColumnProvider) {\r\n cls = this.sortAscendingProvider ? \"fa fa-chevron-up\" : \"fa fa-chevron-down\";\r\n }\r\n else {\r\n cls = \"fa fa-chevron-up\";\r\n }\r\n return cls;\r\n }\r\n\r\n public sortClassTin(column: string): string {\r\n let cls: string;\r\n if (column == this.sortColumnTin) {\r\n cls = this.sortAscendingTin ? \"fa fa-chevron-up\" : \"fa fa-chevron-down\";\r\n }\r\n else {\r\n cls = \"fa fa-chevron-up\";\r\n }\r\n return cls;\r\n }\r\n\r\n public sortClassGroup(column: string): string {\r\n let cls: string;\r\n if (column == this.sortColumnGroup) {\r\n cls = this.sortAscendingGroup ? \"fa fa-chevron-up\" : \"fa fa-chevron-down\";\r\n }\r\n else {\r\n cls = \"fa fa-chevron-up\";\r\n }\r\n return cls;\r\n }\r\n\r\n public onSort(e: any): void {\r\n this.sortProviders(e.sortField, e.sortOrder == 1);\r\n this.sortAscendingProvider = e.sortOrder == 1;\r\n this.sortColumnProvider = e.sortField;\r\n this.onPage(this.providerPageNumber);\r\n }\r\n\r\n public onSortTin(e: any) : void {\r\n this.sortTins(e.sortField, e.sortOrder == 1);\r\n this.sortAscendingTin = e.sortOrder == 1;\r\n this.sortColumnTin = e.sortField;\r\n this.onTinPage(this.tinPageNumber);\r\n }\r\n\r\n public onSortGroup(e: any) : void {\r\n this.sortGroups(e.sortField, e.sortOrder == 1);\r\n this.sortAscendingGroup = e.sortOrder == 1;\r\n this.sortColumnGroup = e.sortField;\r\n this.onGroupPage(this.groupPageNumber);\r\n }\r\n\r\n public onFindManual(): void {\r\n this.addProviders.show();\r\n }\r\n\r\n onCollectionTypeChanged(): void {\r\n\r\n let ret:any = this.collectionService.changeCollectionType(this.collectionType)\r\n this.showProviders(ret.providers);\r\n this.showTins(ret.tins);\r\n this.showGroups(ret.groups);\r\n }\r\n\r\n public onSaveCollection(): void {\r\n\r\n if(this.allProviders.length == 0) {\r\n alert ('Please add providers');\r\n return;\r\n }\r\n \r\n let sub = this.saveCollection(false).subscribe(collectionId => {\r\n if (this.collectionItem.id == null || this.collectionItem.id === 0) {\r\n this.collectionItem.id = collectionId;\r\n }\r\n this.collectionService.refreshList();\r\n this.collectionService.setCurrentCollection(this.collectionItem);\r\n if (sub != null) {\r\n sub.unsubscribe();\r\n }\r\n });\r\n }\r\n\r\n public onRemoveProvider(row: ProviderDetail): void {\r\n this.confirm.confirm({\r\n message: `Are you sure you want to remove \"${row.name}\"?`,\r\n accept: () => {\r\n this.updateProviders(this.collectionService.removeProvider(row));\r\n let sub = this.saveCollection(false).subscribe(result => {\r\n if (sub != null) {\r\n sub.unsubscribe;\r\n }\r\n });\r\n },\r\n acceptLabel: this.messages.ButtonRemove,\r\n rejectLabel: this.messages.ButtonNo\r\n });\r\n }\r\n\r\n public onRemoveTin(row: ProviderTaxDetails): void {\r\n this.confirm.confirm({\r\n message: `Are you sure you want to remove TIN: \"${row.providerTaxId}\"?`,\r\n accept: () => {\r\n\r\n this.collectionService.findCollectionProviders(CollectionType.TIN, row.providerTaxId, null).subscribe(results => \r\n {\r\n var ret = this.collectionService.removeTin(row, results);\r\n\r\n this.showTins(ret.tins);\r\n this.showProviders(ret.providers);\r\n });\r\n },\r\n acceptLabel: this.messages.ButtonRemove,\r\n rejectLabel: this.messages.ButtonNo\r\n });\r\n }\r\n\r\n public onRemoveGroup(row: ProviderGroupDetails): void {\r\n this.confirm.confirm({\r\n message: `Are you sure you want to remove Group: \"${row.providerGroupId}\"?`,\r\n accept: () => {\r\n\r\n this.collectionService.findCollectionProviders(CollectionType.Group, row.providerGroupId, null).subscribe(results =>\r\n {\r\n var ret = this.collectionService.removeGroup(row, results);\r\n\r\n this.showGroups(ret.groups);\r\n this.showProviders(ret.providers);\r\n });\r\n },\r\n acceptLabel: this.messages.ButtonRemove,\r\n rejectLabel: this.messages.ButtonNo\r\n });\r\n }\r\n\r\n public onAddTins(tins: ProviderTaxDetails[]): void {\r\n this.updateTins(this.collectionService.addTins(tins));\r\n this.sortTins(this.sortColumnTin, this.sortAscendingTin);\r\n this.onTinPage(this.tinPageNumber);\r\n }\r\n\r\n public onAddGroups(groups: ProviderGroupDetails[]) : void {\r\n this.updateGroups(this.collectionService.addGroups(groups));\r\n this.sortGroups(this.sortColumnGroup, this.sortAscendingGroup);\r\n this.onGroupPage(this.groupPageNumber);\r\n }\r\n\r\n public onAddProviders(providers: ProviderDetail[]): void { \r\n this.updateProviders(this.collectionService.addProviders(providers));\r\n this.sortProviders(this.sortColumnProvider, this.sortAscendingProvider);\r\n this.onPage(this.providerPageNumber);\r\n }\r\n\r\n public onPage(page: number) {\r\n this.providerPageNumber = page;\r\n const start = (page - 1) * this.rowsPerPage;\r\n let end = start + this.rowsPerPage;\r\n if (end > this.allProviders.length) {\r\n end = this.allProviders.length;\r\n }\r\n // Select the subset of records to display in the grid.\r\n this.displayproviders = (this.providerClientSearch) \r\n ? this.filteredproviders.slice(start, end) \r\n : this.allProviders.slice(start, end);\r\n }\r\n\r\n public onTinPage(page: number) {\r\n this.tinPageNumber = page; \r\n const start = (page - 1) * this.rowsPerPage;\r\n let end = start + this.rowsPerPage;\r\n if (end > this.allTins.length) {\r\n end = this.allTins.length;\r\n }\r\n // Select the subset of records to display in the grid.\r\n this.displaytins = this.allTins.slice(start, end);\r\n }\r\n\r\n public onGroupPage(page: number) {\r\n this.groupPageNumber = page; \r\n const start = (page - 1) * this.rowsPerPage;\r\n let end = start + this.rowsPerPage;\r\n if (end > this.allGroups.length) {\r\n end = this.allGroups.length;\r\n }\r\n // Select the subset of records to display in the grid.\r\n this.displaygroups = this.allGroups.slice(start, end);\r\n }\r\n \r\n public showProviderInfoHandler(event, row: ProviderDetail): void {\r\n this.selectedProvider = row;\r\n // call service for data object\r\n let sub = this.collectionService.GetProvider(row.providerID)\r\n .subscribe(data => {\r\n this.selectedProvider = data;\r\n // call dialog\r\n this.showDialog();\r\n if (sub != null) {\r\n sub.unsubscribe();\r\n }\r\n return data;\r\n },\r\n err => {\r\n if (sub != null) {\r\n sub.unsubscribe();\r\n }\r\n return null;\r\n });\r\n }\r\n\r\n public showDialog() {\r\n this.showProviderInfo = true;\r\n }\r\n\r\n public onCollectionProviderSearch(search: any) {\r\n if (search && (search.providerName || search.providerId || search.providerTin)) {\r\n if (!UiUtility.isNullUndefinedOrEmpty(search.providerName) && !UiUtility.isNullUndefinedOrEmpty(search.providerId) && !UiUtility.isNullUndefinedOrEmpty(search.providerTin)) {\r\n this.filteredproviders = this.allProviders\r\n .filter(p => p.name.toLowerCase().indexOf(search.providerName.trim().toLowerCase()) >= 0 && \r\n p.calProviderID.toLowerCase().indexOf(search.providerId.trim().toLowerCase()) >= 0 && \r\n p.taxId.toLowerCase().indexOf(search.providerTin.trim().toLowerCase()) >= 0);\r\n }\r\n else if (!UiUtility.isNullUndefinedOrEmpty(search.providerName) && !UiUtility.isNullUndefinedOrEmpty(search.providerId)) {\r\n this.filteredproviders = this.allProviders\r\n .filter(p => p.name.toLowerCase().indexOf(search.providerName.trim().toLowerCase()) >= 0 && \r\n p.calProviderID.toLowerCase().indexOf(search.providerId.trim().toLowerCase()) >= 0);\r\n }\r\n else if (!UiUtility.isNullUndefinedOrEmpty(search.providerName) && !UiUtility.isNullUndefinedOrEmpty(search.providerTin)) {\r\n this.filteredproviders = this.allProviders\r\n .filter(p => p.name.toLowerCase().indexOf(search.providerName.trim().toLowerCase()) >= 0 && \r\n p.taxId.toLowerCase().indexOf(search.providerTin.trim().toLowerCase()) >= 0);\r\n }\r\n else if (!UiUtility.isNullUndefinedOrEmpty(search.providerId) && !UiUtility.isNullUndefinedOrEmpty(search.providerTin)) {\r\n this.filteredproviders = this.allProviders\r\n .filter(p => p.calProviderID.toLowerCase().indexOf(search.providerId.trim().toLowerCase()) >= 0 && \r\n p.taxId.toLowerCase().indexOf(search.providerTin.trim().toLowerCase()) >= 0);\r\n }\r\n else if (!UiUtility.isNullUndefinedOrEmpty(search.providerId)) {\r\n this.filteredproviders = this.allProviders\r\n .filter(p => p.calProviderID.toLowerCase().indexOf(search.providerId.trim().toLowerCase()) >= 0);\r\n }\r\n else if (!UiUtility.isNullUndefinedOrEmpty(search.providerName)) {\r\n this.filteredproviders = this.allProviders\r\n .filter(p => p.name.toLowerCase().indexOf(search.providerName.trim().toLowerCase()) >= 0);\r\n } \r\n else {\r\n this.filteredproviders = this.allProviders\r\n .filter(p => p.taxId.toLowerCase().indexOf(search.providerTin.trim().toLowerCase()) >= 0);\r\n }\r\n\r\n\r\n this.totalProviders = this.filteredproviders.length;\r\n this.providerClientSearch = true;\r\n this.onPage(1);\r\n }\r\n else {\r\n this.filteredproviders = [];\r\n this.totalProviders = this.allProviders.length;\r\n this.providerClientSearch = false;\r\n this.onPage(1);\r\n }\r\n return false;\r\n }\r\n\r\n onDialogClose(event) {\r\n let e = event;\r\n this.showProviderInfo = false;\r\n }\r\n\r\n private sortProviderLogic(data1: any, data2: any, sortColumn: string, sortAscending: boolean) {\r\n let value1 = data1[sortColumn];\r\n let value2 = data2[sortColumn];\r\n let result = null;\r\n\r\n if (value1 == null && value2 != null) {\r\n result = -1;\r\n }\r\n else if (value1 != null && value2 == null) {\r\n result = 1;\r\n }\r\n else if (value1 == null && value2 == null) {\r\n result = 0;\r\n }\r\n else if (typeof value1 === 'string' && typeof value2 === 'string') {\r\n result = value1.localeCompare(value2);\r\n }\r\n else {\r\n result = (value1 < value2) ? -1 : (value1 > value2) ? 1 : 0;\r\n }\r\n\r\n return (sortAscending ? result : -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 All TINs\r\n \r\n \r\n \r\n Name
\r\n TIN
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n {{row.providerTaxName}}\r\n
\r\n \r\n \r\n
\r\n
\r\n {{row.providerTaxId}}\r\n
\r\n
\r\n Remove\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n

 

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n All Groups\r\n \r\n \r\n \r\n Group Name
\r\n Group ID
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n {{row.providerGroupName}}\r\n
\r\n \r\n \r\n
\r\n
\r\n {{row.providerGroupId}}\r\n
\r\n
\r\n Remove\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n

 

\r\n
\r\n
\r\n All providers\r\n \r\n \r\n \r\n Name
\r\n TIN
\r\n Group ID
\r\n Provider ID
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n {{row.name}}\r\n
\r\n \r\n \r\n
\r\n {{row.taxId}}\r\n
\r\n \r\n \r\n
\r\n {{row.groupId}}\r\n
\r\n \r\n \r\n
\r\n
\r\n {{row.calProviderID}}\r\n
\r\n
\r\n Remove\r\n
\r\n
\r\n \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, OnDestroy } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { ConfirmationService, MessageService, SelectItem } from 'primeng/api';\r\nimport { PagerClasses } from '../../../services/models/pager-classes';\r\nimport { UserTypeMap } from '../../../services/models/user-type-map';\r\nimport { UserStatusMap } from '../../../services/models/user-status-map';\r\nimport { PortalUser, UserType, UserStatus } from '../../../services/models/portal-user';\r\nimport { CollectionListItem } from '../../../services/models/collection-list-item';\r\nimport { CollectionService } from '../../../services/collection.service';\r\nimport { UserAdminService } from '../../../services/user-admin.service';\r\nimport { SessionService } from '../../../services/session.service';\r\nimport { Constants } from '../../../app.constants';\r\nimport { Messages } from '../../../app.messages';\r\nimport { UiUtility } from 'src/app/utils/ui-utility';\r\n\r\n@Component({\r\n selector: 'collection-manager-users',\r\n templateUrl: './users.component.html',\r\n styleUrls: ['./users.component.scss']\r\n})\r\nexport class UsersComponent implements OnInit, OnDestroy {\r\n public totalUsers = 0;\r\n public pageNumber: number;\r\n public rowsPerPage: number;\r\n public users: PortalUser[];\r\n public cssClasses = PagerClasses.cssClasses;\r\n public editUser: PortalUser;\r\n public removalUser: PortalUser;\r\n public showAddUser = false;\r\n public showAccept = false;\r\n public showApproveDeclineScreen = false;\r\n public showUserPermission = false;\r\n public showUserDeclineScreen = false;\r\n public selectedUser: PortalUser;\r\n public collectionItem: CollectionListItem;\r\n public results: [];\r\n public userName: string = '';\r\n public selectedStatus: any;\r\n public userStatuses: SelectItem[] = [];\r\n public selectedRole: any;\r\n public userRoles: SelectItem[] = [];\r\n\r\n private sortColumn: string;\r\n private sortAscending: boolean;\r\n private allUsers: PortalUser[];\r\n private filteredUsers: PortalUser[];\r\n private collectionServiceSubscription: Subscription;\r\n private clientUserSearch: boolean = false;\r\n\r\n constructor(\r\n private adminService: UserAdminService,\r\n private collectionService: CollectionService,\r\n private confirm: ConfirmationService,\r\n private messageService: MessageService,\r\n public session: SessionService,\r\n private constants: Constants,\r\n private messages: Messages\r\n ) {\r\n this.rowsPerPage = constants.DetailRowsPerPage;\r\n this.users = [];\r\n this.editUser = null;\r\n this.pageNumber = 1;\r\n this.sortColumn = 'status';\r\n this.sortAscending = true;\r\n }\r\n\r\n ngOnInit() {\r\n this.collectionServiceSubscription = this.collectionService.collectionListItemChanged$\r\n .subscribe(collection => {\r\n this.pageNumber = 1;\r\n this.findUsers(this.pageNumber, true);\r\n this.collectionItem = collection;\r\n const user = this.adminService.selectedUser;\r\n if (user != null && collection != null && collection.id != null && collection.id != 0) {\r\n if (user.providerCollectionID != null) {\r\n this.adminService.selectedUser.providerCollectionID = collection.id;\r\n }\r\n this.showUsers(1, 1, [user]);\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.collectionServiceSubscription) {\r\n this.collectionServiceSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n private showUsers(pageNumber: number, totalUsers: number, users: PortalUser[]): void {\r\n this.clientUserSearch = false;\r\n this.pageNumber = pageNumber;\r\n this.totalUsers = totalUsers;\r\n this.allUsers = users;\r\n if (users != null) {\r\n this.onPage(pageNumber);\r\n }\r\n }\r\n\r\n // Get the class(es) to display for the status icon\r\n public mapStatusToIcon(user: PortalUser): string {\r\n return UserStatusMap.mapStatustoIcon(user.status);\r\n }\r\n\r\n // Get the class(es) to display for the role icon\r\n public mapRoleToIcon(user: PortalUser): string {\r\n if (user.status !== UserStatus.Active && user.status !== UserStatus.Approved) {\r\n return null;\r\n }\r\n return UserTypeMap.mapUserRoleTypeToIcon(user.roleID);\r\n }\r\n\r\n // Get the string to display for the tooltip (title) for the user hovers over the status icon\r\n public mapStatusToTooltip(user: PortalUser): string {\r\n return UserStatusMap.mapStatusToSelectItem(user.status).label;\r\n }\r\n\r\n // Get the string to display the tooltip (title) when the user hovers over the role\r\n public mapRoleToTooltip(user: PortalUser): string {\r\n if (user.status !== UserStatus.Active && user.status !== UserStatus.Approved) {\r\n return null;\r\n }\r\n\r\n const roleType = UserTypeMap.mapUserRoleTypeToSelectItem(user.roleID);\r\n return roleType ? roleType.label : '';\r\n }\r\n\r\n // Show the users in the collection.\r\n public findUsers(pageNumber: number, initialLoad: boolean = false): void {\r\n const collection: CollectionListItem = this.collectionService.selectedCollectionItem;\r\n if (collection != null && collection.id != null && collection.id != 0) {\r\n let sub = this.collectionService.getCollectionUsers(collection, 1, 99999, true).subscribe(response => {\r\n this.showUsers(pageNumber, response.totalItems, response.items);\r\n const selected = this.adminService.selectedUser;\r\n if (selected != null) {\r\n const selectedItem = response.items.find(x => x.email === selected.email);\r\n if (selectedItem != null) {\r\n this.selectedUser = selectedItem;\r\n }\r\n }\r\n if (initialLoad) {\r\n const user = this.adminService.selectedUser;\r\n if (user != null) {\r\n let mappedUser = this.allUsers.find(u => u.suspenseId === user.suspenseId);\r\n if (!mappedUser) {\r\n mappedUser = this.allUsers.find(u => u.userID === user.userID);\r\n }\r\n this.editUser = mappedUser;\r\n this.onEditUser(mappedUser);\r\n this.adminService.selectedUser = null; // reset user selection after \r\n this.selectedUser = null;\r\n }\r\n }\r\n this.setUserSelections();\r\n\r\n if (sub != null) {\r\n sub.unsubscribe();\r\n }\r\n });\r\n }\r\n else {\r\n this.showUsers(1, 0, null);\r\n }\r\n }\r\n\r\n public sortClass(column: string): string {\r\n let cls: string;\r\n if (column == this.sortColumn) {\r\n cls = this.sortAscending ? \"fa fa-chevron-up\" : \"fa fa-chevron-down\";\r\n }\r\n else {\r\n cls = \"fa fa-chevron-up\";\r\n }\r\n return cls;\r\n }\r\n\r\n public onSort(e: any): void {\r\n if (this.clientUserSearch) {\r\n this.filteredUsers.sort((data1, data2) => {\r\n return this.sortLogic(data1, data2, e);\r\n });\r\n }\r\n else {\r\n this.allUsers.sort((data1, data2) => {\r\n return this.sortLogic(data1, data2, e);\r\n });\r\n }\r\n\r\n this.sortAscending = e.order == 1;\r\n this.sortColumn = e.field;\r\n this.onPage(this.pageNumber);\r\n }\r\n\r\n public onPage(page: number): void {\r\n this.pageNumber = page;\r\n const start = (page - 1) * this.rowsPerPage;\r\n let end = start + this.rowsPerPage;\r\n\r\n // Select the subset of users to display in the grid\r\n if (this.clientUserSearch) {\r\n if (end > this.filteredUsers.length) {\r\n end = this.filteredUsers.length;\r\n }\r\n this.users = this.filteredUsers.slice(start, end);\r\n }\r\n else {\r\n if (end > this.allUsers.length) {\r\n end = this.allUsers.length;\r\n }\r\n this.users = this.allUsers.slice(start, end);\r\n }\r\n\r\n }\r\n\r\n // Event sent by child dialogs to update the list of users of the collection.\r\n public onUserUpdated(event): void {\r\n this.clientUserSearch = false;\r\n\r\n // set to check Pending status because edituser.status hasn't been updated yet\r\n // TODO: make editable user reactive or use two-way binding to update local\r\n // then change userstatus.approved since update should match. Will still\r\n // need flag\r\n if (event.action === 'PendingApprove') {\r\n this.showApproveDeclineScreen = false;\r\n this.showUserPermission = true;\r\n return;\r\n }\r\n else if (event.action === 'PendingDecline') {\r\n this.showApproveDeclineScreen = false;\r\n this.showUserDeclineScreen = true;\r\n return;\r\n }\r\n\r\n if (this.editUser != null && this.editUser.status === UserStatus.Pending && event.action === 'Approve') {\r\n this.messageService.add({ severity: this.messages.SeveritySuccess, detail: this.messages.MessageUserApproved, life: this.messages.ToasterLife });\r\n }\r\n\r\n this.removalUser = null;\r\n this.showApproveDeclineScreen = false;\r\n\r\n if (event.action === 'Remove') {\r\n this.pageNumber = 1;\r\n }\r\n if (event && event.action !== 'Cancel') {\r\n this.findUsers(this.pageNumber);\r\n }\r\n }\r\n\r\n public onUserPermissionUpdated(event): void {\r\n this.clientUserSearch = false;\r\n this.showUserPermission = false;\r\n if (event && event.action !== 'Cancel') {\r\n this.findUsers(this.pageNumber);\r\n }\r\n }\r\n\r\n public onUserDeclineUpdated(event): void {\r\n this.clientUserSearch = false;\r\n this.showUserDeclineScreen = false;\r\n if (event && event.action === 'Decline') {\r\n this.findUsers(this.pageNumber);\r\n }\r\n }\r\n\r\n public onAddUser(): void {\r\n this.showAddUser = true;\r\n }\r\n\r\n // Set the user to be edited that will be input to the edit user dialog.\r\n public onEditUser(user: PortalUser) {\r\n this.editUser = user;\r\n if (user.status === UserStatus.Pending) {\r\n this.showApproveDeclineScreen = true; // enable accept/decline dialog\r\n } else {\r\n this.showUserPermission = true; // enable user permission slider only\r\n }\r\n }\r\n\r\n // Set the user to be deleted that will be input to the remove user dialog.\r\n public onRemoveUser(user: PortalUser) {\r\n this.removalUser = user;\r\n }\r\n\r\n public onShowAddStatus(status: boolean) {\r\n this.clientUserSearch = false;\r\n this.showAddUser = status;\r\n }\r\n\r\n public onAddUserToCollection(addUser: PortalUser) {\r\n this.clientUserSearch = false;\r\n // ensure add user dialog closed\r\n this.showAddUser = false;\r\n this.showUserPermission = true;\r\n // Show editbox\r\n this.editUser = addUser;\r\n this.findUsers(this.pageNumber);\r\n }\r\n\r\n public searchUsers() {\r\n if (this.userName.trim().length > 0 || (this.selectedStatus && this.selectedStatus.value.id !== 0) || (this.selectedRole && this.selectedRole.value.id !== 0)) {\r\n // filter users\r\n this.filteredUsers = this.allUsers\r\n .filter(p => (p.name.toLowerCase().indexOf(this.userName.trim().toLowerCase()) >= 0 || \r\n p.email.toLowerCase().indexOf(this.userName.trim().toLowerCase()) >= 0) &&\r\n (this.selectedStatus.value.id === 0 || this.selectedStatus.value.id === p.status) &&\r\n (this.selectedRole.value.id === 0 || this.selectedRole.value.code === p.roleCode));\r\n this.totalUsers = this.filteredUsers.length;\r\n this.clientUserSearch = true;\r\n this.onPage(1);\r\n }\r\n else {\r\n // reset users\r\n this.filteredUsers = [];\r\n this.pageNumber = 1;\r\n this.clientUserSearch = false;\r\n this.showUsers(1, this.allUsers.length, this.allUsers);\r\n let param: any = {\r\n \"field\": \"name\",\r\n \"order\": 0\r\n }\r\n this.onSort(param);\r\n this.sortClass(param.name);\r\n }\r\n }\r\n\r\n public resetUserSearch() {\r\n this.userName = '';\r\n this.sortAscending = true;\r\n this.selectedUser = null;\r\n this.selectedRole = null;\r\n this.selectedStatus = null;\r\n this.setDefaultSearchOption();\r\n this.searchUsers();\r\n }\r\n\r\n private sortLogic(data1: any, data2: any, e: any) {\r\n let value1 = data1[e.field];\r\n let value2 = data2[e.field];\r\n let result = null;\r\n\r\n if (value1 == null && value2 != null)\r\n result = -1;\r\n else if (value1 != null && value2 == null)\r\n result = 1;\r\n else if (value1 == null && value2 == null)\r\n result = 0;\r\n else if (typeof value1 === 'string' && typeof value2 === 'string')\r\n result = value1.localeCompare(value2);\r\n else\r\n result = (value1 < value2) ? -1 : (value1 > value2) ? 1 : 0;\r\n\r\n return (e.order * result);\r\n }\r\n\r\n private setUserSelections() {\r\n let statusesArray: any[] = [];\r\n let rolesArray: any[] = [];\r\n\r\n statusesArray.push({\r\n label: 'All Statuses',\r\n value: { id: 0, name: 'All Statuses', code:'All Statuses' }\r\n });\r\n rolesArray.push({\r\n label: 'All Roles',\r\n value: { id: 0, name: 'All Roles', code:'All Roles' }\r\n });\r\n\r\n this.allUsers.forEach(u => {\r\n if (!UiUtility.isNullUndefinedOrEmpty(u.statusDesc) && statusesArray.find(s => s.label.toLowerCase() == u.statusDesc.toLowerCase()) == null) {\r\n statusesArray.push({\r\n label: u.statusDesc,\r\n value: {\r\n id: u.status,\r\n name: u.statusDesc,\r\n code: u.statusDesc\r\n }\r\n });\r\n }\r\n if (!UiUtility.isNullUndefinedOrEmpty(u.roleDisplayName) && rolesArray.find(r => r.label.toLowerCase() === u.roleDisplayName.toLowerCase()) == null) {\r\n rolesArray.push({\r\n label: u.roleDisplayName,\r\n value: {\r\n id: u.roleID,\r\n name: u.roleDisplayName,\r\n code: u.roleCode\r\n }\r\n });\r\n }\r\n });\r\n this.userStatuses = statusesArray;\r\n this.userRoles = rolesArray;\r\n this.setDefaultSearchOption();\r\n }\r\n\r\n private setDefaultSearchOption() {\r\n this.selectedRole = this.userRoles.find(r => r.value.id === 0);\r\n this.selectedStatus = this.userStatuses.find(r => r.value.id === 0);\r\n }\r\n}\r\n", "
\r\n No users in collection\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n Status
\r\n Role
\r\n Name
\r\n Email
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n {{row.name}}\r\n
\r\n \r\n \r\n
\r\n
\r\n {{row.email}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \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, OnDestroy, ViewChild } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { ConfirmationService } from 'primeng/api';\r\n\r\nimport { RouterHistoryService } from '../../services/router-history.service';\r\nimport { CollectionService } from './../../services/collection.service';\r\nimport { CollectionListItem } from '../../services/models/collection-list-item';\r\nimport { Messages } from '../../app.messages';\r\n\r\n@Component({\r\n selector: 'app-collection-detail',\r\n templateUrl: './collection-detail.component.html',\r\n styleUrls: ['./collection-detail.component.scss'],\r\n})\r\n\r\nexport class CollectionDetailComponent implements OnInit, OnDestroy {\r\n public collectionName: string;\r\n public collectionItem: CollectionListItem;\r\n private collectionItemSubscription: Subscription;\r\n private isModal: boolean;\r\n private activeTabIndex: number;\r\n @ViewChild('compProviders') compProviders: any;\r\n @ViewChild('collectionTabs', {static: true}) collectionTabs: any;\r\n\r\n constructor(\r\n private routerHistory: RouterHistoryService,\r\n private collectionService: CollectionService,\r\n private confirmService: ConfirmationService,\r\n public messages: Messages\r\n ) {\r\n this.collectionName = messages.MesssgeNoCollection;\r\n this.activeTabIndex = 0;\r\n }\r\n\r\n ngOnInit() {\r\n this.collectionItemSubscription = this.collectionService.collectionListItemChanged$\r\n .subscribe(data => {\r\n this.collectionItem = data;\r\n if (data != null && data.name) {\r\n this.collectionName = data.name;\r\n }\r\n else {\r\n this.collectionName = this.messages.MesssgeNoCollection;\r\n }\r\n return data;\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.collectionItemSubscription.unsubscribe();\r\n }\r\n\r\n private close(): void {\r\n if (this.isModal) {\r\n this.routerHistory.navigateToPreviousUrl();\r\n }\r\n else {\r\n this.collectionService.setCurrentCollection(null);\r\n this.collectionService.refreshList();\r\n }\r\n }\r\n\r\n public isNullOrUndefined(value) {\r\n if (value == null) {\r\n return true;\r\n }\r\n\r\n if (value === null) {\r\n return true;\r\n }\r\n\r\n if (typeof value === 'undefined') {\r\n return true;\r\n }\r\n\r\n return false;\r\n}\r\n\r\n public onClose(): void {\r\n if (this.isNullOrUndefined(this.compProviders) ||\r\n !this.collectionService.isEditCollectionModified() ) {\r\n this.close();\r\n }\r\n else {\r\n this.confirmService.confirm({\r\n message: this.messages.MessageCollectionModified,\r\n accept: () => {\r\n if (this.compProviders != null) {\r\n let sub = this.compProviders.saveCollection(false).subscribe(result => {\r\n this.close();\r\n sub.unsubscribe();\r\n });\r\n }\r\n },\r\n reject: () => {\r\n this.close();\r\n },\r\n acceptLabel: this.messages.ButtonYes,\r\n rejectLabel: this.messages.ButtonNo\r\n })\r\n }\r\n }\r\n\r\n public renameCollection(): void {\r\n if(this.compProviders != null){\r\n let sub = this.compProviders.saveCollection(true).subscribe(result => {\r\n sub.unsubscribe();\r\n })\r\n }\r\n }\r\n\r\n public set modal(value: boolean) {\r\n this.isModal = value;\r\n }\r\n\r\n public get modal(): boolean {\r\n return this.isModal;\r\n }\r\n\r\n public set showUsers(value: boolean) {\r\n this.activeTabIndex = value ? 1 : 0;\r\n }\r\n}\r\n", "
\r\n
\r\n
\r\n

\r\n {{collectionItem.name}}\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {{messages.MesssgeNoCollection}}\r\n
\r\n
\r\n\r\n\r\n", "import { Component, OnInit, OnDestroy, ViewChild, HostListener } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Subscription } from 'rxjs';\r\nimport { PagerClasses } from '../../services/models/pager-classes';\r\nimport { CollectionListItem } from '../../services/models/collection-list-item';\r\nimport { CollectionService } from '../../services/collection.service';\r\nimport { UserAdminService } from '../../services/user-admin.service';\r\nimport { BusyService } from '../../services/busy.service';\r\nimport { SessionService } from '../../services/session.service';\r\nimport { Messages } from '../../app.messages';\r\nimport { Constants } from '../../app.constants';\r\nimport { ConfirmationService } from 'primeng/api';\r\n\r\n@Component({\r\n selector: 'collection-manager',\r\n templateUrl: './collection-list.component.html',\r\n styleUrls: ['./collection-list.component.scss']\r\n})\r\nexport class CollectionListComponent implements OnInit, OnDestroy {\r\n public cssClasses = PagerClasses.cssClasses;\r\n public gridMessages: {};\r\n public collectionSearchText: string;\r\n public totalCollections: number;\r\n public loading: boolean;\r\n public rowsPerPage: number;\r\n public pageNumber: number;\r\n public collections: CollectionListItem[];\r\n public showAddCollection: boolean;\r\n public showRenameCollection: boolean;\r\n public isModal: boolean;\r\n public selectedCollection: CollectionListItem;\r\n private sortAscending: boolean;\r\n private activeRow: CollectionListItem;\r\n private activeMenu: CollectionListItem;\r\n private newCollection: boolean;\r\n private updateCollections$: Subscription;\r\n private paramsviaState: any;\r\n @ViewChild('detail', {static: true}) collectionDetail: any;\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private collectionService: CollectionService,\r\n private adminService: UserAdminService,\r\n private confirmService: ConfirmationService,\r\n private busy: BusyService,\r\n public session: SessionService,\r\n private messages: Messages,\r\n private constants: Constants,\r\n private router: Router\r\n ) {\r\n this.gridMessages = {\r\n emptyMessage: 'No Collections Found',\r\n totalMessage: 'total'\r\n };\r\n this.collectionSearchText = null;\r\n this.pageNumber = 1;\r\n this.rowsPerPage = this.constants.DetailRowsPerPage;\r\n this.sortAscending = true;\r\n this.activeMenu = null;\r\n this.showAddCollection = false;\r\n this.showRenameCollection = false;\r\n this.isModal = false;\r\n this.newCollection = false;\r\n this.paramsviaState = null;\r\n\r\n if(this.router.getCurrentNavigation() && this.router.getCurrentNavigation().extras && this.router.getCurrentNavigation().extras.state)\r\n this.paramsviaState = this.router.getCurrentNavigation().extras.state;\r\n }\r\n\r\n public initializeCollections(params) {\r\n const id = params.id ? params.id : null;\r\n if (id != null ) {\r\n // Make the \"X\" close button on the detail navigate back to the user list\r\n this.isModal = true;\r\n this.collectionDetail.modal = true;\r\n if (id === 'new') {\r\n this.newCollection = true;\r\n this.collectionSearchText = this.collectionService.selectedCollectionItem.name;\r\n // The collection should already be the selectedCollectionItem because the Add Collection dialog put it there. However,\r\n // at this time, the collection does not yet exist on the server.\r\n this.showCollections(1, true, 1, [this.collectionService.selectedCollectionItem]);\r\n }\r\n else {\r\n\r\n this.collectionService.findCollections(null, false, 1, 1000).subscribe(results=>\r\n {\r\n let found:boolean = false;\r\n\r\n if(this.session.isEnterpriseAdmin){\r\n found = true; \r\n }\r\n else {\r\n results.items.forEach(x=>{\r\n if(x.id == id) { \r\n found = true;\r\n return;\r\n }\r\n });\r\n }\r\n\r\n if(found) {\r\n // This is a request for an existing collection. Make the Users tab selected.\r\n this.collectionDetail.showUsers = true;\r\n let collectionSub = this.collectionService.getCollectionDetail(+id).subscribe(collection => {\r\n this.showCollections(1, true, 1, [collection]);\r\n // This should trigger a change notification, and the detail will show the existing providers\r\n // and the user already associated with this collection. The user that theadmin clicked\r\n // on will appear in the list of users, because they are pending.\r\n this.collectionService.setCurrentCollection(collection);\r\n if (collectionSub != null) {\r\n collectionSub.unsubscribe();\r\n }\r\n }); \r\n }\r\n else {\r\n this.router.navigate(['']);\r\n }\r\n });\r\n }\r\n }\r\n else {\r\n // If coming into the collection service with no URL parameters, then make sure\r\n // the selected user is not falsely picked up in the users tab.\r\n this.adminService.selectedUser = null;\r\n this.findCollections(this.pageNumber, this.sortAscending);\r\n }\r\n }\r\n public initializeUserAndCollection(params) {\r\n if (params && params.id && params.uid) {\r\n const collectionId = +params.id;\r\n const suspenseId = +params.uid;\r\n // call service to get portal user\r\n this.collectionService.getCollectionRequestUser(collectionId, suspenseId)\r\n .subscribe(portalUser => {\r\n // assign portal user to admin service selected user in Admin Service\r\n this.adminService.selectedUser = portalUser;\r\n // process initialization\r\n this.initializeCollections(params);\r\n });\r\n }\r\n else {\r\n this.initializeCollections(params);\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n if(this.paramsviaState) {\r\n this.initializeUserAndCollection(this.paramsviaState);\r\n } \r\n else {\r\n this.route.params.subscribe(value => {\r\n // If suspenseID get user and assigne to selected user\r\n this.initializeUserAndCollection(value); \r\n }); \r\n }\r\n\r\n this.updateCollections$ = this.collectionService.updateCollections().subscribe(() => {\r\n // If we are building a collection from the user detail, view, we don't want to refresh\r\n // the list of collections, but continue to show the selected collection.\r\n if (!this.isModal) {\r\n if (this.collectionService.selectedCollectionItem == null) {\r\n this.collectionSearchText = null;\r\n this.newCollection = false;\r\n }\r\n this.findCollections(this.pageNumber, this.sortAscending);\r\n }\r\n else {\r\n this.isModal = false;\r\n this.collectionDetail.showUsers = true;\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.updateCollections$ != null) {\r\n this.updateCollections$.unsubscribe();\r\n }\r\n }\r\n\r\n private cancelBubble(e): void {\r\n if (e != null) {\r\n e.cancelBubble = true;\r\n e.preventDefault();\r\n }\r\n }\r\n\r\n private closeMenu(): void {\r\n this.activeMenu = null;\r\n\r\n }\r\n\r\n private showCollections(pageNumber: number, sortAscending: boolean, totalCount: number, collections: CollectionListItem[]) {\r\n this.collections = collections;\r\n this.pageNumber = pageNumber;\r\n this.sortAscending = sortAscending;\r\n this.totalCollections = totalCount;\r\n }\r\n\r\n public findCollections(pageNumber: number, sortAscending?: boolean) {\r\n if (sortAscending == null) {\r\n sortAscending = this.sortAscending;\r\n }\r\n this.busy.emit(true);\r\n this.checkEditModeCollection(null);\r\n const findCollections = this.collectionService.findCollections(this.collectionSearchText, sortAscending, pageNumber, this.rowsPerPage)\r\n .subscribe(items => {\r\n this.showCollections(pageNumber, sortAscending, items.totalItems, items.items);\r\n if (this.newCollection) {\r\n // Select the new item in the list, then set it as the current collection\r\n // so the users tab will show the new user.\r\n this.selectedCollection = items.items[0];\r\n this.collectionService.setCurrentCollection(items.items[0]);\r\n this.newCollection = false;\r\n }\r\n this.busy.emit(false);\r\n if (findCollections != null) {\r\n findCollections.unsubscribe();\r\n }\r\n });\r\n }\r\n\r\n public onSearchKeyPress(e) {\r\n if (e.keyCode === 13) {\r\n e.cancelBubble = true;\r\n e.preventDefault();\r\n e.stopImmediatePropagation();\r\n this.onSearch();\r\n }\r\n }\r\n\r\n public onSearch() {\r\n this.findCollections(1, this.sortAscending);\r\n }\r\n\r\n // Methods related to the collection menu\r\n public onCollectionRowEnter(row: CollectionListItem): void {\r\n this.activeRow = row;\r\n }\r\n\r\n public onCollectionRowExit(row: CollectionListItem): void {\r\n this.activeRow = null;\r\n }\r\n\r\n public canEnableMenu(row: CollectionListItem): boolean {\r\n return this.session.isEnterpriseAdmin &&\r\n ((this.activeRow != null && this.activeRow.id === row.id) ||\r\n (this.collectionService.selectedCollectionItem != null && this.collectionService.selectedCollectionItem.id === row.id));\r\n }\r\n\r\n public canShowMenu(row: CollectionListItem): boolean {\r\n return !this.isModal && this.activeMenu != null && this.activeMenu.id === row.id && !this.collectionService.isEditCollectionModified();\r\n }\r\n\r\n public onCollectionMenu(e, row: CollectionListItem) {\r\n this.activeMenu = row;\r\n this.cancelBubble(e);\r\n }\r\n\r\n // If the user clicks outside of the context menu for the collection, then close the context menu.\r\n @HostListener('document:click', ['$event'])\r\n public onDocumentClick(e): void {\r\n if (this.activeMenu != null) {\r\n const activeMenuEl = document.getElementsByClassName('context-menu');\r\n if (activeMenuEl.length > 0) {\r\n const x = activeMenuEl[0].getBoundingClientRect();\r\n if (e.clientX < x.left || e.clientX > x.right || e.clientY < x.top || e.clientY > x.bottom) {\r\n this.closeMenu();\r\n }\r\n }\r\n }\r\n }\r\n\r\n public onRenameCollection(e, row: CollectionListItem) {\r\n this.closeMenu();\r\n this.showRenameCollection = true;\r\n this.collectionService.setCurrentCollection(row);\r\n this.cancelBubble(e);\r\n }\r\n\r\n public onCollectionRenamed() {\r\n this.collectionDetail.renameCollection();\r\n this.onCancelRenameCollection();\r\n this.showRenameCollection = false;\r\n }\r\n\r\n public onCancelRenameCollection(): void {\r\n this.showRenameCollection = false;\r\n }\r\n\r\n public onAddCollection() {\r\n this.showAddCollection = !this.isModal;\r\n }\r\n\r\n public onCollectionAdded(): void {\r\n this.onCancelAddCollection();\r\n this.newCollection = true;\r\n this.selectedCollection = this.collectionService.selectedCollectionItem;\r\n this.showCollections(1, true, 1, [this.selectedCollection]);\r\n this.collectionSearchText = this.selectedCollection.name;\r\n }\r\n\r\n public onCancelAddCollection(): void {\r\n this.showAddCollection = false;\r\n }\r\n\r\n // Methods related to the collection grid\r\n public onLoad(e: any): void {\r\n if (!this.isModal) {\r\n this.findCollections(1, e.sortOrder == 1);\r\n }\r\n }\r\n\r\n public sortClass(): string {\r\n return this.sortAscending ? \"fa fa-chevron-up\" : \"fa fa-chevron-down\";\r\n }\r\n\r\n public onSelect(e) {\r\n if (!this.newCollection) {\r\n this.checkEditModeCollection(e.data);\r\n }\r\n }\r\n\r\n public checkEditModeCollection(collectionListItem: CollectionListItem): void {\r\n if (!this.collectionService.isEditCollectionModified()) {\r\n this.collectionService.setCurrentCollection(collectionListItem);\r\n this.selectedCollection = collectionListItem;\r\n }\r\n else if (collectionListItem != null) {\r\n this.showConfirmationDialog(collectionListItem);\r\n }\r\n }\r\n\r\n public showConfirmationDialog(collectionListItem: CollectionListItem): void {\r\n this.confirmService.confirm({\r\n message: this.messages.MessageCollectionModified,\r\n accept: () => {\r\n if (this.collectionDetail.compProviders != null) {\r\n const saveCollection = this.collectionDetail.compProviders.saveCollection(false).subscribe(collectionId => {\r\n if (collectionId !== 0) {\r\n this.collectionService.setCurrentCollection(collectionListItem);\r\n }\r\n else if (collectionListItem != null) {\r\n this.collectionService.setCurrentCollection(collectionListItem);\r\n }\r\n else {\r\n this.selectedCollection = null;\r\n }\r\n if (saveCollection != null) {\r\n saveCollection.unsubscribe();\r\n }\r\n });\r\n }\r\n },\r\n reject: () => {\r\n this.collectionService.setCurrentCollection(collectionListItem);\r\n },\r\n acceptLabel: this.messages.ButtonYes,\r\n rejectLabel: this.messages.ButtonNo\r\n });\r\n }\r\n\r\n public onPage(pageInfo) {\r\n this.findCollections(pageInfo.offset + 1, this.sortAscending);\r\n }\r\n\r\n public search() {\r\n this.onSearch();\r\n }\r\n\r\n public onMouseUp(event: any) {\r\n const searchBoxWidth = event.srcElement.clientWidth;\r\n const clickXOffset = event.offsetX;\r\n const isIEOrEdge = /msie\\s|trident\\/|edge\\//i.test(window.navigator.userAgent);\r\n if (isIEOrEdge && this.collectionSearchText && clickXOffset >= searchBoxWidth - 36) {\r\n // clear string for fist click on X instead of edit box\r\n this.collectionSearchText = '';\r\n // disregard clear functionality and clear and search.\r\n this.onSearch();\r\n }\r\n }\r\n}\r\n", "
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n Name
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{row.name}}\r\n
\r\n
\r\n
\r\n
\r\n
Rename
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\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, OnDestroy } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Subscription } from 'rxjs';\r\nimport { LazyLoadEvent } from 'primeng/api';\r\nimport { CollectionListItem } from '../../services/models/collection-list-item';\r\nimport { CollectionService } from '../../services/collection.service';\r\nimport { UiUtility } from '../../utils/ui-utility';\r\nimport moment from 'moment';\r\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\r\nimport { Constants } from '../../app.constants';\r\nimport { SessionService } from '../../services/session.service';\r\n\r\n@Component({\r\n selector: 'collection-verify.component',\r\n templateUrl: './collection-verify.component.html',\r\n styleUrls: ['./collection-verify.component.scss']\r\n})\r\nexport class CollectionVerifyComponent implements OnInit, OnDestroy {\r\n public collectionListSubscription$: Subscription;\r\n public collections: CollectionListItem[];\r\n public totalCollections: number;\r\n public columns: any[];\r\n public rowsPerPage: number;\r\n public pageNumber: number;\r\n public collectionSearchText: string = null;\r\n public showAddCollection: boolean;\r\npublic showAddCollectionButton = false;\r\n\r\n private sortColumn: string;\r\n private sortAscending: boolean;\r\n private resposiveSubcription$: Subscription;\r\n private userListVerificationDueDaysSetting:number;\r\n private userListVerificationWarningDaysSetting:number;\r\n private providerSettingsSubscription$: Subscription;\r\n\r\n private colletionListColumns: any = [\r\n { key: 'spacerStart', field: '', header: '', width: '20%', sort: false, classHeader: 'collection-row-header', classContent: 'collection-row-content'},\r\n { key: 'name', field: 'name', header: 'Collection name', width: '23%', sort: true, classHeader: 'collection-row-header collection-header-name', classContent: 'collection-row-content collection-name' },\r\n { key: 'lastVerified', field: '', header: 'Last verified on', width: '14%', sort: false, classHeader: 'collection-row-header', classContent: 'collection-row-content' },\r\n { key: 'lastVerifiedBy', field: '', header: 'Last verified by', width: '20%', sort: false, classHeader: 'collection-row-header', classContent: 'collection-row-content' },\r\n { key: 'daysLeftToVerify', field: '', header: 'Days left to verify', width: '21%', sort: false, classHeader: 'collection-row-header', classContent: 'collection-row-content' },\r\n { key: 'externalLink', field: '', header: '', width: '8%', sort: false, classHeader: 'collection-row-header', classContent: 'collection-row-content externalLink'},\r\n { key: 'spacerEnd', field: '', header: '', width: '20%', sort: false, classHeader: 'collection-row-header', classContent: 'collection-row-content'}\r\n ];\r\n\r\n constructor(\r\n private collectionService: CollectionService,\r\n private breakpointObserver: BreakpointObserver,\r\n private router: Router,\r\n private constants: Constants,\r\n private sessionService: SessionService ) {\r\n }\r\n\r\n ngOnInit() {\r\n this.rowsPerPage = 10;\r\n this.pageNumber = 1;\r\n this.sortColumn = 'name';\r\n this.sortAscending = true;\r\n this.columns = this.colletionListColumns;\r\n\r\n this.initCollectionListResultColumns();\r\n this.getProviderSettings();\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.collectionListSubscription$) {\r\n this.collectionListSubscription$.unsubscribe();\r\n }\r\n if (this.resposiveSubcription$) {\r\n this.resposiveSubcription$.unsubscribe();\r\n }\r\n if (this.providerSettingsSubscription$) {\r\n this.providerSettingsSubscription$.unsubscribe();\r\n }\r\n }\r\n\r\n public onSearchKeyPress(e) {\r\n if (e.keyCode === 13) {\r\n e.cancelBubble = true;\r\n e.preventDefault();\r\n e.stopImmediatePropagation();\r\n\r\n this.onSearchClick();\r\n }\r\n }\r\n\r\n public onSearchClick() {\r\n if (UiUtility.isNullUndefinedOrEmpty(this.collectionSearchText)) {\r\n this.collectionSearchText = null;\r\n }\r\n else {\r\n this.collectionSearchText = this.collectionSearchText.trim();\r\n }\r\n\r\n this.pageNumber = 1;\r\n this.loadData();\r\n }\r\n\r\n public sortClass(column: string): string {\r\n let cls: string;\r\n if (column === this.sortColumn) {\r\n cls = this.sortAscending ? 'fa fa-chevron-up' : 'fa fa-chevron-down';\r\n }\r\n else {\r\n cls = 'fa fa-chevron-up';\r\n }\r\n return cls;\r\n }\r\n\r\n public onPage(page: number) {\r\n this.pageNumber = page;\r\n this.loadData();\r\n }\r\n\r\n lazyLoadData(event: LazyLoadEvent) {\r\n if (event.sortField !== undefined) {\r\n this.sortAscending = event.sortOrder !== 1;\r\n this.loadData();\r\n }\r\n }\r\n\r\n private loadData() {\r\n this.collectionService.findCollections(this.collectionSearchText, this.sortAscending, this.pageNumber, this.rowsPerPage)\r\n .subscribe(result => {\r\n this.collections = result.items;\r\n this.totalCollections = result.totalItems;\r\n this.collections.forEach(c => {\r\n if (!c.lastVerified) {\r\n c.lastVerified = new Date();\r\n }\r\n const diff = moment().diff(moment(c.lastVerified, \"MM-DD-YYYY\"), 'days');\r\n c.daysLeftToVerify = this.userListVerificationDueDaysSetting - diff < 0\r\n ? 0\r\n : this.userListVerificationDueDaysSetting - diff;\r\n })\r\n },\r\n error => {\r\n });\r\n }\r\n\r\n public onSelectCollectionName(item: CollectionListItem) {\r\n this.router.navigate(['/user-admin/collections/'], {state: {id: item.id}});\r\n }\r\n\r\n public getVerifyButtonClass(item: CollectionListItem) {\r\n const alertCategory = this.collectionService.getCollectionVerificationAlertCategory(\r\n item,\r\n this.userListVerificationDueDaysSetting,\r\n this.userListVerificationWarningDaysSetting);\r\n return 'verify-' + alertCategory;\r\n }\r\n\r\n public onAddCollection() {\r\n this.showAddCollection = true;\r\n }\r\n\r\n public onCollectionAdded(): void {\r\n this.onCancelAddCollection();\r\n this.pageNumber = 1;\r\n this.loadData();\r\n }\r\n\r\n public onCancelAddCollection(): void {\r\n this.showAddCollection = false;\r\n }\r\n\r\n public onShowCollectionDetails(item: CollectionListItem) {\r\n this.router.navigate(['/user-admin/collections/'], {state: {id: item.id}});\r\n }\r\n\r\n public onVerifyUser(item: CollectionListItem) {\r\n this.collectionService.setCurrentCollection(item);\r\n this.router.navigate(['/user-admin/collections/verify/user']);\r\n }\r\n\r\n private initCollectionListResultColumns() {\r\n this.resposiveSubcription$= this.breakpointObserver\r\n .observe([\r\n '(max-width: 1350px)',\r\n ])\r\n .subscribe((state: BreakpointState) => {\r\n if (state.breakpoints['(max-width: 1350px)']) {\r\n this.columns = this.filterColumns(this.colletionListColumns, [ 'spacerStart', 'spacerEnd' ])\r\n }\r\n else {\r\n this.columns = this.filterColumns(this.colletionListColumns, [])\r\n }\r\n });\r\n }\r\n\r\n private filterColumns(columns: any[], removeColumns: any[]) {\r\n return columns.filter(item => {\r\n return removeColumns.indexOf(item.key) === -1;\r\n });\r\n }\r\n\r\n private getProviderSettings() {\r\n this.providerSettingsSubscription$ = this.sessionService.providerSettingsChanged$.subscribe(\r\n result => {\r\n const verificationDueDays = result ? result.find(p => p.settingName === this.constants.UserListVerificationDueDays) : null;\r\n const verificationWarningDays = result ? result.find(p => p.settingName === this.constants.UserListVerificationWarningDays) : null;\r\n this.userListVerificationDueDaysSetting = verificationDueDays && +verificationDueDays.settingValue > 0 ? +verificationDueDays.settingValue : this.constants.UserListVerificationDueDaysDefaultValue;\r\n this.userListVerificationWarningDaysSetting = verificationWarningDays && +verificationWarningDays.settingValue > 0 ? +verificationWarningDays.settingValue : this.constants.UserListVerificationWarningDaysDefaultValue;\r\n\r\n this.loadData();\r\n },\r\n error => {\r\n this.loadData();\r\n });\r\n }\r\n}\r\n", "\r\n
\r\n
\r\n \r\n Collection Manager\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{col.header}}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n {{ col.header }}\r\n\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n {{collection[col.key]}}\r\n
\r\n\r\n
\r\n {{collection[col.key] | date : 'MM/dd/yy'}}\r\n
\r\n\r\n
0\">\r\n {{collection[col.key]}}\r\n \r\n
\r\n
\r\n NA\r\n
\r\n\r\n
\r\n \r\n
\r\n \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, OnDestroy, ViewChild, Inject, ElementRef } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { PortalUser, UserStatus } from '../../../services/models/portal-user';\r\nimport { CollectionService } from '../../../services/collection.service';\r\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\r\nimport { Router } from '@angular/router';\r\nimport { CollectionListItem } from '../../../services/models/collection-list-item';\r\nimport { UserTypeMap } from '../../../services/models/user-type-map';\r\nimport { Constants } from '../../../app.constants';\r\nimport { ProviderSetting } from '../../../services/models/provider-setting';\r\nimport { OAuthService } from 'angular-oauth2-oidc';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { UiUtility } from '../../../utils/ui-utility';\r\nimport { SessionService } from '../../../services/session.service';\r\n\r\n@Component({\r\n selector: 'app-collection-verify-user',\r\n templateUrl: './collection-verify-user.component.html',\r\n styleUrls: ['./collection-verify-user.component.scss']\r\n})\r\nexport class CollectionVerifyUserComponent implements OnInit, OnDestroy {\r\n public userListSubscription$: Subscription;\r\n public collectionSubscription$: Subscription;\r\n public users: PortalUser[];\r\n public totalUsers: number;\r\n public columns: any[];\r\n public isBusy = false;\r\n public selectedCollection: CollectionListItem;\r\n public headerClass: string = '';\r\n public editUser: PortalUser;\r\n public removeUser: PortalUser;\r\n public showAccept: boolean = false;\r\n public verifiedByFullName: string;\r\n public displayConfirmButton: boolean = false;\r\n public displaySaveCloseButton: boolean = false;\r\n public displaySaveChangesAlert: boolean = false;\r\n\r\n private responsiveSubcription$: Subscription;\r\n private userListVerificationDueDaysSetting:number;\r\n private userListVerificationWarningDaysSetting:number;\r\n private providerSettingsSubscription$: Subscription;\r\n\r\n private userListColumns: any = [\r\n { key: 'spacerStart', sortField: '', header: '', width: '20%', sort: false, classHeader: 'user-row-header', classContent: 'user-row-content'},\r\n { key: 'roleIcon', sortField: '', header: '', width: '55px', sort: false, classHeader: 'user-row-header', classContent: 'user-row-content user-row-content-role-icon' },\r\n { key: 'name', sortField: '', header: 'Name', width: '24%', sort: false, classHeader: 'user-row-header', classContent: 'user-row-content' },\r\n { key: 'role', sortField: '', header: 'Role', width: '27%', sort: false, classHeader: 'user-row-header', classContent: 'user-row-content' },\r\n { key: 'verify', sortField: '', header: 'Verify', width: '33%', sort: false, classHeader: 'user-row-header', classContent: 'user-row-content' },\r\n { key: 'remove', sortField: '', header: 'Remove', width: '12%', sort: false, classHeader: 'user-row-header user-row-header-remove-icon', classContent: 'user-row-content user-row-content-remove-icon'},\r\n { key: 'spacerEnd', sortField: '', header: '', width: '20%', sort: false, classHeader: 'user-row-header', classContent: 'user-row-content'}\r\n ];\r\n\r\n @ViewChild('confirmBtn') confirmBtn: ElementRef;\r\n\r\n constructor(\r\n private authService: OAuthService,\r\n private collectionService: CollectionService,\r\n private breakpointObserver: BreakpointObserver,\r\n private router: Router,\r\n private constants: Constants,\r\n private sessionService: SessionService,\r\n @Inject(DOCUMENT) private document: Document)\r\n {\r\n this.editUser = null;\r\n this.removeUser = null;\r\n window.addEventListener('scroll', this.onScroll, true)\r\n }\r\n\r\n ngOnInit() {\r\n this.isBusy = true;\r\n this.collectionSubscription$ = this.collectionService.collectionListItemChanged$.subscribe(\r\n item => {\r\n if (!item) {\r\n // user cannot browse this page without collection\r\n this.router.navigate(['user-admin/collections/verify']);\r\n return;\r\n }\r\n\r\n this.selectedCollection = item;\r\n this.setHeaderClass();\r\n this.setVerifiedByLabel();\r\n this.initCollectionListResultColumns();\r\n this.isBusy = false;\r\n this.getProviderSettings();\r\n\r\n },\r\n error => {\r\n this.isBusy = false;\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.responsiveSubcription$) {\r\n this.responsiveSubcription$.unsubscribe();\r\n }\r\n if (this.userListSubscription$) {\r\n this.userListSubscription$.unsubscribe();\r\n }\r\n if (this.collectionSubscription$) {\r\n this.collectionSubscription$.unsubscribe();\r\n }\r\n if (this.providerSettingsSubscription$) {\r\n this.providerSettingsSubscription$.unsubscribe();\r\n }\r\n window.removeEventListener('scroll', this.onScroll, true)\r\n }\r\n\r\n public onVerify($event: any, user: PortalUser) {\r\n if ($event) {\r\n user.isVerified = true;\r\n user.userLastVerified = new Date();\r\n user.userLastVerifiedBy = this.verifiedByFullName;\r\n }\r\n else {\r\n user.isVerified = false;\r\n user.userLastVerified = null;\r\n user.userLastVerifiedBy = null;\r\n }\r\n user.hasVerificationChange = true;\r\n this.setVerifyTooltip();\r\n this.checkButtonsState();\r\n }\r\n\r\n public onSave() {\r\n const verifiedUsers = this.users.filter(u => {\r\n return u.hasVerificationChange;\r\n })\r\n\r\n const sub$ = this.collectionService.insertOrUpdateUserProviderCollection(verifiedUsers).subscribe(\r\n result => {\r\n if (result && result.length > 0) {\r\n // we do have inserts then update existing records userProviderCollectionXrefID\r\n result.forEach(a => {\r\n const user = this.users.find(u => {\r\n return (\r\n u.userID.toString() === a.userID.toString() &&\r\n u.providerCollectionID === a.providerCollectionID &&\r\n u.userProviderCollectionXrefID === a.userProviderCollectionXrefID\r\n )\r\n });\r\n if (user) {\r\n user.userProviderCollectionXrefID = a.userProviderCollectionXrefID;\r\n }\r\n });\r\n }\r\n\r\n this.router.navigate(['user-admin/collections/verify']);\r\n sub$.unsubscribe();\r\n },\r\n error => {\r\n // log error\r\n }\r\n );\r\n }\r\n\r\n public onConfirm() {\r\n // save all\r\n const sub$ = this.collectionService.insertOrUpdateUserProviderCollection(this.users, true).subscribe(\r\n result => {\r\n // all records successfully updated then update prov collection record\r\n this.selectedCollection.lastVerified = new Date();\r\n const subUpdateProviderCollection$ = this.collectionService.updateProviderCollection(this.selectedCollection).subscribe(\r\n result=> {\r\n this.router.navigate(['user-admin/collections/verify']).then(() => {\r\n window.location.reload();\r\n });\r\n subUpdateProviderCollection$.unsubscribe();\r\n },\r\n err => {\r\n // log error\r\n }\r\n )\r\n sub$.unsubscribe();\r\n },\r\n error => {\r\n // log error\r\n }\r\n );\r\n }\r\n\r\n public onRemove(user: PortalUser) {\r\n this.removeUser = user;\r\n this.checkButtonsState();\r\n }\r\n\r\n public onEdit(user: PortalUser) {\r\n this.editUser = user;\r\n }\r\n\r\n public onBackToCollections() {\r\n if (this.users.find(u => u.hasVerificationChange)) {\r\n this.displaySaveChangesAlert = true;\r\n return;\r\n }\r\n this.router.navigate(['/user-admin/collections/verify'])\r\n }\r\n\r\n public mapRoleToIcon(user: PortalUser): string {\r\n if (user.status !== UserStatus.Active && user.status !== UserStatus.Approved) {\r\n return null;\r\n }\r\n return UserTypeMap.mapUserRoleTypeToIcon(user.roleID);\r\n }\r\n\r\n public mapRoleToLabel(user: PortalUser): string {\r\n if (user.status !== UserStatus.Active && user.status !== UserStatus.Approved) {\r\n return null;\r\n }\r\n\r\n const roleType = UserTypeMap.mapUserRoleTypeToSelectItem(user.roleID);\r\n return roleType ? roleType.label : '';\r\n }\r\n\r\n public onUsersUpdated(event): void {\r\n // handle edit and remove event\r\n if (event.action === 'Update') {\r\n const index = this.users.indexOf(this.editUser);\r\n this.editUser.roleID = event.userRole;\r\n this.editUser.providerPositionID = event.providerPositionId && this.editUser.providerPositionID !== event.providerPositionId ? event.providerPositionId : this.editUser.providerPositionID;\r\n this.editUser.providerPositionOther = event.providerPositionOther && this.editUser.providerPositionOther !== event.providerPositionOther ? event.providerPositionOther : this.editUser.providerPositionOther;\r\n this.users[index] = this.editUser;\r\n }\r\n else if (event.action === 'Remove') {\r\n const index = this.users.indexOf(this.removeUser);\r\n if (index > -1) {\r\n this.users.splice(index, 1);\r\n }\r\n }\r\n\r\n this.editUser = null;\r\n this.removeUser = null;\r\n }\r\n\r\n public onGoBackUpdated(event) {\r\n if (event === 'save') {\r\n // leave the page and save\r\n if (this.displayConfirmButton) {\r\n this.onConfirm();\r\n }\r\n else {\r\n this.onSave();\r\n }\r\n }\r\n else if (event === 'leave') {\r\n this.router.navigate(['user-admin/collections/verify']);\r\n }\r\n else {\r\n this.displaySaveChangesAlert = false;\r\n }\r\n }\r\n\r\n public setVerifyToolTipDisabled(user: PortalUser) {\r\n return user.isVerified;\r\n }\r\n\r\n public getUserLastVerifiedBy(user) {\r\n return user.isVerified ? 'Verified by ' + user.userLastVerifiedBy : '';\r\n }\r\n\r\n private onScroll(event) {\r\n const tooltipEl = this.document.querySelector('body div.blue-theme.verify-tooltip');\r\n if (tooltipEl) {\r\n tooltipEl.style.display = 'none';\r\n }\r\n }\r\n\r\n private loadData() {\r\n if (!this.selectedCollection) {\r\n return;\r\n }\r\n\r\n this.isBusy = true;\r\n\r\n this.collectionService.getCollectionDetail(this.selectedCollection.id).subscribe(result=> {\r\n\r\n this.selectedCollection = result;\r\n\r\n this.userListSubscription$ = this.collectionService.getCollectionUsers(this.selectedCollection, 1, 99999).subscribe(\r\n response => {\r\n // display only approved/active\r\n this.users = response.items.filter(u => {\r\n return u.status === UserStatus.Approved || u.status === UserStatus.Active;\r\n });\r\n\r\n this.users.forEach(u => {\r\n // reset these fields when refresh\r\n u.isVerified = u.userLastVerified ? true : false\r\n u.hasVerificationChange = false;\r\n })\r\n\r\n this.users.sort(function(a,b){\r\n return (a.name.toLowerCase() < b.name.toLowerCase()) ? -1 : 1;\r\n });\r\n\r\n this.totalUsers = this.users.length;\r\n this.isBusy = false;\r\n this.checkButtonsState();\r\n this.setVerifyTooltip();\r\n },\r\n error => {\r\n this.isBusy = false;\r\n }\r\n );\r\n });\r\n\r\n }\r\n\r\n private initCollectionListResultColumns() {\r\n this.responsiveSubcription$= this.breakpointObserver\r\n .observe([\r\n '(max-width: 1350px)',\r\n ])\r\n .subscribe((state: BreakpointState) => {\r\n if (state.breakpoints['(max-width: 1350px)']) {\r\n this.columns = this.filterColumns(this.userListColumns, [ 'spacerStart', 'spacerEnd' ])\r\n }\r\n else {\r\n this.columns = this.filterColumns(this.userListColumns, [])\r\n }\r\n });\r\n }\r\n\r\n private filterColumns(columns: any[], removeColumns: any[]) {\r\n return columns.filter(item => {\r\n return removeColumns.indexOf(item.key) === -1;\r\n });\r\n }\r\n\r\n private setProviderSettingsForPage(settings: ProviderSetting[]) {\r\n const valueUserListVerificationDueDays = settings.find(s => s.settingName === this.constants.UserListVerificationDueDays);\r\n if (valueUserListVerificationDueDays) {\r\n this.userListVerificationDueDaysSetting = +valueUserListVerificationDueDays.settingValue;\r\n }\r\n const userListVerificationWarningDays = settings.find(s => s.settingName === this.constants.UserListVerificationWarningDays);\r\n if (userListVerificationWarningDays) {\r\n this.userListVerificationWarningDaysSetting = +userListVerificationWarningDays.settingValue;\r\n }\r\n }\r\n\r\n private setHeaderClass() {\r\n const alertCategory = this.collectionService.getCollectionVerificationAlertCategory(\r\n this.selectedCollection,\r\n this.userListVerificationDueDaysSetting,\r\n this.userListVerificationWarningDaysSetting);\r\n this.headerClass = 'verify-' + alertCategory;\r\n }\r\n\r\n private setVerifiedByLabel() {\r\n const claims = this.authService.getIdentityClaims();\r\n if (!claims) {\r\n return null;\r\n }\r\n\r\n this.verifiedByFullName = claims['given_name'] + this.constants.SpaceString + claims['family_name'];\r\n }\r\n\r\n private checkButtonsState() {\r\n if (this.users.find(u => u.hasVerificationChange)) {\r\n this.displaySaveCloseButton = true;\r\n }\r\n else {\r\n this.displaySaveCloseButton = false;\r\n }\r\n\r\n if (this.users.find(u => u.userLastVerified === null)) {\r\n this.displayConfirmButton = false;\r\n setTimeout(() => {\r\n this.confirmBtn.nativeElement.blur();\r\n }, 200);\r\n }\r\n else {\r\n this.displayConfirmButton = true;\r\n this.displaySaveCloseButton = false;\r\n setTimeout(() => {\r\n this.confirmBtn.nativeElement.focus();\r\n }, 200);\r\n }\r\n }\r\n\r\n private setVerifyTooltip() {\r\n const nextUserToVerify = this.findNextUserToVerify();\r\n if (nextUserToVerify) {\r\n setTimeout(() => {\r\n const verifyUserEl = this.document.getElementsByName(\"verify-\" + nextUserToVerify.userID);\r\n if (verifyUserEl && verifyUserEl[0]) {\r\n const rootVerifyEl = verifyUserEl[0].parentElement.parentElement.parentElement;\r\n const event = UiUtility.SendBrowserAgnosticEvent(rootVerifyEl, 'mouseenter');\r\n rootVerifyEl.dispatchEvent(event);\r\n }\r\n }, 50);\r\n }\r\n }\r\n\r\n private findNextUserToVerify() {\r\n let user: PortalUser;\r\n for(const u of this.users) {\r\n if (!u.isVerified) {\r\n user = u;\r\n break;\r\n }\r\n }\r\n return user;\r\n }\r\n\r\n private getProviderSettings() {\r\n this.providerSettingsSubscription$ = this.sessionService.providerSettingsChanged$.subscribe(\r\n result => {\r\n const verificationDueDays = result ? result.find(p => p.settingName === this.constants.UserListVerificationDueDays) : null;\r\n const verificationWarningDays = result ? result.find(p => p.settingName === this.constants.UserListVerificationWarningDays) : null;\r\n this.userListVerificationDueDaysSetting = verificationDueDays && +verificationDueDays.settingValue > 0 ? verificationDueDays.settingValue : this.constants.UserListVerificationDueDaysDefaultValue;\r\n this.userListVerificationWarningDaysSetting = verificationWarningDays && +verificationWarningDays.settingValue > 0 ? verificationWarningDays.settingValue : this.constants.UserListVerificationWarningDaysDefaultValue;\r\n\r\n this.loadData();\r\n },\r\n error => {\r\n this.loadData();\r\n });\r\n }\r\n}\r\n", "\r\n
\r\n
\r\n
\r\n \r\n Back\r\n {{selectedCollection.name}}\r\n Last verified on {{selectedCollection.lastVerified | date: 'MM/dd/yy'}}\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{col.header}}\r\n \r\n \r\n \r\n \r\n \r\n {{ col.header }}\r\n
\r\n  \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n
{{user[col.key]}}
\r\n
{{user.email}}
\r\n
\r\n\r\n
\r\n \r\n {{mapRoleToLabel(user)}}\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {{getUserLastVerifiedBy(user)}}\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n {{totalUsers}} results\r\n \r\n
\r\n \r\n \r\n Confirm\r\n \r\n
\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 { NgModule } from '@angular/core';\r\nimport { RouterModule, provideRoutes, Routes } from '@angular/router';\r\nimport { CollectionDetailComponent } from './collection-detail/collection-detail.component';\r\nimport { CollectionListComponent } from './collection-list/collection-list.component';\r\nimport { AuthGuard } from '@caloptima/authentication';\r\nimport { UrlGuard } from '../layout/navigation/url-guard/url.guard';\r\nimport { CollectionVerifyComponent } from './collection-verify/collection-verify.component';\r\nimport { CollectionVerifyUserComponent } from './collection-verify/collection-verify-user/collection-verify-user.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'verify',\r\n component: CollectionVerifyComponent,\r\n canActivate: [AuthGuard],\r\n data: { label: 'Collection Manager', permissionCodes: ['PRVADM', 'ENTADM'] }\r\n },\r\n {\r\n path: 'verify/user',\r\n component: CollectionVerifyUserComponent,\r\n canActivate: [AuthGuard],\r\n data: { label: 'Collection Manager', permissionCodes: ['PRVADM', 'ENTADM'] }\r\n },\r\n {\r\n path: '',\r\n component: CollectionListComponent,\r\n canActivate: [AuthGuard],\r\n data: {label: 'Collection Manager', permissionCodes: ['PRVADM', 'ENTADM'] }\r\n },\r\n {\r\n path: ':id',\r\n component: CollectionListComponent,\r\n canActivate: [AuthGuard],\r\n data: {label: 'Collection Manager', permissionCodes: ['PRVADM', 'ENTADM'] }\r\n },\r\n {\r\n path: ':id/:uid',\r\n component: CollectionListComponent,\r\n canActivate: [AuthGuard],\r\n data: {label: 'Collection Manager', permissionCodes: ['PRVADM', 'ENTADM'] }\r\n }\r\n];\r\n\r\n@NgModule({\r\n declarations: [],\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\n\r\nexport class CollectionManagerRoutingModule { }\r\n", "import { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PortalUIComponentsModule } from '@caloptima/portal-ui-components';\r\nimport { AngularSplitModule } from 'angular-split';\r\nimport { MessagesModule } from 'primeng/messages';\r\nimport { MessageModule } from 'primeng/message';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { ConfirmDialogModule } from 'primeng/confirmdialog';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { TableModule } from 'primeng/table';\r\nimport { RadioButtonModule } from 'primeng/radiobutton';\r\n\r\nimport { AppComponentsModule } from '../app-components/app-components.module';\r\nimport { CollectionManagerRoutingModule } from './collection-manager-routing.module';\r\nimport { CollectionDetailComponent } from './collection-detail/collection-detail.component';\r\nimport { TabViewModule } from 'primeng/tabview';\r\nimport { CollectionListComponent } from './collection-list/collection-list.component';\r\nimport { ProvidersComponent } from './collection-detail/providers/providers.component';\r\nimport { UsersComponent } from './collection-detail/users/users.component';\r\nimport { CollectionVerifyComponent } from './collection-verify/collection-verify.component';\r\nimport { CollectionVerifyUserComponent } from './collection-verify/collection-verify-user/collection-verify-user.component';\r\nimport { CheckboxModule } from 'primeng/checkbox';\r\nimport { TooltipModule } from 'primeng/tooltip';\r\nimport { CollectionDetailProvidersSearchComponent } from './collection-detail/providers/collection-detail-providers-search/collection-detail-providers-search.component';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\n\r\n@NgModule({\r\n declarations: [\r\n CollectionDetailComponent,\r\n CollectionListComponent,\r\n ProvidersComponent,\r\n UsersComponent,\r\n CollectionVerifyComponent,\r\n CollectionVerifyUserComponent,\r\n CollectionDetailProvidersSearchComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n PortalUIComponentsModule,\r\n CollectionManagerRoutingModule,\r\n AppComponentsModule,\r\n TabViewModule,\r\n ToastModule,\r\n ConfirmDialogModule,\r\n DialogModule,\r\n TableModule,\r\n CheckboxModule,\r\n RadioButtonModule,\r\n AngularSplitModule,\r\n MessagesModule,\r\n MessageModule,\r\n TooltipModule,\r\n DropdownModule\r\n ],\r\n providers: [\r\n // { provide: CollectionService, useClass: MockCollectionService }\r\n ]\r\n})\r\nexport class CollectionManagerModule { }\r\n"], "mappings": "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", "names": ["CollectionDetail", "CollectionListItem", "CollectionDetailProvidersSearchComponent", "constructor", "providerName", "providerId", "providerTin", "onCollectionProviderSearch", "EventEmitter", "searchProviders", "emit", "resetProviderSearch", "selectors", "outputs", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275elementStart", "\u0275\u0275twoWayListener", "$event", "i0", "\u0275\u0275twoWayBindingSet", "\u0275\u0275elementEnd", "\u0275\u0275listener", "\u0275\u0275text", "\u0275\u0275advance", "\u0275\u0275twoWayProperty", "\u0275\u0275property", "trim", "length", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r11", "ctx_r10", "\u0275\u0275nextContext", "\u0275\u0275resetView", "onFindManual", "\u0275\u0275element", "\u0275\u0275text", "\u0275\u0275elementEnd", "_r13", "ctx_r12", "onSaveCollection", "\u0275\u0275advance", "\u0275\u0275property", "ctx_r9", "collectionModified", "collectionValid", "\u0275\u0275twoWayListener", "$event", "_r15", "ctx_r14", "i0", "\u0275\u0275twoWayBindingSet", "collectionType", "ctx_r16", "onCollectionTypeChanged", "\u0275\u0275template", "ProvidersComponent_div_0_button_8_Template", "ProvidersComponent_div_0_div_9_Template", "\u0275\u0275twoWayProperty", "ctx_r0", "_r19", "ctx_r18", "onCollectionProviderSearch", "_r21", "ctx_r20", "tinView", "ctx_r22", "ProvidersComponent_div_2_app_collection_detail_providers_search_5_Template", "ctx_r1", "DisplaySearchProviderView", "\u0275\u0275classMap", "ctx_r24", "sortClassTin", "_r31", "row_r27", "$implicit", "ctx_r29", "onRemoveTin", "ProvidersComponent_div_3_ng_template_5_div_8_Template", "\u0275\u0275textInterpolate1", "providerTaxName", "providerTaxId", "ctx_r25", "canRemoveTinGroup", "addEnabled", "_r33", "ctx_r32", "onTinPage", "ctx_r26", "totalTins", "tinPageNumber", "rowsPerPage", "_r35", "ctx_r34", "selectedTin", "ctx_r36", "onSortTin", "ProvidersComponent_div_3_ng_template_4_Template", "ProvidersComponent_div_3_ng_template_5_Template", "ProvidersComponent_div_3_ng_template_6_Template", "ctx_r2", "displaytins", "_r39", "ctx_r38", "_r41", "ctx_r40", "groupView", "ctx_r42", "ProvidersComponent_div_5_app_collection_detail_providers_search_5_Template", "ctx_r3", "ctx_r44", "sortClassGroup", "_r51", "row_r47", "ctx_r49", "onRemoveGroup", "ProvidersComponent_div_6_ng_template_5_div_8_Template", "providerGroupName", "providerGroupId", "ctx_r45", "_r53", "ctx_r52", "onGroupPage", "ctx_r46", "totalGroups", "groupPageNumber", "_r55", "ctx_r54", "selectedGroup", "ctx_r56", "onSortGroup", "ProvidersComponent_div_6_ng_template_4_Template", "ProvidersComponent_div_6_ng_template_5_Template", "ProvidersComponent_div_6_ng_template_6_Template", "ctx_r4", "displaygroups", "ctx_r58", "sortClassProvider", "_r65", "row_r61", "ctx_r63", "onRemoveProvider", "_r67", "ctx_r66", "showProviderInfoHandler", "ProvidersComponent_div_7_ng_template_5_div_15_Template", "\u0275\u0275propertyInterpolate1", "ctx_r59", "rowIndex", "name", "taxId", "groupId", "calProviderID", "isLastProvider", "_r69", "ctx_r68", "onPage", "ctx_r60", "totalProviders", "providerPageNumber", "_r71", "ctx_r70", "selectedProvider", "ctx_r72", "onSort", "ProvidersComponent_div_7_ng_template_4_Template", "ProvidersComponent_div_7_ng_template_5_Template", "ProvidersComponent_div_7_ng_template_6_Template", "ctx_r5", "displayproviders", "ProvidersComponent", "CollectionType", "MultipleTIN", "toString", "MultipleGroupId", "constructor", "route", "collectionService", "messageService", "busy", "confirm", "session", "messages", "providerClientSearch", "cssClasses", "PagerClasses", "showProviderInfo", "collectionId", "sortColumnProvider", "sortColumnTin", "sortColumnGroup", "sortAscendingProvider", "sortAscendingTin", "sortAscendingGroup", "allProviders", "filteredproviders", "allTins", "allGroups", "ngOnInit", "isNewBuildCollection", "snapshot", "params", "collectionItemSubscription", "collectionListItemChanged$", "subscribe", "data", "collectionItem", "id", "tin", "emit", "getProvidersTinsGroups", "tins", "length", "getProvidersTinsGroupsForNew", "ngOnDestroy", "unsubscribe", "setCurrentCollection", "isBusy", "updateProviders", "providers", "updateTins", "updateGroups", "groups", "showProviders", "showTins", "showGroups", "sub", "getCollectionDetail", "detail", "sort", "a", "b", "localeCompare", "keys", "type", "forEach", "x", "push", "TIN", "Group", "findMultipleCollectionProviders", "result", "sortProviders", "sortColumn", "sortAscending", "data1", "data2", "sortProviderLogic", "sortTins", "value1", "value2", "sortGroups", "isEditCollectionModified", "renameCollection", "selectedCollectionItem", "saveCollection", "canDisplayProvider", "isEnterpriseAdmin", "rename", "subject", "BehaviorSubject", "add", "severity", "SeverityError", "MessageNoCollectionProviders", "life", "ToasterLife", "CollectionDetail", "Manual", "createOrUpdateCollection", "console", "log", "next", "error", "asObservable", "column", "cls", "e", "sortField", "sortOrder", "addProviders", "show", "ret", "changeCollectionType", "alert", "refreshList", "row", "message", "accept", "removeProvider", "acceptLabel", "ButtonRemove", "rejectLabel", "ButtonNo", "findCollectionProviders", "results", "removeTin", "removeGroup", "onAddTins", "addTins", "onAddGroups", "addGroups", "onAddProviders", "page", "start", "end", "slice", "event", "GetProvider", "providerID", "showDialog", "err", "search", "providerName", "providerId", "providerTin", "UiUtility", "isNullUndefinedOrEmpty", "filter", "p", "toLowerCase", "indexOf", "trim", "onDialogClose", "\u0275\u0275directiveInject", "ActivatedRoute", "CollectionService", "MessageService", "BusyService", "ConfirmationService", "SessionService", "Messages", "selectors", "viewQuery", "rf", "ctx", "ProvidersComponent_div_0_Template", "ProvidersComponent_div_2_Template", "ProvidersComponent_div_3_Template", "ProvidersComponent_div_5_Template", "ProvidersComponent_div_6_Template", "ProvidersComponent_div_7_Template", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r7", "ctx_r6", "\u0275\u0275nextContext", "\u0275\u0275resetView", "onAddUser", "\u0275\u0275element", "\u0275\u0275advance", "\u0275\u0275classMap", "ctx_r3", "sortClass", "row_r8", "_r11", "$implicit", "ctx_r10", "onEditUser", "ctx_r12", "onRemoveUser", "\u0275\u0275property", "\u0275\u0275propertyInterpolate1", "rowIndex_r9", "ctx_r4", "mapStatusToIcon", "mapStatusToTooltip", "mapRoleToIcon", "mapRoleToTooltip", "\u0275\u0275textInterpolate1", "name", "email", "$event", "_r14", "ctx_r13", "onPage", "ctx_r5", "totalUsers", "pageNumber", "rowsPerPage", "UsersComponent", "constructor", "adminService", "collectionService", "confirm", "messageService", "session", "constants", "messages", "cssClasses", "PagerClasses", "showAddUser", "showAccept", "showApproveDeclineScreen", "showUserPermission", "showUserDeclineScreen", "userName", "userStatuses", "userRoles", "clientUserSearch", "DetailRowsPerPage", "users", "editUser", "sortColumn", "sortAscending", "ngOnInit", "collectionServiceSubscription", "collectionListItemChanged$", "subscribe", "collection", "findUsers", "collectionItem", "user", "selectedUser", "id", "providerCollectionID", "showUsers", "ngOnDestroy", "unsubscribe", "allUsers", "UserStatusMap", "mapStatustoIcon", "status", "UserStatus", "Active", "Approved", "UserTypeMap", "mapUserRoleTypeToIcon", "roleID", "mapStatusToSelectItem", "label", "roleType", "mapUserRoleTypeToSelectItem", "initialLoad", "selectedCollectionItem", "sub", "getCollectionUsers", "response", "totalItems", "items", "selected", "selectedItem", "find", "x", "mappedUser", "u", "suspenseId", "userID", "setUserSelections", "column", "cls", "onSort", "e", "filteredUsers", "sort", "data1", "data2", "sortLogic", "order", "field", "page", "start", "end", "length", "slice", "onUserUpdated", "event", "action", "Pending", "add", "severity", "SeveritySuccess", "detail", "MessageUserApproved", "life", "ToasterLife", "removalUser", "onUserPermissionUpdated", "onUserDeclineUpdated", "onShowAddStatus", "onAddUserToCollection", "addUser", "searchUsers", "trim", "selectedStatus", "value", "selectedRole", "filter", "p", "toLowerCase", "indexOf", "code", "roleCode", "param", "resetUserSearch", "setDefaultSearchOption", "value1", "value2", "result", "localeCompare", "statusesArray", "rolesArray", "push", "forEach", "UiUtility", "isNullUndefinedOrEmpty", "statusDesc", "s", "roleDisplayName", "r", "\u0275\u0275directiveInject", "UserAdminService", "CollectionService", "ConfirmationService", "MessageService", "SessionService", "Constants", "Messages", "selectors", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275template", "UsersComponent_div_0_Template", "\u0275\u0275twoWayListener", "i0", "\u0275\u0275twoWayBindingSet", "UsersComponent_div_14_Template", "UsersComponent_ng_template_18_Template", "UsersComponent_ng_template_19_Template", "UsersComponent_ng_template_20_Template", "\u0275\u0275twoWayProperty", "isEnterpriseAdmin", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r6", "ctx_r5", "\u0275\u0275nextContext", "\u0275\u0275resetView", "onClose", "\u0275\u0275element", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "ctx_r0", "collectionItem", "name", "\u0275\u0275property", "activeTabIndex", "_r3", "collectionValid", "id", "ctx_r1", "messages", "MesssgeNoCollection", "CollectionDetailComponent", "constructor", "routerHistory", "collectionService", "confirmService", "collectionName", "ngOnInit", "collectionItemSubscription", "collectionListItemChanged$", "subscribe", "data", "ngOnDestroy", "unsubscribe", "close", "isModal", "navigateToPreviousUrl", "setCurrentCollection", "refreshList", "isNullOrUndefined", "value", "compProviders", "isEditCollectionModified", "confirm", "message", "MessageCollectionModified", "accept", "sub", "saveCollection", "result", "reject", "acceptLabel", "ButtonYes", "rejectLabel", "ButtonNo", "renameCollection", "modal", "showUsers", "\u0275\u0275directiveInject", "RouterHistoryService", "CollectionService", "ConfirmationService", "Messages", "selectors", "viewQuery", "rf", "ctx", "\u0275\u0275template", "CollectionDetailComponent_div_1_Template", "CollectionDetailComponent_div_2_Template", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r10", "ctx_r9", "\u0275\u0275nextContext", "\u0275\u0275resetView", "onAddCollection", "\u0275\u0275elementEnd", "\u0275\u0275text", "\u0275\u0275element", "\u0275\u0275advance", "\u0275\u0275classMap", "ctx_r3", "sortClass", "$event", "_r18", "row_r11", "$implicit", "ctx_r16", "onRenameCollection", "_r21", "ctx_r19", "onCollectionMenu", "\u0275\u0275template", "CollectionListComponent_ng_template_13_div_8_div_2_Template", "\u0275\u0275property", "ctx_r14", "canShowMenu", "_r24", "ctx_r23", "onCollectionRowEnter", "ctx_r25", "onCollectionRowExit", "CollectionListComponent_ng_template_13_i_4_Template", "CollectionListComponent_ng_template_13_i_5_Template", "CollectionListComponent_ng_template_13_div_8_Template", "collectionType", "\u0275\u0275textInterpolate1", "name", "ctx_r4", "canEnableMenu", "_r27", "ctx_r26", "findCollections", "ctx_r5", "totalCollections", "_r30", "ctx_r29", "onCollectionAdded", "ctx_r31", "onCancelAddCollection", "_r34", "ctx_r33", "onCollectionRenamed", "ctx_r35", "onCancelRenameCollection", "CollectionListComponent", "constructor", "route", "collectionService", "adminService", "confirmService", "busy", "session", "messages", "constants", "router", "cssClasses", "PagerClasses", "gridMessages", "emptyMessage", "totalMessage", "collectionSearchText", "pageNumber", "rowsPerPage", "DetailRowsPerPage", "sortAscending", "activeMenu", "showAddCollection", "showRenameCollection", "isModal", "newCollection", "paramsviaState", "getCurrentNavigation", "extras", "state", "initializeCollections", "params", "id", "collectionDetail", "modal", "selectedCollectionItem", "showCollections", "subscribe", "results", "found", "isEnterpriseAdmin", "items", "forEach", "x", "showUsers", "collectionSub", "getCollectionDetail", "collection", "setCurrentCollection", "unsubscribe", "navigate", "selectedUser", "initializeUserAndCollection", "uid", "collectionId", "suspenseId", "getCollectionRequestUser", "portalUser", "ngOnInit", "value", "updateCollections$", "updateCollections", "ngOnDestroy", "cancelBubble", "e", "preventDefault", "closeMenu", "totalCount", "collections", "emit", "checkEditModeCollection", "totalItems", "selectedCollection", "onSearchKeyPress", "keyCode", "stopImmediatePropagation", "onSearch", "row", "activeRow", "isEditCollectionModified", "onDocumentClick", "activeMenuEl", "document", "getElementsByClassName", "length", "getBoundingClientRect", "clientX", "left", "right", "clientY", "top", "bottom", "renameCollection", "onLoad", "sortOrder", "onSelect", "data", "collectionListItem", "showConfirmationDialog", "confirm", "message", "MessageCollectionModified", "accept", "compProviders", "saveCollection", "reject", "acceptLabel", "ButtonYes", "rejectLabel", "ButtonNo", "onPage", "pageInfo", "offset", "search", "onMouseUp", "event", "searchBoxWidth", "srcElement", "clientWidth", "clickXOffset", "offsetX", "test", "window", "navigator", "userAgent", "\u0275\u0275directiveInject", "ActivatedRoute", "CollectionService", "UserAdminService", "ConfirmationService", "BusyService", "SessionService", "Messages", "Constants", "Router", "selectors", "viewQuery", "rf", "ctx", "\u0275\u0275resolveDocument", "\u0275\u0275twoWayListener", "i0", "\u0275\u0275twoWayBindingSet", "CollectionListComponent_div_8_Template", "CollectionListComponent_ng_template_12_Template", "CollectionListComponent_ng_template_13_Template", "CollectionListComponent_ng_template_14_Template", "CollectionListComponent_add_collection_dialog_19_Template", "CollectionListComponent_rename_collection_dialog_20_Template", "\u0275\u0275twoWayProperty", "import_moment", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r6", "ctx_r5", "\u0275\u0275nextContext", "\u0275\u0275resetView", "onAddCollection", "\u0275\u0275element", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275classMap", "ctx_r9", "sortClass", "col_r8", "field", "\u0275\u0275template", "CollectionVerifyComponent_ng_template_16_th_0_div_3_Template", "classHeader", "\u0275\u0275propertyInterpolate", "width", "\u0275\u0275advance", "\u0275\u0275textInterpolate", "header", "\u0275\u0275property", "sort", "CollectionVerifyComponent_ng_template_16_th_0_Template", "ctx_r1", "columns", "_r24", "collection_r11", "$implicit", "ctx_r22", "onSelectCollectionName", "col_r14", "key", "\u0275\u0275textInterpolate1", "\u0275\u0275pipeBind2", "_r33", "ctx_r31", "onVerifyUser", "ctx_r19", "getVerifyButtonClass", "_r38", "ctx_r36", "onShowCollectionDetails", "CollectionVerifyComponent_ng_template_17_td_1_div_3_Template", "CollectionVerifyComponent_ng_template_17_td_1_div_4_Template", "CollectionVerifyComponent_ng_template_17_td_1_div_5_Template", "CollectionVerifyComponent_ng_template_17_td_1_div_6_Template", "CollectionVerifyComponent_ng_template_17_td_1_div_7_Template", "CollectionVerifyComponent_ng_template_17_td_1_div_8_Template", "CollectionVerifyComponent_ng_template_17_td_1_div_9_Template", "classContent", "forVerifyCount", "CollectionVerifyComponent_ng_template_17_td_1_Template", "ctx_r2", "$event", "_r42", "ctx_r41", "onPage", "ctx_r3", "totalCollections", "rowsPerPage", "pageNumber", "_r45", "ctx_r44", "onCollectionAdded", "ctx_r46", "onCancelAddCollection", "CollectionVerifyComponent", "constructor", "collectionService", "breakpointObserver", "router", "constants", "sessionService", "collectionSearchText", "showAddCollectionButton", "colletionListColumns", "ngOnInit", "sortColumn", "sortAscending", "initCollectionListResultColumns", "getProviderSettings", "ngOnDestroy", "collectionListSubscription$", "unsubscribe", "resposiveSubcription$", "providerSettingsSubscription$", "onSearchKeyPress", "e", "keyCode", "cancelBubble", "preventDefault", "stopImmediatePropagation", "onSearchClick", "UiUtility", "isNullUndefinedOrEmpty", "trim", "loadData", "column", "cls", "page", "lazyLoadData", "event", "sortField", "undefined", "sortOrder", "findCollections", "subscribe", "result", "collections", "items", "totalItems", "forEach", "c", "lastVerified", "Date", "diff", "moment", "daysLeftToVerify", "userListVerificationDueDaysSetting", "error", "item", "navigate", "state", "id", "getCollectionVerificationAlertCategory", "userListVerificationWarningDaysSetting", "showAddCollection", "setCurrentCollection", "observe", "breakpoints", "filterColumns", "removeColumns", "filter", "indexOf", "providerSettingsChanged$", "verificationDueDays", "find", "p", "settingName", "UserListVerificationDueDays", "verificationWarningDays", "UserListVerificationWarningDays", "settingValue", "UserListVerificationDueDaysDefaultValue", "UserListVerificationWarningDaysDefaultValue", "\u0275\u0275directiveInject", "CollectionService", "BreakpointObserver", "Router", "Constants", "SessionService", "selectors", "attrs", "_c0", "decls", "vars", "consts", "template", "rf", "ctx", "CollectionVerifyComponent_button_8_Template", "\u0275\u0275twoWayListener", "i0", "\u0275\u0275twoWayBindingSet", "CollectionVerifyComponent_ng_template_16_Template", "CollectionVerifyComponent_ng_template_17_Template", "CollectionVerifyComponent_ng_template_18_Template", "CollectionVerifyComponent_add_collection_dialog_19_Template", "\u0275\u0275twoWayProperty", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r7", "ctx_r6", "\u0275\u0275nextContext", "\u0275\u0275resetView", "onBackToCollections", "\u0275\u0275elementEnd", "ctx_r8", "\u0275\u0275text", "\u0275\u0275advance", "\u0275\u0275property", "ctx_r0", "headerClass", "\u0275\u0275textInterpolate", "selectedCollection", "name", "\u0275\u0275textInterpolate1", "\u0275\u0275pipeBind2", "lastVerified", "\u0275\u0275classMap", "col_r10", "classHeader", "\u0275\u0275propertyInterpolate", "sortField", "width", "header", "\u0275\u0275template", "CollectionVerifyUserComponent_ng_template_4_th_0_Template", "ctx_r1", "columns", "\u0275\u0275element", "\u0275\u0275propertyInterpolate1", "col_r14", "id", "ctx_r16", "mapRoleToIcon", "user_r11", "mapRoleToLabel", "key", "email", "_r27", "$implicit", "ctx_r25", "onEdit", "ctx_r18", "\u0275\u0275twoWayListener", "$event", "_r31", "i0", "\u0275\u0275twoWayBindingSet", "isVerified", "ctx_r32", "onVerify", "userID", "\u0275\u0275twoWayProperty", "ctx_r19", "setVerifyToolTipDisabled", "getUserLastVerifiedBy", "_r37", "ctx_r35", "onRemove", "CollectionVerifyUserComponent_ng_template_5_td_1_div_3_Template", "CollectionVerifyUserComponent_ng_template_5_td_1_div_4_Template", "CollectionVerifyUserComponent_ng_template_5_td_1_div_5_Template", "CollectionVerifyUserComponent_ng_template_5_td_1_div_6_Template", "CollectionVerifyUserComponent_ng_template_5_td_1_div_7_Template", "CollectionVerifyUserComponent_ng_template_5_td_1_div_8_Template", "classContent", "CollectionVerifyUserComponent_ng_template_5_td_1_Template", "ctx_r2", "_r42", "ctx_r41", "onSave", "ctx_r43", "onConfirm", "ctx_r3", "totalUsers", "displaySaveCloseButton", "displayConfirmButton", "_r38", "_r45", "ctx_r44", "onUsersUpdated", "ctx_r4", "removeUser", "_r47", "ctx_r46", "onGoBackUpdated", "ctx_r5", "displaySaveChangesAlert", "CollectionVerifyUserComponent", "constructor", "authService", "collectionService", "breakpointObserver", "router", "constants", "sessionService", "document", "isBusy", "showAccept", "userListColumns", "sort", "editUser", "window", "addEventListener", "onScroll", "ngOnInit", "collectionSubscription$", "collectionListItemChanged$", "subscribe", "item", "navigate", "setHeaderClass", "setVerifiedByLabel", "initCollectionListResultColumns", "getProviderSettings", "error", "ngOnDestroy", "responsiveSubcription$", "unsubscribe", "userListSubscription$", "providerSettingsSubscription$", "removeEventListener", "user", "userLastVerified", "Date", "userLastVerifiedBy", "verifiedByFullName", "hasVerificationChange", "setVerifyTooltip", "checkButtonsState", "verifiedUsers", "users", "filter", "u", "sub$", "insertOrUpdateUserProviderCollection", "result", "length", "forEach", "a", "find", "toString", "providerCollectionID", "userProviderCollectionXrefID", "subUpdateProviderCollection$", "updateProviderCollection", "then", "location", "reload", "err", "status", "UserStatus", "Active", "Approved", "UserTypeMap", "mapUserRoleTypeToIcon", "roleID", "roleType", "mapUserRoleTypeToSelectItem", "label", "event", "action", "index", "indexOf", "userRole", "providerPositionID", "providerPositionId", "providerPositionOther", "splice", "tooltipEl", "querySelector", "style", "display", "loadData", "getCollectionDetail", "getCollectionUsers", "response", "items", "b", "toLowerCase", "observe", "state", "breakpoints", "filterColumns", "removeColumns", "setProviderSettingsForPage", "settings", "valueUserListVerificationDueDays", "s", "settingName", "UserListVerificationDueDays", "userListVerificationDueDaysSetting", "settingValue", "userListVerificationWarningDays", "UserListVerificationWarningDays", "userListVerificationWarningDaysSetting", "alertCategory", "getCollectionVerificationAlertCategory", "claims", "getIdentityClaims", "SpaceString", "setTimeout", "confirmBtn", "nativeElement", "blur", "focus", "nextUserToVerify", "findNextUserToVerify", "verifyUserEl", "getElementsByName", "rootVerifyEl", "parentElement", "UiUtility", "SendBrowserAgnosticEvent", "dispatchEvent", "providerSettingsChanged$", "verificationDueDays", "p", "verificationWarningDays", "UserListVerificationDueDaysDefaultValue", "UserListVerificationWarningDaysDefaultValue", "\u0275\u0275directiveInject", "OAuthService", "CollectionService", "BreakpointObserver", "Router", "Constants", "SessionService", "DOCUMENT", "selectors", "viewQuery", "rf", "ctx", "CollectionVerifyUserComponent_div_1_Template", "CollectionVerifyUserComponent_ng_template_4_Template", "CollectionVerifyUserComponent_ng_template_5_Template", "CollectionVerifyUserComponent_ng_template_6_Template", "CollectionVerifyUserComponent_remove_user_dialog_8_Template", "CollectionVerifyUserComponent_app_save_changes_alert_dialog_9_Template", "routes", "path", "component", "CollectionVerifyComponent", "canActivate", "AuthGuard", "data", "label", "permissionCodes", "CollectionVerifyUserComponent", "CollectionListComponent", "CollectionManagerRoutingModule", "RouterModule", "forChild", "CollectionManagerModule", "CommonModule", "FormsModule", "PortalUIComponentsModule", "CollectionManagerRoutingModule", "AppComponentsModule", "TabViewModule", "ToastModule", "ConfirmDialogModule", "DialogModule", "TableModule", "CheckboxModule", "RadioButtonModule", "AngularSplitModule", "MessagesModule", "MessageModule", "TooltipModule", "DropdownModule"] }