{"version":3,"sources":["webpack:///$_lazy_route_resource lazy namespace object","webpack:///src/app/app-routing.module.ts","webpack:///src/app/app.component.ts","webpack:///src/app/app.component.html","webpack:///src/app/app.module.ts","webpack:///src/app/authentication/anonymous.guard.ts","webpack:///src/app/authentication/profile.guard.ts","webpack:///src/app/authentication/tokeninterceptor.ts","webpack:///src/app/common/ag-grid-currencyFormatter.ts","webpack:///src/app/common/ag-grid-resize.directive.ts","webpack:///src/app/common/helpers.ts","webpack:///src/app/common/phone.pipe.ts","webpack:///src/app/common/replace.ts","webpack:///src/app/common/yes-no.pipe.ts","webpack:///src/app/core/rollbar.ts","webpack:///src/app/presentation/components/agent-hierarchy/agent-hierarchy.component.ts","webpack:///src/app/presentation/components/agent-hierarchy/agent-hierarchy.component.html","webpack:///src/app/presentation/components/agentdetail/agentdetail.component.ts","webpack:///src/app/presentation/components/agentdetail/agentdetail.component.html","webpack:///src/app/presentation/components/agentgrid/agentgrid.component.ts","webpack:///src/app/presentation/components/agentgrid/agentgrid.component.html","webpack:///src/app/presentation/components/agentinfomessage/agentinfomessage.component.ts","webpack:///src/app/presentation/components/agentinfomessage/agentinfomessage.component.html","webpack:///src/app/presentation/components/agentpicker/agentpicker.component.ts","webpack:///src/app/presentation/components/agentpicker/agentpicker.component.html","webpack:///src/app/presentation/components/annuitybankrates/annuitybankrates.component.ts","webpack:///src/app/presentation/components/annuitybankrates/annuitybankrates.component.html","webpack:///src/app/presentation/components/annuityrates/annuityrates.component.ts","webpack:///src/app/presentation/components/annuityrates/annuityrates.component.html","webpack:///src/app/presentation/components/associations/associations.component.ts","webpack:///src/app/presentation/components/associations/associations.component.html","webpack:///src/app/presentation/components/batchhistory/batchhistory.component.ts","webpack:///src/app/presentation/components/batchhistory/batchhistory.component.html","webpack:///src/app/presentation/components/channelnews/channelnews.component.ts","webpack:///src/app/presentation/components/channelnews/channelnews.component.html","webpack:///src/app/presentation/components/commissions/commissions.component.ts","webpack:///src/app/presentation/components/commissions/commissions.component.html","webpack:///src/app/presentation/components/componentloading/componentloading.component.ts","webpack:///src/app/presentation/components/componentloading/componentloading.component.html","webpack:///src/app/presentation/components/fileupload/fileupload.component.ts","webpack:///src/app/presentation/components/fileupload/fileupload.component.html","webpack:///src/app/presentation/components/grid-tooltip/grid-tooltip.component.ts","webpack:///src/app/presentation/components/grid-tooltip/grid-tooltip.component.html","webpack:///src/app/presentation/components/hero/hero.component.ts","webpack:///src/app/presentation/components/hero/hero.component.html","webpack:///src/app/presentation/components/kpis/kpis.component.ts","webpack:///src/app/presentation/components/kpis/kpis.component.html","webpack:///src/app/presentation/components/link-code/link-code.component.ts","webpack:///src/app/presentation/components/link-code/link-code.component.html","webpack:///src/app/presentation/components/loading/loading.component.ts","webpack:///src/app/presentation/components/loading/loading.component.html","webpack:///src/app/presentation/components/pendingcollections/pendingcollections.component.ts","webpack:///src/app/presentation/components/pendingcollections/pendingcollections.component.html","webpack:///src/app/presentation/components/policyinfo/policyinfo.component.ts","webpack:///src/app/presentation/components/policyinfo/policyinfo.component.html","webpack:///src/app/presentation/components/quicklinks/quicklinks.component.ts","webpack:///src/app/presentation/components/quicklinks/quicklinks.component.html","webpack:///src/app/presentation/components/reports/reports.component.ts","webpack:///src/app/presentation/components/reports/reports.component.html","webpack:///src/app/presentation/components/routelist/routelist.component.ts","webpack:///src/app/presentation/components/routelist/routelist.component.html","webpack:///src/app/presentation/components/statement-search/statement-search.component.ts","webpack:///src/app/presentation/components/statement-search/statement-search.component.html","webpack:///src/app/presentation/pages/admin/admin.component.ts","webpack:///src/app/presentation/pages/admin/admin.component.html","webpack:///src/app/presentation/pages/annuitybankreplogin/annuitybankreplogin.component.ts","webpack:///src/app/presentation/pages/annuitybankreplogin/annuitybankreplogin.component.html","webpack:///src/app/presentation/pages/annuitylogin/annuitylogin.component.ts","webpack:///src/app/presentation/pages/annuitylogin/annuitylogin.component.html","webpack:///src/app/presentation/pages/briefcase/briefcase.component.ts","webpack:///src/app/presentation/pages/briefcase/briefcase.component.html","webpack:///src/app/presentation/pages/collections/collections.component.ts","webpack:///src/app/presentation/pages/collections/collections.component.html","webpack:///src/app/presentation/pages/completeprofile/completeprofile.component.ts","webpack:///src/app/presentation/pages/completeprofile/completeprofile.component.html","webpack:///src/app/presentation/pages/contact/contact.component.ts","webpack:///src/app/presentation/pages/contact/contact.component.html","webpack:///src/app/presentation/pages/documents/documents.component.ts","webpack:///src/app/presentation/pages/documents/documents.component.html","webpack:///src/app/presentation/pages/eapp/eapp.component.ts","webpack:///src/app/presentation/pages/eapp/eapp.component.html","webpack:///src/app/presentation/pages/eappredirect/eappredirect.component.ts","webpack:///src/app/presentation/pages/eappredirect/eappredirect.component.html","webpack:///src/app/presentation/pages/forms/forms.component.ts","webpack:///src/app/presentation/pages/forms/forms.component.html","webpack:///src/app/presentation/pages/home/home.component.ts","webpack:///src/app/presentation/pages/home/home.component.html","webpack:///src/app/presentation/pages/login/login.component.ts","webpack:///src/app/presentation/pages/login/login.component.html","webpack:///src/app/presentation/pages/products/products.component.ts","webpack:///src/app/presentation/pages/products/products.component.html","webpack:///src/app/presentation/pages/profile/profile.component.ts","webpack:///src/app/presentation/pages/profile/profile.component.html","webpack:///src/app/presentation/pages/rates/rates.component.ts","webpack:///src/app/presentation/pages/rates/rates.component.html","webpack:///src/app/presentation/pages/redirecting/redirecting.component.ts","webpack:///src/app/presentation/pages/redirecting/redirecting.component.html","webpack:///src/app/presentation/pages/terms/terms.component.ts","webpack:///src/app/presentation/pages/terms/terms.component.html","webpack:///src/app/presentation/pages/training/training.component.ts","webpack:///src/app/presentation/pages/training/training.component.html","webpack:///src/app/presentation/pages/userlist/userslist.component.ts","webpack:///src/app/presentation/pages/userlist/userslist.component.html","webpack:///src/app/presentation/shared/nav-bar/nav-bar.component.ts","webpack:///src/app/presentation/shared/nav-bar/nav-bar.component.html","webpack:///src/app/services/cloud-storage.ts","webpack:///src/app/services/fileupload.service.ts","webpack:///src/app/services/onprem-storage.ts","webpack:///src/app/services/siteparameter.service.ts","webpack:///src/assets/css/routelist.css","webpack:///src/environments/environment.ts","webpack:///src/main.ts"],"names":["webpackEmptyAsyncContext","req","Promise","resolve","then","e","Error","code","keys","module","exports","id","routes","path","component","pathMatch","canActivate","AppRoutingModule","forRoot","imports","AppComponent","auth","setLicenseKey","selector","templateUrl","AppModule","provide","useClass","multi","useFactory","withComponents","httpInterceptor","allowedList","dev","serverUrl","declarations","providers","bootstrap","schemas","AnonymousGuard","router","next","state","isAuthenticated$","subscribe","hasToken","navigate","providedIn","ProfileGuard","siteParameterService","endpoint","profileLoadComplete","loadProfile","TokenInterceptor","injector","request","anonymousAllowedList","split","some","item","url","includes","handle","getAccessTokenSilently","pipe","token","tokenReq","clone","headers","set","error","errorMessage","ErrorEvent","currencyFormatter","params","currencyValue","isNaN","value","formatNumber","number","toLocaleString","style","currency","AgGridResizeDirective","gridApi","setTimeout","sizeColumnsToFit","api","onResize","onGridReady","ReturnDateRangeFromType","rangeType","startDate","endDate","getFirstDayofMonth","Date","firstDay","lastDay","getFirstDayofQuarter","getFirstDayofWeek","getFirstDayofYear","getPreviousMonth","getPreviousQuarter","getPreviousWeek","getPreviousYear","d","day","getDay","diff","getDate","firstday","setDate","lastday","getFullYear","getMonth","monthDate","month","quarter","Math","floor","year","yearDate","DateComparator","date1","date2","date1Number","monthToComparableNumber","date2Number","date","undefined","length","yearNumber","Number","parseInt","substring","dayNumber","monthNumber","PhonePipe","returnValue","slice","name","ReplacePipe","strToReplace","replacementStr","replace","RegExp","YesNoPipe","rollbarConfig","accessToken","captureUncaught","captureUnhandledRejections","RollbarService","RollbarErrorHandler","rollbar","err","rollbarFactory","AgentHierarchyComponent","onPremService","siteParmService","selectedAgentID","showSpinner","showDownlineGrid","downlineAgents","filteredDownline","downlineAgentsByStatus","hierarchy","savedFilter","columnDefs","field","filter","filterParams","suppressAndOrCondition","cellStyle","columnDefs1","headerName","valueGetter","idAndNameGetter","minWidth","defaultColDef","flex","autoGroupColumnDef","cellRendererParams","suppressCount","groupDefaultExpanded","getDataPath","data","orgHierarchy","agentUpdate","getAgentUpdate","message","getdownlineList","gridColumnApi","columnApi","gridApi1","gridColumnApi1","profile","getStaticProfile","selectedAgentNumber","getAgentDownlineList","downline","agent","managerID","findManager","reverse","push","agentID","agentName","JSON","parse","stringify","event","sendAgentDetailUpdate","model","getFilterModel","status","setRowData","type","f","toUpperCase","indexOf","startsWith","findFilteredManager","setFilterModel","s","obj","find","i","document","getElementById","setQuickFilter","fileName","sheetName","exportDataAsExcel","$event","clickedElement","target","srcElement","nodeName","classList","contains","isCertainButtonAlreadyActive","parentElement","querySelector","remove","className","selectedStatus","unsubscribe","onSearchChanged","exportToExcel","onStatusClick","styleUrls","color","buttonColorToColorCode","node","toLowerCase","fontColor","AgentDetailComponent","agentDetail","agentDetailUpdate","getAgentDetailUpdate","getAgentDetail","apiResponse","AgentGridComponent","cloudStorageService","width","checkboxSelection","cellRenderer","selected","setSelected","hide","defaultColumnDef","sortable","resizable","sendDefaultAgentUpdate","agentId","sendDefaultChannelUpdate","channelName","linkedAgents$","getLinkedAgents","auth0Id","onRowSelected","AgentInfoMessageComponent","showHeaderText","headerText","channelUpdate","getChannelUpdate","getMessage","selectedBusinessChannel","channelPreferenceValue","getChannel","channel","agentInfoMessage","styles","AgentPickerComponent","selectedAgentId","subscriptionName","agents","x","sendAgentUpdate","defaultAgentNumber","selectedAgent","selectedChannel","setProfile","AnnuityBankRatesComponent","currentDate","channelId","screenWidthForLargeDevice","screenWidthForSmallDevice","newBusinessDeferredRatesRowData","newBusinessImmediateRatesRowData","newBusinessFixedIndexRatesRowData","renewalDeferredRatesRowData","renewalImmediateRatesRowData","noRowsTemplate","domLayout","suppressMenu","suppressMovable","maxWidth","colSpan","getGridNoResults","getChannelProductLinks","innerWidth","window","getListColumnDefs","getRateLists","$","addClass","rateType","getAnnuityDeferredRates","rates","getAnnuityImmediateRates","getAnnuityFixedIndexRates","ratesDeferredNBRatesColumnDefs","rowGroup","headerClass","cellClass","rateCLICGetter","autoHeight","tooltipValueGetter","getRateTooltip","rateStartDateCLICO","ratesImmediateNBRatesColumnDefs","ratesDeferredRenewalRatesColumnDefs","ratesImmediateRenewalRatesColumnDefs","fixedIndexRatesColumnDefs","periodAndRateCLICGetter","getAnonymousProductsByChannel","productList","channelProduct","rateStartDate","link","removeClass","gridApi3","gridApi4","gridApi2","gridColumnApi2","gridColumnApi3","gridColumnApi4","onClickTabSelect","seriesAndProductGetter","product","series","rateLBLGetter","rateValue","rateLBL","rateFirstYearLBL","rateCLICO","rateFirstYearCLICO","periodAndRateLBLGetter","guaranteePeriod","AnnuityRatesComponent","newBusinessCADeferredRatesRowData","newBusinessCAImmediateRatesRowData","newBusinessCAFixedIndexRatesRowData","rateStartDateLBL","gridApi5","gridApi6","gridApi7","gridColumnApi5","gridColumnApi6","gridColumnApi7","AssociationsComponent","datePipe","showList","showDetail","showAddButton","showUpdateForm","showAddForm","disableUpdate","disableAdd","showLinkedAgentIDFound","showLinkedAgentIDNotFound","showAssociationAgentIDFound","showAssociationAgentIDNotFound","agentLinkAssociationID","linkedAgentName","associatedAgentID","associatedAgentName","channelID","regionID","associatedRegionID","children","listAssociations","getUnassociatedLinkedAgentList","associations$","getAssociations","response","unassociatedLinkedAgents$","apiReponse","selectedAssociation$","getAssociation","formData","addAssociation","agentLinkID","yesterdayDateString","transform","updateDateModified","closeDetail","updateAssociation","confirm","deleteAssociation","formAgentIdCtrl","formAgentNameCtrl","getLinkedAgentDetail","setAddButton","setValue","BatchHistoryComponent","batchHistoryRowData","selectedAgentName","getbatchHistory","getAgentList","getBatchHistory","policyInfo","agent1","agent2","agent3","agent4","arr","options","selectedIndex","text","trim","changeAgentId","ChannelNewsComponent","alertItems","accordionExanded","getAlertsByChannel","alerts","index","CommissionsComponent","showSearch","policyType","timeFrame","timeFrameEnable","includedAgents","start","end","statements$","searchStatements","statement","downloadStatement","statementID","binaryData","downloadedFile","Blob","a","createElement","setAttribute","body","appendChild","download","href","URL","createObjectURL","click","removeChild","changeTimeFrame","ComponentLoadingComponent","loadingImg","FileUploadComponent","fileUploadService","fileTargetId","fileExtensionsAllowed","policyNumber","clientName","disableUpload","hideUploadButtons","currentFileName","progress","showUploadComplete","rowData","uploadRowCount","comparator","getFileTargetListAndMessage","getFileUploadList","hideUploadFunctions","fileTargets$","getFileTargetList","documentUploadPageMessage","resp","disableFileUpload","currentFile","files","validateFields","invalidChars","ext","substr","lastIndexOf","size","maxFileSize","upload","emailAddress","UploadProgress","round","loaded","total","uploadFile","onFileTargetChange","onClientNameChange","onPolicyNumberChange","GridTooltipComponent","getDisplayedRowAtIndex","rowIndex","HeroComponent","heroLogo","getCarouselImages","carouselImages","KpisComponent","images","bgColors","agentUpdateSubscription","getKpis","response$","kpis$","kpi","kpis","kpimessage$","kpimessage","executeSearch","sendkpiSearchUpdate","LinkCodeComponent","showRefreshButton","showAgentIDFound","showAgentIDNotFound","selectedCode","agentLinkCodeID","listLinkCodes","linkCodes$","getAgentLinkCodeRecords","selectedLinkCode$","getAgentLinkCodeRecord","updateAgentLinkCodeRecord","codeStatusColor","LoadingComponent","PendingCollectionsComponent","pendingCollectionsRowData","getPendingCollections","PolicyInfoComponent","showSpinner2","searchType","showReset","showExport","detailTitleName","searchRowData","coverageRowData","paymentRowData","withdrawalRowData","statusHistoryRowData","underwritingStatusRowData","allocationRowData","hierarchyRowData","beneficiaryInfoRowData","beneficiaryRowData","documentsRowData","searchRowCount","policyStatus","timeFrameStart","timeFrameEnd","insuredName","phone","addressCity","downlineAgent","policy","selectedPolicy","gridName","asOfDateMessage","limitMessage","disableTimeFrame","disableAdvancedDates","clientInfoAccordionExpanded","rmaAccordionExpanded","allocationAccordionExpanded","coverageColumnDefs","paymentColumnDefs","withdrawalColumnDefs","statusHistoryColumnDefs","underwritingStatusColumnDefs","hierarchyColumnDefs","beneficiaryColumnDefs","allocationColumnDefs","documentsColumnDefs","textAlign","onCellClicked","downloadDocument","channelSubscription","getKPIList","getDownlineAgentList","impersonationSubscription","getImpersonationUpdate","kpiSearchSubscription","getkpiSearchUpdate","k","description","kpiid","element","searchPolicies","setDetailType","getGridColumnList","map","column","valueFormatter","match","list","searchColumnDefs","changeTimeFrameDates","valueAsDate","getColumnDefs","startDateString","endDateString","channelPreference","policies","scrollIntoView","parsedStartDate","parsedEndDate","startSearchDate","getUTCFullYear","getUTCMonth","getUTCDate","endSearchDate","searchAdvancedPolicies","searchKpiPolicies","getKpiList","getAgentHierarchyList","isAnnuityPolicy","getPolicyDetail","policyCoverages","policyPayments","policyWithdrawals","policyStatusHistory","policyUnderwritingStatus","policyHierarchy","policyBeneficiaryInfo","policyBeneficiary","policyAllocation","policyDocuments","annuitantName","detailPageName","show","gridApi8","gridColumnApi8","gridApi9","gridColumnApi9","scrollTo","print","days","result","documentDate","fileDate","replaceAll","policyDocumentID","clearSearch","checkDates","checkAdvancedDates","onStartDateSelect","onEndDateSelect","QuickLinksInfoComponent","accordionColumn","accordionCollapsed","getDocuments","groups","forEach","g","documents","externalLink","Object","entries","key","replaceToken","linkUrl","groupsLeft","l","direction","groupsRight","getExternalLink","redirect","side","ReportsComponent","warning","info","agentToken","downlineAgentId","getReports","downlineAgents$","reports$","report","getAgentToken","t","reportURL","open","RouteListComponent","showCollectionParameters","showCollectionList","showCollectionForm","showGroupCollectionForm","showSequenceNumberForm","showSequenceContactForm","showLapseAlert","showNoPremiumCollected","showNoGroupPremiumCollected","sequenceNo","routeSequenceId","modalPremium","premiumDue","monthsPaid","minimumMonths","groupModalPremium","groupPremiumDue","premiumGroupCollected","monthsGroupPaid","currentGroupCommRate","estimatedGroupCommission","regionId","collectionAgentId","cashAmount","suspenseAmount","payorName","premiumCollected","currentCommRate","estimatedCommission","contactName","contactAddressLine1","contactAddressLine2","contactCity","contactState","contactZip","contactEmailAddress","contactPhone","contactNotes","gridOptions","context","getRouteList","getTotalCollectedAmount","routeList$","testText$","reduce","b","collectionAmt","collectionId","isSelected","getCollection","openCollectionForm","clearForm","collectionID","policyNum","routeSequenceID","monthsDue","cashAmt","suspenseAmt","collectionAgentID","closeCollectionForm","deleteCollection","listCollection","premiumSum","premiumDueSum","disable","collectedSum","monthsDueArray","every","saveGroupCollection","closeGroupCollectionForm","deleteGroupCollection","refreshGrid","saveSequence","closeSequenceNumberForm","getSequenceContact","addressLine1","addressLine2","city","zip","notes","saveSequenceContact","closeSequenceContactForm","action","disabled","openSequenceNumberForm","getSequenceNumberInfo","setGroupCollectionValues","parent","allLeafChildren","openGroupCollectionForm","checkToDisableAddGroupCollection","checkToDeleteGroupCollection","openSequenceContactForm","getSequenceContactInfo","onMonthsPaidChanged","minValue","onMonthsGroupPaidChanged","wait","ms","getTime","StatementSearchComponent","agentNumber","resetSearch","AdminPageComponent","showAssociation","showLinkCode","showStatementSearch","AnnuityBankRepLoginPageComponent","isLoggedIn","loginRedirect","loginWithRedirect","appState","registration_code","screen_hint","AnnuityLoginPageComponent","BriefcaseComponent","CollectionsPageComponent","activeTab","searchTerm","routeListRowHeight","enableRouteListSearch","showSubmitBatchButton","showRouteList","showPendingCollectionsList","showCollectingManagerList","showLapsedCollectionForm","enablePolicyNumberSearch","showPolicyFound","showPolicyNotFound","showLapseCollectionInfo","lapseAlertMessage","showSuspenseAlert","showLoanBalanceAlert","disableSaveCollectionButton","disableSaveLapsedCollectionButton","disableSaveGroupCollectionButton","disableSubmitBatchButton","screenWidthForDesktops","pendingCollectionsListHeaderHeight","selectedTab","topRowID","showBillFormListCheckboxes","agentCollectCount","autoPremiumLoanCount","bankDraftCount","creditCardCount","directBillCount","groupListBillCount","agentCollectCheckValue","autoPremiumLoanCheckValue","bankDraftCheckValue","creditCardCheckValue","directBillCheckValue","groupListBillCheckValue","policyAgentID","amountCollected","monthlyPremiumPaid","collectionTypeId","paidToDate","isUseSuspenseChecked","isMakeLoanPaymentChecked","isMakeOverPaymentChecked","availableSuspenseAmount","overpaymentAmount","currentLoanBalance","loanPaymentAmount","collectingAgents","selectedCollectingAgentId","showPolicyDetail","defaultRoutleListColumnDef","tooltipShowDelay","gridOptions2","gridOptions3","getRoutleListColumnDefs","getPendingCollectionsColumnDefs","getBatchHistoryColumnDefs","refreshRouteList","refreshPendingCollectionsList","columnRoutleListDefs","getRoutleListGridIcons","getRoutleListGridTooltip","columnPendingCollectionsDefs","getPendingCollectionsListGridIcons","getPendingCollectionsListGridTooltip","columnBatchHistoryDefs","billFormCodeListValues","concat","billFormCountAgentCollect","billFormCountAutoPremLoan","billFormCountBankDraft","billFormCountCreditCard","billFormCountDirectBill","billFormCountGroupListBill","shift","getAgentWithDownineList","getAgentActiveHierarchyListWithSelf","checked","lockPayment","showLockAlert","getReport","collectionBatchID","disabledTabs","enableTabs","collectionTypeID","requireFullPayment","availableSuspense","overpaymentAmt","originalCashAmount","loanPaymentAmt","loanBalanceAmt","EPSILON","netCashAmount","saveCollection","responseCode","showCollectionErrorAlert","closeLapsedCollectionForm","isLapsed","monthsLapsed","collectionError","locked","formPolicyNumberCtrl","getLapsedPolicy","insertCollectionBatch","rowModel","rowsToDisplay","ensureIndexVisible","topIndex","top","rows","rowTop","topIndexValue","columnModel","premiumColumn","getColumn","premiumTotal","premiumAmt","colDef","overpaymentAmtColumn","overpaymentAmtTotal","agentCollectAmtColumn","agentCollectAmtTotal","agentCollectAmt","appliedSuspenseAmtColumn","appliedSuspenseAmtTotal","appliedSuspenseAmt","loanPaymentAmtColumn","loanPaymentAmtTotal","totalCollectionAmtColumn","totalCollectionAmtTotal","totalCollectionAmt","estCommAmtColumn","estCommAmtTotal","estCommAmt","estNetAmtColumn","estNetAmtTotal","estNetAmt","refreshHeader","checkForLockInGroupCollection","showGroupLockAlert","checkToDisableDeleteGroupCollection","displayPolicyDetail","sequence","openLapsedCollectionForm","iconString","billFormCode","tipString","billFormDesc","collectionType","reportId","sequenceNum","collectionBatchId","tab","refreshBatchHistory","calculatePremiumCollected","totalCollected","disableSave","appliedAmount","appliedOverpayment","alert","calculatePremiumGroupCollected","reg","input","String","fromCharCode","charCode","test","preventDefault","which","keyCode","onBatchHistoryListRowClicked","onGridReady3","insuredAndPayorCellRenderer","insuredAndPayorValueGetter","policyNumAndAgentIDCellRenderer","policyNumAndAgentIDValueGetter","paidToDateAndIssueDateCellRenderer","issueDate","paidToDateAndIssueDateValueGetter","premiumDueAndMonthsCellRenderer","toFixed","premiumDueAndMonthsValueGetter","suspenseAndLoanBalanceCellRenderer","suspenseAndLoanBalanceValueGetter","CompleteProfileComponent","toastr","auth0ID","avatarLink","updateSuccess","updateFailed","showForm","showGrid","profileJson","user$","email","sub","picture","addAgentLinkCodeRecord","select","elementReference","HTMLElement","focus","linkCode","linkCode1","linkCode2","linkCode3","linkCode4","linkCode5","linkCode6","linkAgent","ssn","dob","createUserProfile","userId","sendChannelInit","success","positionClass","tapToDismiss","timeOut","errorCode","enableHtml","ContactPageComponent","setTab","DocumentsPageComponent","EAppComponent","eAppEnabled","eAppMessage","eAppURI","isAnnuity","isSuppHealth","isWebHookConnection","isRestricted","restrictionMessage","disableIllustrate","companyList","Array","company","annuityEAppURL","samlResponse","genericAnnuityLogin","checkeAppStatus","eApp","enabled","getUserRestriction","restriction","isProd","trackEvent","getEAppURI","uri","tappURL","tappUrl","mrsURL","mrsHomeServiceUrl","mrsSuppHealthUrl","eventId","companyName","firstName","lastName","formProductCtrl","splice","formCompanyCtrl","getEncryptedSaml","displayName","content","_","eAppForm","nativeElement","submit","EAppRedirectComponent","route","caseId","location","searchParams","get","eAppRedirectUrlPart1","encodeURIComponent","eAppRedirectUrlPart2","FormsPageComponent","datepipe","combineForms","formClass","combineDisabled","individualDisabled","sendEmailDisabled","nodeCount","headerCheckboxSelection","preselected","getSearchParmsAndMessage","getSearchParms","parms","formsPageMessage","stateSearch","stateCompanyArray","forms$","searchForms","selectedNodes","getSelectedNodes","selectedFiles","formNumber","container","currentDateTime","containerName","downloadCombinedForms","emailForms","HomeComponent","showLinkMessage","showFirstTimeMessage","updateRequired","linkedAgents","linkedAgentResponse","linkIdentities","eAppUser","clientID","clientSecret","username","updateLinkedAgents","p","sendunlinkedAgentUpdate","homeVisited","updatePageVisited","LoginPageComponent","disableSignUp","login","signup","ProductsComponent","showFront","showBack","showForAnnuity","hideFromAnnuityBank","slides","displayPreference","getProducts","productOverviewSelected","productsVisited","getProductsByChannel","products","title","getProductSectors","sections","overview","updatePreference","ProfileComponent","defaultAgentId","defaultChannel","setDefaultAgentUpdate","getDefaultAgentUpdate","setDefaultChannelUpdate","getDefaultChannelUpdate","getProfileOptions","profileOptions","updateProfile","sendParmServiceInit","onSubmit","RatesPageComponent","RedirectingComponent","TermsPageComponent","TrainingComponent","showGroup","showNew","overViewList","channelList","activeFilter","overviewGroupList","channelGroupList","overviewNewList","channelNewList","getTraining","trainingVisited","trainingOverviewSelected","training","overviewList","overviewByCategory","channelByCategory","overviewByType","channelByType","channelNew","overviewNew","toggleView","UserListPageComponent","getQuickFilterText","users$","getUserList","getImpersonationProfile","sendImpersonationUpdate","NavBarComponent","doc","showImpersonation","showAdmin","showEAppLink","showContactUsLink","showDocumentLink","showCollectionsLink","showZoomControls","showRatesLink","systemStatus","systemStatusBadgeText","systemStatusColor","notices","profileComplete","initialChannelValue","currChromeZoom","currFireFoxZoom","currZoomValue","sendChannelUpdate","getParmServiceInit","permissions","nickname","setShowEAppLink","setShowContactUsLink","setShowDocumentsLink","setShowCollectionsLink","setShowRatesLink","getUnlinkedAgentUpdate","getunlinkedAgentUpdate","setInterval","toString","errorNotice","logout","returnTo","origin","selectedchannel","selectedDescription","count","valueOf","navigator","userAgent","parseFloat","step","css","Document","CloudStorageService","http","httpOptions","thedata","post","authId","area","pageTypeId","prefType","dateModified","formClassID","formStateID","formTypeID","formProductID","formCompanyID","fileNames","formsContainerName","responseType","combined","FileUploadService","backend","file","FormData","append","onPremServerUrl","reportProgress","observe","OnPremStorageService","InputAgentID","InputLast4SSN","InputDOB","LinkCode","res","hideFireAgents","agentLinkId","included","addressOrCity","phoneNumber","kpiId","statementId","policySearch","associatedAgentId","associatedRegionId","put","linkUri","agentLinkCodeId","billFormCodeList","RouteSequenceId","AgentID","CollectionAgentId","MonthsPaid","CashAmt","UserId","toPromise","RegionId","PolicyNum","SequenceNum","Name","AddressLine1","AddressLine2","City","State","Zip","EmailAddress","Phone","Notes","documentId","caOnly","eventData","SiteParameterService","gridNoResults","parmServiceInit","impersonation","channelInit","defaultAgentUpdate","defaultChannelUpdate","kpiSearchUpdate","unlinkedAgentUpdate","_profile","asObservable","environment","production","domain","clientId","redirectUri","audience","bootstrapModule","console"],"mappings":"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AAvB;AACD;;;;;;;yBAtCUU,oB,EAAoB,8I,EAAA,qJ;AAAA,O;;;cAApBA,oB;AAAoB,yC;AAAA,kB;AAAA,gB;AAAA,gR;AAAA;AAAA;ACfjC;;AACE;;AACE;;AACE;;AAAM;;AAAY;;AACpB;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AACE;;AAAO;;AAAK;;AACZ;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAI;;AACX;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAO;;AACd;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAI;;AACX;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAK;;AACZ;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAG;;AACV;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAK;;AACZ;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAG;;AACV;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAa;;AACpB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAgB;;AACvB;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAM;;AACb;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAQ;;AACf;;AACF;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACE;;AAAO;;AAAY;;AACnB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAc;;AACrB;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAa;;AACpB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAS;;AAChB;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAU;;AACjB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAY;;AACnB;;AACF;;AACF;;AACF;;AAEF;;AACF;;AACF;;;;AA9HiD;;AAAA;;AAMA;;AAAA;;AAQA;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;AACE;;AACE;;AACE;;AACE;;AACE;;AAAQ;;AAAK;;AACf;;AACF;;AACF;;AACA;;AACE;;AACE;;AAA2B;;AAA4B;;AACzD;;AACF;;AACA;;AACE;;AACE;;AAA2B;;AAA+B;;AAC5D;;AACF;;AACA;;AACE;;AACE;;AAA2B;;;;AAAmD;;AAChF;;AACF;;AACA;;AACE;;AACE;;AAA2B;;AAAqC;;AAClE;;AACF;;AACF;;AACF;;AACF;;;;;;AApBqC;;AAAA;;AAKA;;AAAA;;AAKA;;AAAA;;AAKA;;AAAA;;;;;;AAMrC;;AACE;;AACE;;AACE;;AACE;;AACE;;AACE;;AAAQ;;AAAK;;AACf;;AACF;;AACF;;AACA;;AACE;;AACE;;AAA2B;;AAA4B;;AACzD;;AACF;;AACA;;AACE;;AACE;;AAA2B;;AAA+B;;AAC5D;;AACF;;AACA;;AACE;;AACE;;AAA2B;;;;AAAmD;;AAChF;;AACF;;AACA;;AACE;;AACE;;AAA2B;;AAAqC;;AAClE;;AACF;;AACF;;AACF;;AACF;;;;;;AApBqC;;AAAA;;AAKA;;AAAA;;AAKA;;AAAA;;AAKA;;AAAA;;;;;;;;AA3LvD;;AACE;;AACE;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAY;;AACnB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAuB;;AAC9B;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAA8B;;AACrC;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAK;;AACZ;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAU;;AACjB;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAW;;AAClB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAU;;AACjB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAY;;AACnB;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAY;;AACnB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAW;;AAClB;;AACF;;A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AAAO;;AAAS;;AAChB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAA0B;;AACjC;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAU;;AACjB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAiB;;AACxB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAe;;AACtB;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAqB;;AAC5B;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAwB;;AAC/B;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAe;;AACtB;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAoB;;AAC3B;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAoB;;AAC3B;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAyB;;AAChC;;AACF;;AACF;;AACF;;AACF;;;;;;AA5EyD;;AAAA;;AAMA;;AAAA;;AAMA;;AAAA;;AAQA;;AAAA;;AAMA;;AAAA;;AAMA;;AAAA;;AAQA;;AAAA;;AAMA;;AAAA;;AAMA;;AAAA;;AAQA;;AAAA;;AAMA;;AAAA;;AAMA;;AAAA;;;;;;;;AAMzD;;AACE;;AACE;;AACE;;AAEE;;AAEE;;AAA6B;AAAA;;AAAA;;AAAA;AAAA;;AAC3B;;AACE;;AAAyC;;AAAM;;AAA+C;;AAChG;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AACE;;AAAO;;AAAoB;;AAC3B;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAyC;;AAChD;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAsC;;AAC7C;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAA4B;;AACnC;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAoC;;AAC3C;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAc;;AACrB;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAiB;;AACxB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAY;;AACnB;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;;;;;AAjEgE;;AAAA;;AAUG;;AAAA;;AAMA;;AAAA;;AAMA;;AAAA;;AAQA;;AAAA;;AAMA;;AAAA;;AAMA;;AAAA;;AAQA;;AAAA;;AAMA;;AAAA;;;;;;;;AAUnE;;AACE;;AACE;;AAEE;;AAEE;;AAEE;;AAA6B;AAAA;;AAAA;;AAAA;AAAA;;AAC3B;;AACE;;AAAuB;;AAAM;;AAAsD;;AACrF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AAMiB;AAAA;;AAAA;;AAAA;AAAA;;AAIjB;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;;;;;AA1B8C;;AAAA;;AAUb;;AAAA,yGAA6B,YAA7B,EAA6B,4BAA7B,EAA6B,eAA7B,EAA6B,wBAA7B,EAA6B,2BAA7B,EAA6B,IAA7B,EAA6B,uBAA7B,EAA6B,sBAA7B;;;;;;AAkCnB;;AACE;;AACE;;AACE;;AACE;;AACE;;AACE;;AAAQ;;AAAS;;AACnB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAA2B;;AAAgC;;AAC7D;;AACF;;AACA;;AACE;;AACE;;AAA2B;;AAAmC;;AAChE;;AACF;;AACA;;AACE;;AACE;;AAA2B;;;;AAAuD;;AACpF;;AACF;;AACA;;AACE;;AACE;;AAA2B;;AAAyC;;AACtE;;AACF;;AACF;;AACF;;AACF;;;;;;AApBqC;;AAAA;;AAKA;;AAAA;;AAKA;;AAAA;;AAKA;;AAAA;;;;;;AAMrC;;AACE;;AACE;;AACE;;AACE;;AACE;;AACE;;AAAQ;;AAAK;;AACf;;AACF;;AACF;;AACA;;AACE;;AACE;;AAA2B;;AAA4B;;AACzD;;AACF;;AACA;;AACE;;AACE;;AAA2B;;AAA+B;;AAC5D;;AACF;;AACA;;AACE;;AACE;;AAA2B;;;;AAAmD;;AAChF;;AACF;;AACA;;AACE;;AACE;;AAA2B;;AAAqC;;AAClE;;AACF;;AACF;;AACF;;AACF;;;;;;AApBqC;;AAAA;;AAKA;;AAAA;;AAKA;;AAAA;;AAKA;;AAAA;;;;;;AAMrC;;AACE;;AACE;;AACE;;AACE;;AACE;;AACE;;AAAQ;;AAAW;;AACrB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAA2B;;AAAiC;;AAC9D;;AACF;;AACA;;AACE;;AACE;;AAA2B;;AAAoC;;AACjE;;AACF;;AACA;;AACE;;AACE;;AAA2B;;;;AAAwD;;AACrF;;AACF;;AACA;;AACE;;AACE;;AAA2B;;AAA0C;;AACvE;;AACF;;AACF;;AACF;;AACF;;;;;;AApBqC;;AAAA;;AAKA;;AAAA;;AAKA;;AAAA;;AAKA;;AAAA;;;;;;;;AA/iBvD;;AACE;;AACE;;AACA;;AACE;;AACE;;AACE;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAgC;;AACvC;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAO;;AACd;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAU;;AACjB;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAmB;;AAC1B;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAU;;AACjB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAY;;AACnB;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAqB;;AAC5B;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAA6B;;AACpC;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAY;;AACnB;;AACF;;AACF;;AACF;;AACA;;AAkFA;;AAsGA;;AAmFA;;AA2EA;;AAqCA;;AACE;;AACE;;AAEE;;AAEE;;AAEE;;AAA6B;AAAA;;AAAA;;AAAA;AAAA;;AAC3B;;AACE;;AAA0B;;AAAM;;AAAsD;;AACxF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAiCA;;AAiCA;;AAiCF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;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AAAA;AAAA;;;;;;ACEI;;AACE;;AACE;;AACE;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAG;;AAAqD;;AAAK;;AAG/D;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AACE;;AACE;;AACE;;AAAgF;AAAA;;AAAA;;AAAA;AAAA;;AAC9E;;AAAkC;;AACpC;;AACF;;AACA;;AACE;;AAAiF;AAAA;;AAAA;;AAAA;AAAA;;AAC/E;;AAAgC;;AAClC;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;;;UD1BSgyB,yB;AAIX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,2CAAmBnyB,IAAnB,EAA8CwI,aAA9C,EAA2F0G,mBAA3F,EACUzG,eADV,EACiD;AAAA;;AAAA;;AAD9B,eAAAzI,IAAA,GAAAA,IAAA;AAA2B,eAAAwI,aAAA,GAAAA,aAAA;AAA6C,eAAA0G,mBAAA,GAAAA,mBAAA;AACjF,eAAAzG,eAAA,GAAAA,eAAA;AAhEH,eAAAopB,UAAA,GAAa,KAAb,CAgE0C,CA/DjD;;AACO,eAAAC,aAAA,GAAgB,KAAhB,CA8D0C,CAC/C;;AACA,eAAK9xB,IAAL,CAAUsB,gBAAV,CAA2BC,SAA3B,CAAqC,UAACC,QAAD,EAAuB;AAC1D,gBAAIA,QAAJ,EAAc;AACZ,qBAAI,CAACqwB,UAAL,GAAkB,IAAlB;AACD,aAFD,MAGK;AACH,qBAAI,CAACA,UAAL,GAAkB,KAAlB;AACD;AACF,WAPD,EAF+C,CAU/C;AACD;;;;qCAEO,CACN;AACA;AACA;AACA;AACD,W,CAEH;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AA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lD;;AAAqD;;AAAe;;AAC3J;;AACA;;AACE;;AAAmF;AAAA;;AAAA;;AAAA,gDAA6B,oBAA7B;AAAiD,WAAjD;;AAAoD;;AAAc;;AACvJ;;AACA;;AAGA;;AACE;;AAA2E;AAAA;;AAAA;;AAAA,gDAA6B,gBAA7B;AAA6C,WAA7C;;AAAgD;;AAAS;;AACtI;;AACA;;AAGF;;AACF;;AACF;;AACF;;AACA;;AAEE;;AACE;;AACE;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAY;;AACnB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAuB;;AAC9B;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAa;;AACpB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAK;;AACZ;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAU;;AACjB;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAW;;AAClB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAU;;AACjB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAY;;AACnB;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAAO;;AAAY;;AACnB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAW;;AAClB;;AACF;;AACF;;AACA;;AACE;;AACE;;AAAO;;AAAO;;AACd;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AAEE;;AAEE;;AAEE;;AAA6B;AAAA;;AAAA;;AAAA;AAAA;;AAC3B;;AACE;;AAA0B;;AAAM;;AAAsD;;AACxF;;AACF;;AACF;;AAEA;;AAEE;;AACE;;AAEE;;AAkCA;;AAkCA;;AAiCF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;AAEA;;AACE;;AACE;;AACE;;AAMiB;AAAA;;AAAA;;AAAA;AAAA;;AAIjB;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AAMiB;AAAA;;AAAA;;AAAA;AAAA;;AAIjB;;AACF;;AACF;;AACF;;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G;;AAAkB;;AAAI;;AAC7B;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AAAM;;AAA8B;;AACtC;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AACE;;AACA;;AAAI;;AAAY;;AAChB;;AAAI;;AAAW;;AACf;;AAAI;;AAAqB;;AACzB;;AAAI;;AAAM;;AACZ;;AACA;;AACE;;AAAI;;AAAG;;AAAK;;AAAI;;AAChB;;AACA;;AACA;;AAAI;;AAAY;;AAChB;;AACF;;AACA;;AACE;;AAAI;;AAAG;;AAAK;;AAAI;;AAChB;;AACA;;AACA;;AACA;;AACF;;AACA;;AACE;;AAAI;;AAAG;;AAAe;;AAAI;;AAC1B;;AACA;;AACA;;AAAI;;AAAa;;AAAM;;AAAyB;;AAChD;;AACF;;AACA;;AACE;;AAAI;;AAAG;;AAAG;;AAAI;;AACd;;AACA;;AACA;;AACA;;AACF;;AACA;;AACE;;AAAI;;AAAG;;AAAkB;;AAAI;;AAC7B;;AACA;;AACA;;AACA;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AACE;;AAAM;;AAAS;;AACjB;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AAAI;;AAAG;;AAAK;;AAAI;;AAChB;;AAAI;;AAAc;;AAClB;;AAAI;;AAAG;;AAAK;;AAAI;;AAChB;;AACF;;AACA;;AACE;;AAAI;;AAAG;;AAAe;;AAAI;;AAC1B;;AACA;;AAAI;;AAAG;;AAAG;;AAAI;;AACd;;AACF;;AACA;;AACE;;AAAI;;AAAG;;AAAkB;;AAAI;;AAC7B;;AAAI;;AAA0B;;AAAM;;AAAqB;;AACzD;;AACF;;AACF;;AACF;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AAAM;;AAA8B;;AACtC;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AACE;;AACA;;AAAI;;AAAY;;AAChB;;AAAI;;AAAW;;AACf;;AAAI;;AAAqB;;AACzB;;AAAI;;AAAM;;AACZ;;AAC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","file":"main-es5.6c7a51fbb73ae5c332b0.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./$$_lazy_route_resource lazy recursive\";","// src/app/app-routing.module.ts\n\nimport { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { LoginPageComponent } from './presentation/pages/login/login.component';\nimport { AnnuityLoginPageComponent } from './presentation/pages/annuitylogin/annuitylogin.component';\nimport { AnnuityBankRepLoginPageComponent } from './presentation/pages/annuitybankreplogin/annuitybankreplogin.component';\nimport { HomeComponent } from './presentation/pages/home/home.component';\nimport { FormsPageComponent } from './presentation/pages/forms/forms.component';\nimport { ProfileComponent } from './presentation/pages/profile/profile.component';\nimport { TermsPageComponent } from './presentation/pages/terms/terms.component';\nimport { CompleteProfileComponent } from './presentation/pages/completeprofile/completeprofile.component';\nimport { ProductsComponent } from './presentation/pages/products/products.component';\nimport { BriefcaseComponent } from './presentation/pages/briefcase/briefcase.component';\nimport { TrainingComponent } from './presentation/pages/training/training.component';\nimport { EAppComponent } from './presentation/pages/eapp/eapp.component';\nimport { AuthGuard } from '@auth0/auth0-angular';\nimport { UserListPageComponent } from './presentation/pages/userlist/userslist.component';\nimport { AnonymousGuard } from './authentication/anonymous.guard';\nimport { ProfileGuard } from './authentication/profile.guard';\nimport { ContactPageComponent } from './presentation/pages/contact/contact.component';\nimport { AdminPageComponent } from './presentation/pages/admin/admin.component';\r\nimport { DocumentsPageComponent } from './presentation/pages/documents/documents.component';\r\nimport { EAppRedirectComponent } from './presentation/pages/eappredirect/eappredirect.component';\r\nimport { RedirectingComponent } from './presentation/pages/redirecting/redirecting.component';\r\nimport { CollectionsPageComponent } from './presentation/pages/collections/collections.component';\r\nimport { RatesPageComponent } from './presentation/pages/rates/rates.component';\r\n\nconst routes: Routes = [\n {\n path: '',\n component: LoginPageComponent,\n pathMatch: 'full', \n canActivate: [AnonymousGuard],\n },\n {\n path: 'annuitylogin',\n component: AnnuityLoginPageComponent,\n pathMatch: 'full',\n },\n {\n path: 'annuitybankreplogin',\n component: AnnuityBankRepLoginPageComponent,\n pathMatch: 'full',\n },\n {\n path: 'home',\n component: HomeComponent,\n pathMatch: 'full',\n canActivate: [AuthGuard],\n },\n {\n path: 'completeprofile',\n component: CompleteProfileComponent,\n canActivate: [AuthGuard, ProfileGuard],\n },\n {\n path: 'profile',\n component: ProfileComponent,\n canActivate: [AuthGuard, ProfileGuard],\n },\n {\n path: 'products',\n component: ProductsComponent,\n canActivate: [AuthGuard, ProfileGuard],\n },\n {\n path: 'forms',\n component: FormsPageComponent,\n canActivate: [AuthGuard, ProfileGuard],\n },\n {\n path: 'briefcase',\n component: BriefcaseComponent,\n canActivate: [AuthGuard, ProfileGuard],\n },\n {\n path: 'training',\n component: TrainingComponent,\n canActivate: [AuthGuard, ProfileGuard],\n },\n {\n path: 'eapp',\n component: EAppComponent,\n canActivate: [AuthGuard, ProfileGuard],\n },\n {\n path: 'terms',\n component: TermsPageComponent\n },\n {\n path: 'userlist',\n component: UserListPageComponent,\n canActivate: [AuthGuard, ProfileGuard]\n },\n {\n path: 'admin',\n component: AdminPageComponent,\n canActivate: [AuthGuard, ProfileGuard]\n },\n {\n path: 'contact',\n component: ContactPageComponent\n },\n {\n path: 'documents',\n component: DocumentsPageComponent\n },\n {\n path: 'eappredirect',\n component: EAppRedirectComponent,\n },\n {\n path: 'redirecting',\n component: RedirectingComponent,\n },\n {\n path: 'collections',\n component: CollectionsPageComponent,\n canActivate: [AuthGuard, ProfileGuard]\n },\n {\n path: 'rates',\n component: RatesPageComponent,\n canActivate: [AuthGuard, ProfileGuard],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes)],\n exports: [RouterModule],\n})\nexport class AppRoutingModule {}\n","// src/app/app.component.ts\n\nimport { Component, HostListener } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { AuthService } from '@auth0/auth0-angular';\nimport { LicenseManager } from 'ag-grid-enterprise';\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n})\nexport class AppComponent {\n constructor(public auth: AuthService) {\n LicenseManager.setLicenseKey('Using_this_{AG_Grid}_Enterprise_key_{AG-074318}_in_excess_of_the_licence_granted_is_not_permitted___Please_report_misuse_to_legal@ag-grid.com___For_help_with_changing_this_key_please_contact_info@ag-grid.com___{Liberty_Bankers_Life_Insurance_Company}_is_granted_a_{Multiple_Applications}_Developer_License_for_{2}_Front-End_JavaScript_developers___All_Front-End_JavaScript_developers_need_to_be_licensed_in_addition_to_the_ones_working_with_{AG_Grid}_Enterprise___This_key_has_been_granted_a_Deployment_License_Add-on_for_{2}_Production_Environments___This_key_works_with_{AG_Grid}_Enterprise_versions_released_before_{1_February_2026}____[v3]_[01]_MTc2OTkwNDAwMDAwMA==fb9bff316e6e25150dac5613b3fef89a');}\n}\n","\n
\n
\n\n
\n \n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n","import { BrowserModule } from '@angular/platform-browser';\nimport { ErrorHandler, NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\nimport { AppRoutingModule } from './app-routing.module';\nimport { AppComponent } from './app.component';\nimport { HeroComponent } from './presentation/components/hero/hero.component';\nimport { AgentGridComponent } from './presentation/components/agentgrid/agentgrid.component';\nimport { ChannelNewsComponent } from './presentation/components/channelnews/channelnews.component';\nimport { LoadingComponent } from './presentation/components/loading/loading.component';\nimport { ComponentLoadingComponent } from './presentation/components/componentloading/componentloading.component';\nimport { NavBarComponent } from './presentation/shared/nav-bar/nav-bar.component';\nimport { LoginPageComponent } from './presentation/pages/login/login.component';\nimport { AnnuityBankRepLoginPageComponent } from './presentation/pages/annuitybankreplogin/annuitybankreplogin.component';\nimport { AnnuityLoginPageComponent } from './presentation/pages/annuitylogin/annuitylogin.component';\nimport { RatesPageComponent } from './presentation/pages/rates/rates.component';\nimport { AnnuityRatesComponent } from './presentation/components/annuityrates/annuityrates.component';\nimport { AnnuityBankRatesComponent } from './presentation/components/annuitybankrates/annuitybankrates.component';\nimport { HomeComponent } from './presentation/pages/home/home.component';\nimport { BriefcaseComponent } from './presentation/pages/briefcase/briefcase.component';\nimport { UserListPageComponent } from './presentation/pages/userlist/userslist.component';\nimport { ProfileComponent } from './presentation/pages/profile/profile.component';\nimport { CompleteProfileComponent } from './presentation/pages/completeprofile/completeprofile.component';\nimport { TermsPageComponent } from './presentation/pages/terms/terms.component';\nimport { ProductsComponent } from './presentation/pages/products/products.component';\nimport { TrainingComponent } from './presentation/pages/training/training.component';\nimport { EAppComponent } from './presentation/pages/eapp/eapp.component';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\nimport { HttpClientModule } from '@angular/common/http';\nimport { AuthModule } from '@auth0/auth0-angular';\nimport { environment as env } from '../environments/environment';\nimport { NO_ERRORS_SCHEMA } from '@angular/core';\nimport { MDBBootstrapModule } from 'angular-bootstrap-md';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations'\nimport { ToastrModule } from 'ngx-toastr';\nimport { HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { KpisComponent } from './presentation/components/kpis/kpis.component';\nimport { AgentPickerComponent } from './presentation/components/agentpicker/agentpicker.component';\nimport { AgentDetailComponent } from './presentation/components/agentdetail/agentdetail.component';\nimport { AgentInfoMessageComponent } from './presentation/components/agentinfomessage/agentinfomessage.component';\nimport { CommissionsComponent } from './presentation/components/commissions/commissions.component';\nimport { FormsPageComponent } from './presentation/pages/forms/forms.component';\nimport { PolicyInfoComponent } from './presentation/components/policyinfo/policyinfo.component';\nimport { ReportsComponent } from './presentation/components/reports/reports.component';\nimport { QuickLinksInfoComponent } from './presentation/components/quicklinks/quicklinks.component';\nimport { TokenInterceptor } from './authentication/tokeninterceptor';\nimport { AgentHierarchyComponent } from './presentation/components/agent-hierarchy/agent-hierarchy.component';\nimport { YesNoPipe } from './common/yes-no.pipe';\nimport { DatePipe } from '@angular/common';\nimport { PhonePipe } from './common/phone.pipe';\nimport { ReplacePipe } from './common/replace';\n//import { NgbDatepickerModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap';\nimport { RollbarErrorHandler, rollbarFactory, RollbarService } from './core/rollbar';\nimport { AgGridModule } from 'ag-grid-angular';\nimport 'ag-grid-enterprise';\nimport { ContactPageComponent } from './presentation/pages/contact/contact.component';\nimport { AdminPageComponent } from './presentation/pages/admin/admin.component';\r\nimport { AssociationsComponent } from './presentation/components/associations/associations.component';\r\nimport { LinkCodeComponent } from './presentation/components/link-code/link-code.component';\r\nimport { StatementSearchComponent } from './presentation/components/statement-search/statement-search.component';\r\nimport { AgGridResizeDirective } from './common/ag-grid-resize.directive';\r\nimport { DocumentsPageComponent } from './presentation/pages/documents/documents.component';\r\nimport { FileUploadComponent } from './presentation/components/fileupload/fileupload.component';\r\nimport { EAppRedirectComponent } from './presentation/pages/eappredirect/eappredirect.component';\r\nimport { RedirectingComponent } from './presentation/pages/redirecting/redirecting.component';\r\nimport { CollectionsPageComponent } from './presentation/pages/collections/collections.component';\r\nimport { RouteListComponent } from './presentation/components/routelist/routelist.component';\r\nimport { BatchHistoryComponent } from './presentation/components/batchhistory/batchhistory.component';\r\nimport { PendingCollectionsComponent } from './presentation/components/pendingcollections/pendingcollections.component';\r\nimport { GridTooltipComponent } from './presentation/components/grid-tooltip/grid-tooltip.component';\r\n\n@NgModule({\n\n declarations: [\n AppComponent,\n HeroComponent,\n LoadingComponent,\n ComponentLoadingComponent,\n NavBarComponent,\n HomeComponent,\n ProfileComponent,\n KpisComponent,\n BriefcaseComponent,\n AgentPickerComponent,\n AgentDetailComponent,\n AgentInfoMessageComponent,\n CommissionsComponent,\n FormsPageComponent,\n PolicyInfoComponent,\n LoginPageComponent,\n AnnuityLoginPageComponent,\n AnnuityBankRepLoginPageComponent,\n RatesPageComponent,\n AnnuityBankRatesComponent,\n AnnuityRatesComponent,\n ReportsComponent,\n TrainingComponent,\n EAppComponent,\n ProductsComponent,\n QuickLinksInfoComponent,\n TermsPageComponent,\n ChannelNewsComponent,\n CompleteProfileComponent,\n AgentGridComponent,\n UserListPageComponent,\n AgentHierarchyComponent,\n ContactPageComponent,\n AdminPageComponent,\n AssociationsComponent,\n LinkCodeComponent,\n StatementSearchComponent,\n AgGridResizeDirective,\n DocumentsPageComponent,\n FileUploadComponent,\n YesNoPipe,\n PhonePipe,\n ReplacePipe,\n EAppRedirectComponent,\n RedirectingComponent,\n CollectionsPageComponent,\n RouteListComponent,\n BatchHistoryComponent,\n PendingCollectionsComponent,\n GridTooltipComponent\n ],\n exports: [ \n ],\n imports: [\n MDBBootstrapModule,\n BrowserModule,\n AppRoutingModule,\n HttpClientModule,\n FontAwesomeModule,\n MDBBootstrapModule.forRoot(), \n ToastrModule.forRoot(),\n BrowserAnimationsModule,\n FormsModule,\n CommonModule,\n AgGridModule.withComponents([]), \n //NgbDatepickerModule,\n NgbTooltipModule,\n AuthModule.forRoot({\n ...env.auth,\n httpInterceptor: {\n allowedList: [`${env.dev.serverUrl}/datawidget/*`],\n },\n }),\n ],\n providers: [\n {\n provide: HTTP_INTERCEPTORS,\n useClass: TokenInterceptor,\n multi: true,\n },\n DatePipe,\n { provide: ErrorHandler, useClass: RollbarErrorHandler },\n { provide: RollbarService, useFactory: rollbarFactory }\n ],\n bootstrap: [AppComponent],\n schemas: [NO_ERRORS_SCHEMA]\n})\nexport class AppModule {}\n","import { Injectable } from '@angular/core';\nimport { CanActivate, CanActivateChild, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree, Router } from '@angular/router';\nimport { AuthService } from '@auth0/auth0-angular';\nimport { Observable, of } from 'rxjs';\nimport { map, catchError } from 'rxjs/operators';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AnonymousGuard implements CanActivate {\n constructor(private router: Router, public auth: AuthService) { }\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable | Promise | boolean | UrlTree { \n this.auth.isAuthenticated$.subscribe((hasToken: boolean) => {\n if (hasToken) {\n return this.router.navigate(['/home']);\n }\n else {\n return true;\n }\n });\n return true;\n } \n}\n","import { Injectable } from '@angular/core';\nimport { CanActivate, CanActivateChild, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree, Router } from '@angular/router';\nimport { Observable, of } from 'rxjs';\nimport { SiteParameterService } from '../services/siteparameter.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ProfileGuard implements CanActivate, CanActivateChild {\n private endpoint = './api/clouddata/';\n constructor(private router: Router, public siteParameterService: SiteParameterService) { }\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable | Promise | boolean | UrlTree {\n if (!this.siteParameterService.profileLoadComplete) {\n return this.siteParameterService.loadProfile();\n }\n else {\n return of(true);\n }\n }\n canActivateChild(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable | Promise | boolean | UrlTree {\n if (!this.siteParameterService.profileLoadComplete) {\n return this.siteParameterService.loadProfile();\n }\n else {\n return of(true);\n }\n }\n}\n","import { Injectable, Injector } from '@angular/core';\nimport {\n HttpRequest,\n HttpHandler,\n HttpEvent,\n HttpInterceptor,\n HttpErrorResponse\n} from '@angular/common/http';\nimport { AuthService } from '@auth0/auth0-angular';\nimport { Observable } from 'rxjs';\nimport { catchError, mergeMap } from 'rxjs/operators';\nimport { throwError } from 'rxjs';\nimport { RollbarService } from '../core/rollbar';\nimport { environment as env } from '../../environments/environment';\n\n@Injectable()\nexport class TokenInterceptor implements HttpInterceptor {\n constructor(private injector: Injector,public auth: AuthService) { }\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\n\n var allowedList = env.dev.anonymousAllowedList.split(\"|\");\n if (allowedList.some(item => request.url.includes(item))) {\n\n return next.handle(request);\r\n\r\n }\n\n return this.auth.getAccessTokenSilently().pipe(\n mergeMap(token => {\n const tokenReq = request.clone({\n headers: request.headers.set('Content-Type', 'application/json').set('Authorization', `Bearer ${token}`)\n });\n return next.handle(tokenReq);\n }),\n catchError((error: HttpErrorResponse) => {\n\n //const rollbar = this.injector.get(RollbarService);\n\n let errorMessage = '';\n if (error.error instanceof ErrorEvent) {\n // client-side error\n errorMessage = 'Error: ${ error.error.message }';\n\n } else {\n // server-side error\n errorMessage = 'Error Code: ${ error.status } \\nMessage: ${ error.message }';\n }\n //rollbar.error(new Error(error.message).stack)\n return throwError(errorMessage);\n })\n );\n }\n\n}\n\n","import { ValueFormatterParams } from \"ag-grid-community\";\r\n\r\nexport function currencyFormatter(params: ValueFormatterParams) {\r\n var currencyValue = isNaN(params.value) ? \"\" : formatNumber(params.value);\r\n return currencyValue;\r\n}\r\n\r\nexport function formatNumber(number: number) {\r\n return number.toLocaleString('en-US', {\r\n style: 'currency',\r\n currency: 'USD'\r\n });\r\n}\r\n","import { Directive, HostListener } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[ag-grid-resize]'\r\n})\r\nexport class AgGridResizeDirective {\r\n private gridApi: any;\r\n @HostListener('window:resize')\r\n onResize() {\r\n if (!this.gridApi) return;\r\n\r\n setTimeout(() => {\r\n this.gridApi.sizeColumnsToFit();\r\n });\r\n }\r\n\r\n @HostListener('gridReady', ['$event'])\r\n onGridReady(params: any) {\r\n this.gridApi = params.api;\r\n params.api.sizeColumnsToFit();\r\n }\r\n}\r\n","import { AgentDownline } from \"../models/downline\";\n\nexport function ReturnDateRangeFromType(rangeType: string): [Date?, Date?] {\n\n var startDate: Date | null;\n var endDate: Date | null;\n\n switch (rangeType) {\n case \"MTD\": {\n let [firstDay, lastDay] = getFirstDayofMonth(new Date());\n startDate = firstDay;\n endDate = lastDay;\n break;\n }\n case \"QTD\": {\n let [firstDay, lastDay] = getFirstDayofQuarter(new Date());\n startDate = firstDay;\n endDate = lastDay;\n break;\n }\n case \"WTD\": {\n let [firstDay, lastDay] = getFirstDayofWeek(new Date());\n startDate = firstDay;\n endDate = lastDay; \n break;\n }\n case \"YTD\": { \n let [firstDay, lastDay] = getFirstDayofYear(new Date());\n startDate = firstDay;\n endDate = lastDay;\n break;\n }\n case \"MTDP\": {\n let [firstDay, lastDay] = getPreviousMonth(new Date());\n startDate = firstDay;\n endDate = lastDay;\n break;\n }\n case \"QTDP\": {\n let [firstDay, lastDay] = getPreviousQuarter(new Date());\n startDate = firstDay;\n endDate = lastDay;\n break;\n }\n case \"WTDP\": {\n let [firstDay, lastDay] = getPreviousWeek(new Date());\n startDate = firstDay;\n endDate = lastDay;\n break;\n }\n case \"YTDP\": {\n let [firstDay, lastDay] = getPreviousYear(new Date());\n startDate = firstDay;\n endDate = lastDay;\n break;\n }\n case \"ALL\": {\n startDate = null;\n endDate = null;\n break;\n }\n }\n\n return [startDate!, endDate!];\n}\n\nfunction getFirstDayofWeek(d: Date): [Date, Date] {\n const day = d.getDay(),\n diff = d.getDate() - day + (day == 0 ? -6:1);\n const firstday = new Date(d.setDate(diff));\n const lastday = new Date(firstday.getFullYear(), firstday.getMonth(), firstday.getDate() + 6);\n return [firstday, lastday]\n}\n\nfunction getPreviousWeek(d: Date): [Date, Date] {\n const day = d.getDay(), \n diff = d.getDate() - day + (day == 0 ? -6:1);\n const firstday = new Date(d.setDate(diff - 7));\n const lastday = new Date(firstday.getFullYear(), firstday.getMonth(), firstday.getDate() +6);\n return[firstday, lastday]\n}\n\nfunction getFirstDayofMonth(d: Date): [Date, Date] {\n const monthDate = d.getMonth();\n const firstday = new Date(d.getFullYear(), monthDate, 1);\n const lastday = new Date(d.getFullYear(), monthDate + 1, 0);\n return [firstday, lastday]; \n}\n\nfunction getPreviousMonth(d: Date): [Date, Date] {\n const month = d.getMonth();\n const monthDate = month - 1;\n\n const firstday = new Date(d.getFullYear(), monthDate, 1);\n const lastday = new Date(d.getFullYear(), monthDate + 1, 0);\n\n return[firstday, lastday];\n}\n\nfunction getFirstDayofQuarter(d: Date): [Date, Date] {\n const quarter = Math.floor((d.getMonth() / 3));\n const firstday = new Date(d.getFullYear(), quarter * 3, 1);\n const lastday = new Date(firstday.getFullYear(), firstday.getMonth() + 3, 0);\n return [firstday, lastday]; \n}\n\nfunction getPreviousQuarter(d: Date): [Date, Date] {\n const quarter = Math.floor((d.getMonth() / 3)); \n const firstday = new Date(d.getFullYear(), quarter * 3 - 3, 1);\n const lastday = new Date(firstday.getFullYear(), firstday.getMonth() + 3, 0);\n\n return[firstday, lastday];\n}\n\nfunction getFirstDayofYear(d: Date): [Date, Date] {\n const year = d.getFullYear();\n const firstday = new Date(year, 0, 1);\n const lastday = new Date(year + 1, 0, 0);\n return [firstday, lastday]; \n}\n\nfunction getPreviousYear(d: Date): [Date, Date] {\n const year = d.getFullYear();\n const yearDate = year - 1;\n\n const firstday = new Date(yearDate, 0, 1);\n const lastday = new Date(yearDate + 1, 0, 0);\n\n return[firstday, lastday];\n}\n\nexport function DateComparator(date1: string, date2: string) {\n const date1Number = monthToComparableNumber(date1);\n const date2Number = monthToComparableNumber(date2);\n if (date1Number === null && date2Number === null) {\n return 0;\n }\n if (date1Number === null) {\n return -1;\n }\n if (date2Number === null) {\n return 1;\n }\n return date1Number - date2Number;\n}\n\nfunction monthToComparableNumber(date: string) {\n if (date === undefined || date === null || date.length !== 10) {\n return null;\n }\n const yearNumber = Number.parseInt(date.substring(6, 10));\n const dayNumber = Number.parseInt(date.substring(3, 5));\n const monthNumber = Number.parseInt(date.substring(0, 2));\n return yearNumber * 10000 + monthNumber * 100 + dayNumber;\n}\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'phone'\r\n})\r\n\r\nexport class PhonePipe implements PipeTransform {\r\n transform(value: string): string {\r\n var returnValue: string = 'N/A';\r\n\r\n if (value.length === 10)\r\n returnValue = value.slice(0, 3) + '-' + value.slice(3, 6) + '-' + value.slice(6);\r\n\r\n return returnValue;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({ name: 'replace' })\r\nexport class ReplacePipe implements PipeTransform {\r\n transform(value: string, strToReplace: string, replacementStr: string): string {\r\n\r\n if (!value || !strToReplace || !replacementStr) {\r\n return value;\r\n }\r\n\r\n return value.replace(new RegExp(strToReplace, 'g'), replacementStr);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'yesNo'\n})\nexport class YesNoPipe implements PipeTransform {\n\n transform(value: boolean): string {\n return value ? \"Yes\" : \"No\";\n }\n}\n","//import * as Rollbar from 'rollbar'; // When using Typescript < 3.6.0.\n import Rollbar from 'rollbar'; \n// However, it will only work when setting either `allowSyntheticDefaultImports` \n// or `esModuleInterop` in your Typescript options.\n\nimport {\n Injectable,\n Inject,\n InjectionToken,\n ErrorHandler\n} from '@angular/core';\n\nconst rollbarConfig = {\n accessToken: '0dadd8790caf4e5da2bf738003214845',\n captureUncaught: true,\n captureUnhandledRejections: true,\n};\n\nexport const RollbarService = new InjectionToken('rollbar');\n\n@Injectable()\nexport class RollbarErrorHandler implements ErrorHandler {\n constructor(@Inject(RollbarService) private rollbar: Rollbar) { }\n\n handleError(err: any): void {\n try {\n //this.rollbar.error(err.originalError || err);\n }\n catch {\n //swallow exception if our rollbar account has reached the monthly limit\n }\n }\n}\n\nexport function rollbarFactory() {\n return new Rollbar(rollbarConfig);\n}\n\n\n\n","import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { AgentDownline } from '../../../models/downline';\nimport { Profile } from '../../../models/profile';\nimport { OnPremStorageService } from '../../../services/onprem-storage';\nimport { SiteParameterService } from '../../../services/siteparameter.service';\nimport { CellClassParams, RowSelectedEvent } from 'ag-grid-community';\n\n@Component({\n selector: 'app-agent-hierarchy',\n templateUrl: './agent-hierarchy.component.html',\n styleUrls: ['./agent-hierarchy.component.css']\n})\nexport class AgentHierarchyComponent implements OnInit {\n private selectedAgentID: string = \"\";\n profile!: Profile;\n public showSpinner = false;\n public showDownlineGrid = true;\n private agentUpdate: Subscription;\n public downlineAgents: AgentDownline[] = [];\n public filteredDownline: AgentDownline[] = [];\n public downlineAgentsByStatus: AgentDownline[] = [];\n private gridApi: any;\n private gridColumnApi: any;\n private gridApi1: any;\n private gridColumnApi1: any;\n private hierarchy: string[] = [];\n private savedFilter: {} = {};\n public columnDefs = [\n { field: 'agentName', filter: 'agTextColumnFilter', filterParams: { suppressAndOrCondition: true } },\n { field: 'commissionLevel' },\n { field: 'status', filter: 'agTextColumnFilter', filterParams: { suppressAndOrCondition: true }, cellStyle: cellStyle }\n ];\n public columnDefs1 = [\n { headerName: 'Agent', valueGetter: idAndNameGetter, minWidth: 300, filterParams: { suppressAndOrCondition: true } },\n { field: 'agentName', filter: 'agTextColumnFilter', filterParams: { suppressAndOrCondition: true } },\n { field: 'commissionLevel' },\n { field: 'status', filter: 'agTextColumnFilter', filterParams: { suppressAndOrCondition: true }, cellStyle: cellStyle }\n ];\n public defaultColDef = { flex: 1 };\n public autoGroupColumnDef = {\n headerName: 'Agent',\n minWidth: 300,\n cellRendererParams: { suppressCount: true },\n };\n public groupDefaultExpanded = -1;\n public getDataPath = function (data: AgentDownline) {\n return data.orgHierarchy;\n };\n onGridReady(params: any) {\n this.gridApi = params.api;\n this.gridColumnApi = params.columnApi;\n }\n onGridReady1(params: any) {\n this.gridApi1 = params.api;\n this.gridColumnApi1 = params.columnApi;\n }\n constructor(private onPremService: OnPremStorageService, private siteParmService: SiteParameterService) {\n this.agentUpdate = this.siteParmService.getAgentUpdate().subscribe\n (message => {\n this.selectedAgentID = message.value;\n this.getdownlineList();\n });\n }\n\n ngOnInit(): void {\n this.profile = this.siteParmService.getStaticProfile();\n this.selectedAgentID = this.profile.selectedAgentNumber;\n this.getdownlineList();\n }\n getdownlineList(): void {\n this.showSpinner = true;\n this.onPremService.getAgentDownlineList(this.selectedAgentID)\n .subscribe(downline => {\n this.downlineAgents = downline;\n this.downlineAgentsByStatus = [];\n for (let agent of this.downlineAgents) {\n if (agent.managerID) {\n this.hierarchy.length = 0;\n this.findManager(agent.managerID);\n this.hierarchy.reverse();\n this.hierarchy.push(agent.agentID + ' - ' + agent.agentName);\n agent.orgHierarchy = JSON.parse(JSON.stringify(this.hierarchy));\n } else {\n agent.orgHierarchy = [agent.agentID + ' - ' + agent.agentName];\n }\n }\n this.showSpinner = false;\n });\n }\n onRowSelected(event: any) {\n this.siteParmService.sendAgentDetailUpdate(event.data.agentID);\n }\n onFilterChanged(event: any) {\n const model = event.api.getFilterModel();\n if (JSON.stringify(this.savedFilter) !== JSON.stringify(model)) {\n this.savedFilter = model;\n if (!model.status && !model.agentName) {\n event.api.setRowData(this.downlineAgents);\n return;\n }\n if (model.status) {\n if (model.status.type == 'contains') {\n this.filteredDownline = JSON.parse(JSON.stringify(this.downlineAgents.filter(f => f.status.toUpperCase().indexOf(model.status.filter.toUpperCase()) != -1)));\n }\n if (model.status.type == 'startsWith') {\n this.filteredDownline = JSON.parse(JSON.stringify(this.downlineAgents.filter(f => f.status.toUpperCase().startsWith(model.status.filter.toUpperCase()))));\n }\n }\n if (model.agentName) {\n if (model.agentName.type == 'contains') {\n this.filteredDownline = JSON.parse(JSON.stringify(this.downlineAgents.filter(f => f.agentName.toUpperCase().indexOf(model.agentName.filter.toUpperCase()) != -1)));\n }\n if (model.agentName.type == 'startsWith') {\n this.filteredDownline = JSON.parse(JSON.stringify(this.downlineAgents.filter(f => f.agentName.toUpperCase().startsWith(model.agentName.filter.toUpperCase()))));\n }\n }\n if (model.status && model.agentName) {\n if (model.status.type == 'contains') {\n this.filteredDownline = JSON.parse(JSON.stringify(this.downlineAgents.filter(f => f.status.toUpperCase().indexOf(model.status.filter.toUpperCase()) != -1)));\n }\n if (model.status.type == 'startsWith') {\n this.filteredDownline = JSON.parse(JSON.stringify(this.downlineAgents.filter(f => f.status.toUpperCase().startsWith(model.status.filter.toUpperCase()))));\n }\n if (model.agentName.type == 'contains') {\n this.filteredDownline = JSON.parse(JSON.stringify(this.filteredDownline.filter(f => f.agentName.toUpperCase().indexOf(model.agentName.filter.toUpperCase()) != -1)));\n }\n if (model.agentName.type == 'startsWith') {\n this.filteredDownline = JSON.parse(JSON.stringify(this.filteredDownline.filter(f => f.agentName.toUpperCase().startsWith(model.agentName.filter.toUpperCase()))));\n }\n }\n for (let agent of this.filteredDownline) {\n agent.orgHierarchy.length = 0;\n if (agent.managerID) {\n this.hierarchy.length = 0;\n this.findFilteredManager(agent.managerID);\n this.hierarchy.reverse();\n this.hierarchy.push(agent.agentID + ' - ' + agent.agentName);\n agent.orgHierarchy = JSON.parse(JSON.stringify(this.hierarchy));\n } else {\n agent.orgHierarchy = [agent.agentID + ' - ' + agent.agentName];\n }\n }\n event.api.setRowData(this.filteredDownline);\n event.api.setFilterModel(model);\n }\n }\n onRowClicked(event: RowSelectedEvent) {\n this.siteParmService.sendAgentDetailUpdate(event.data.agentID);\n }\n findManager(s: string): any {\n let obj = this.downlineAgents.find(i => i.agentID === s);\n if (obj) {\n this.hierarchy.push(obj.agentID + ' - ' + obj.agentName);\n return this.findManager(obj.managerID);\n } else {\n return;\n }\n }\n findFilteredManager(s: string): any {\n let obj = this.filteredDownline.find(i => i.agentID === s);\n if (obj) {\n this.hierarchy.push(obj.agentID + ' - ' + obj.agentName);\n return this.findFilteredManager(obj.managerID);\n } else {\n return;\n }\n }\n onSearchChanged() {\n let field = document.getElementById('search') as HTMLInputElement;\n\n if (this.showDownlineGrid)\n this.gridApi.setQuickFilter(field.value);\n else\n this.gridApi1.setQuickFilter(field.value);\r\n }\n exportToExcel() {\n const params = {\n fileName: this.profile.selectedAgentNumber + '_AgentDownline',\n sheetName: 'Agent Downline'\n };\n\n if (this.showDownlineGrid)\n this.gridApi.exportDataAsExcel(params);\n else\n this.gridApi1.exportDataAsExcel(params);\n }\n onStatusClick($event: any) {\n let clickedElement = $event.target || $event.srcElement;\n\n if (clickedElement.nodeName === \"BUTTON\") {\n if (!clickedElement.classList.contains(\"active\")) {\n let isCertainButtonAlreadyActive = clickedElement.parentElement.querySelector(\".active\");\n // if a Button already has Class: .active\n if (isCertainButtonAlreadyActive) {\n isCertainButtonAlreadyActive.classList.remove(\"active\");\n }\n clickedElement.className += \" active\"; \n }\n\n selectedStatus = $event.srcElement.value;\n\n if (selectedStatus == \"All\") {\n this.showDownlineGrid = true;\r\n }\n else {\n this.showDownlineGrid = false;\r\n this.downlineAgentsByStatus = this.downlineAgents.filter(f => f.status == selectedStatus);\r\n }\n let field = document.getElementById('search') as HTMLInputElement;\n field.value = '';\n }\n }\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.agentUpdate.unsubscribe();\n }\n}\nvar selectedStatus = 'All';\nfunction cellStyle(params: CellClassParams) {\r\n const color = buttonColorToColorCode(params.node.data.color.toLowerCase());\r\n return {\r\n color: color,\r\n };\r\n}\nfunction buttonColorToColorCode(color: any) {\r\n var fontColor = '#28a745';\n switch (color) {\n case 'success':\n fontColor = '#28a745';\n break;\n case 'warning':\n fontColor = '#ffc107';\n break;\n case 'info':\n fontColor = '#17a2b8';\n break;\n case 'danger':\n fontColor = '#dc3545';\n break;\n }\n return fontColor;\r\n}\r\nfunction idAndNameGetter(params: any) {\r\n return params.data.agentID + ' - ' + params.data.agentName;\r\n}\r\n","
\n
\n

\n Downline Agents\n

\n
\n
\n
\n
\n
\n \n
\n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n\n \n \n \n \n \n
\n
\n
\n
\n
\n \n \n
\n
\n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n","import { Component, OnInit } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { take } from 'rxjs/operators';\r\nimport { AgentDetail } from '../../../models/agentDetail';\nimport { Profile } from '../../../models/profile';\nimport { OnPremStorageService } from '../../../services/onprem-storage';\nimport { SiteParameterService } from '../../../services/siteparameter.service';\n\n@Component({\n selector: 'app-agent-detail',\n templateUrl: './agentdetail.component.html',\n styleUrls: ['./agentdetail.component.css']\n})\n\n//@AutoUnsub()\nexport class AgentDetailComponent implements OnInit {\n private selectedAgentID: string = \"\";\n profile!: Profile;\n private agentDetailUpdate!: Subscription; //important to create a subscription\n private agentUpdate!: Subscription; //important to create a subscription \n public agentDetail: AgentDetail = {};\n \n constructor(private onPremService: OnPremStorageService, private siteParmService: SiteParameterService) {\n this.agentDetailUpdate = this.siteParmService.getAgentDetailUpdate().subscribe\n (message => {\n this.selectedAgentID = message.value;\n this.getAgentDetail();\n });\n try {\n this.agentUpdate = this.siteParmService.getAgentUpdate().subscribe\n (message => {\n this.selectedAgentID = message.value;\n this.getAgentDetail();\n });\n } catch (error) {}\n }\n\n ngOnInit(): void {\n this.profile = this.siteParmService.getStaticProfile();\n this.selectedAgentID = this.profile.selectedAgentNumber;\n this.getAgentDetail();\n }\n\n getAgentDetail(): void {\n this.onPremService.getAgentDetail(this.selectedAgentID)\n .pipe(take(1))\n .subscribe(apiResponse => {\n this.agentDetail = apiResponse.data[0]; \n });\n }\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.agentUpdate.unsubscribe();\n this.agentDetailUpdate.unsubscribe();\n }\n}\n","
\n
\n

\n Agent Detail\n

\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n
\n
\n\n","import { Component, OnInit } from '@angular/core';\nimport { Profile } from '../../../models/profile';\nimport { AgentGrid } from '../../../models/agentGrid';\nimport { SiteParameterService } from '../../../services/siteparameter.service'\nimport { CloudStorageService } from '../../../services/cloud-storage';\nimport { Observable } from 'rxjs';\r\n\n@Component({\n selector: 'app-agentgrid',\n templateUrl: './agentgrid.component.html',\n styleUrls: ['./agentgrid.component.css']\n})\nexport class AgentGridComponent implements OnInit {\n private gridApi: any;\n private gridColumnApi: any;\n public linkedAgents$?: Observable\n private profile!: Profile;\n public columnDefs = [\n {\n headerName: 'Default',\n width: 100,\n checkboxSelection: true,\n cellStyle: { 'pointer-events': 'none' },\n cellRenderer: (params: any) => {\n if (params.node.data.selected == 1) {\n params.node.setSelected(true);\n };\n },\n field: 'selected'\n },\n { headerName: 'Agent ID', field: 'agentId' },\n { headerName: 'Channel', field: 'channelName' },\n { headerName: 'Channel ID', field: 'channelId', hide: true },\n { headerName: 'Status', field: 'status' },\n { headerName: 'NPN', field: 'npn' },\n { headerName: 'Manager', field: 'manager' },\n { headerName: 'IMO', field: 'imo' }\n ];\n public defaultColumnDef = {\n sortable: true,\n resizable: true,\n };\n\n constructor(public cloudStorageService: CloudStorageService, private siteParmService: SiteParameterService) { }\n\n ngOnInit(): void {\n this.profile = this.siteParmService.getStaticProfile();\r\n }\n onRowSelected(event: any) {\n if (event.node.selected) {\n this.siteParmService.sendDefaultAgentUpdate(event.data.agentId);\n this.siteParmService.sendDefaultChannelUpdate(event.data.channelName);\n }\n }\n\n onGridReady(params: any) {\n this.gridApi = params.api;\n this.gridColumnApi = params.columnApi;\n this.gridApi.sizeColumnsToFit();\n this.linkedAgents$ = this.cloudStorageService.getLinkedAgents(this.profile.auth0Id);\n }\n}\n"," \n \n\n","import { Component, OnInit } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { Profile } from '../../../models/profile';\r\nimport { CloudStorageService } from '../../../services/cloud-storage';\r\nimport { SiteParameterService } from '../../../services/siteparameter.service';\r\nimport { take } from 'rxjs/operators';\r\n\r\n\r\n@Component({\r\n selector: 'app-agent-info-message',\r\n templateUrl: './agentinfomessage.component.html',\r\n styles: [\r\n ]\r\n})\r\n\r\nexport class AgentInfoMessageComponent implements OnInit {\r\n public showHeaderText = false;\r\n public headerText = \"\";\r\n public profile!: Profile;\r\n private channelUpdate: Subscription;\r\n\r\n constructor(private cloudStorageService: CloudStorageService, private siteParmService: SiteParameterService) {\r\n this.channelUpdate = this.siteParmService.getChannelUpdate().subscribe\r\n (message => {\r\n this.profile = this.siteParmService.getStaticProfile();\r\n this.getMessage();\r\n });\r\n }\r\n ngOnInit(): void {\r\n this.profile = this.siteParmService.getStaticProfile();\r\n this.getMessage();\r\n }\r\n getMessage(): void {\r\n const selectedBusinessChannel = this.profile ? this.profile.channelPreferenceValue : 0;\r\n this.cloudStorageService.getChannel(selectedBusinessChannel)\r\n .pipe(take(1))\r\n .subscribe(channel => {\r\n this.headerText = channel.agentInfoMessage;\r\n this.showHeaderText = channel.agentInfoMessage == null ? false : true;\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\nimport { SiteParameterService } from '../../../services/siteparameter.service'\nimport { Subscription } from 'rxjs';\nimport { Profile } from '../../../models/profile';\nimport { Agent } from '../../../models/agent';\n\n@Component({\n selector: 'app-agentpicker',\n templateUrl: './agentpicker.component.html',\n styleUrls: ['./agentpicker.component.css']\n})\nexport class AgentPickerComponent implements OnInit {\n public agents!: Array;\n public profile!: Profile;\n public selectedAgentId = \"\";\n private subscriptionName: Subscription;\n constructor(private siteParmService: SiteParameterService) {\n this.subscriptionName = this.siteParmService.getChannelUpdate().subscribe\n (message => {\n this.profile = siteParmService.getStaticProfile();\n this.selectedAgentId = this.profile.selectedAgentNumber;\n this.profile.selectedAgentNumber = this.selectedAgentId;\n this.agents = this.profile.agents.filter(x => x.channel == this.profile.channelPreferenceValue);\n this.siteParmService.sendAgentUpdate(this.selectedAgentId); //send update to subscribers for default first agent \n });\n }\n\n ngOnInit(): void { \n this.profile = this.siteParmService.getStaticProfile();\n if (!this.profile.selectedAgentNumber) {\n this.selectedAgentId = this.profile.defaultAgentNumber; \n } else {\n this.selectedAgentId = this.profile.selectedAgentNumber;\n } \n this.agents = this.profile.agents.filter(x => x.channel === this.profile.channelPreferenceValue);\n }\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.subscriptionName.unsubscribe();\n }\n public changeAgent(selectedAgent: string, selectedChannel: number): void {\n this.selectedAgentId = selectedAgent;\n this.profile.selectedAgentNumber = selectedAgent;\n this.siteParmService.setProfile(this.profile);\n this.siteParmService.sendAgentUpdate(selectedAgent);\n }\n}\n","
  • \n \n Agent: {{selectedAgentId}}  \n \n \n
  • \n\n","import { Component, HostListener, Inject, OnInit } from '@angular/core';\nimport { ColSpanParams, ColDef } from 'ag-grid-community';\r\nimport { take } from 'rxjs/operators';\r\nimport { channelProduct } from '../../../models/channelProduct';\r\nimport { CloudStorageService } from '../../../services/cloud-storage';\r\nimport { OnPremStorageService } from '../../../services/onprem-storage';\r\nimport { SiteParameterService } from '../../../services/siteparameter.service';\r\n\r\n@Component({\n selector: 'app-annuitybankrates',\n templateUrl: './annuitybankrates.component.html',\n})\n\nexport class AnnuityBankRatesComponent implements OnInit {\n\n public currentDate = new Date();\n public channelId = 2;\n public screenWidthForLargeDevice: number = 992;\n public screenWidthForSmallDevice: number = 576;\n public channelProduct!: channelProduct;\n public newBusinessDeferredRatesRowData: [] = [];\n public newBusinessImmediateRatesRowData: [] = [];\n public newBusinessFixedIndexRatesRowData: [] = [];\n public renewalDeferredRatesRowData: [] = [];\n public renewalImmediateRatesRowData: [] = [];\n private gridApi: any;\n private gridApi1: any;\n private gridApi2: any;\n private gridApi3: any;\n private gridApi4: any;\n private gridColumnApi: any;\n private gridColumnApi1: any;\n private gridColumnApi2: any;\n private gridColumnApi3: any;\n private gridColumnApi4: any;\n public noRowsTemplate: string = \"\";\n public groupDefaultExpanded = 1;\n public domLayout = \"autoHeight\";\n public innerWidth: any;\n\n ratesDeferredNBRatesColumnDefs!: ColDef[];\n ratesDeferredRenewalRatesColumnDefs!: ColDef[];\n ratesImmediateNBRatesColumnDefs!: ColDef[];\n ratesImmediateRenewalRatesColumnDefs!: ColDef[];\n fixedIndexRatesColumnDefs!: ColDef[];\n\n defaultColumnDef = {\n sortable: true,\n suppressMenu: true,\n suppressMovable: true\n };\n\n public autoGroupColumnDef: ColDef = {\r\n headerName: '',\r\n cellRendererParams: {\r\n suppressCount: true\r\n },\r\n maxWidth: 5,\r\n colSpan: (params: ColSpanParams) => {\r\n if (params.data) {\r\n return 1;\r\n } else {\r\n return 5;\r\n }\r\n }\r\n };\n\n constructor(private onPremService: OnPremStorageService, private cloudStorageService: CloudStorageService,\n private siteParmService: SiteParameterService) {\n this.noRowsTemplate = this.siteParmService.getGridNoResults();\n this.getChannelProductLinks();\n }\n\n ngOnInit(): void {\n this.innerWidth = window.innerWidth;\r\n this.getListColumnDefs();\n this.getRateLists();\n $('#NewBusinessList').addClass('tab-pane active');\n }\n\n @HostListener('window:resize', ['$event'])\r\n onResize(event: any) {\r\n this.innerWidth = window.innerWidth;\r\n this.getListColumnDefs();\r\n }\n \n getRateLists(): void {\n let rateType = 'NB';\n this.onPremService.getAnnuityDeferredRates(this.channelId, rateType, false)\n .pipe(take(1))\n .subscribe(rates => {\n this.newBusinessDeferredRatesRowData = rates.data;\n });\r\n this.onPremService.getAnnuityImmediateRates(this.channelId, rateType, false)\n .pipe(take(1))\n .subscribe(rates => {\n this.newBusinessImmediateRatesRowData = rates.data;\n });\r\n this.onPremService.getAnnuityFixedIndexRates(this.channelId, rateType, false)\n .pipe(take(1))\n .subscribe(rates => {\n this.newBusinessFixedIndexRatesRowData = rates.data;\n });\r\n rateType = 'RENEW';\r\n this.onPremService.getAnnuityDeferredRates(this.channelId, rateType, false)\n .pipe(take(1))\n .subscribe(rates => {\n this.renewalDeferredRatesRowData = rates.data;\n });\r\n this.onPremService.getAnnuityImmediateRates(this.channelId, rateType, false)\n .pipe(take(1))\n .subscribe(rates => {\n this.renewalImmediateRatesRowData = rates.data;\n });\r\n }\n\n getListColumnDefs(): void {\n if (this.innerWidth >= this.screenWidthForLargeDevice) {\n this.ratesDeferredNBRatesColumnDefs = [\n { field: 'series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Product', minWidth: 300, resizable: true },\n { field: 'guaranteePeriod', headerName: 'Guarantee Period', maxWidth: 150, headerClass: \"text-center\", cellClass: 'text-center', resizable: true }, \n { cellRenderer: rateCLICGetter, headerName: 'NB Interest Rate', maxWidth: 150, headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\n this.ratesImmediateNBRatesColumnDefs = [\n { field: 'series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Income Duration', minWidth: 300, resizable: true },\n { field: 'monthlyIncomeFactorCLICO', headerName: 'Monthly Income *', maxWidth: 175, headerClass: \"text-center\", cellClass: 'text-center', tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\n this.ratesDeferredRenewalRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Product', minWidth: 300, resizable: true },\n { field: 'guaranteePeriod', headerName: 'Guarantee Period', maxWidth: 150, headerClass: \"text-center\", cellClass: 'text-center', resizable: true },\n { valueGetter: rateCLICGetter, headerName: 'Ren. Interest Rate ', maxWidth: 150, headerClass: \"text-center\", cellClass: 'text-center', tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\n this.ratesImmediateRenewalRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Income Duration', minWidth: 275, resizable: true },\n { field: 'monthlyIncomeFactorCLICO', headerName: 'Monthly Income *', maxWidth: 150, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\n this.fixedIndexRatesColumnDefs = [\n { field: 'product', rowGroup: true, hide: true },\n { field: 'rateTypeDesc', headerName: 'Product', minWidth: 300, resizable: true },\n { field: 'guaranteePeriod', headerName: 'Guarantee Period', maxWidth: 150, headerClass: \"text-center\", cellClass: 'text-center', resizable: true },\n { field: 'rateCLICO', headerName: 'NB Interest Rate ', maxWidth: 150, headerClass: \"text-center\", cellClass: 'text-center', tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\n }\n\n else if (this.innerWidth < this.screenWidthForLargeDevice && this.innerWidth > this.screenWidthForSmallDevice) {\n this.ratesDeferredNBRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Product', minWidth: 275, resizable: true },\n { cellRenderer: periodAndRateCLICGetter, headerName: 'Guar Per / NB Int Rate', maxWidth: 200, headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\r\n ];\r\n this.ratesImmediateNBRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Income Duration', minWidth: 275, resizable: true },\n { field: 'monthlyIncomeFactorCLICO', headerName: 'Monthly Income *', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\r\n this.ratesDeferredRenewalRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Product', minWidth: 275, resizable: true },\n { cellRenderer: periodAndRateCLICGetter, headerName: 'Guar Per / Ren. Int Rate', maxWidth: 200, headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\r\n this.ratesImmediateRenewalRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Income Duration', minWidth: 275, resizable: true },\n { field: 'monthlyIncomeFactorCLICO', headerName: 'Monthly Income *', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\r\n this.fixedIndexRatesColumnDefs = [\n { field: 'product', rowGroup: true, hide: true },\n { field: 'rateTypeDesc', headerName: 'Product', minWidth: 275, resizable: true },\n { cellRenderer: periodAndRateCLICGetter, headerName: 'Guar Per / NB Int Rate', maxWidth: 200, headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\r\n }\n\n else {\n this.ratesDeferredNBRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Product', resizable: true },\n { cellRenderer: periodAndRateCLICGetter, headerName: 'Guar Per /\\nNB Int Rate', maxWidth: 100, headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\r\n this.ratesImmediateNBRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Income Duration', resizable: true },\n { field: 'monthlyIncomeFactorCLICO', headerName: 'Monthly Income *', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\r\n this.ratesDeferredRenewalRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Product', resizable: true },\n { cellRenderer: periodAndRateCLICGetter, headerName: 'Guar Per /\\nRen. Int Rate', maxWidth: 100, headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\r\n this.ratesImmediateRenewalRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Income Duration', minWidth: 100, resizable: true },\n { field: 'monthlyIncomeFactorCLICO', headerName: 'Monthly Income *', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\r\n this.fixedIndexRatesColumnDefs = [\n { field: 'product', rowGroup: true, hide: true },\n { field: 'rateTypeDesc', headerName: 'Product', minWidth: 100, resizable: true },\n { cellRenderer: periodAndRateCLICGetter, headerName: 'Guar Per /\\nNB Int Rate', maxWidth: 100, headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\r\n }\n }\n\n getChannelProductLinks(): void {\n this.cloudStorageService.getAnonymousProductsByChannel(this.channelId)\n .pipe(take(1))\n .subscribe(productList => {\n this.channelProduct = productList;\n });\r\n }\n\n getRateTooltip(rateStartDate: string): string {\n let returnValue = rateStartDate != undefined ? 'Effective as of ' + rateStartDate : '';\n return returnValue;\r\n }\n\n onClickTabSelect(link: string) {\n $('#listMenu').find(\"*\").removeClass(\"router-link-exact-active\");\n $(link).addClass('router-link-exact-active');\n\n switch (link) {\r\n\r\n case '#RenewalList-tab':\r\n this.gridApi3.sizeColumnsToFit();\n this.gridApi4.sizeColumnsToFit();\r\n break;\r\n default:\r\n this.gridApi.sizeColumnsToFit();\n this.gridApi1.sizeColumnsToFit();\n this.gridApi2.sizeColumnsToFit();\r\n }\n }\n\n onGridReady(params: any) {\n this.gridApi = params.api;\n this.gridColumnApi = params.columnApi;\n }\n onGridReady1(params: any) {\n this.gridApi1 = params.api;\n this.gridColumnApi1 = params.columnApi;\n }\n onGridReady2(params: any) {\n this.gridApi2 = params.api;\n this.gridColumnApi2 = params.columnApi;\n }\n onGridReady3(params: any) {\n this.gridApi3 = params.api;\n this.gridColumnApi3 = params.columnApi;\n }\n onGridReady4(params: any) {\n this.gridApi4 = params.api;\n this.gridColumnApi4 = params.columnApi;\n }\n}\n\nfunction seriesAndProductGetter(params: any) {\r\n return params.data.product + ' - ' + params.data.series;\r\n}\r\n\r\nfunction rateLBLGetter(params: any) {\r\n let rateValue = \"\";\r\n if (params.data.rateLBL !== params.data.rateFirstYearLBL) {\r\n rateValue = params.data.rateFirstYearLBL + ' (FY)
    ' + params.data.rateLBL + ' (Base) ';\r\n }\r\n else {\r\n rateValue = params.data.rateLBL;\r\n }\r\n\r\n return rateValue;\r\n}\r\n\r\nfunction rateCLICGetter(params: any) {\r\n let rateValue = \"\";\r\n if (params.data.rateCLICO !== params.data.rateFirstYearCLICO) {\r\n rateValue = params.data.rateFirstYearCLICO + ' (FY)
    ' + params.data.rateCLICO + ' (Base) ';\r\n }\r\n else {\r\n rateValue = params.data.rateCLICO;\r\n }\r\n\r\n return rateValue;\r\n}\r\n\r\nfunction periodAndRateLBLGetter(params: any) {\r\n let returnValue = \"\"\r\n let rateValue = \"\";\r\n if (params.data.rateFirstYearLBL !== \"\" && params.data.rateLBL !== params.data.rateFirstYearLBL) {\r\n rateValue = params.data.rateFirstYearLBL + ' (FY)
    ' + params.data.rateLBL + ' (Base) ';\r\n }\r\n else {\r\n rateValue = params.data.rateLBL;\r\n }\r\n\r\n if (params.data.guaranteePeriod === \"\") {\r\n returnValue = rateValue;\r\n }\r\n else {\r\n returnValue = params.data.guaranteePeriod + '
    ' + rateValue;\r\n }\r\n\r\n return returnValue;\r\n}\n\nfunction periodAndRateCLICGetter(params: any) {\r\n let returnValue = \"\"\r\n let rateValue = \"\";\r\n if (params.data.rateFirstYearCLICO !== \"\" && params.data.rateCLICO !== params.data.rateFirstYearCLICO) {\r\n rateValue = params.data.rateFirstYearCLICO + ' (FY)
    ' + params.data.rateCLICO + ' (Base) ';\r\n }\r\n else {\r\n rateValue = params.data.rateCLICO;\r\n }\r\n\r\n if (params.data.guaranteePeriod === \"\") {\r\n returnValue = rateValue;\r\n }\r\n else {\r\n returnValue = params.data.guaranteePeriod + '
    ' + rateValue;\r\n }\r\n\r\n return returnValue;\r\n}\r\n\n","
    \r\n
    \r\n
    \r\n

    Current Annuity Interest Rates ({{ currentDate | date:'MM/dd/yyyy' }})

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n For further rate details please refer to this guide:
    \r\n \r\n \r\n  State Availability\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n 0\">\r\n
    \r\n

    Deferred Annuities

    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n 0\">\r\n
    \r\n

    CLIC Immediate Annuities

    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    * Current monthly income factors provided are based on a $100,000 non-qualified premium for a 65 year old malein a state with no premium tax.
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n 0\">\r\n
    \r\n

    Fixed Index Annuities

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

    Deferred Annuities

    \r\n
    \r\n 0\">\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n 0\">\r\n
    \r\n

    Immediate Annuities

    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    * Current monthly income factors provided are based on a $100,000 non-qualified premium for a 65 year old male in a state with no premium tax.
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, HostListener, Inject, OnInit } from '@angular/core';\nimport { ColSpanParams, ColDef } from 'ag-grid-community';\r\nimport { take } from 'rxjs/operators';\r\nimport { channelProduct } from '../../../models/channelProduct';\r\nimport { CloudStorageService } from '../../../services/cloud-storage';\r\nimport { OnPremStorageService } from '../../../services/onprem-storage';\r\nimport { SiteParameterService } from '../../../services/siteparameter.service';\r\n\r\n@Component({\n selector: 'app-annuityrates',\n templateUrl: './annuityrates.component.html',\n})\n\nexport class AnnuityRatesComponent implements OnInit {\n\n public currentDate = new Date();\n public channelId = 1;\n public screenWidthForLargeDevice: number = 992;\n public screenWidthForSmallDevice: number = 576;\n public channelProduct!: channelProduct;\n public newBusinessDeferredRatesRowData: [] = [];\n public newBusinessImmediateRatesRowData: [] = [];\n public newBusinessFixedIndexRatesRowData: [] = [];\n public renewalDeferredRatesRowData: [] = [];\n public renewalImmediateRatesRowData: [] = [];\n public newBusinessCADeferredRatesRowData: [] = [];\n public newBusinessCAImmediateRatesRowData: [] = [];\n public newBusinessCAFixedIndexRatesRowData: [] = [];\n private gridApi: any;\n private gridApi1: any;\n private gridApi2: any;\n private gridApi3: any;\n private gridApi4: any;\n private gridApi5: any;\n private gridApi6: any;\n private gridApi7: any;\n private gridColumnApi: any;\n private gridColumnApi1: any;\n private gridColumnApi2: any;\n private gridColumnApi3: any;\n private gridColumnApi4: any;\n private gridColumnApi5: any;\n private gridColumnApi6: any;\n private gridColumnApi7: any;\n public noRowsTemplate: string = \"\";\n public groupDefaultExpanded = 1;\n public domLayout = \"autoHeight\";\n public innerWidth: any;\n\n ratesDeferredNBRatesColumnDefs!: ColDef[];\n ratesDeferredRenewalRatesColumnDefs!: ColDef[];\n ratesImmediateNBRatesColumnDefs!: ColDef[];\n ratesImmediateRenewalRatesColumnDefs!: ColDef[];\n fixedIndexRatesColumnDefs!: ColDef[];\n\n defaultColumnDef = {\n sortable: true,\n suppressMenu: true,\n suppressMovable: true\n };\n\n public autoGroupColumnDef: ColDef = {\r\n headerName: '',\r\n cellRendererParams: {\r\n suppressCount: true\r\n },\r\n maxWidth: 5,\r\n colSpan: (params: ColSpanParams) => {\r\n if (params.data) {\r\n return 1;\r\n } else {\r\n return 5;\r\n }\r\n }\r\n };\n\n constructor(private onPremService: OnPremStorageService, private cloudStorageService: CloudStorageService,\n private siteParmService: SiteParameterService) {\n this.noRowsTemplate = this.siteParmService.getGridNoResults();\n this.getChannelProductLinks();\n }\n\n\n ngOnInit(): void {\n this.innerWidth = window.innerWidth;\r\n this.getListColumnDefs();\n this.getRateLists();\n $('#NewBusinessList').addClass('tab-pane active');\n }\n\n @HostListener('window:resize', ['$event'])\r\n onResize(event: any) {\r\n this.innerWidth = window.innerWidth;\r\n this.getListColumnDefs();\r\n }\n\n getListColumnDefs(): void {\n if (this.innerWidth >= this.screenWidthForLargeDevice) {\n this.ratesDeferredNBRatesColumnDefs = [\n { field: 'series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Product', minWidth: 300, resizable: true },\n { field: 'guaranteePeriod', headerName: 'Guarantee Period', maxWidth: 150, headerClass: \"text-center\", cellClass: 'text-center', resizable: true },\n { cellRenderer: rateLBLGetter, headerName: 'LBL\\nNB Interest Rate', maxWidth: 150, headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateLBL); }, resizable: true },\n { cellRenderer: rateCLICGetter, headerName: 'CLIC\\nNB Interest Rate', maxWidth: 150, headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\n this.ratesImmediateNBRatesColumnDefs = [\n { field: 'series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Income Duration', minWidth: 300, resizable: true },\n { field: 'monthlyIncomeFactorLBL', headerName: 'LBL\\nMonthly Income*', maxWidth: 150, headerClass: \"text-center\", cellClass: 'text-center', tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateLBL); }, resizable: true },\n { field: 'monthlyIncomeFactorCLICO', headerName: 'CLIC\\nMonthly Income*', maxWidth: 150, headerClass: \"text-center\", cellClass: 'text-center', tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\n this.ratesDeferredRenewalRatesColumnDefs = [\n { field: 'series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Product', minWidth: 300, resizable: true },\n { field: 'guaranteePeriod', headerName: 'Guarantee Period', maxWidth: 150, headerClass: \"text-center\", cellClass: 'text-center', resizable: true },\n { valueGetter: rateLBLGetter, headerName: 'LBL\\nRen. Interest Rate', maxWidth: 150, headerClass: \"text-center\", cellClass: 'text-center', tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateLBL); }, resizable: true },\n { valueGetter: rateCLICGetter, headerName: 'CLIC\\nRen. Interest Rate', maxWidth: 150, headerClass: \"text-center\", cellClass: 'text-center', tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\n this.ratesImmediateRenewalRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Income Duration', minWidth: 300, resizable: true },\n { field: 'monthlyIncomeFactorLBL', headerName: 'Monthly Income LBL*', maxWidth: 150, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateLBL); }, resizable: true },\n { field: 'monthlyIncomeFactorCLICO', headerName: 'Monthly Income CLIC*', maxWidth: 150, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\n this.fixedIndexRatesColumnDefs = [\n { field: 'product', rowGroup: true, hide: true },\n { field: 'rateTypeDesc', headerName: 'Product', minWidth: 300, resizable: true },\n { field: 'guaranteePeriod', headerName: 'Guarantee Period', minWidth: 175, cellClass: 'text-center', maxWidth: 150, resizable: true },\n { field: 'rateLBL', headerName: 'LBL\\nNB Interest Rate', maxWidth: 150, headerClass: \"text-center\", cellClass: 'text-center', tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateLBL); }, resizable: true },\n { field: 'rateCLICO', headerName: 'CLIC\\nNB Interest Rate', maxWidth: 150, headerClass: \"text-center\", cellClass: 'text-center', tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\n }\n\n else if (this.innerWidth < this.screenWidthForLargeDevice && this.innerWidth > this.screenWidthForSmallDevice) {\n this.ratesDeferredNBRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Product', minWidth: 275, resizable: true },\n { cellRenderer: periodAndRateLBLGetter, headerName: 'LBL\\nGuar Per / NB Int Rate', maxWidth: 175, headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateLBL); }, resizable: true },\n { cellRenderer: periodAndRateCLICGetter, headerName: 'CLIC\\nGuar Per / NB Int Rate', maxWidth: 175, headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\r\n ];\r\n\r\n this.ratesImmediateNBRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Income Duration', minWidth: 275, resizable: true },\n { field: 'monthlyIncomeFactorLBL', headerName: 'LBL\\nMonthly Income*', maxWidth: 150, headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateLBL); }, resizable: true },\n { field: 'monthlyIncomeFactorCLICO', headerName: 'CLIC\\nMonthly Income*', maxWidth: 150, headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\r\n this.ratesDeferredRenewalRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Product', minWidth: 275, resizable: true },\n { cellRenderer: periodAndRateLBLGetter, headerName: 'Guar Per /\\nRen. Int Rate LBL', maxWidth: 175, headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateLBL); }, resizable: true },\n { cellRenderer: periodAndRateCLICGetter, headerName: 'Guar Per /\\nRen. Int Rate CLIC', maxWidth: 175, headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\r\n this.ratesImmediateRenewalRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Income Duration', minWidth: 275, resizable: true },\n { field: 'monthlyIncomeFactorLBL', headerName: 'Monthly Income* LBL', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateLBL); }, resizable: true },\n { field: 'monthlyIncomeFactorCLICO', headerName: 'Monthly Income* CLIC', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\r\n this.fixedIndexRatesColumnDefs = [\n { field: 'product', rowGroup: true, hide: true },\n { field: 'rateTypeDesc', headerName: 'Product', minWidth: 275, resizable: true },\n { cellRenderer: periodAndRateLBLGetter, headerName: 'LBL\\nGuar Per / NB Int Rate', maxWidth: 175, headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateLBL); }, resizable: true },\n { cellRenderer: periodAndRateCLICGetter, headerName: 'CLIC\\nGuar Per / NB Int Rate', maxWidth: 175, headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\r\n }\n\n else {\n this.ratesDeferredNBRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Product', minWidth: 150, resizable: true },\n { cellRenderer: periodAndRateLBLGetter, headerName: 'LBL\\nGuar Per / NB Int Rate', headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateLBL); }, resizable: true },\n { cellRenderer: periodAndRateCLICGetter, headerName: 'CLIC\\nGuar Per / NB Int Rate', headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\r\n this.ratesImmediateNBRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Income Duration', minWidth: 150, resizable: true },\n { field: 'monthlyIncomeFactorLBL', headerName: 'LBL\\nMonthly Income*', headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateLBL); }, resizable: true },\n { field: 'monthlyIncomeFactorCLICO', headerName: 'CLIC\\nMonthly Income*', headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\r\n this.ratesDeferredRenewalRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Product', minWidth: 150, resizable: true },\n { cellRenderer: periodAndRateLBLGetter, headerName: 'LBL\\nGuar Per / Ren Int Rate', headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateLBL); }, resizable: true },\n { cellRenderer: periodAndRateCLICGetter, headerName: 'CLIC\\nGuar Per / Ren Int Rate', headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\r\n this.ratesImmediateRenewalRatesColumnDefs = [\n { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n { field: 'product', headerName: 'Income Duration', minWidth: 150, resizable: true },\n { field: 'monthlyIncomeFactorLBL', headerName: 'LBL\\nMonthly Income*', headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateLBL); }, resizable: true },\n { field: 'monthlyIncomeFactorCLICO', headerName: 'CLIC\\nMonthly Income*', headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\r\n this.fixedIndexRatesColumnDefs = [\n { field: 'product', rowGroup: true, hide: true },\n { field: 'rateTypeDesc', headerName: 'Product', minWidth: 150, resizable: true },\n { cellRenderer: periodAndRateLBLGetter, headerName: 'LBL\\nGuar Per / NB Int Rate', headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateLBL); }, resizable: true },\n { cellRenderer: periodAndRateCLICGetter, headerName: 'CLIC\\nGuar Per / NB Int Rate', headerClass: \"text-center\", cellClass: 'cellCenter', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data.rateStartDateCLICO); }, resizable: true }\n ];\r\n }\n }\n\n getRateLists(): void {\n let rateType = 'NB';\n this.onPremService.getAnnuityDeferredRates(this.channelId, rateType, false)\n .pipe(take(1))\n .subscribe(rates => {\n this.newBusinessDeferredRatesRowData = rates.data;\n });\r\n this.onPremService.getAnnuityImmediateRates(this.channelId, rateType, false)\n .pipe(take(1))\n .subscribe(rates => {\n this.newBusinessImmediateRatesRowData = rates.data;\n });\r\n this.onPremService.getAnnuityFixedIndexRates(this.channelId, rateType, false)\n .pipe(take(1))\n .subscribe(rates => {\n this.newBusinessFixedIndexRatesRowData = rates.data;\n });\r\n this.onPremService.getAnnuityDeferredRates(this.channelId, rateType, true)\n .pipe(take(1))\n .subscribe(rates => {\n this.newBusinessCADeferredRatesRowData = rates.data;\n });\r\n this.onPremService.getAnnuityImmediateRates(this.channelId, rateType, true)\n .pipe(take(1))\n .subscribe(rates => {\n this.newBusinessCAImmediateRatesRowData = rates.data;\n });\r\n this.onPremService.getAnnuityFixedIndexRates(this.channelId, rateType, true)\n .pipe(take(1))\n .subscribe(rates => {\n this.newBusinessCAFixedIndexRatesRowData = rates.data;\n });\r\n rateType = 'RENEW';\r\n this.onPremService.getAnnuityDeferredRates(this.channelId, rateType, false)\n .pipe(take(1))\n .subscribe(rates => {\n this.renewalDeferredRatesRowData = rates.data;\n });\r\n this.onPremService.getAnnuityImmediateRates(this.channelId, rateType, false)\n .pipe(take(1))\n .subscribe(rates => {\n this.renewalImmediateRatesRowData = rates.data;\n });\r\n }\n\n getChannelProductLinks(): void {\n this.cloudStorageService.getAnonymousProductsByChannel(this.channelId)\n .pipe(take(1))\n .subscribe(productList => {\n this.channelProduct = productList;\n });\r\n }\n\n getRateTooltip(rateStartDate: string): string {\n let returnValue = rateStartDate != undefined ? 'Effective as of ' + rateStartDate : '';\n return returnValue;\r\n }\n\n onClickTabSelect(link: string) {\n $('#listMenu').find(\"*\").removeClass(\"router-link-exact-active\");\n $(link).addClass('router-link-exact-active');\n\n switch (link) {\r\n\r\n case '#NewCABusinessList-tab':\r\n this.gridApi5.sizeColumnsToFit();\n this.gridApi6.sizeColumnsToFit();\n this.gridApi7.sizeColumnsToFit();\r\n break;\r\n case '#RenewalList-tab':\r\n this.gridApi3.sizeColumnsToFit();\n this.gridApi4.sizeColumnsToFit();\r\n break;\r\n default:\r\n this.gridApi.sizeColumnsToFit();\n this.gridApi1.sizeColumnsToFit();\n this.gridApi2.sizeColumnsToFit();\r\n }\n }\n\n onGridReady(params: any) {\n this.gridApi = params.api;\n this.gridColumnApi = params.columnApi;\n }\n onGridReady1(params: any) {\n this.gridApi1 = params.api;\n this.gridColumnApi1 = params.columnApi;\n }\n onGridReady2(params: any) {\n this.gridApi2 = params.api;\n this.gridColumnApi2 = params.columnApi;\n }\n onGridReady3(params: any) {\n this.gridApi3 = params.api;\n this.gridColumnApi3 = params.columnApi;\n }\n onGridReady4(params: any) {\n this.gridApi4 = params.api;\n this.gridColumnApi4 = params.columnApi;\n }\n onGridReady5(params: any) {\n this.gridApi5 = params.api;\n this.gridColumnApi5 = params.columnApi;\n }\n onGridReady6(params: any) {\n this.gridApi6 = params.api;\n this.gridColumnApi6 = params.columnApi;\n }\n onGridReady7(params: any) {\n this.gridApi7 = params.api;\n this.gridColumnApi7 = params.columnApi;\n }\n}\n\nfunction seriesAndProductGetter(params: any) {\r\n return params.data.product + ' - ' + params.data.series;\r\n}\r\n\r\nfunction rateLBLGetter(params: any) {\r\n let rateValue = \"\";\r\n if (params.data.rateLBL !== params.data.rateFirstYearLBL) {\r\n rateValue = params.data.rateFirstYearLBL + ' (FY)
    ' + params.data.rateLBL + ' (Base) ';\r\n }\r\n else {\r\n rateValue = params.data.rateLBL;\r\n }\r\n\r\n return rateValue;\r\n}\r\n\r\nfunction rateCLICGetter(params: any) {\r\n let rateValue = \"\";\r\n if (params.data.rateCLICO !== params.data.rateFirstYearCLICO) {\r\n rateValue = params.data.rateFirstYearCLICO + ' (FY)
    ' + params.data.rateCLICO + ' (Base) ';\r\n }\r\n else {\r\n rateValue = params.data.rateCLICO;\r\n }\r\n\r\n return rateValue;\r\n}\r\n\r\nfunction periodAndRateLBLGetter(params: any) {\r\n let returnValue = \"\"\r\n let rateValue = \"\";\r\n if (params.data.rateFirstYearLBL !== \"\" && params.data.rateLBL !== params.data.rateFirstYearLBL) {\r\n rateValue = params.data.rateFirstYearLBL + ' (FY)
    ' + params.data.rateLBL + ' (Base) ';\r\n }\r\n else {\r\n rateValue = params.data.rateLBL;\r\n }\r\n\r\n if (params.data.guaranteePeriod === \"\") {\r\n returnValue = rateValue;\r\n }\r\n else {\r\n returnValue = params.data.guaranteePeriod + '
    ' + rateValue;\r\n }\r\n\r\n return returnValue;\r\n}\n\nfunction periodAndRateCLICGetter(params: any) {\r\n let returnValue = \"\"\r\n let rateValue = \"\";\r\n if (params.data.rateFirstYearCLICO !== \"\" && params.data.rateCLICO !== params.data.rateFirstYearCLICO) {\r\n rateValue = params.data.rateFirstYearCLICO + ' (FY)
    ' + params.data.rateCLICO + ' (Base) ';\r\n }\r\n else {\r\n rateValue = params.data.rateCLICO;\r\n }\r\n\r\n if (params.data.guaranteePeriod === \"\") {\r\n returnValue = rateValue;\r\n }\r\n else {\r\n returnValue = params.data.guaranteePeriod + '
    ' + rateValue;\r\n }\r\n\r\n return returnValue;\r\n}\n","
    \n
    \n
    \n
    \n

    Current Annuity Interest Rates ({{ currentDate | date:'MM/dd/yyyy' }})

    \n
    \n
    \n
    \n
    \n For further rate details please refer to this guide:
    \n \n \n  State Availability\n
    \n
    \n
    \n \n
    \n
    \n
    \n 0\">\n
    \n

    Deferred Annuities

    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n 0\">\n
    \n

    Immediate Annuities

    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    * Current monthly income factors provided are based on a $100,000 non-qualified premium for a 65 year old male in a state with no premium tax.
    \n
    \n
    \n
    \n
    \n 0\">\n
    \n

    Fixed Index Annuities

    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n\n \n
    \n 0\">\n
    \n

    Deferred Annuities

    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n 0\">\n
    \n

    Immediate Annuities

    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    * Current monthly income factors provided are based on a $100,000 non-qualified premium for a 65 year old male in a state with no premium tax.
    \n
    \n
    \n
    \n
    \n 0\">\n
    \n

    CLIC Fixed Index Annuities

    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n\n
    \n
    \n

    Deferred Annuities

    \n
    \n 0\">\n
    \n
    \n \n \n
    \n
    \n
    \n 0\">\n
    \n

    Immediate Annuities

    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    * Current monthly income factors provided are based on a $100,000 non-qualified premium for a 65 year old male in a state with no premium tax.
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { AbstractControl, NgForm } from '@angular/forms';\r\nimport { ColDef, ColGroupDef, RowSelectedEvent } from 'ag-grid-community';\r\nimport { Observable } from 'rxjs';\r\nimport { first, map, take } from 'rxjs/operators';\r\nimport { AgentDetail } from '../../../models/agentDetail';\r\nimport { agentLinkAssociation } from '../../../models/association';\r\nimport { CloudStorageService } from '../../../services/cloud-storage';\r\nimport { OnPremStorageService } from '../../../services/onprem-storage';\r\nimport { SiteParameterService } from '../../../services/siteparameter.service';\r\n\r\n@Component({\r\n selector: 'app-associations',\r\n templateUrl: './associations.component.html',\r\n styles: [\r\n ]\r\n})\r\nexport class AssociationsComponent implements OnInit {\r\n public showList: boolean = true;\r\n public showDetail: boolean = false;\r\n public showAddButton: boolean = true;\r\n public showUpdateForm: boolean = false;\r\n public showAddForm: boolean = false;\r\n public disableUpdate: boolean = true;\r\n public disableAdd: boolean = true;\r\n public showLinkedAgentIDFound: boolean = false;\r\n public showLinkedAgentIDNotFound: boolean = false;\r\n public showAssociationAgentIDFound: boolean = false;\r\n public showAssociationAgentIDNotFound: boolean = false;\r\n\r\n public associations$?: Observable;\r\n public selectedAssociation$?: Observable;\r\n public unassociatedLinkedAgents$?: Observable;\r\n private gridApi: any;\r\n public noRowsTemplate: string = \"\";\r\n private gridColumnApi: any;\r\n\r\n private agentLinkAssociationID: number = 0;\r\n private agentID: string = \"\";\r\n private linkedAgentName: string = \"\";\r\n private associatedAgentID: string = \"\";\r\n private associatedAgentName: string = \"\";\r\n private channelID: number = 0;\r\n private regionID: number = 0;\r\n private associatedRegionID: number = 0;\r\n\r\n public columnDefs: (ColDef | ColGroupDef)[] = [\r\n {\r\n headerName: 'Linked Agents',\r\n children: [\r\n { field: 'agentID', headerName: 'Agent ID', width: 100 },\r\n { field: 'agentName', headerName: 'Agent Name' },\r\n ],\r\n },\r\n {\r\n headerName: 'Associated Agents',\r\n children: [\r\n { field: 'associatedAgentID', headerName: 'Agent ID', width: 100 },\r\n { field: 'associatedAgentName', headerName: 'Agent Name' }\r\n ],\r\n },\r\n ];\r\n\r\n defaultColumnDef = {\r\n sortable: true,\r\n resizable: true,\r\n };\r\n\r\n constructor(private onPremService: OnPremStorageService, private siteParmService: SiteParameterService, private cloudStorageService: CloudStorageService,\r\n private datePipe: DatePipe) {\r\n this.noRowsTemplate = this.siteParmService.getGridNoResults();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.listAssociations();\r\n this.getUnassociatedLinkedAgentList();\r\n }\r\n\r\n listAssociations() {\r\n this.associations$ = this.onPremService.getAssociations().pipe(map(response => response.data));\r\n }\r\n\r\n getUnassociatedLinkedAgentList(): void {\r\n this.unassociatedLinkedAgents$ = this.onPremService.getUnassociatedLinkedAgentList().pipe(\r\n map(apiReponse => apiReponse.data));\r\n }\r\n\r\n onRowClicked(event: RowSelectedEvent) {\r\n this.selectedAssociation$ = this.onPremService.getAssociation(event.data.agentLinkAssociationID)\r\n .pipe(map(response => response.data[0]));\r\n\r\n this.agentLinkAssociationID = event.data.agentLinkAssociationID;\r\n this.associatedRegionID = event.data.associatedRegionID;\r\n\r\n this.showList = false;\r\n this.showDetail = true;\r\n this.showAddButton = false;\r\n this.showUpdateForm = true;\r\n this.showAddForm = false;\r\n }\r\n\r\n onAddClicked() {\r\n this.agentID = \"\";\r\n this.associatedAgentID = \"\";\r\n this.associatedAgentName = \"\";\r\n this.showList = false;\r\n this.showDetail = true;\r\n this.showAddForm = true;\r\n this.showUpdateForm = false;\r\n this.showAddButton = false;\r\n }\r\n\r\n closeDetail() {\r\n this.agentLinkAssociationID = 0;\r\n this.agentID = \"\";\r\n this.linkedAgentName = \"\";\r\n this.channelID = 0;\r\n this.regionID = 0;\r\n this.associatedRegionID = 0;\r\n this.associatedAgentName = \"\";\r\n\r\n this.showLinkedAgentIDFound = false;\r\n this.showLinkedAgentIDNotFound = false;\r\n this.showAssociationAgentIDFound = false;\r\n this.showAssociationAgentIDNotFound = false;\r\n this.disableAdd = true;\r\n this.disableUpdate = true;\r\n\r\n this.showDetail = false;\r\n this.showList = true;\r\n this.showAddButton = true;\r\n }\r\n\r\n changeLinkedAgentID(event: any) {\r\n this.regionID = 0;\r\n this.linkedAgentName = \"\";\r\n this.disableAdd = true;\r\n this.showLinkedAgentIDFound = false;\r\n this.showLinkedAgentIDNotFound = false;\r\n }\r\n\r\n changeAssociatedAgentID(event: any) {\r\n this.associatedRegionID = 0;\r\n this.associatedAgentName = \"\";\r\n this.disableAdd = true;\r\n this.disableUpdate = true;\r\n this.showAssociationAgentIDFound = false;\r\n this.showAssociationAgentIDNotFound = false;\r\n }\r\n\r\n addAssociation(formData: any): void {\r\n this.onPremService.addAssociation(this.agentID, this.channelID, this.regionID, formData.associatedAgentID, this.associatedRegionID)\r\n .pipe(take(1))\r\n .subscribe(apiResponse => {\r\n let agentLinkID = apiResponse.data;\r\n let date = new Date();\r\n date.setDate(date.getDate() - 1);\r\n let yesterdayDateString = this.datePipe.transform(date, 'MM/dd/yyyy');\r\n if (yesterdayDateString !== null) {\r\n this.cloudStorageService.updateDateModified(agentLinkID, yesterdayDateString)\r\n .pipe(take(1))\r\n .subscribe();\r\n }\r\n }\r\n );\r\n\r\n this.closeDetail();\r\n }\r\n\r\n updateAssociation(formData: any): void {\r\n this.onPremService.updateAssociation(this.agentLinkAssociationID, formData.associatedAgentID, this.associatedRegionID)\r\n .pipe(take(1))\r\n .subscribe(apiResponse => {\r\n let agentLinkID = apiResponse.data;\r\n let date = new Date();\r\n date.setDate(date.getDate() - 1);\r\n let yesterdayDateString = this.datePipe.transform(date, 'MM/dd/yyyy');\r\n if (yesterdayDateString !== null) {\r\n this.cloudStorageService.updateDateModified(agentLinkID, yesterdayDateString)\r\n .pipe(take(1))\r\n .subscribe();\r\n }\r\n }\r\n );\r\n\r\n this.closeDetail();\r\n }\r\n\r\n deleteAssociation() {\r\n if (confirm(\"Are you sure you want to delete this Agent Association?\")) {\r\n this.onPremService.deleteAssociation(this.agentLinkAssociationID)\r\n .pipe(take(1))\r\n .subscribe();\r\n\r\n this.showDetail = false;\r\n this.showList = true;\r\n this.showAddButton = true;\r\n }\r\n }\r\n\r\n searchLinkedAgentID(formAgentIdCtrl: AbstractControl, formAgentNameCtrl: AbstractControl) {\r\n var agentId = formAgentIdCtrl.value;\r\n\r\n this.onPremService.getLinkedAgentDetail(agentId)\r\n .pipe(take(1))\r\n .subscribe(apiResponse => {\r\n if (apiResponse.data.length === 0) {\r\n this.showLinkedAgentIDFound = false;\r\n this.showLinkedAgentIDNotFound = true;\r\n }\r\n else {\r\n this.showLinkedAgentIDFound = true;\r\n this.showLinkedAgentIDNotFound = false;\r\n }\r\n\r\n this.setAddButton();\r\n\r\n formAgentIdCtrl.setValue(apiResponse.data[0].agentID);\r\n formAgentNameCtrl.setValue(apiResponse.data[0].name);\r\n this.channelID = apiResponse.data[0].channelID;\r\n this.regionID = apiResponse.data[0].regionID;\r\n });\r\n }\r\n\r\n checkAssociatedAgentID(formAgentIdCtrl: AbstractControl, formAgentNameCtrl: AbstractControl) {\r\n var agentId = formAgentIdCtrl.value;\r\n\r\n this.onPremService.getAgentDetail(agentId)\r\n .pipe(take(1))\r\n .subscribe(apiResponse => {\r\n if (apiResponse.data.length === 0) {\r\n this.showAssociationAgentIDFound = false;\r\n this.showAssociationAgentIDNotFound = true;\r\n //this.disableAdd = true;\r\n this.disableUpdate = true;\r\n }\r\n else {\r\n this.showAssociationAgentIDFound = true;\r\n this.showAssociationAgentIDNotFound = false;\r\n //this.disableAdd = false;\r\n this.disableUpdate = false;\r\n\r\n //if (this.agentID === \"\")\r\n // this.disableAdd = true;\r\n }\r\n\r\n this.setAddButton();\r\n\r\n formAgentIdCtrl.setValue(apiResponse.data[0].agentID);\r\n formAgentNameCtrl.setValue(apiResponse.data[0].name);\r\n this.associatedRegionID = apiResponse.data[0].regionID;\r\n });\r\n }\r\n\r\n resetAddForm(): void {\r\n this.agentLinkAssociationID = 0;\r\n this.agentID = \"\";\r\n this.linkedAgentName = \"\";\r\n this.channelID = 0;\r\n this.regionID = 0;\r\n this.associatedRegionID = 0;\r\n this.associatedAgentID = \"\";\r\n this.associatedAgentName = \"\";\r\n this.showLinkedAgentIDFound = false;\r\n this.showLinkedAgentIDNotFound = false;\r\n this.showAssociationAgentIDFound = false;\r\n this.showAssociationAgentIDNotFound = false;\r\n this.disableAdd = true;\r\n }\r\n\r\n setAddButton(): void {\r\n this.disableAdd = !(this.showLinkedAgentIDFound && this.showAssociationAgentIDFound);\r\n }\r\n\r\n //onAgentChange(formAgentIdCtrl: AbstractControl) {\r\n // var agentId = formAgentIdCtrl.value;\r\n\r\n // if (agentId != \"\") {\r\n // this.onPremService.getAgentDetail(agentId)\r\n // .pipe(take(1))\r\n // .subscribe(apiResponse => {\r\n // this.agentID = apiResponse.data[0].agentID;\r\n // this.channelID = apiResponse.data[0].channelID;\r\n // this.regionID = apiResponse.data[0].regionID;\r\n // });\r\n // this.disableAdd = false;\r\n // }\r\n // else {\r\n // this.disableAdd = true;\r\n // }\r\n //}\r\n\r\n onGridReady(params: any) {\r\n this.gridApi = params.api;\r\n this.gridColumnApi = params.columnApi;\r\n this.gridApi.sizeColumnsToFit();\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Agent Associations (Admin)\r\n

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

    \r\n Agent Link Association Detail\r\n

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n    \r\n \r\n  \r\n Agent ID Found!\r\n \r\n \r\n  \r\n Agent ID Not Found!\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n    \r\n \r\n  \r\n Agent ID Found!\r\n \r\n \r\n  \r\n Agent ID Not Found!\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n    \r\n \r\n  \r\n Agent ID Found!\r\n \r\n \r\n  \r\n Agent ID Not Found!\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { GridApi } from \"ag-grid\";\r\nimport { Observable } from \"rxjs\";\r\nimport { take } from \"rxjs/operators\";\r\nimport { Profile } from \"../../../models/profile\";\r\nimport { CloudStorageService } from \"../../../services/cloud-storage\";\r\nimport { OnPremStorageService } from \"../../../services/onprem-storage\";\r\nimport { SiteParameterService } from \"../../../services/siteparameter.service\";\r\n\r\n@Component({\n selector: 'app-batchhistory',\n templateUrl: './batchhistory.component.html'\n})\nexport class BatchHistoryComponent implements OnInit {\n public batchHistoryRowData: [] = [];\n private gridApi!: GridApi;\n public noRowsTemplate: string = \"\";\n private gridColumnApi: any;\n\n public profile: Profile = {};\n //private impersonationSubscription: Subscription;\n //public agents: AgentGrid[] = [];\n public agents: TempBatchHistoryAgent[] = [];\n public selectedAgentId: string = \"\";\n public selectedAgentName: string = \"\";\n\n columnDefs = [\r\n { field: 'batchNum', headerName: 'Batch No.' },\r\n { field: 'cashAmt', headerName: 'Cash' },\r\n { field: 'suspenseAmt', headerName: 'Suspense' },\r\n { field: 'estCommAmt', headerName: 'Est. Commission' },\r\n { field: 'createDTM', headerName: 'Batch Date' },\r\n { field: 'collectionBatchStatus', headerName: 'Status' },\r\n { field: 'statusUpdateDTM', headerName: 'Status Date' }\r\n ];\r\n defaultColumnDef = {\r\n sortable: true,\r\n resizable: true,\r\n };\n\n constructor(public onPremService: OnPremStorageService, private siteParmService: SiteParameterService, public cloudStorageService: CloudStorageService,) {\n this.noRowsTemplate = this.siteParmService.getGridNoResults();\n //this.agentUpdate = this.siteParmService.getAgentUpdate().subscribe\n // (message => {\n // this.selectedAgentID = message.value;\n // this.getdownlineList();\n // });\n let agent: TempBatchHistoryAgent = {\r\n agentId: \"M1030301\",\r\n agentName: \"Stone, Todd A\"\r\n };\n this.selectedAgentId = agent.agentId;\n this.selectedAgentName = agent.agentName;\n this.getbatchHistory();\n }\n\n ngOnInit(): void {\n this.profile = this.siteParmService.getStaticProfile();\n this.getAgentList();\n }\n\n getbatchHistory() {\r\n this.onPremService.getBatchHistory(this.selectedAgentId)\n .pipe(take(1))\n .subscribe(policyInfo => {\n this.batchHistoryRowData = policyInfo.data;\n });\r\n }\n\n getAgentList(): void {\n //this.cloudStorageService.getLinkedAgents(this.profile.auth0Id)\n // .subscribe(agents => {\n // this.agents = agents;\n // });\n let agents: TempBatchHistoryAgent[] = [];\n\n let agent1: TempBatchHistoryAgent = {\r\n agentId: \"M1030301\",\r\n agentName: \"Stone, Todd A\"\r\n };\n let agent2: TempBatchHistoryAgent = {\r\n agentId: \"M1030665\",\r\n agentName: \"Hessenauer, James\"\r\n };\n let agent3: TempBatchHistoryAgent = {\r\n agentId: \"AML11135\",\r\n agentName: \"LASTRAPES, MARK STEPHEN\"\r\n };\n let agent4: TempBatchHistoryAgent = {\r\n agentId: \"LWWG\",\r\n agentName: \"GUERRIER, WILNER\"\r\n };\n agents.push(agent1);\n agents.push(agent2);\n agents.push(agent3);\n agents.push(agent4);\n\n this.agents = agents;\n }\n\n changeAgentId(e: any) {\r\n this.selectedAgentId = e.target.value;\r\n\r\n //Temporarily acquire selected name for UserID\r\n let arr = e.target.options[e.target.options.selectedIndex].text.split(\"-\");\r\n this.selectedAgentName = arr[1].trim();\r\n\r\n this.getbatchHistory();\r\n }\n\n onGridReady(params: any) {\n this.gridApi = params.api;\n this.gridColumnApi = params.columnApi;\n params.api.sizeColumnsToFit();\n }\n\n onSearchChanged() {\n this.gridApi.setQuickFilter(\n (document.getElementById('search') as HTMLInputElement).value\n );\n }\n}\nexport interface TempBatchHistoryAgent {\n agentId: string,\n agentName: string\n}\n","
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Batch History\r\n

    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, OnInit } from '@angular/core';\nimport { SiteParameterService } from '../../../services/siteparameter.service'\nimport { Profile } from '../../../models/profile'\nimport { Subscription } from 'rxjs';\nimport { CloudStorageService } from '../../../services/cloud-storage';\nimport { alertItem } from '../../../models/alertItem';\n\n@Component({\n selector: 'app-channelnews',\n templateUrl: './channelnews.component.html',\n styleUrls: ['./channelnews.component.css']\n})\nexport class ChannelNewsComponent implements OnInit {\n alertItems: alertItem[] = [];\n profile: Profile;\n accordionExanded: boolean[] = [];\n private subscriptionName: Subscription; //important to create a subscription\n constructor(public cloudStorageService: CloudStorageService, private siteParmService: SiteParameterService) {\n this.profile = this.siteParmService.getStaticProfile();\n this.subscriptionName = this.siteParmService.getChannelUpdate().subscribe\n (message => {\n this.cloudStorageService.getAlertsByChannel(this.profile.channelPreferenceValue)\n .subscribe(alerts => this.alertItems = alerts);\n });\n }\n ngOnInit(): void {\n this.cloudStorageService.getAlertsByChannel(this.profile.channelPreferenceValue)\n .subscribe(alerts =>\n this.alertItems = alerts\n );\n }\n toggleAccordion(index: number) {\n this.accordionExanded[index] = !this.accordionExanded[index];\n }\n getAccordionArrowStyle(index: number) {\n return this.accordionExanded[index] ? 'fas fa-angle-up' : 'fas fa-angle-down';\n }\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.subscriptionName.unsubscribe();\n }\n}\n","
    \n
    \n \n
    \n
    \n \n
    \n
    \n

    \n
    \n
    \n
    \n
    \n

    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n","import { Component, OnInit } from '@angular/core';\nimport { RowSelectedEvent } from 'ag-grid-community';\nimport { DatePipe } from '@angular/common';\nimport { Statement } from '../../../models/statement';\nimport { ReturnDateRangeFromType } from '../../../common/helpers';\nimport { OnPremStorageService } from '../../../services/onprem-storage';\nimport { SiteParameterService } from '../../../services/siteparameter.service';\nimport { Profile } from '../../../models/profile';\nimport { map, take } from 'rxjs/operators';\r\nimport { Observable } from 'rxjs';\r\n\n@Component({\n selector: 'app-commissions',\n templateUrl: './commissions.component.html',\n styleUrls: ['./commissions.component.css']\n})\nexport class CommissionsComponent implements OnInit {\n public showSearch: boolean = false;\n policyType: number = 0;\n timeFrame: string = \"ALL\";\n timeFrameEnable: boolean = true;\n startDate: Date = new Date(\"\");\n endDate: Date = new Date(\"\");\n includedAgents: number = 1;\n public statements$?: Observable;\n public profile!: Profile;\n private gridApi: any;\n private gridColumnApi: any;\n public noRowsTemplate: string;\n\n columnDefs = [\n { field: 'date' },\n { field: 'agentID' },\n { field: 'agentName' },\n { field: 'type' },\n { headerName: 'Download', cellRenderer: (params: any) => { return ''; } },\n ];\n defaultColumnDef = {\n sortable: true,\n resizable: true,\n };\n\n constructor(private onPremService: OnPremStorageService, private siteParmService: SiteParameterService, private datePipe: DatePipe) {\n this.noRowsTemplate = this.siteParmService.getGridNoResults();\n }\n ngOnInit(): void {\n this.profile = this.siteParmService.getStaticProfile();\n }\n changeTimeFrame(e: any) {\n this.timeFrame = e.target.value;\n let [start, end] = ReturnDateRangeFromType(this.timeFrame);\n this.startDate = start!;\n this.endDate = end!;\n }\n searchStatements(): void {\n this.showSearch = true;\n let [start, end] = ReturnDateRangeFromType(this.timeFrame);\n this.startDate = start!;\n this.endDate = end!;\n const startDate = (this.startDate != null ? this.datePipe.transform(this.startDate, 'MM/dd/yyyy') : \"\") as string;\n const endDate = (this.endDate != null ? this.datePipe.transform(this.endDate, 'MM/dd/yyyy') : \"\") as string;\n\n this.statements$ = this.onPremService.searchStatements(this.profile.selectedAgentNumber, this.policyType, startDate, endDate,\n this.includedAgents).pipe(map(response => response.data));\n }\n onRowDoubleClicked(event: RowSelectedEvent) {\n const statement: Statement = event.data;\n this.onPremService.downloadStatement(statement.statementID)\n .pipe(take(1))\n .subscribe(data => {\n const binaryData = [];\n binaryData.push(data);\n const downloadedFile = new Blob(binaryData, { type: data.type });\n const a = document.createElement('a');\n a.setAttribute('style', 'display:none;');\n document.body.appendChild(a);\n a.download = event.data.date.replace('/', '_').trim() + \"_\" + event.data.agentID.trim() + \"_\" + event.data.type.trim() + \"_stmt.pdf\";\n a.href = URL.createObjectURL(downloadedFile);\n a.target = '_blank';\n a.click();\n document.body.removeChild(a);\n });\n }\n onGridReady(params: any) {\n this.gridApi = params.api;\n this.gridColumnApi = params.columnApi;\n this.gridApi.sizeColumnsToFit();\n }\n}\n","
    \n
    \n
    \n
    \n

    \n Commission Statement Search\n

    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Search Results (1 Statement - Double click to download)\n Search Results (0 Statements)\n Search Results ({{(statements$ | async)?.length}} Statements - Double click to download)\n

    \n
    \n
    \n
    \n \n \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'component-loading',\n templateUrl: './componentloading.component.html',\n})\nexport class ComponentLoadingComponent implements OnInit {\n loadingImg =\n 'https://cdn.auth0.com/blog/auth0-react-sample/assets/loading.svg';\n constructor() {}\n\n ngOnInit(): void {}\n}\n","\n","import { Component, OnInit } from '@angular/core';\nimport { HttpEvent, HttpEventType, HttpResponse } from '@angular/common/http';\nimport { Observable, Subscription } from 'rxjs';\nimport { finalize, map, take } from 'rxjs/operators';\r\nimport { Router } from '@angular/router';\r\nimport { environment as env } from '../../../../environments/environment';\r\nimport { fileTarget } from '../../../models/fileTarget';\r\nimport { Profile } from '../../../models/profile';\r\nimport { CloudStorageService } from '../../../services/cloud-storage';\r\nimport { FileUploadService } from '../../../services/fileupload.service';\r\nimport { OnPremStorageService } from '../../../services/onprem-storage';\r\nimport { SiteParameterService } from '../../../services/siteparameter.service';\nimport { DateComparator } from '../../../common/helpers';\r\n\n@Component({\n selector: 'app-fileupload',\n templateUrl: './fileupload.component.html',\n styles: [\n ]\n})\nexport class FileUploadComponent implements OnInit {\n public profile!: Profile;\n private channelUpdate: Subscription;\r\n public showHeaderText = false;\r\n public headerText = \"\";\r\n public fileTargets$?: Observable;\r\n public fileTargetId: number = 0;\r\n public fileExtensionsAllowed: Array = ['.doc', '.docx', '.txt', '.pdf', '.tif', '.tiff', '.xls', '.xlsx'];\r\n public policyNumber: string = '';\r\n public clientName: string = '';\r\n public disableUpload: boolean = true;\r\n public hideUploadButtons: boolean = false;\r\n public currentFile?: File;\r\n public currentFileName: string = '';\r\n public progress: number = 0;\r\n public showUploadComplete: boolean = false;\r\n public message: string = '';\r\n public rowData: [] = [];\r\n public uploadRowCount = 0;\r\n public noRowsTemplate: string = '';\r\n public showSpinner = false;\r\n private gridApi: any;\n private gridColumnApi: any;\r\n columnDefs = [\n { field: 'uploadDtm', headerName: 'Upload Date', minWidth: 100, comparator: DateComparator },\n { field: 'fileIdentifier', headerName: 'Identifier', minWidth: 100 },\n { field: 'uploadCategory', headerName: 'Category', minWidth: 100 },\n { field: 'fileName', headerName: 'File Name', minWidth: 200 },\n { field: 'policyNumber', headerName: 'Policy #', minWidth: 100 },\n { field: 'clientName', headerName: 'Owner Name', minWidth: 100 }\n ];\r\n defaultColumnDef = {\n sortable: true,\n resizable: true,\n };\r\n\r\n constructor(private router: Router, private cloudStorageService: CloudStorageService, private onPremService: OnPremStorageService, private fileUploadService: FileUploadService, private siteParmService: SiteParameterService) {\n this.noRowsTemplate = this.siteParmService.getGridNoResults();\n this.channelUpdate = this.siteParmService.getChannelUpdate().subscribe\n (message => {\n this.profile = this.siteParmService.getStaticProfile(); \n this.getFileTargetListAndMessage();\n });\n }\n\n ngOnInit(): void {\r\n this.profile = this.siteParmService.getStaticProfile();\r\n this.getFileTargetListAndMessage();\r\n this.getFileUploadList();\r\n this.hideUploadFunctions();\r\n }\n\n getFileTargetListAndMessage(): void {\n const selectedBusinessChannel = this.profile ? this.profile.channelPreferenceValue : 0;\n this.fileTargets$ = this.onPremService.getFileTargetList(selectedBusinessChannel).pipe(\r\n map(apiReponse => {\n return apiReponse.data;\r\n }));\n this.cloudStorageService.getChannel(selectedBusinessChannel)\n .pipe(take(1))\n .subscribe(channel => {\n this.headerText = channel.documentUploadPageMessage;\n this.showHeaderText = channel.documentUploadPageMessage == null ? false : true;\n });\n }\n\n getFileUploadList(): void {\n this.onPremService.getFileUploadList(this.profile.auth0Id)\n .pipe(take(1))\n .subscribe(resp => {\n this.rowData = resp.data;\n this.uploadRowCount = resp.data.length;\n });\n }\n\n hideUploadFunctions(): void {\n this.hideUploadButtons = env.dev.disableFileUpload === 'yes';\r\n }\n\n onGridReady(params: any) {\n this.gridApi = params.api;\n this.gridColumnApi = params.columnApi;\n }\n\n onSelectFile(event: any): void {\r\n this.currentFile = event.target.files[0];\r\n this.currentFileName = event.target.files[0].name;\r\n this.validateFields();\r\n }\n\n onFileTargetChange(event: any): void {\r\n this.validateFields();\r\n }\n\n onPolicyNumberChange(event: any): void {\n const invalidChars = /[/\\\\?%*:|\"<>]/g;\n this.policyNumber = event.target.value.replace(invalidChars, '');\r\n }\n\n onClientNameChange(event: any): void {\n const invalidChars = /[/\\\\?%*:|\"<>]/g;\n this.clientName = event.target.value.replace(invalidChars, '');\r\n this.validateFields();\r\n }\n\n validateFields(): void {\n if (this.currentFile !== undefined && this.fileTargetId > 0 && this.clientName.length > 0) {\r\n this.disableUpload = false;\r\n }\r\n else {\r\n this.disableUpload = true;\r\n }\r\n }\n\n uploadFile(): void {\n var ext = this.currentFile?.name.substr(this.currentFile?.name.lastIndexOf('.')).toLowerCase();\n\n if (!this.fileExtensionsAllowed.find(x => x === ext) ) {\n this.message = 'File type is not allowed';\r\n } else if (this.currentFile!.size > env.dev.maxFileSize * 1024) {\n this.message = 'File is too large';\r\n } else if (this.currentFile!.size === 0) {\r\n this.message = 'File contains no data';\r\n }\r\n else {\r\n this.fileUploadService.upload(this.fileTargetId, this.profile.channelPreferenceValue, this.profile.emailAddress, this.profile.auth0Id,\r\n this.profile.selectedAgentNumber, this.policyNumber, this.clientName, this.currentFileName, this.currentFile!)\r\n .pipe(finalize(() => {\r\n this.getFileUploadList();\r\n }))\r\n .subscribe({\r\n next: (event: any) => {\r\n if (event.type === HttpEventType.UploadProgress) {\r\n this.progress = Math.round(100 * event.loaded / event.total);\r\n } else if (event instanceof HttpResponse) {\r\n this.message = event.body.message;\r\n };\r\n if (event.loaded === event.total) {\r\n setTimeout(() => {\r\n this.showUploadComplete = true;\r\n }, 1000);\r\n }\r\n },\r\n error: (err: any) => {\r\n this.progress = 0;\r\n\r\n if (err.error && err.error.message) {\r\n this.message = err.error.message;\r\n this.showUploadComplete = false;\r\n } else {\r\n this.message = 'Error uploading the file';\r\n this.showUploadComplete = false;\r\n }\r\n\r\n this.currentFile = undefined;\r\n }\r\n });\r\n this.disableUpload = true;\r\n }\r\n }\n\n resetUpload(): void {\n this.currentFile = undefined;\r\n this.fileTargetId = 0;\r\n this.policyNumber = '';\r\n this.clientName = '';\r\n this.progress = 0\r\n this.showUploadComplete = false;\r\n this.message = '';\r\n this.disableUpload = true;\r\n }\n\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.channelUpdate.unsubscribe();\n }\n}\n","
    \r\n
    \r\n
    \r\n

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

    \r\n Document Upload\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {{ progress }}% Uploaded\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    {{ message }}
    \r\n
    \r\n
    \r\n
    \r\n \r\n  \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n

    \r\n {{uploadRowCount === 1 ? uploadRowCount + \" Upload\" : uploadRowCount + \" Uploads\"}}\r\n

    \r\n
    \r\n
    \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 } from \"@angular/core\";\r\nimport { ITooltipAngularComp } from \"ag-grid-angular\";\r\nimport { ITooltipParams } from \"ag-grid-community\";\r\n\r\n@Component({\r\n selector: 'grid-tooltip-component',\r\n templateUrl: './grid-tooltip.component.html',\r\n styles: [\r\n `\r\n :host {\r\n position: absolute;\r\n width: 150px;\r\n height: 70px;\r\n pointer-events: none;\r\n transition: opacity 1s;\r\n }\r\n\r\n :host.ag-tooltip-hiding {\r\n opacity: 0;\r\n }\r\n\r\n .custom-tooltip p {\r\n margin: 5px;\r\n white-space: nowrap;\r\n }\r\n\r\n .custom-tooltip p:first-of-type {\r\n font-weight: bold;\r\n }\r\n `,\r\n ],\r\n})\r\nexport class GridTooltipComponent implements ITooltipAngularComp {\r\n private params!: { color: string } & ITooltipParams;\r\n public data!: any;\r\n public color!: string;\r\n\r\n agInit(params: { color: string } & ITooltipParams): void {\r\n this.params = params;\r\n\r\n this.data = params.api!.getDisplayedRowAtIndex(params.rowIndex!)!.data;\r\n this.color = this.params.color || 'white';\r\n }\r\n}\r\n","
    \r\n

    \r\n \r\n TEST\r\n

    \r\n
    \r\n","import { Component, OnInit } from '@angular/core';\nimport { CarouselImage } from '../../../models/carouselimage';\nimport { CloudStorageService } from '../../../services/cloud-storage';\nimport { SiteParameterService } from '../../../services/siteparameter.service';\n\n@Component({\n selector: 'app-hero',\n templateUrl: './hero.component.html',\n})\nexport class HeroComponent implements OnInit {\n heroLogo = 'https://cdn.auth0.com/blog/auth0-angular-sample/assets/logo.png';\n public carouselImages!: Array;\n\n\n constructor(public cloudStorageService: CloudStorageService, private siteParmService: SiteParameterService) { }\n\n ngOnInit(): void {\n this.cloudStorageService.getCarouselImages().subscribe((carouselImages) => {this.carouselImages = carouselImages;});\n }\n}\n","
    \n \n \n \n \"{{carouselImage.description}}\"\n \n \"{{carouselImage.description}}\"\n \n \n
    \n","import { Component, OnInit } from '@angular/core';\nimport { SiteParameterService } from '../../../services/siteparameter.service'\nimport { Observable, Subscription } from 'rxjs';\nimport { OnPremStorageService } from '../../../services/onprem-storage';\nimport { Profile } from '../../../models/profile';\nimport { KPI } from '../../../models/kpi';\r\nimport { map, tap } from 'rxjs/operators';\r\nimport { APIResponse } from '../../../models/apiresponse';\n@Component({\n selector: 'app-kpis',\n templateUrl: './kpis.component.html',\n styleUrls: ['./kpis.component.css']\n})\nexport class KpisComponent implements OnInit {\n public kpis$?: Observable;\n public kpimessage$?: Observable;\n selectedAgentID: any;\n selectedChannel: number = 0;\n profile!: Profile;\n images: Array = [];\n bgColors: Array = [];\n private agentUpdateSubscription: Subscription; //important to create a subscription\n constructor(private onPremService: OnPremStorageService,\n private siteParmService: SiteParameterService) {\n this.agentUpdateSubscription = this.siteParmService.getAgentUpdate().subscribe\n (message => {\n this.selectedAgentID = message.value;\n this.selectedChannel = this.siteParmService.getStaticProfile().channelPreferenceValue;\n this.getKpis();\n });\n }\n ngOnInit(): void {\n this.profile = this.siteParmService.getStaticProfile();\n this.selectedChannel = this.profile.channelPreferenceValue;\n this.selectedAgentID = this.profile.selectedAgentNumber;\n this.getKpis();\n }\n getKpis(): void {\n const response$ = this.onPremService.getKpis(this.selectedAgentID).pipe(\n map(response => response));\n\n this.kpis$ = response$.pipe(\n map(kpi => kpi.data.kpis));\n\n this.kpimessage$ = response$.pipe(\n map(message => message.data.kpimessage));\n }\n public searchKPI(executeSearch: boolean, kpi: string): void {\n if (executeSearch) { this.siteParmService.sendkpiSearchUpdate(kpi); }\n }\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.agentUpdateSubscription.unsubscribe();\n }\n}\n","
    \n
    \n

    \n Key Performance Indicators\n

    \n
    \n
    \n
    \n
    \n
    0\">\n
    \n
    \n
    {{kpimessage.message}}
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    {{kpi.description}}
    \n \n {{kpi.kpiDisplayValue}}\n \n
    {{kpi.subText}} 
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n","import { Component, OnInit } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { map, take } from 'rxjs/operators';\r\nimport { agentLinkCode } from '../../../models/linkCode';\r\nimport { OnPremStorageService } from '../../../services/onprem-storage';\r\nimport { SiteParameterService } from '../../../services/siteparameter.service';\r\nimport { CellClassParams, RowSelectedEvent } from 'ag-grid-community';\r\nimport { AbstractControl } from '@angular/forms';\r\n\r\n\r\n@Component({\r\n selector: 'app-linkcode',\r\n templateUrl: './link-code.component.html',\r\n styles: [\r\n ]\r\n})\r\nexport class LinkCodeComponent implements OnInit {\r\n public showList: boolean = true;\r\n public showDetail: boolean = false;\r\n public showRefreshButton: boolean = true;\r\n public showUpdateForm: boolean = false;\r\n public disableUpdate: boolean = true;\r\n public showAgentIDFound: boolean = false;\r\n public showAgentIDNotFound: boolean = false;\r\n\r\n public linkCodes$?: Observable;\r\n public selectedLinkCode$?: Observable;\r\n public selectedCode: string = \"\";\r\n\r\n private gridApi: any;\r\n public noRowsTemplate: string = \"\";\r\n private gridColumnApi: any;\r\n\r\n private agentLinkCodeID: number = 0;\r\n private agentID: string = \"\";\r\n\r\n columnDefs = [\r\n { field: 'emailAddress', minWidth: 300 },\r\n { field: 'agentID' },\r\n { field: 'code', headerName: 'Link Code' },\r\n { field: 'codeStatus', cellStyle: cellStyle },\r\n { field: 'codeCreateDTM', headerName: 'Code Creation Date/Time' },\r\n ];\r\n defaultColumnDef = {\r\n sortable: true,\r\n resizable: true,\r\n };\r\n\r\n constructor(private onPremService: OnPremStorageService, private siteParmService: SiteParameterService) {\r\n this.noRowsTemplate = this.siteParmService.getGridNoResults();\r\n }\r\n ngOnInit(): void {\r\n this.listLinkCodes();\r\n }\r\n\r\n listLinkCodes() {\r\n this.linkCodes$ = this.onPremService.getAgentLinkCodeRecords().pipe(map(response => response.data));\r\n }\r\n\r\n onRefreshClicked() {\r\n this.listLinkCodes();\r\n }\r\n\r\n onRowClicked(event: RowSelectedEvent) {\r\n this.selectedLinkCode$ = this.onPremService.getAgentLinkCodeRecord(event.data.agentLinkCodeID)\r\n .pipe(map(response => response.data[0]));\r\n\r\n this.agentLinkCodeID = event.data.agentLinkCodeID;\r\n this.selectedCode = event.data.code;\r\n\r\n this.showList = false;\r\n this.showRefreshButton = false;\r\n this.showDetail = true;\r\n this.showUpdateForm = true;\r\n }\r\n\r\n closeDetail() {\r\n this.showAgentIDFound = false;\r\n this.showAgentIDNotFound = false;\r\n this.disableUpdate = true;\r\n\r\n this.showDetail = false;\r\n this.showList = true;\r\n this.showRefreshButton = true;\r\n }\r\n\r\n changeAgentID(event: any) {\r\n this.disableUpdate = true;\r\n this.showAgentIDFound = false;\r\n this.showAgentIDNotFound = false;\r\n }\r\n\r\n updateLinkCode(formData: any): void {\r\n this.onPremService.updateAgentLinkCodeRecord(this.agentLinkCodeID, formData.agentID)\r\n .pipe(take(1))\r\n .subscribe(apiResponse => {\r\n this.selectedCode = apiResponse.data[0].code;\r\n });\r\n\r\n this.showAgentIDFound = false;\r\n this.showAgentIDNotFound = false;\r\n this.disableUpdate = true;\r\n\r\n //this.showDetail = false;\r\n //this.showList = true;\r\n }\r\n\r\n onGridReady(params: any) {\r\n this.gridApi = params.api;\r\n this.gridColumnApi = params.columnApi;\r\n this.gridApi.sizeColumnsToFit();\r\n }\r\n\r\n checkAgentID(formAgentIdCtrl: AbstractControl, formAgentNameCtrl: AbstractControl) {\r\n var agentId = formAgentIdCtrl.value;\r\n\r\n this.onPremService.getAgentDetail(agentId)\r\n .pipe(take(1))\r\n .subscribe(apiResponse => {\r\n if (apiResponse.data.length === 0) {\r\n this.showAgentIDFound = false;\r\n this.showAgentIDNotFound = true;\r\n this.disableUpdate = true;\r\n }\r\n else {\r\n this.showAgentIDFound = true;\r\n this.showAgentIDNotFound = false;\r\n this.disableUpdate = false;\r\n }\r\n\r\n formAgentIdCtrl.setValue(apiResponse.data[0].agentID);\r\n formAgentNameCtrl.setValue(apiResponse.data[0].name);\r\n });\r\n }\r\n}\r\n\r\nfunction cellStyle(params: CellClassParams) {\r\n var color = params.node.data.codeStatusColor.toLowerCase();\r\n var fontColor = '#28a745';\r\n switch (color) {\r\n case 'success':\r\n fontColor = '#28a745';\r\n break;\r\n case 'warning':\r\n fontColor = '#ffc107';\r\n break;\r\n case 'info':\r\n fontColor = '#17a2b8';\r\n break;\r\n case 'danger':\r\n fontColor = '#dc3545';\r\n break;\r\n }\r\n\r\n return {\r\n color: fontColor,\r\n };\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Agent Link Codes (Admin)\r\n

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

    \r\n Agent Link Code Detail\r\n

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n    \r\n \r\n  \r\n Agent ID Found!\r\n \r\n \r\n  \r\n Agent ID Not Found!\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-loading',\n templateUrl: './loading.component.html',\n})\nexport class LoadingComponent implements OnInit {\n loadingImg =\n 'https://cdn.auth0.com/blog/auth0-react-sample/assets/loading.svg';\n constructor() {}\n\n ngOnInit(): void {}\n}\n","
    \n \"Loading...\"\n
    \n","import { Component, OnInit } from \"@angular/core\";\r\nimport { GridApi } from \"ag-grid\";\r\nimport { take } from \"rxjs/operators\";\r\nimport { Profile } from \"../../../models/profile\";\r\nimport { CloudStorageService } from \"../../../services/cloud-storage\";\r\nimport { OnPremStorageService } from \"../../../services/onprem-storage\";\r\nimport { SiteParameterService } from \"../../../services/siteparameter.service\";\r\n\r\n@Component({\n selector: 'app-pendingcollections',\n templateUrl: './pendingcollections.component.html'\n})\nexport class PendingCollectionsComponent implements OnInit {\n public pendingCollectionsRowData: [] = [];\n private gridApi!: GridApi;\n public noRowsTemplate: string = \"\";\n private gridColumnApi: any;\n\n public profile: Profile = {};\n //private impersonationSubscription: Subscription;\n //public agents: AgentGrid[] = [];\n public agents: TempPendingCollectionsAgent[] = [];\n public selectedAgentId: string = \"\";\n public selectedAgentName: string = \"\";\n\n columnDefs = [\r\n { field: 'sequenceNo', headerName: 'Route Seq #' },\r\n { field: 'insuredName', headerName: 'Insured' },\r\n { field: 'policyNum', headerName: 'Policy Number' },\r\n { field: 'cashAmt', headerName: 'Cash' },\r\n { field: 'suspenseAmt', headerName: 'Suspense' },\r\n { field: 'estCommissionAmt', headerName: 'Est. Commission' }\r\n ];\r\n\r\n defaultColumnDef = {\r\n sortable: true,\r\n resizable: true,\r\n };\n\n constructor(public onPremService: OnPremStorageService, private siteParmService: SiteParameterService, public cloudStorageService: CloudStorageService,) {\n this.noRowsTemplate = this.siteParmService.getGridNoResults();\n //this.agentUpdate = this.siteParmService.getAgentUpdate().subscribe\n // (message => {\n // this.selectedAgentID = message.value;\n // this.getdownlineList();\n // });\n let agent: TempPendingCollectionsAgent = {\r\n agentId: \"M1030301\",\r\n agentName: \"Stone, Todd A\"\r\n };\n this.selectedAgentId = agent.agentId;\n this.selectedAgentName = agent.agentName;\n this.getPendingCollections();\n }\n\n ngOnInit(): void {\n this.profile = this.siteParmService.getStaticProfile();\n this.getAgentList();\n }\n\n getPendingCollections() {\r\n this.onPremService.getPendingCollections(this.selectedAgentId)\n .pipe(take(1))\n .subscribe(policyInfo => {\n this.pendingCollectionsRowData = policyInfo.data;\n });\r\n }\n\n getAgentList(): void {\n //this.cloudStorageService.getLinkedAgents(this.profile.auth0Id)\n // .subscribe(agents => {\n // this.agents = agents;\n // });\n let agents: TempPendingCollectionsAgent[] = [];\n\n let agent1: TempPendingCollectionsAgent = {\r\n agentId: \"M1030301\",\r\n agentName: \"Stone, Todd A\"\r\n };\n let agent2: TempPendingCollectionsAgent = {\r\n agentId: \"M1030665\",\r\n agentName: \"Hessenauer, James\"\r\n };\n let agent3: TempPendingCollectionsAgent = {\r\n agentId: \"AML11135\",\r\n agentName: \"LASTRAPES, MARK STEPHEN\"\r\n };\n let agent4: TempPendingCollectionsAgent = {\r\n agentId: \"LWWG\",\r\n agentName: \"GUERRIER, WILNER\"\r\n };\n agents.push(agent1);\n agents.push(agent2);\n agents.push(agent3);\n agents.push(agent4);\n\n this.agents = agents;\n }\n\n changeAgentId(e: any) {\r\n this.selectedAgentId = e.target.value;\r\n\r\n //Temporarily acquire selected name for UserID\r\n let arr = e.target.options[e.target.options.selectedIndex].text.split(\"-\");\r\n this.selectedAgentName = arr[1].trim();\r\n\r\n this.getPendingCollections();\r\n }\n\n onGridReady(params: any) {\n this.gridApi = params.api;\n this.gridColumnApi = params.columnApi;\n params.api.sizeColumnsToFit();\n }\n\n onSearchChanged() {\n this.gridApi.setQuickFilter(\n (document.getElementById('search') as HTMLInputElement).value\n );\n }\n}\n\nexport interface TempPendingCollectionsAgent {\n agentId: string,\n agentName: string\n}\n","
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Pending Collections\r\n

    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \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 { AfterViewInit, Component, OnInit } from '@angular/core';\n\nimport { DatePipe } from '@angular/common';\nimport { ReturnDateRangeFromType, DateComparator } from '../../../common/helpers';\nimport { OnPremStorageService } from '../../../services/onprem-storage';\nimport { SiteParameterService } from '../../../services/siteparameter.service';\nimport { Profile } from '../../../models/profile';\nimport { KPI } from '../../../models/kpi';\nimport { AgentLink } from '../../../models/agentLink';\nimport { Policy } from '../../../models/policy';\nimport { Subscription } from 'rxjs';\nimport { ColDef, RowSelectedEvent } from 'ag-grid-community';\nimport { AgentGrid } from '../../../models/agentGrid';\nimport { CloudStorageService } from '../../../services/cloud-storage';\nimport { map, take } from 'rxjs/operators';\r\nimport { gridColumn } from '../../../models/gridColumn';\r\nimport { CellClickedEvent } from 'ag-grid';\r\nimport { currencyFormatter } from '../../../common/ag-grid-currencyFormatter';\r\n\n@Component({\n selector: 'app-policyinfo',\n templateUrl: './policyinfo.component.html',\n styleUrls: ['./policyinfo.component.css']\n})\nexport class PolicyInfoComponent implements OnInit, AfterViewInit {\n public showSpinner = false;\n public showSearch: boolean = false;\n public showSpinner2 = false;\n public showDetail: boolean = false;\n public searchType: string = \"1\";\n public showReset: boolean = false;\n public showExport: boolean = false;\n public isAnnuityPolicy!: boolean;\n public detailTitleName: string = \"\";\n public kpis: KPI[] = [];\n public agents: AgentGrid[] = [];\n public downlineAgents: AgentLink[] = [];\n public searchRowData: Policy[] = [];\n public coverageRowData: [] = [];\n public paymentRowData: [] = [];\n public withdrawalRowData: [] = [];\n public statusHistoryRowData: [] = [];\n public underwritingStatusRowData: [] = [];\n public allocationRowData: [] = [];\n public hierarchyRowData: [] = [];\n public beneficiaryInfoRowData: [] = [];\n public beneficiaryRowData: [] = [];\n public documentsRowData: [] = [];\n public searchRowCount: number = 0;\n public profile: Profile = {};\n private channelSubscription: Subscription;\n private impersonationSubscription: Subscription;\n private kpiSearchSubscription: Subscription;\n public policyStatus = \"Inforce\";\n public timeFrame: string = \"ALL\";\n private currentDate = new Date();\n public startDate: Date = new Date(\"\");\n public endDate: Date = new Date(\"\");\n public timeFrameStart: Date = new Date(\"\");\n public timeFrameEnd: Date = new Date(\"\");\n public includedAgents: number = 3;\n public insuredName: string = \"\";\n public phone: string = \"\";\n public addressCity: string = \"\";\n public agent: string = \"ANY\";\n public downlineAgent: string = \"ANY\";\n public policy: string = \"\";\n public kpi: number = 0;\n public selectedPolicy: Policy = {};\n private gridApi: any;\n private gridApi1: any;\n private gridApi2: any;\n private gridApi3: any;\n private gridApi4: any;\n private gridApi5: any;\n private gridApi6: any;\n private gridApi7: any;\n private gridApi8: any;\n private gridApi9: any;\n private gridColumnApi: any;\n private gridColumnApi1: any;\n private gridColumnApi2: any;\n private gridColumnApi3: any;\n private gridColumnApi4: any;\n private gridColumnApi5: any;\n private gridColumnApi6: any;\n private gridColumnApi7: any;\n private gridColumnApi8: any;\n private gridColumnApi9: any;\n private gridName: string = \"Policy\";\n public noRowsTemplate: string = \"\";\n public asOfDateMessage: string = \"\";\n public limitMessage: string = \"\";\n public disableTimeFrame: boolean = true;\n public disableAdvancedDates: boolean = true;\n public clientInfoAccordionExpanded: boolean = false;\n public rmaAccordionExpanded: boolean = false;\n public allocationAccordionExpanded: boolean = false;\n searchColumnDefs!: ColDef[];\n coverageColumnDefs = [\n { field: 'coverageType', headerName: 'Coverage', minWidth: 125, maxWidth: 125 },\n { field: 'coveragePlanCode', headerName: 'Plan Code', minWidth: 125, maxWidth: 125 },\n { field: 'coveragePlanDesc', headerName: 'Plan Description', minWidth: 300 },\n { field: 'coveredPerson', headerName: 'Insured', minWidth: 100 },\n { field: 'ageAtIssue', headerName: 'Issue Age', minWidth: 100, maxWidth: 125 },\n { field: 'benefitAmt', headerName: 'Benefit Amount', minWidth: 100, maxWidth: 150 },\n { field: 'expiryDate', headerName: 'Expires', minWidth: 100, maxWidth: 125, comparator: DateComparator },\n { field: 'payUpDate', headerName: 'Paid To', minWidth: 100, maxWidth: 125, comparator: DateComparator }\n ];\n paymentColumnDefs = [\n { field: 'paymentDate', headerName: 'Payment Date', minWidth: 100, maxWidth: 125, comparator: DateComparator },\n { field: 'postDate', headerName: 'Post Date', minWidth: 100, maxWidth: 125, comparator: DateComparator },\n { field: 'premiumAmt', headerName: 'Premium', minWidth: 100, maxWidth: 125 },\n { field: 'source', headerName: 'Source', minWidth: 100}\n ];\n withdrawalColumnDefs = [\n { field: 'withdrawalDate', headerName: 'W/D Date', minWidth: 100, maxWidth: 125, comparator: DateComparator },\n { field: 'grossAmount', headerName: 'Gross W/D', minWidth: 100, maxWidth: 125, comparator: DateComparator },\n { field: 'surrenderCharge', headerName: 'Surr Charge', minWidth: 100, maxWidth: 125 },\n { field: 'mva', headerName: 'MVA', minWidth: 100, maxWidth: 125 },\n { field: 'fedTaxWithheld', headerName: 'Fed WH', minWidth: 100, maxWidth: 125 },\n { field: 'stateTaxWithheld', headerName: 'State WH', minWidth: 100, maxWidth: 125 },\n { field: 'netAmount', headerName: 'Net Amount', minWidth: 100, maxWidth: 125 }\n ];\n statusHistoryColumnDefs = [\n { field: 'status', headerName: 'Status', minWidth: 100 },\n { field: 'date', headerName: 'Status Date', minWidth: 100, comparator: DateComparator },\n ];\n underwritingStatusColumnDefs = [\n { field: 'underwritingItem', headerName: 'Underwriting Item', minWidth: 100 },\n { field: 'code', headerName: 'Code', minWidth: 100 },\n { field: 'requestedDate', headerName: 'Requested Date', minWidth: 100, comparator: DateComparator },\n { field: 'resolvedDate', headerName: 'Resolved Date', minWidth: 100, comparator: DateComparator }\n ];\n hierarchyColumnDefs = [\n { field: 'agentID', headerName: 'Agent ID', minWidth: 100, maxWidth: 125 },\n { field: 'agentName', headerName: 'Agent Name', minWidth: 275 },\n { field: 'level', headerName: 'Level', minWidth: 100, maxWidth: 125 },\n { field: 'commissionPct', headerName: 'Commission %', minWidth: 125, maxWidth: 150 },\n { field: 'agentType', headerName: 'Agent Type', minWidth: 100 }\n ];\n beneficiaryColumnDefs = [\n { field: 'name', headerName: 'Name', minWidth: 300 },\n { field: 'relationship', headerName: 'Relationship', minWidth: 175 },\n { field: 'split', headerName: 'Split %', minWidth: 125, maxWidth: 100 },\n { field: 'type', headerName: 'Type', minWidth: 175 }\n ];\n allocationColumnDefs = [\n { field: 'policyAllocationText', headerName: 'Strategy', minWidth: 300 },\n { field: 'allocationPct', headerName: 'Percentage', minWidth: 100 },\n { field: 'lastAnniversaryValue', headerName: 'Last Anniversary Value', minWidth: 200 },\n { field: 'currentValue', headerName: 'Current Value', minWidth: 200 }\n ];\n documentsColumnDefs = [\n { field: 'fileName', headerName: 'Document Name', minWidth: 275 },\n { field: 'fileType', headerName: 'Document Type', minWidth: 100 },\n { field: 'fileDate', headerName: 'Document Date', minWidth: 100, comparator: DateComparator },\n {\r\n headerName: ' Download', maxWidth: 125, cellStyle: { textAlign: 'center' },\r\n onCellClicked: (event: CellClickedEvent) => this.downloadDocument(event.data),\n cellRenderer: (params: any) => { return ''; }\r\n },\n ];\n defaultColumnDef = {\n sortable: true,\n resizable: true,\n };\n\n constructor(public cloudStorageService: CloudStorageService, private onPremService: OnPremStorageService, private siteParmService: SiteParameterService,\n private datePipe: DatePipe) { //\n this.noRowsTemplate = this.siteParmService.getGridNoResults();\n this.channelSubscription = this.siteParmService.getChannelUpdate().subscribe\n (message => {\n this.getKPIList();\n this.getAgentList();\n this.getDownlineAgentList(this.profile.selectedAgentNumber);\n });\n this.impersonationSubscription = this.siteParmService.getImpersonationUpdate().subscribe\n (message => {\n this.profile = siteParmService.getStaticProfile();\n this.getKPIList();\n this.getAgentList();\n this.getDownlineAgentList(this.profile.selectedAgentNumber);\n });\n this.kpiSearchSubscription = this.siteParmService.getkpiSearchUpdate().subscribe\n (message => {\n if (this.kpis.length > 0) {\n $('#submenu').find(\"*\").removeClass(\"router-link-exact-active\");\n $('#KPI-tab').addClass('router-link-exact-active');\n $('#QuickSearch').removeClass('active');\n $('#AdvancedSearch').removeClass('active');\n $('#KPI').addClass('active');\n this.kpi = this.kpis.filter(k => k.description === message.value)[0].kpiid;\n this.includedAgents = 3;\n this.searchType = \"3\";\n var element = document.getElementById('endOfPage') as HTMLElement;\n this.searchPolicies(element);\n }\n });\n }\n ngOnInit(): void {\n this.profile = this.siteParmService.getStaticProfile();\n this.getKPIList();\n this.getAgentList();\n this.getDownlineAgentList(this.profile.selectedAgentNumber);\n this.setDetailType();\n }\n ngAfterViewInit(): void {\n $('#submenu li a').click(function () {\n $('#submenu').find(\"*\").removeClass(\"router-link-exact-active\");\n $(this).addClass('router-link-exact-active');\n });\n $('#detailMenu li a').click(function () {\n $('#detailMenu').find(\"*\").removeClass(\"router-link-exact-active\");\n $(this).addClass('router-link-exact-active');\n });\n }\n getColumnDefs(): void {\n const channel: number = this.profile.channelPreferenceValue;\n this.onPremService.getGridColumnList(channel, this.gridName)\r\n .pipe(map(resp => {\r\n return resp.data.map((column: gridColumn) => {\r\n return {\r\n field: column[\"field\"], headerName: column[\"header\"], minWidth: column[\"minWidth\"], comparator: column[\"field\"].toLowerCase().includes(\"date\") ? DateComparator : '',\r\n valueFormatter: column[\"valueType\"].toLowerCase().match(\"money\") ? currencyFormatter : '' };\r\n });\r\n }))\r\n .pipe(take(1))\r\n .subscribe(list => {\r\n this.searchColumnDefs = list;\r\n });\n }\n changeTimeFrame(e: any) {\n this.changeTimeFrameDates(e.target.value);\n }\n changeTimeFrameDates(timeFrame: string) {\n let [start, end] = ReturnDateRangeFromType(this.timeFrame);\n this.timeFrameStart = start!;\n this.timeFrameEnd = end!;\n }\n onStartDateSelect(e: Event) {\n this.startDate = (e.target as HTMLInputElement).valueAsDate!;\n if (this.startDate! > this.endDate!) {\n this.endDate = new Date(this.startDate);\n this.endDate.setDate(this.endDate.getDate() + 7);\n }\n }\n onEndDateSelect(e: Event) {\n this.endDate = (e.target as HTMLInputElement).valueAsDate!;\n if (this.startDate! > this.endDate!) {\n this.endDate = new Date(this.startDate);\n this.endDate.setDate(this.endDate.getDate() + 7);\n }\n }\n searchPolicies(element: HTMLElement): void {\n this.showSearch = true;\n this.showSpinner = true;\n this.showDetail = false;\n this.searchRowData = [];\n this.searchRowCount = 0;\n this.asOfDateMessage = \"\";\n this.selectedPolicy = {};\n this.profile = this.siteParmService.getStaticProfile();\n this.getColumnDefs();\n switch (this.searchType) {\n case \"1\":\n let [start, end] = ReturnDateRangeFromType(this.timeFrame);\n this.startDate = start!;\n this.endDate = end!;\n const startDateString = (this.startDate != null ? this.datePipe.transform(this.startDate, 'MM/dd/yyyy') : \"\") as string;\n const endDateString = (this.endDate != null ? this.datePipe.transform(this.endDate, 'MM/dd/yyyy') : \"\") as string;\n\n this.onPremService.searchPolicies(this.profile.selectedAgentNumber, this.policyStatus, startDateString, endDateString,\n this.includedAgents, this.profile.channelPreference)\n .subscribe(response => {\n this.searchRowData = response.policies;\n this.searchRowCount = response.policies.length;\n this.showExport = this.searchRowCount > 0 ? true : false;\n this.asOfDateMessage = response.asOfDateMessage;\n this.limitMessage = response.limitMessage;\n this.showSpinner = false;\n element.scrollIntoView();\n });\n break;\n case \"2\":\n let parsedStartDate = '';\n let parsedEndDate = '';\n\n if (!isNaN(this.startDate.getDay())) {\n const startSearchDate = new Date(this.startDate.getUTCFullYear(), this.startDate.getUTCMonth(), this.startDate.getUTCDate());\n parsedStartDate = this.datePipe.transform(startSearchDate, 'MM/dd/yyyy') as string;\n }\n if (!isNaN(this.endDate.getDay())) {\n const endSearchDate = new Date(this.endDate.getUTCFullYear(), this.endDate.getUTCMonth(), this.endDate.getUTCDate());\n parsedEndDate = this.datePipe.transform(endSearchDate, 'MM/dd/yyyy') as string;\n }\n\n this.onPremService.searchAdvancedPolicies(this.profile.selectedAgentNumber, this.agent, this.downlineAgent, this.policyStatus, parsedStartDate,\n parsedEndDate, this.insuredName, this.addressCity, this.phone, this.policy, this.profile.channelPreference)\n .subscribe(response => {\n this.searchRowData = response.policies;\n this.searchRowCount = response.policies.length;\n this.showExport = this.searchRowCount > 0 ? true : false;\n this.asOfDateMessage = response.asOfDateMessage;\n this.limitMessage = response.limitMessage;\n this.showSpinner = false;\n element.scrollIntoView();\n });\n break;\n case \"3\":\n this.onPremService.searchKpiPolicies(this.profile.selectedAgentNumber, this.kpi, this.includedAgents, this.profile.channelPreference)\n .subscribe(response => {\n this.searchRowData = response.policies;\n this.searchRowCount = response.policies.length;\n this.showExport = this.searchRowCount > 0 ? true : false;\n this.asOfDateMessage = response.asOfDateMessage;\n this.limitMessage = response.limitMessage;\n this.showSpinner = false;\n element.scrollIntoView();\n });\n break;\n };\n }\n clearSearch(searchType: string): void {\n this.showReset = false;\n if (searchType === '2') {\n this.showReset = true;\n this.policyStatus = 'Any';\n this.startDate = new Date(\"\");\n this.endDate = new Date(\"\");\n this.disableAdvancedDates = true;\n $('#AdvancedSearch').addClass('active');\n $('#QuickSearch').removeClass('active');\n $('#KPI').removeClass('active');\n }\n if (searchType === '1') {\n this.policyStatus = 'Inforce';\n this.timeFrame = \"ALL\"\n this.changeTimeFrameDates(\"ALL\");\n this.disableTimeFrame = true;\n $('#QuickSearch').addClass('active');\n $('#AdvancedSearch').removeClass('active');\n $('#KPI').removeClass('active');\n }\n this.searchType = searchType;\n this.searchRowData = [];\n this.showDetail = false;\n this.showSearch = false;\n }\n resetAdvancedSearch(): void {\n this.startDate = new Date(\"\");\n this.endDate = new Date(\"\");\n this.agent = 'ANY';\n this.downlineAgent = 'ANY';\n this.policy = '';\n this.insuredName = '';\n this.addressCity = '';\n this.phone = '';\n this.policyStatus = 'Any';\n this.disableAdvancedDates = true;\n this.limitMessage = '';\n this.searchRowData = [];\n this.searchRowCount = 0;\n }\n checkDates(): void {\n this.disableTimeFrame = false;\n if (this.policyStatus === 'Inforce' || this.policyStatus === 'Pending' || this.policyStatus === 'Past Due') {\n this.timeFrame = \"ALL\"\n this.changeTimeFrameDates(this.timeFrame);\n this.disableTimeFrame = true;\n }\n }\n checkAdvancedDates(): void {\n this.disableAdvancedDates = false;\n if (this.policyStatus === 'Any' || this.policyStatus === 'Inforce' || this.policyStatus === 'Pending' || this.policyStatus === 'Past Due') {\n this.startDate = new Date(\"\");\n this.endDate = new Date(\"\");\n this.disableAdvancedDates = true;\n }\n }\n getKPIList(): void {\n this.onPremService.getKpiList(this.profile.selectedAgentNumber, true)\n .subscribe(kpis => {\n this.kpis = kpis;\n this.kpi = kpis[0].kpiid;\n });\n }\n getAgentList(): void {\n this.cloudStorageService.getLinkedAgents(this.profile.auth0Id)\n .subscribe(agents => {\n this.agents = agents;\n });\n }\n getDownlineAgentList(agentId: string): void {\n if (this.agent === 'ANY')\n agentId = this.profile.selectedAgentNumber;\n\n this.onPremService.getAgentHierarchyList(agentId)\n .subscribe(apiReponse => {\n this.downlineAgents = apiReponse.data;\n });\n }\n setDetailType(): void {\n if (this.profile.channelPreference == 'Annuity' || this.profile.channelPreference == 'Annuity[Bank]') {\n this.isAnnuityPolicy = true;\r\n } else {\n this.isAnnuityPolicy = false;\r\n }\r\n }\n filterFunction(agents: AgentGrid[]): any[] {\n return agents.filter(i => i.channelId === this.profile.channelPreferenceValue);\n }\n onRowClicked(event: RowSelectedEvent) {\n this.selectedPolicy = {};\n this.onPremService.getPolicyDetail(this.profile.selectedAgentNumber, event.data.policyNumber, event.data.regionID, this.profile.channelPreferenceValue)\n .pipe(take(1))\n .subscribe(policyInfo => {\n this.selectedPolicy = policyInfo.data[0];\n this.coverageRowData = policyInfo.data[0].policyCoverages;\n this.paymentRowData = policyInfo.data[0].policyPayments;\n this.withdrawalRowData = policyInfo.data[0].policyWithdrawals;\n this.statusHistoryRowData = policyInfo.data[0].policyStatusHistory;\n this.underwritingStatusRowData = policyInfo.data[0].policyUnderwritingStatus;\n this.hierarchyRowData = policyInfo.data[0].policyHierarchy;\n this.beneficiaryInfoRowData = policyInfo.data[0].policyBeneficiaryInfo;\n this.beneficiaryRowData = policyInfo.data[0].policyBeneficiary;\n this.allocationRowData = policyInfo.data[0].policyAllocation;\n this.documentsRowData = policyInfo.data[0].policyDocuments;\n if (policyInfo.data[0].policyCoverages == null) {\n $('#Coverages-tab').addClass('policymenudisabled');\n }\n if (policyInfo.data[0].policyPayments == null) {\n $('#PremiumHistory-tab').addClass('policymenudisabled');\n }\n if (policyInfo.data[0].policyWithdrawals == null) {\n $('#WithdrawalHistory-tab').addClass('policymenudisabled');\n }\n if (policyInfo.data[0].policyStatusHistory == null) {\n $('#StatusHistory-tab').addClass('policymenudisabled');\n }\n if (policyInfo.data[0].policyUnderwritingStatus == null) {\n $('#Underwriting-tab').addClass('policymenudisabled');\n }\n if (policyInfo.data[0].policyHierarchy == null) {\n $('#Hierarchy-tab').addClass('policymenudisabled');\n }\n if (policyInfo.data[0].annuitantName == '') {\n this.detailTitleName = policyInfo.data[0].insuredName\r\n } else {\n this.detailTitleName = policyInfo.data[0].annuitantName\r\n }\n if (policyInfo.data[0].policyDocuments == null) {\n $('#Documents-tab').addClass('policymenudisabled');\n }\n });\n this.showSearch = false;\n this.showDetail = true;\n }\n displayDetail(detailPageName: string): boolean {\n var show: boolean = false;\n switch (this.profile.channelPreference) {\r\n case 'Annuity': {\r\n if (detailPageName === 'Annuity') {\r\n show = true;\r\n }\r\n else {\r\n show = false;\r\n }\r\n break;\r\n }\r\n case 'Annuity [Bank]': {\r\n if (detailPageName === 'Annuity') {\r\n show = true;\r\n }\r\n else {\r\n show = false;\r\n }\r\n break;\r\n }\r\n default: {\r\n if (detailPageName === 'Annuity') {\r\n show = false;\r\n }\r\n else {\r\n show = true;\r\n }\r\n }\r\n };\r\n return show;\n }\n toggleClientInfoAccordion() {\r\n this.clientInfoAccordionExpanded = !this.clientInfoAccordionExpanded;\r\n }\r\n getClientInfoAccordionArrowStyle() {\r\n return this.clientInfoAccordionExpanded ? 'fas fa-angle-up' : 'fas fa-angle-down';\r\n }\n toggleRmaAccordion() {\r\n this.rmaAccordionExpanded = !this.rmaAccordionExpanded;\r\n }\r\n getRmaAccordionArrowStyle() {\r\n return this.rmaAccordionExpanded ? 'fas fa-angle-up' : 'fas fa-angle-down';\r\n }\n toggleAllocationAccordion() {\r\n this.allocationAccordionExpanded = !this.allocationAccordionExpanded;\r\n }\r\n getAllocationAccordionArrowStyle() {\r\n return this.allocationAccordionExpanded ? 'fas fa-angle-up' : 'fas fa-angle-down';\r\n }\n onGridReady(params: any) {\n this.gridApi = params.api;\n this.gridColumnApi = params.columnApi;\n }\n onGridReady1(params: any) {\n this.gridApi1 = params.api;\n this.gridColumnApi1 = params.columnApi;\n }\n onGridReady2(params: any) {\n this.gridApi2 = params.api;\n this.gridColumnApi2 = params.columnApi;\n }\n onGridReady3(params: any) {\n this.gridApi3 = params.api;\n this.gridColumnApi3 = params.columnApi;\n }\n onGridReady4(params: any) {\n this.gridApi4 = params.api;\n this.gridColumnApi4 = params.columnApi;\n }\n onGridReady5(params: any) {\n this.gridApi5 = params.api;\n this.gridColumnApi5 = params.columnApi;\n }\n onGridReady6(params: any) {\n this.gridApi6 = params.api;\n this.gridColumnApi6 = params.columnApi;\n }\n onGridReady7(params: any) {\n this.gridApi7 = params.api;\n this.gridColumnApi7 = params.columnApi;\n }\n onGridReady8(params: any) {\n this.gridApi8 = params.api;\n this.gridColumnApi8 = params.columnApi;\n }\n onGridReady9(params: any) {\n this.gridApi9 = params.api;\n this.gridColumnApi9 = params.columnApi;\n }\n displayList(list: string): boolean {\n var show: boolean = false;\n switch (this.profile.channelPreference) {\r\n case 'Annuity': {\r\n if (list === 'Underwriting' || list === 'BeneficiaryInfo' || list === 'Documents' || list === 'Withdrawal') {\r\n show = true;\r\n }\r\n break;\r\n }\r\n case 'Annuity [Bank]': {\r\n if (list === 'Underwriting' || list === 'BeneficiaryInfo' || list === 'Documents' || list === 'Withdrawal') {\r\n show = true;\r\n }\r\n break;\r\n }\r\n case 'Pre-Need': {\r\n if (list === 'BeneficiaryInfo') {\r\n show = true;\r\n }\r\n break;\r\n }\r\n case 'Home Service': {\r\n if (list === 'BeneficiaryInfo') {\r\n show = true;\r\n }\r\n break;\r\n }\r\n case 'Home Service [Career]': {\r\n if (list === 'BeneficiaryInfo') {\r\n show = true;\r\n }\r\n break;\r\n }\r\n default: {\r\n show = false;\r\n }\r\n };\r\n return show;\r\n }\n closeDetail() {\n this.clientInfoAccordionExpanded = false;\n this.rmaAccordionExpanded = false;\n this.showDetail = false;\n this.showSearch = true;\n }\n printPage() {\r\n if (this.profile.channelPreference === 'Annuity' || this.profile.channelPreference === 'Annuity [Bank]') {\r\n $('#annuityClientInfoCollapse').addClass(\"show\");\r\n window.scrollTo(0, 0);\r\n window.print();\r\n $('#annuityClientInfoCollapse').removeClass(\"show\");\r\n } else {\r\n window.scrollTo(0, 0);\r\n window.print();\r\n }\r\n }\n addDays(date: Date, days: number) {\n var result = new Date(date);\n result.setDate(result.getDate() + days);\n return result;\n }\n detailTabView(link: string) {\n $('#detailMenu').find(\"*\").removeClass(\"router-link-exact-active\");\n $(link).addClass('router-link-exact-active');\n }\n exportToExcel() {\n const params = {\n fileName: this.profile.selectedAgentNumber + '_Policies',\n sheetName: 'Policies'\n };\n this.gridApi.exportDataAsExcel(params);\n }\n downloadDocument(data: any) {\n const policyNumber = data.policyNumber;\n const documentDate = data.fileDate.replaceAll('/', '').trim();\n this.onPremService.downloadDocument(data.policyDocumentID)\n .pipe(take(1))\n .subscribe(data => {\n const binaryData = [];\n binaryData.push(data);\n const downloadedFile = new Blob(binaryData);\n const a = document.createElement('a');\n a.setAttribute('style', 'display:none;');\n document.body.appendChild(a);\n a.download = \"LBIG\" + \"_\" + policyNumber + \"_\" + documentDate + \".pdf\";\n a.href = URL.createObjectURL(downloadedFile);\n a.target = '_blank';\n a.click();\n document.body.removeChild(a);\n });\n }\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.channelSubscription.unsubscribe();\n this.impersonationSubscription.unsubscribe()\n this.kpiSearchSubscription.unsubscribe();\n }\n}\n","
    \n
    \n
    \n
    \n

    \n Policy Search\n

    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n   \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Search Results – {{searchRowCount === 1 ? searchRowCount + \" Policy\" : searchRowCount + \" Policies\"}}  {{asOfDateMessage}}\n

    \n
    \n
    \n
    \n

    {{limitMessage}}

    \n \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n \n Policy Detail -\n {{selectedPolicy.policyNumber ? selectedPolicy.policyNumber + \" - \" + detailTitleName + \"   [ values as of \" + selectedPolicy.asOfDate + \" ]\": \"Loading...\"}}\n \n

    \n
    \n
    \n     \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    Error Loading Policy Information
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n\n
    \n\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n Insured\n
    \n
    \n
    \n
    \n
    \n
    {{selectedPolicy.insuredName}}
    \n
    \n
    \n
    \n
    \n
    {{selectedPolicy.insuredAddress}}
    \n
    \n
    \n
    \n
    \n
    Phone: {{ selectedPolicy.insuredPhone | phone }}
    \n
    \n
    \n
    \n
    \n
    DOB: {{selectedPolicy.insuredDob}}
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n Owner\n
    \n
    \n
    \n
    \n
    \n
    {{selectedPolicy.ownerName}}
    \n
    \n
    \n
    \n
    \n
    {{selectedPolicy.ownerAddress}}
    \n
    \n
    \n
    \n
    \n
    Phone: {{ selectedPolicy.ownerPhone | phone }}
    \n
    \n
    \n
    \n
    \n
    DOB: {{selectedPolicy.ownerDob}}
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n Payor\n
    \n
    \n
    \n
    \n
    \n
    {{selectedPolicy.payorName}}
    \n
    \n
    \n
    \n
    \n
    {{selectedPolicy.payorAddress}}
    \n
    \n
    \n
    \n
    \n
    Phone: {{ selectedPolicy.payorPhone | phone }}
    \n
    \n
    \n
    \n
    \n
    DOB: {{selectedPolicy.payorDob}}
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    Error Loading Policy Information
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n\n
    \n
    \n
    \n
    \n\n \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    0\">\n
    \n
    \n\n
    \n\n
    \n\n

    \n \n Allocations  \n \n

    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n\n
    \n\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n Annuitant\n
    \n
    \n
    \n
    \n
    \n
    {{selectedPolicy.annuitantName}}
    \n
    \n
    \n
    \n
    \n
    {{selectedPolicy.annuitantAddress}}
    \n
    \n
    \n
    \n
    \n
    Phone: {{ selectedPolicy.annuitantPhone | phone }}
    \n
    \n
    \n
    \n
    \n
    DOB: {{selectedPolicy.annuitantDob}}
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n Owner\n
    \n
    \n
    \n
    \n
    \n
    {{selectedPolicy.ownerName}}
    \n
    \n
    \n
    \n
    \n
    {{selectedPolicy.ownerAddress}}
    \n
    \n
    \n
    \n
    \n
    Phone: {{ selectedPolicy.ownerPhone | phone }}
    \n
    \n
    \n
    \n
    \n
    DOB: {{selectedPolicy.ownerDob}}
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n Joint Owner\n
    \n
    \n
    \n
    \n
    \n
    {{selectedPolicy.jointOwnerName}}
    \n
    \n
    \n
    \n
    \n
    {{selectedPolicy.jointOwnerAddress}}
    \n
    \n
    \n
    \n
    \n
    Phone: {{ selectedPolicy.jointOwnerPhone | phone }}
    \n
    \n
    \n
    \n
    \n
    DOB: {{selectedPolicy.jointOwnerDob}}
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n\n
    \n
    \n
    \n \n \n
    \n
    \n
    \n\n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n","import { group } from '@angular/animations';\nimport { Component, OnInit } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { take } from 'rxjs/operators';\r\nimport { documentGroup } from '../../../models/documentGroup';\nimport { Profile } from '../../../models/profile';\nimport { CloudStorageService } from '../../../services/cloud-storage';\nimport { OnPremStorageService } from '../../../services/onprem-storage';\r\nimport { SiteParameterService } from '../../../services/siteparameter.service';\n\n@Component({\n selector: 'app-quicklinks',\n templateUrl: './quicklinks.component.html',\n styleUrls: ['./quicklinks.component.css']\n})\nexport class QuickLinksInfoComponent implements OnInit {\n public groupsLeft!: documentGroup[];\n public groupsRight!: documentGroup[];\n public profile: Profile;\n public accordionColumn: string = \"\";\n public accordionCollapsed: boolean[] = [];\n private subscriptionName: Subscription; //important to create a subscription\n\n constructor(private cloudStorageService: CloudStorageService, private siteParmService: SiteParameterService, private onPremService: OnPremStorageService,) {\n this.profile = this.siteParmService.getStaticProfile();\n this.subscriptionName = this.siteParmService.getAgentUpdate().subscribe\n (message => {\n this.profile = siteParmService.getStaticProfile();\n this.getDocuments();\n });\n }\n\n ngOnInit(): void {\n this.getDocuments();\n }\n getDocuments() {\n this.cloudStorageService.getDocuments(this.profile.channelPreferenceValue)\n .subscribe((groups) => {\n groups.forEach(g => g.documents.forEach(d => {\n if (d.externalLink) { \n Object.entries(this.profile).forEach(([key, value]) => {\r\n const replaceToken = '<' + key + '>';\r\n if (d.linkUrl.indexOf(replaceToken) > 0) {\r\n d.linkUrl = d.linkUrl.replace(replaceToken, value);\r\n }\r\n });\r\n }\r\n }));\n this.groupsLeft = groups.filter(l => l.direction === 'L');\n this.groupsRight = groups.filter(l => l.direction === 'R');\n });\r\n }\n externalLinkClick(link: string) {\n this.onPremService.getExternalLink(link)\n .pipe(take(1))\n .subscribe(redirect => {\n if (redirect) { \n const a = document.createElement('a');\n a.setAttribute('style', 'display:none;');\n document.body.appendChild(a);\n a.href = redirect.data.url;\n a.target = '_blank';\n a.click();\n document.body.removeChild(a);\n }\n });\r\n return link;\r\n }\n toggleAccordion(side: string, index: number) {\n this.accordionColumn = side;\n this.accordionCollapsed[index] = !this.accordionCollapsed[index];\n }\n getAccordionArrowStyle(side: string, index: number) {\n var style = 'fas fa-angle-up';\n\n if (side == this.accordionColumn) {\n style = this.accordionCollapsed[index] ? 'fas fa-angle-down' : 'fas fa-angle-up';\n }\n return style;\n }\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.subscriptionName.unsubscribe();\n }\n}\n","\n","import { Component, OnInit } from '@angular/core';\nimport { SiteParameterService } from '../../../services/siteparameter.service'\nimport { Observable, Subscription } from 'rxjs';\nimport { OnPremStorageService } from '../../../services/onprem-storage';\nimport { Profile } from '../../../models/profile';\nimport { map, take } from 'rxjs/operators';\r\nimport { Report } from '../../../models/report';\r\nimport { AgentLink } from '../../../models/agentLink';\r\n\n@Component({\n selector: 'app-reports',\n templateUrl: './reports.component.html',\n styleUrls: ['./reports.component.css']\n})\nexport class ReportsComponent implements OnInit {\n warning: string = \"Warning\";\n info: string = \"Info\";\n selectedAgentID: string = \"\";\n agentToken: string = \"\";\n profile!: Profile;\n subscriptionName: Subscription;\n public downlineAgentId?: string;\n public downlineAgents$?: Observable;\n public reports$?: Observable;\n\n constructor(private onPremService: OnPremStorageService, private siteParmService: SiteParameterService) {\n this.subscriptionName = this.siteParmService.getAgentUpdate().subscribe\n (message => {\n this.selectedAgentID = message.value;\n this.downlineAgentId = this.selectedAgentID;\n this.getDownlineAgentList();\n this.getReports();\n });\n }\n ngOnInit(): void {\n this.profile = this.siteParmService.getStaticProfile();\n this.selectedAgentID = this.profile.selectedAgentNumber;\n this.getReports();\n this.downlineAgentId = this.selectedAgentID;\n this.getDownlineAgentList();\n }\n getDownlineAgentList(): void {\n this.downlineAgents$ = this.onPremService.getAgentHierarchyList(this.selectedAgentID).pipe(\r\n map(apiReponse => apiReponse.data));\n }\n getReports(): void {\n this.reports$ = this.onPremService.getReports(this.selectedAgentID).pipe(\r\n map(report => report.data));\r\n }\n getReport(url: string): void {\n this.onPremService.getAgentToken(this.downlineAgentId!)\n .pipe(take(1))\n .subscribe(t => {\n let reportURL = url.replace(this.selectedAgentID, this.downlineAgentId!) + t.data.token;\n window.open(reportURL, '_blank');\n });\n }\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.subscriptionName.unsubscribe();\n }\n}\n","
    0\" class=\"row justify-content-center\">\n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n

    \n Reports\n

    \n
    \n
    \n
    \n
    \n
    \n \n\n public policyNumber: string = \"\";\n public sequenceNo: string = \"\";\n public routeSequenceId: string = \"\";\n public modalPremium: number = 0.00;\n public premiumDue: number = 0.00;\n public monthsPaid: number = 0;\n public minimumMonths: number = 0;\n public groupModalPremium: number = 0.00;\n public groupPremiumDue: number = 0.00;\n public premiumGroupCollected: number = 0.00;\n public monthsGroupPaid: number = 0;\n public currentGroupCommRate: number = 0.00;\n public estimatedGroupCommission: number = 0.00;\n\n private collectionId!: string;\n private regionId: number = 0;\n private collectionAgentId: string = \"\";\n private cashAmount: number = 0.00;\n private suspenseAmount: number = 0.00;\n private insuredName: string = \"\";\n private payorName: string = \"\";\n public premiumCollected: number = 0.00;\n public currentCommRate: number = 0.00;\n public estimatedCommission: number = 0.00;\n\n public contactName: string = \"\";\r\n public contactAddressLine1: string = \"\";\r\n public contactAddressLine2: string = \"\";\r\n public contactCity: string = \"\";\r\n public contactState: string = \"\";\r\n public contactZip: string = \"\";\r\n public contactEmailAddress: string = \"\";\r\n public contactPhone: string = \"\";\r\n public contactNotes: string = \"\";\n\n\n private gridApi!: GridApi;\n public noRowsTemplate: string = \"\";\n public groupDefaultExpanded = 1;\n private gridColumnApi: any;\n public profile: Profile = {};\n //private impersonationSubscription: Subscription;\n //public agents: AgentGrid[] = [];\n public agents: TempAgent[] = [];\n public selectedAgentId: string = \"\";\n public selectedAgentName: string = \"\";\n\n public testText$?: Observable;\n\n public columnDefs = [\n { field: 'sequenceNo', headerName: 'Route Seq #', rowGroup: true, hide: true },\n { field: 'insuredName', headerName: 'Insured' },\n { field: 'payorName', headerName: 'Payor' },\n { field: 'policyNum', headerName: 'Policy #', minWidth: 100, maxWidth: 100 },\n { field: 'modalPremium', headerName: 'Modal Prem', valueFormatter: currencyFormatter, minWidth: 130, maxWidth: 130 },\n { field: 'monthsDue', headerName: 'Months Due', minWidth: 130, maxWidth: 130 },\n { field: 'premiumDue', headerName: 'Prem Due', minWidth: 125, maxWidth: 125, valueFormatter: currencyFormatter },\n { field: 'paidToDate', headerName: 'Paid-To Date', minWidth: 150, maxWidth: 150 },\n { field: 'collectionAmt', headerName: 'Prem Collected', minWidth: 150, maxWidth: 150, valueFormatter: currencyFormatter }\n ];\n public defaultColumnDef = {\n sortable: true,\n resizable: true,\n };\n public autoGroupColumnDef: ColDef = {\r\n headerName: 'Route Seq #',\r\n cellRendererParams: {\r\n suppressCount: true,\r\n //checkbox: true,\r\n //checkboxSelection: true,\r\n },\r\n minWidth: 200, maxWidth: 200,\r\n //cellStyle: { color: 'red', backgroundColor: 'green' }\r\n };\n\n public gridOptions: GridOptions = {\n context: this\n }\n\n constructor(public onPremService: OnPremStorageService, private siteParmService: SiteParameterService, public cloudStorageService: CloudStorageService,) {\n this.noRowsTemplate = this.siteParmService.getGridNoResults();\n //this.agentUpdate = this.siteParmService.getAgentUpdate().subscribe\n // (message => {\n // this.selectedAgentID = message.value;\n // this.getdownlineList();\n // });\n let agent: TempAgent = {\r\n agentId: \"M1030301\",\r\n agentName: \"Stone, Todd A\"\r\n };\n this.selectedAgentId = agent.agentId;\n this.selectedAgentName = agent.agentName;\n this.getRouteList();\n this.getTotalCollectedAmount();\n }\n\n ngOnInit(): void {\n this.profile = this.siteParmService.getStaticProfile();\n this.getAgentList();\n }\n\n getRouteList() {\r\n this.routeList$ = this.onPremService.getRouteList(this.selectedAgentId,'').pipe(map(response => response.data));\r\n\r\n\r\n\r\n }\n\n getTotalCollectedAmount() {\n this.testText$ = this.routeList$?.pipe(\r\n map(arr => arr.reduce((a, b) => a + b.collectionAmt, 0)));\r\n }\n\n getAgentList(): void {\n //this.cloudStorageService.getLinkedAgents(this.profile.auth0Id)\n // .subscribe(agents => {\n // this.agents = agents;\n // });\n let agents: TempAgent[] = [];\n\n let agent1: TempAgent = {\r\n agentId: \"M1030301\",\r\n agentName: \"Stone, Todd A\"\r\n };\n let agent2: TempAgent = {\r\n agentId: \"M1030665\",\r\n agentName: \"Hessenauer, James\"\r\n };\n let agent3: TempAgent = {\r\n agentId: \"AML11135\",\r\n agentName: \"LASTRAPES, MARK STEPHEN\"\r\n };\n let agent4: TempAgent = {\r\n agentId: \"LWWG\",\r\n agentName: \"GUERRIER, WILNER\"\r\n };\n agents.push(agent1);\n agents.push(agent2);\n agents.push(agent3);\n agents.push(agent4);\n\n this.agents = agents;\n }\n\n changeAgentId(e: any) {\r\n this.selectedAgentId = e.target.value;\r\n\r\n //Temporarily acquire selected name for UserID\r\n let arr = e.target.options[e.target.options.selectedIndex].text.split(\"-\");\r\n this.selectedAgentName = arr[1].trim();\r\n\r\n this.getRouteList();\r\n }\n\n clearForm() {\n this.policyNumber = \"\";\n this.sequenceNo = \"\";\n this.routeSequenceId = \"\";\n this.modalPremium = 0.00;\n this.premiumDue = 0.00;\n this.monthsPaid = 0;\n this.minimumMonths = 0;\n this.collectionId = \"\";\n this.regionId = 0;\n this.collectionAgentId = \"\";\n this.cashAmount = 0.00;\n this.suspenseAmount = 0.00;\n this.insuredName = \"\";\n this.payorName = \"\";\r\n\r\n this.groupModalPremium = 0.00;\n this.groupPremiumDue = 0.00;\n this.premiumGroupCollected = 0.00;\n this.monthsGroupPaid = 0;\r\n }\n\n onRowClicked(event: RowSelectedEvent) {\r\n if (event.node.isSelected()) {\r\n if (!event.node.key) {\r\n this.getCollection(event.data);\r\n this.openCollectionForm();\r\n }\r\n }\r\n }\n\n openCollectionForm() {\r\n this.showCollectionParameters = false;\r\n this.showCollectionList = false;\r\n this.showCollectionForm = true;\r\n }\n\n closeCollectionForm() {\r\n this.clearForm();\r\n this.showCollectionParameters = true;\r\n this.showCollectionList = true;\r\n this.showCollectionForm = false;\r\n this.showNoPremiumCollected = false;\r\n }\n\n openGroupCollectionForm() {\r\n this.showCollectionParameters = false;\r\n this.showCollectionList = false;\r\n this.showGroupCollectionForm = true;\r\n }\n\n closeGroupCollectionForm() {\r\n this.clearForm();\r\n this.showCollectionParameters = true;\r\n this.showCollectionList = true;\r\n this.showGroupCollectionForm = false;\r\n this.showNoGroupPremiumCollected = false;\r\n }\n\n getCollection(data: any): void {\n if (data.collectionID === null) {\r\n this.policyNumber = data.policyNum;\n this.sequenceNo = data.sequenceNo;\r\n this.routeSequenceId = data.routeSequenceID\r\n this.modalPremium = data.modalPremium;\r\n this.premiumDue = data.premiumDue;\r\n this.monthsPaid = data.monthsDue;\r\n this.showLapseAlert = data.monthsDue > 3 ;\r\n this.minimumMonths = data.monthsDue > 3 ? this.monthsPaid : 0;\r\n this.premiumCollected = data.premiumDue;\r\n this.currentCommRate = data.currentCommRate;\r\n this.estimatedCommission = this.premiumCollected * this.currentCommRate;\r\n\r\n this.regionId = data.regionID;\n this.collectionAgentId = this.selectedAgentName;\n this.cashAmount = this.premiumDue;\n this.insuredName = data.insuredName;\n this.payorName = data.payorName;\r\n } else {\r\n this.onPremService.getCollection(data.collectionID)\r\n .pipe(take(1))\r\n .subscribe(response => {\r\n this.collectionId = response.data[0].collectionID;\r\n this.policyNumber = response.data[0].policyNum;\n this.sequenceNo = response.data[0].sequenceNo;\r\n this.modalPremium = response.data[0].modalPremium;\r\n this.premiumDue = response.data[0].premiumDue;\r\n this.monthsPaid = response.data[0].monthsPaid;\r\n this.showLapseAlert = response.data[0].monthsDue > 3;\r\n this.minimumMonths = response.data[0].monthsDue > 3 ? response.data[0].monthsDue : 0;\r\n this.premiumCollected = response.data[0].cashAmt + response.data[0].suspenseAmt;\r\n this.currentCommRate = response.data[0].currentCommRate;\r\n this.estimatedCommission = response.data[0].premiumDue * response.data[0].currentCommRate;\r\n this.regionId = response.data[0].regionID;\n this.collectionAgentId = response.data[0].collectionAgentID;\n this.cashAmount = response.data[0].cashAmt;\n this.suspenseAmount = response.data[0].suspenseAmt;\n this.insuredName = response.data[0].insuredName;\n this.payorName = response.data[0].payorName;\r\n });\r\n }\r\n }\n\n addCollection(formData: any): void {\r\n if (this.premiumCollected > 0) {\r\n //this.onPremService.saveCollection(this.collectionId, this.regionId, this.policyNumber, this.selectedAgentId, this.collectionAgentId,\r\n // this.monthsPaid, this.cashAmount, this.suspenseAmount, this.selectedAgentName, this.modalPremium, this.currentCommRate, this.insuredName,\r\n // this.payorName, this.sequenceNo)\r\n // .pipe(take(1))\r\n // .subscribe(response => {\r\n // this.getTotalCollectedAmount();\r\n // });\r\n\r\n this.closeCollectionForm();\r\n }\r\n else {\r\n this.showNoPremiumCollected = true;\r\n }\r\n }\n\n deleteCollection(collectionId: string): void {\n if (confirm(\"Are you sure you want to delete this payment?\")) {\n this.onPremService.deleteCollection(collectionId)\r\n .pipe(take(1))\r\n .subscribe(response => {\r\n this.getTotalCollectedAmount();\r\n });\n\n this.closeCollectionForm();\n }\n }\n\n setGroupCollectionValues(listCollection: any) {\r\n var premiumSum = 0;\r\n var premiumDueSum = 0;\r\n this.collectionId = listCollection[0].data.collectionID;\r\n this.sequenceNo = listCollection[0].data.sequenceNo;\r\n this.routeSequenceId = listCollection[0].data.routeSequenceID;\r\n this.monthsGroupPaid = listCollection[0].data.monthsDue;\r\n this.showLapseAlert = listCollection[0].data.monthsDue > 3;\r\n this.minimumMonths = listCollection[0].data.monthsDue > 3 ? this.monthsGroupPaid : 0;\r\n this.currentGroupCommRate = listCollection[0].data.currentCommRate;\r\n this.collectionAgentId = this.selectedAgentName;\r\n\r\n for (var i = 0; i < listCollection.length; i++) {\r\n premiumSum += listCollection[i].data.modalPremium;\r\n premiumDueSum += listCollection[i].data.premiumDue;\r\n }\r\n\r\n this.groupModalPremium = premiumSum;\r\n this.groupPremiumDue = premiumDueSum;\r\n\r\n this.premiumGroupCollected = premiumSum * listCollection[0].data.monthsDue;\r\n this.estimatedGroupCommission = premiumSum * listCollection[0].data.monthsDue * listCollection[0].data.currentCommRate;\r\n }\n\n checkToDisableAddGroupCollection(listCollection: any): boolean {\n var disable = false;\n var collectedSum = 0;\n var monthsDueArray = [];\n\n if (listCollection[0].data.sequenceNo == 'UNSEQUENCED') {\n disable = true;\r\n }\n else {\n for (var i = 0; i < listCollection.length; i++) {\r\n collectedSum += listCollection[i].data.collectionAmt;\r\n monthsDueArray.push(listCollection[i].data.monthsDue)\r\n }\r\n\r\n if (collectedSum > 0 || !(monthsDueArray.every(value => { return value === listCollection[0].data.monthsDue; }))) {\r\n disable = true;\r\n }\r\n }\n return disable;\r\n }\n\n addGroupCollection(formData: any): void {\r\n if (this.premiumGroupCollected > 0) { \r\n this.onPremService.saveGroupCollection(this.routeSequenceId, this.selectedAgentId, this.collectionAgentId, this.monthsGroupPaid,\r\n this.premiumGroupCollected, this.selectedAgentName)\r\n .finally(() => {\r\n this.closeGroupCollectionForm();\r\n this.getTotalCollectedAmount();\r\n }); \r\n }\r\n else {\r\n this.showNoGroupPremiumCollected = true;\r\n }\r\n }\n\n checkToDeleteGroupCollection(listCollection: any): boolean {\n var collectedSum = 0;\n\n for (var i = 0; i < listCollection.length; i++) {\r\n collectedSum += listCollection[i].data.collectionAmt;\r\n }\r\n\n return collectedSum === 0;\r\n }\n\n deleteGroupCollection(routeSequenceId: string): void {\n if (confirm(\"Are you sure you want to delete this group payment?\")) {\n this.onPremService.deleteGroupCollection(routeSequenceId)\r\n .finally(() => {\r\n this.getTotalCollectedAmount();\r\n this.refreshGrid();\r\n });\r\n }\n }\n\n openSequenceNumberForm() {\r\n this.showCollectionParameters = false;\r\n this.showCollectionList = false;\r\n this.showSequenceNumberForm = true;\r\n }\n\n closeSequenceNumberForm() {\r\n this.showCollectionParameters = true;\r\n this.showCollectionList = true;\r\n this.showSequenceNumberForm = false;\r\n }\n\n getSequenceNumberInfo(data: any): void {\n this.regionId = data.regionID;\n this.policyNumber = data.policyNum;\n this.sequenceNo = data.sequenceNo === 'UNSEQUENCED' ? '' : data.sequenceNo;\n }\n\n updateSequenceNumber(formData: any): void {\r\n this.onPremService.saveSequence(this.regionId, this.policyNumber, this.selectedAgentId, trim(formData.sequenceNo), this.selectedAgentName)\r\n .pipe(take(1))\r\n .subscribe();\r\n\r\n this.closeSequenceNumberForm(); \r\n }\n\n openSequenceContactForm() {\r\n this.showCollectionParameters = false;\r\n this.showCollectionList = false;\r\n this.showSequenceContactForm = true;\r\n }\n\n closeSequenceContactForm() {\r\n this.showCollectionParameters = true;\r\n this.showCollectionList = true;\r\n this.showSequenceContactForm = false;\r\n }\n\n getSequenceContactInfo(data: any): void {\n this.routeSequenceId = data.routeSequenceID;\n this.sequenceNo = data.sequenceNo;\n\n this.onPremService.getSequenceContact(this.routeSequenceId)\r\n .pipe(take(1))\r\n .subscribe(response => {\r\n this.contactName = response.data[0].name;\r\n this.contactAddressLine1 = response.data[0].addressLine1;\r\n this.contactAddressLine2 = response.data[0].addressLine2;\r\n this.contactCity = response.data[0].city;\r\n this.contactState = response.data[0].state;\r\n this.contactZip = response.data[0].zip;\r\n this.contactEmailAddress = response.data[0].emailAddress;\r\n this.contactPhone = response.data[0].phone;\r\n this.contactNotes = response.data[0].notes;\r\n });\n }\n\n updateSequenceContact(formData: any): void {\r\n this.onPremService.saveSequenceContact(this.routeSequenceId, this.sequenceNo, this.contactName, this.contactAddressLine1, this.contactAddressLine2,\r\n this.contactCity, this.contactState, this.contactZip, this.contactEmailAddress, this.contactPhone, this.contactNotes, this.selectedAgentName )\r\n .pipe(take(1))\r\n .subscribe();\r\n\r\n this.closeSequenceContactForm(); \r\n }\n\n onGridReady(params: any) {\n this.gridApi = params.api;\n this.gridColumnApi = params.columnApi;\n params.api.sizeColumnsToFit();\n }\n\n getContextMenuItems(\r\n params: GetContextMenuItemsParams\r\n ): (string | MenuItemDef)[] {\r\n var result: (string | MenuItemDef)[] = [\r\n {\r\n name: 'Collect/Update Payment',\r\n action: () => {\r\n params.context.openCollectionForm();\r\n params.context.getCollection(params.node!.data);\r\n }\r\n },\r\n {\r\n name: 'Delete Payment',\r\n action: () => {\r\n params.context.deleteCollection(params.node!.data.collectionID);\r\n params.context.refreshGrid();\r\n },\r\n disabled: !params.node!.data.collectionID,\r\n },\r\n {\r\n name: 'Edit Sequence Number',\r\n action: () => {\r\n params.context.openSequenceNumberForm();\r\n params.context.getSequenceNumberInfo(params.node!.data);\r\n },\r\n },\r\n 'separator',\r\n {\r\n name: 'Collect Entire Sequence',\r\n action: () => {\r\n params.context.setGroupCollectionValues(params.node!.parent!.allLeafChildren);\r\n params.context.openGroupCollectionForm();\r\n },\r\n disabled: params.context.checkToDisableAddGroupCollection(params.node!.parent!.allLeafChildren)\r\n },\r\n {\r\n name: 'Delete For Entire Sequence',\r\n action: () => {\r\n params.context.deleteGroupCollection(params.node!.data.routeSequenceID);\r\n },\r\n disabled: params.context.checkToDeleteGroupCollection(params.node!.parent!.allLeafChildren)\r\n },\r\n {\r\n name: 'Edit Sequence Contact',\r\n action: () => {\r\n params.context.openSequenceContactForm();\r\n params.context.getSequenceContactInfo(params.node!.data);\r\n },\r\n disabled: params.node!.data.sequenceNo == 'UNSEQUENCED'\r\n },\r\n ];\r\n\r\n return result;\r\n }\n\n refreshGrid() {\r\n this.getRouteList();\r\n }\n\n onSearchChanged() {\n this.gridApi.setQuickFilter(\n (document.getElementById('search') as HTMLInputElement).value\n );\n }\r\n\r\n //onCollectionChanged(e: any) {\r\n // this.monthsPaid = e.target.value;\r\n // this.cashAmount = this.modalPremium * this.monthsPaid;\r\n // this.premiumCollected = this.cashAmount + this.suspenseAmount;\r\n // this.estimatedCommission = this.cashAmount * this.currentCommRate;\r\n //}\r\n\r\n onMonthsPaidChanged() {\r\n this.cashAmount = this.modalPremium * this.monthsPaid;\r\n this.premiumCollected = this.cashAmount + this.suspenseAmount;\r\n this.estimatedCommission = this.cashAmount * this.currentCommRate;\r\n }\r\n\r\n onMonthsGroupPaidChanged() {\r\n this.premiumGroupCollected = this.groupModalPremium * this.monthsGroupPaid;\r\n this.estimatedGroupCommission = this.premiumGroupCollected * this.currentGroupCommRate;\r\n }\r\n\r\n onSuspenseAmtChanged(e: any) {\r\n this.suspenseAmount = +e.target.value;\r\n this.premiumCollected = this.cashAmount + this.suspenseAmount;\r\n }\r\n\r\n increaseMonthsPaid() {\r\n var value = this.monthsPaid;\r\n value = isNaN(value) ? 0 : value;\r\n value++;\r\n this.monthsPaid = value;\r\n this.onMonthsPaidChanged();\r\n }\r\n\r\n decreaseMonthsPaid() {\r\n var value = this.monthsPaid;\r\n var minValue = this.minimumMonths;\r\n value = isNaN(value) ? 0 : value;\r\n value < 1 ? value = 1 : '';\r\n if (minValue < value) {\r\n value--;\r\n this.monthsPaid = value;\r\n this.onMonthsPaidChanged();\r\n }\r\n }\r\n\r\n increaseGroupMonthsPaid() {\r\n var value = this.monthsGroupPaid;\r\n value = isNaN(value) ? 0 : value;\r\n value++;\r\n this.monthsGroupPaid = value;\r\n this.onMonthsGroupPaidChanged();\r\n }\r\n\r\n decreaseGroupMonthsPaid() {\r\n var value = this.monthsGroupPaid;\r\n var minValue = this.minimumMonths;\r\n value = isNaN(value) ? 0 : value;\r\n value < 1 ? value = 1 : '';\r\n if (minValue < value) {\r\n value--;\r\n this.monthsGroupPaid = value;\r\n this.onMonthsGroupPaidChanged();\r\n }\r\n }\r\n\r\n //ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n // this.impersonationSubscription.unsubscribe()\n //}\r\n}\n\nfunction currencyFormatter(params: ValueFormatterParams) {\r\n var currencyValue = isNaN(params.value) ? \"\" : formatNumber(params.value);\r\n return currencyValue;\r\n}\r\n\r\nfunction formatNumber(number: number) {\r\n return number.toLocaleString('en-US', {\r\n style: 'currency',\r\n currency: 'USD'\r\n });\r\n}\r\n\r\nexport interface TempAgent {\n agentId: string,\n agentName: string\n}\n\nfunction wait(ms: number) {\r\n var start = new Date().getTime();\r\n var end = start;\r\n while (end < start + ms) {\r\n end = new Date().getTime();\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Route List\r\n

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

    \r\n Collect Policy - {{policyNumber ? sequenceNo + \" - \" + policyNumber : \"Loading...\"}}\r\n

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Lapse Alert Notification
    \r\n
    No Premium Collected for this Policy
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n $\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Collect All Policies - {{ sequenceNo }}\r\n

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    No Premium Collected for this Policy
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Edit Sequence Number\r\n

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

    \r\n Edit Sequence Details {{contactName ? \"\" : \"- Loading...\"}}\r\n

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { RowSelectedEvent } from 'ag-grid-community';\r\nimport { DatePipe } from '@angular/common';\r\nimport { Statement } from '../../../models/statement';\r\nimport { ReturnDateRangeFromType } from '../../../common/helpers';\r\nimport { OnPremStorageService } from '../../../services/onprem-storage';\r\nimport { SiteParameterService } from '../../../services/siteparameter.service';\r\nimport { Profile } from '../../../models/profile';\r\nimport { map, take } from 'rxjs/operators';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-statementsearch',\r\n templateUrl: './statement-search.component.html',\r\n styles: [\r\n ]\r\n})\r\nexport class StatementSearchComponent implements OnInit {\r\n public showSearch: boolean = false;\r\n public agentNumber: string = \"\"; \r\n policyType: number = 0;\r\n timeFrame: string = \"ALL\";\r\n timeFrameEnable: boolean = true;\r\n startDate: Date = new Date(\"\");\r\n endDate: Date = new Date(\"\");\r\n includedAgents: number = 0;\r\n public statements$?: Observable;\r\n private gridApi: any;\r\n private gridColumnApi: any;\r\n public noRowsTemplate: string;\r\n\r\n columnDefs = [\r\n { field: 'date' },\r\n { field: 'agentID' },\r\n { field: 'agentName' },\r\n { field: 'type' },\r\n { headerName: 'Download', cellRenderer: (params: any) => { return ''; } },\r\n ];\r\n defaultColumnDef = {\r\n sortable: true,\r\n resizable: true,\r\n };\r\n\r\n constructor(private onPremService: OnPremStorageService, private siteParmService: SiteParameterService, private datePipe: DatePipe) {\r\n this.noRowsTemplate = this.siteParmService.getGridNoResults();\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n changeTimeFrame(e: any) {\r\n this.timeFrame = e.target.value;\r\n let [start, end] = ReturnDateRangeFromType(this.timeFrame);\r\n this.startDate = start!;\r\n this.endDate = end!;\r\n }\r\n\r\n searchStatements(): void {\r\n this.showSearch = true;\r\n let [start, end] = ReturnDateRangeFromType(this.timeFrame);\r\n this.startDate = start!;\r\n this.endDate = end!;\r\n const startDate = (this.startDate != null ? this.datePipe.transform(this.startDate, 'MM/dd/yyyy') : \"\") as string;\r\n const endDate = (this.endDate != null ? this.datePipe.transform(this.endDate, 'MM/dd/yyyy') : \"\") as string;\r\n\r\n this.statements$ = this.onPremService.searchStatements(this.agentNumber, this.policyType, startDate, endDate,\r\n this.includedAgents).pipe(map(response => response.data));\r\n }\r\n\r\n resetSearch(): void {\r\n this.agentNumber = \"\";\r\n this.timeFrame = \"ALL\";\r\n this.showSearch = false;\r\n }\r\n\r\n onRowDoubleClicked(event: RowSelectedEvent) {\r\n const statement: Statement = event.data;\r\n this.onPremService.downloadStatement(statement.statementID)\r\n .pipe(take(1))\r\n .subscribe(data => {\r\n const binaryData = [];\r\n binaryData.push(data);\r\n const downloadedFile = new Blob(binaryData, { type: data.type });\r\n const a = document.createElement('a');\r\n a.setAttribute('style', 'display:none;');\r\n document.body.appendChild(a);\r\n a.download = event.data.date.replace('/', '_').trim() + \"_\" + event.data.agentID.trim() + \"_\" + event.data.type.trim() + \"_stmt.pdf\";\r\n a.href = URL.createObjectURL(downloadedFile);\r\n a.target = '_blank';\r\n a.click();\r\n document.body.removeChild(a);\r\n });\r\n }\r\n\r\n onGridReady(params: any) {\r\n this.gridApi = params.api;\r\n this.gridColumnApi = params.columnApi;\r\n this.gridApi.sizeColumnsToFit();\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Commission Statement Search (Admin)\r\n

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

    \r\n Search Results (1 Statement - Double click to download)\r\n Search Results (0 Statements)\r\n Search Results ({{(statements$ | async)?.length}} Statements - Double click to download)\r\n

    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, OnInit } from '@angular/core';\nimport { Profile } from '../../../models/profile';\r\nimport { SiteParameterService } from '../../../services/siteparameter.service';\r\n\n@Component({\n selector: 'app-adminPage',\n templateUrl: './admin.component.html',\n styles: [\n ]\n})\nexport class AdminPageComponent implements OnInit {\n public profile!: Profile;\n public showAssociation = true;\n public showLinkCode = true;\n public showStatementSearch = true;\n\n constructor(private siteParmService: SiteParameterService) { }\n\n ngOnInit(): void {\n //this.profile = this.siteParmService.getStaticProfile();\n\n //if (this.profile.permissions && this.profile.permissions.find(x => x === \"edit:associations\")) {\n // this.showAssociation = true;\n //}\n //if (this.profile.permissions && this.profile.permissions.find(x => x === \"read:link-code\")) {\n // this.showLinkCode = true;\n //}\n //if (this.profile.permissions && this.profile.permissions.find(x => x === \"read:statements\")) {\n // this.showStatementSearch = true;\n //}\n\n $('#menu li a').click(function () {\n $('#menu').find(\"*\").removeClass(\"router-link-exact-active\");\n $(this).addClass('router-link-exact-active');\n });\n }\n\n}\n","
    \n \n
    \n
    \n\n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n","import { Component, HostListener, Inject, OnInit } from '@angular/core';\nimport { AuthService } from '@auth0/auth0-angular';\nimport { ColSpanParams, ColDef } from 'ag-grid-community';\r\nimport { take } from 'rxjs/operators';\r\nimport { channelProduct } from '../../../models/channelProduct';\r\nimport { CloudStorageService } from '../../../services/cloud-storage';\r\nimport { OnPremStorageService } from '../../../services/onprem-storage';\r\nimport { SiteParameterService } from '../../../services/siteparameter.service';\r\n\n@Component({\n selector: 'app-annuitybankreplogin',\n templateUrl: './annuitybankreplogin.component.html',\n})\nexport class AnnuityBankRepLoginPageComponent implements OnInit {\n public isLoggedIn = false;\n //public currentDate = new Date();\n public loginRedirect = false;\n //public channelId = 2;\n //public screenWidthForLargeDevice: number = 992;\n //public screenWidthForSmallDevice: number = 576;\n //public channelProduct!: channelProduct;\n //public newBusinessDeferredRatesRowData: [] = [];\n //public newBusinessImmediateRatesRowData: [] = [];\n //public newBusinessFixedIndexRatesRowData: [] = [];\n //public renewalDeferredRatesRowData: [] = [];\n //public renewalImmediateRatesRowData: [] = [];\n //private gridApi: any;\n //private gridApi1: any;\n //private gridApi2: any;\n //private gridApi3: any;\n //private gridApi4: any;\n //private gridColumnApi: any;\n //private gridColumnApi1: any;\n //private gridColumnApi2: any;\n //private gridColumnApi3: any;\n //private gridColumnApi4: any;\n //public noRowsTemplate: string = \"\";\n //public groupDefaultExpanded = 1;\n //public domLayout = \"autoHeight\";\n //public innerWidth: any;\n\n //ratesDeferredNBRatesColumnDefs!: ColDef[];\n //ratesDeferredRenewalRatesColumnDefs!: ColDef[];\n //ratesImmediateNBRatesColumnDefs!: ColDef[];\n //ratesImmediateRenewalRatesColumnDefs!: ColDef[];\n //fixedIndexRatesColumnDefs!: ColDef[];\n\n //defaultColumnDef = {\n // sortable: true,\n // suppressMenu: true,\n // suppressMovable: true\n //};\n\n //public autoGroupColumnDef: ColDef = {\r\n // headerName: '',\r\n // cellRendererParams: {\r\n // suppressCount: true\r\n // },\r\n // maxWidth: 5,\r\n // colSpan: (params: ColSpanParams) => {\r\n // if (params.data) {\r\n // return 1;\r\n // } else {\r\n // return 5;\r\n // }\r\n // }\r\n //};\n\n constructor(public auth: AuthService, private onPremService: OnPremStorageService, private cloudStorageService: CloudStorageService,\n private siteParmService: SiteParameterService) {\n //this.noRowsTemplate = this.siteParmService.getGridNoResults();\n this.auth.isAuthenticated$.subscribe((hasToken: boolean) => {\n if (hasToken) {\n this.isLoggedIn = true;\n }\n else {\n this.isLoggedIn = false;\n }\n });\n //this.getChannelProductLinks();\n }\n\n ngOnInit(): void {\n //this.innerWidth = window.innerWidth;\r\n //this.getListColumnDefs();\n //this.getRateLists();\n //$('#NewBusinessList').addClass('tab-pane active');\n }\n\n// @HostListener('window:resize', ['$event'])\r\n// onResize(event: any) {\r\n// this.innerWidth = window.innerWidth;\r\n// this.getListColumnDefs();\r\n// }\n\n// getListColumnDefs(): void {\n// if (this.innerWidth >= this.screenWidthForLargeDevice) {\n// this.ratesDeferredNBRatesColumnDefs = [\n// { field: 'series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Product', minWidth: 375, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'guaranteePeriod', headerName: 'Guarantee Period', maxWidth: 175, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { valueGetter: rateGetter, headerName: 'NB Interest Rate', tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\n// this.ratesImmediateNBRatesColumnDefs = [\n// { field: 'series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Income Duration', minWidth: 375, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'monthlyIncomeFactor', headerName: 'Monthly Income*', maxWidth: 175, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: '', headerName: '', resizable: true }\n// ];\n// this.ratesDeferredRenewalRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Product', minWidth: 375, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'guaranteePeriod', headerName: 'Guarantee Period', maxWidth: 175, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { valueGetter: rateGetter, headerName: 'Renewal Interest Rate', tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\n// this.ratesImmediateRenewalRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Income Duration', minWidth: 375, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'monthlyIncomeFactor', headerName: 'Monthly Income*', maxWidth: 175, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: '', headerName: '', resizable: true }\n// ];\n// this.fixedIndexRatesColumnDefs = [\n// { field: 'product', rowGroup: true, hide: true },\n// { field: 'rateTypeDesc', headerName: 'Product', minWidth: 375, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'guaranteePeriod', headerName: 'Guarantee Period', maxWidth: 175, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'rate', headerName: 'NB Interest Rate', tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\n// }\n// else if (this.innerWidth < this.screenWidthForLargeDevice && this.innerWidth > this.screenWidthForSmallDevice) {\n// this.ratesDeferredNBRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Product', minWidth: 325, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { cellRenderer: periodAndRateGetter, headerName: 'Guar Per /\\nNB Int Rate', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// this.ratesImmediateNBRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Income Duration', minWidth: 325, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'monthlyIncomeFactor', headerName: 'Monthly Income*', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// this.ratesDeferredRenewalRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Product', minWidth: 325, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { cellRenderer: periodAndRateGetter, headerName: 'Guar Per /\\nRen. Int Rate', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// this.ratesImmediateRenewalRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Income Duration', minWidth: 325, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'monthlyIncomeFactor', headerName: 'Monthly Income*', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// this.fixedIndexRatesColumnDefs = [\n// { field: 'product', rowGroup: true, hide: true },\n// { field: 'rateTypeDesc', headerName: 'Product', minWidth: 325, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { cellRenderer: periodAndRateGetter, headerName: 'Guar Period /\\nNB Int Rate', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// }\n// else {\n// this.ratesDeferredNBRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Product', minWidth: 225, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { cellRenderer: periodAndRateGetter, headerName: 'Guar Per /\\nNB Int Rate', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// this.ratesImmediateNBRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Income Duration', minWidth: 225, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'monthlyIncomeFactor', headerName: 'Monthly Income*', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// this.ratesDeferredRenewalRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Product', minWidth: 225, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { cellRenderer: periodAndRateGetter, headerName: 'Guar Per /\\nRen. Int Rate', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// this.ratesImmediateRenewalRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Income Duration', minWidth: 225, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'monthlyIncomeFactor', headerName: 'Monthly Income*', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// this.fixedIndexRatesColumnDefs = [\n// { field: 'product', rowGroup: true, hide: true },\n// { field: 'rateTypeDesc', headerName: 'Product', minWidth: 225, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { cellRenderer: periodAndRateGetter, headerName: 'Guar Period /\\nNB Int Rate', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// }\n// }\n\n login(): void {\n this.auth.loginWithRedirect({ appState: { target: '/home' }, registration_code: '123456789' });\n\n }\n\n signup(): void {\n this.auth.loginWithRedirect({ appState: { target: '/home' }, screen_hint: 'signup' });\n\n }\n\n// getRateLists(): void {\n// let rateType = 'NB';\n// this.onPremService.getAnnuityDeferredRates(this.channelId, rateType, false)\n// .pipe(take(1))\n// .subscribe(rates => {\n// this.newBusinessDeferredRatesRowData = rates.data;\n// });\r\n// this.onPremService.getAnnuityImmediateRates(this.channelId, rateType, false)\n// .pipe(take(1))\n// .subscribe(rates => {\n// this.newBusinessImmediateRatesRowData = rates.data;\n// });\r\n// this.onPremService.getAnnuityFixedIndexRates(this.channelId, rateType, false)\n// .pipe(take(1))\n// .subscribe(rates => {\n// this.newBusinessFixedIndexRatesRowData = rates.data;\n// });\r\n// rateType = 'RENEW';\r\n// this.onPremService.getAnnuityDeferredRates(this.channelId, rateType, false)\n// .pipe(take(1))\n// .subscribe(rates => {\n// this.renewalDeferredRatesRowData = rates.data;\n// });\r\n// this.onPremService.getAnnuityImmediateRates(this.channelId, rateType, false)\n// .pipe(take(1))\n// .subscribe(rates => {\n// this.renewalImmediateRatesRowData = rates.data;\n// });\r\n// }\n\n// getChannelProductLinks(): void {\n// this.cloudStorageService.getAnonymousProductsByChannel(this.channelId)\n// .pipe(take(1))\n// .subscribe(productList => {\n// this.channelProduct = productList;\n// });\r\n// }\n\n// getRateTooltip(data: any): string {\n// return 'Effective as of ' + data.rateStartDate;\r\n// }\n\n// onClickTabSelect(link: string) {\n// $('#listMenu').find(\"*\").removeClass(\"router-link-exact-active\");\n// $(link).addClass('router-link-exact-active');\n// this.gridApi.sizeColumnsToFit();\n// this.gridApi1.sizeColumnsToFit();\n// this.gridApi2.sizeColumnsToFit();\n// this.gridApi3.sizeColumnsToFit();\n// this.gridApi4.sizeColumnsToFit();\n// }\n\n// onGridReady(params: any) {\n// this.gridApi = params.api;\n// this.gridColumnApi = params.columnApi;\n// }\n// onGridReady1(params: any) {\n// this.gridApi1 = params.api;\n// this.gridColumnApi1 = params.columnApi;\n// }\n// onGridReady2(params: any) {\n// this.gridApi2 = params.api;\n// this.gridColumnApi2 = params.columnApi;\n// }\n// onGridReady3(params: any) {\n// this.gridApi3 = params.api;\n// this.gridColumnApi3 = params.columnApi;\n// }\n// onGridReady4(params: any) {\n// this.gridApi4 = params.api;\n// this.gridColumnApi4 = params.columnApi;\n// }\n//}\n\n//function seriesAndProductGetter(params: any) {\r\n// return params.data.product + ' - ' + params.data.series;\r\n//}\r\n\r\n//function rateGetter(params: any) {\r\n// let rateValue = \"\";\r\n// if (params.data.rate !== params.data.rateFirstYear) {\r\n// rateValue = params.data.rateFirstYear + ' (FY), ' + params.data.rate + ' (Base) ';\r\n// }\r\n// else {\r\n// rateValue = params.data.rate;\r\n// }\r\n\r\n// return rateValue;\r\n//}\r\n\r\n//function periodAndRateGetter(params: any) {\r\n// let returnValue = \"\"\r\n// let rateValue = \"\";\r\n// if (params.data.rateFirstYear !== \"\" && params.data.rate !== params.data.rateFirstYear) {\r\n// rateValue = params.data.rateFirstYear + ' (FY),
    ' + params.data.rate + ' (Base) ';\r\n// }\r\n// else {\r\n// rateValue = params.data.rate;\r\n// }\r\n\r\n// if (params.data.guaranteePeriod === \"\") {\r\n// returnValue = rateValue;\r\n// }\r\n// else {\r\n// returnValue = params.data.guaranteePeriod + '
    ' + rateValue;\r\n// }\r\n\r\n// return returnValue;\r\n}\r\n","
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n

    \n If this is your first time logging in to this portal, you will need to create an account first by using\n the “First-Time Sign Up” button. Once created and logged in, you will be prompted to perform a one-time link using one of your LBIG Agent IDs so\n that you can have access to all of your Agent IDs and data. Please make sure to use your full Agent ID for successful linking.\n

    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n

    This site is intended for sole use by bank representatives of Liberty Bankers Insurance Group and any of its affiliate companies. By entering the site, you agree to abide by its Terms of Use.

    \n
    \n
    \n
    \n
    \n\n","import { Component, HostListener, Inject, OnInit } from '@angular/core';\nimport { AuthService } from '@auth0/auth0-angular';\nimport { ColSpanParams, ColDef } from 'ag-grid-community';\r\nimport { take } from 'rxjs/operators';\r\nimport { channelProduct } from '../../../models/channelProduct';\r\nimport { CloudStorageService } from '../../../services/cloud-storage';\r\nimport { OnPremStorageService } from '../../../services/onprem-storage';\r\nimport { SiteParameterService } from '../../../services/siteparameter.service';\r\n\n@Component({\n selector: 'app-annuitylogin',\n templateUrl: './annuitylogin.component.html',\n})\nexport class AnnuityLoginPageComponent implements OnInit {\n public isLoggedIn = false;\n //public currentDate = new Date();\n public loginRedirect = false;\n //public channelId = 1;\n //public screenWidthForLargeDevice: number = 992;\n //public screenWidthForSmallDevice: number = 576;\n //public channelProduct!: channelProduct;\n //public newBusinessDeferredRatesRowData: [] = [];\n //public newBusinessImmediateRatesRowData: [] = [];\n //public newBusinessFixedIndexRatesRowData: [] = [];\n //public renewalDeferredRatesRowData: [] = [];\n //public renewalImmediateRatesRowData: [] = [];\n //public newBusinessCADeferredRatesRowData: [] = [];\n //public newBusinessCAImmediateRatesRowData: [] = [];\n //public newBusinessCAFixedIndexRatesRowData: [] = [];\n //private gridApi: any;\n //private gridApi1: any;\n //private gridApi2: any;\n //private gridApi3: any;\n //private gridApi4: any;\n //private gridApi5: any;\n //private gridApi6: any;\n //private gridApi7: any;\n //private gridColumnApi: any;\n //private gridColumnApi1: any;\n //private gridColumnApi2: any;\n //private gridColumnApi3: any;\n //private gridColumnApi4: any;\n //private gridColumnApi5: any;\n //private gridColumnApi6: any;\n //private gridColumnApi7: any;\n //public noRowsTemplate: string = \"\";\n //public groupDefaultExpanded = 1;\n //public domLayout = \"autoHeight\";\n //public innerWidth: any;\n\n //ratesDeferredNBRatesColumnDefs!: ColDef[];\n //ratesDeferredRenewalRatesColumnDefs!: ColDef[];\n //ratesImmediateNBRatesColumnDefs!: ColDef[];\n //ratesImmediateRenewalRatesColumnDefs!: ColDef[];\n //fixedIndexRatesColumnDefs!: ColDef[];\n\n //defaultColumnDef = {\n // sortable: true,\n // suppressMenu: true,\n // suppressMovable: true\n //};\n\n //public autoGroupColumnDef: ColDef = {\r\n // headerName: '',\r\n // cellRendererParams: {\r\n // suppressCount: true\r\n // },\r\n // maxWidth: 5,\r\n // colSpan: (params: ColSpanParams) => {\r\n // if (params.data) {\r\n // return 1;\r\n // } else {\r\n // return 5;\r\n // }\r\n // }\r\n //};\n\n constructor(public auth: AuthService, private onPremService: OnPremStorageService, private cloudStorageService: CloudStorageService,\n private siteParmService: SiteParameterService) {\n //this.noRowsTemplate = this.siteParmService.getGridNoResults();\n this.auth.isAuthenticated$.subscribe((hasToken: boolean) => {\n if (hasToken) {\n this.isLoggedIn = true;\n }\n else {\n this.isLoggedIn = false;\n }\n });\n //this.getChannelProductLinks();\n }\n\n ngOnInit(): void {\n //this.innerWidth = window.innerWidth;\r\n //this.getListColumnDefs();\n //this.getRateLists();\n //$('#NewBusinessList').addClass('tab-pane active');\n }\n\n// @HostListener('window:resize', ['$event'])\r\n// onResize(event: any) {\r\n// this.innerWidth = window.innerWidth;\r\n// this.getListColumnDefs();\r\n// }\n\n// getListColumnDefs(): void {\n// if (this.innerWidth >= this.screenWidthForLargeDevice) {\n// this.ratesDeferredNBRatesColumnDefs = [\n// { field: 'series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Product', minWidth: 375, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'guaranteePeriod', headerName: 'Guarantee Period', maxWidth: 175, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { valueGetter: rateGetter, headerName: 'NB Interest Rate', tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\n// this.ratesImmediateNBRatesColumnDefs = [\n// { field: 'series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Income Duration', minWidth: 375, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'monthlyIncomeFactor', headerName: 'Monthly Income*', maxWidth: 175, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: '', headerName: '', resizable: true }\n// ];\n// this.ratesDeferredRenewalRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Product', minWidth: 375, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'guaranteePeriod', headerName: 'Guarantee Period', maxWidth: 175, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { valueGetter: rateGetter, headerName: 'Renewal Interest Rate', tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\n// this.ratesImmediateRenewalRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Income Duration', minWidth: 375, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'monthlyIncomeFactor', headerName: 'Monthly Income*', maxWidth: 175, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: '', headerName: '', resizable: true }\n// ];\n// this.fixedIndexRatesColumnDefs = [\n// { field: 'product', rowGroup: true, hide: true },\n// { field: 'rateTypeDesc', headerName: 'Product', minWidth: 375, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'guaranteePeriod', headerName: 'Guarantee Period', maxWidth: 175, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'rate', headerName: 'NB Interest Rate', tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\n// }\n// else if (this.innerWidth < this.screenWidthForLargeDevice && this.innerWidth > this.screenWidthForSmallDevice){\n// this.ratesDeferredNBRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Product', minWidth: 325, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { cellRenderer: periodAndRateGetter, headerName: 'Guar Per /\\nNB Int Rate', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// this.ratesImmediateNBRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Income Duration', minWidth: 325, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'monthlyIncomeFactor', headerName: 'Monthly Income*', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// this.ratesDeferredRenewalRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Product', minWidth: 325, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { cellRenderer: periodAndRateGetter, headerName: 'Guar Per /\\nRen. Int Rate', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// this.ratesImmediateRenewalRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Income Duration', minWidth: 325, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'monthlyIncomeFactor', headerName: 'Monthly Income*', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// this.fixedIndexRatesColumnDefs = [\n// { field: 'product', rowGroup: true, hide: true },\n// { field: 'rateTypeDesc', headerName: 'Product', minWidth: 325, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { cellRenderer: periodAndRateGetter, headerName: 'Guar Period /\\nNB Int Rate', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// }\n// else {\n// this.ratesDeferredNBRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Product', minWidth: 225, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { cellRenderer: periodAndRateGetter, headerName: 'Guar Per /\\nNB Int Rate', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// this.ratesImmediateNBRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Income Duration', minWidth: 225, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'monthlyIncomeFactor', headerName: 'Monthly Income*', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// this.ratesDeferredRenewalRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Product', minWidth: 225, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { cellRenderer: periodAndRateGetter, headerName: 'Guar Per /\\nRen. Int Rate', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// this.ratesImmediateRenewalRatesColumnDefs = [\n// { field: 'series', headerName: 'Series', rowGroup: true, hide: true },\n// { field: 'product', headerName: 'Income Duration', minWidth: 225, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { field: 'monthlyIncomeFactor', headerName: 'Monthly Income*', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// this.fixedIndexRatesColumnDefs = [\n// { field: 'product', rowGroup: true, hide: true },\n// { field: 'rateTypeDesc', headerName: 'Product', minWidth: 225, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true },\n// { cellRenderer: periodAndRateGetter, headerName: 'Guar Period /\\nNB Int Rate', autoHeight: true, tooltipValueGetter: (params: any) => { return this.getRateTooltip(params.data); }, resizable: true }\n// ];\r\n// }\n// }\n\n login(): void {\n this.auth.loginWithRedirect({ appState: { target: '/home' }, registration_code: '123456789' });\n\n }\n\n signup(): void {\n this.auth.loginWithRedirect({ appState: { target: '/home' }, screen_hint: 'signup' });\n\n }\n\n// getRateLists(): void {\n// let rateType = 'NB';\n// this.onPremService.getAnnuityDeferredRates(this.channelId, rateType, false)\n// .pipe(take(1))\n// .subscribe(rates => {\n// this.newBusinessDeferredRatesRowData = rates.data;\n// });\r\n// this.onPremService.getAnnuityImmediateRates(this.channelId, rateType, false)\n// .pipe(take(1))\n// .subscribe(rates => {\n// this.newBusinessImmediateRatesRowData = rates.data;\n// });\r\n// this.onPremService.getAnnuityFixedIndexRates(this.channelId, rateType, false)\n// .pipe(take(1))\n// .subscribe(rates => {\n// this.newBusinessFixedIndexRatesRowData = rates.data;\n// });\r\n// this.onPremService.getAnnuityDeferredRates(this.channelId, rateType, true)\n// .pipe(take(1))\n// .subscribe(rates => {\n// this.newBusinessCADeferredRatesRowData = rates.data;\n// });\r\n// this.onPremService.getAnnuityImmediateRates(this.channelId, rateType, true)\n// .pipe(take(1))\n// .subscribe(rates => {\n// this.newBusinessCAImmediateRatesRowData = rates.data;\n// });\r\n// this.onPremService.getAnnuityFixedIndexRates(this.channelId, rateType, true)\n// .pipe(take(1))\n// .subscribe(rates => {\n// this.newBusinessCAFixedIndexRatesRowData = rates.data;\n// });\r\n// rateType = 'RENEW';\r\n// this.onPremService.getAnnuityDeferredRates(this.channelId, rateType, false)\n// .pipe(take(1))\n// .subscribe(rates => {\n// this.renewalDeferredRatesRowData = rates.data;\n// });\r\n// this.onPremService.getAnnuityImmediateRates(this.channelId, rateType, false)\n// .pipe(take(1))\n// .subscribe(rates => {\n// this.renewalImmediateRatesRowData = rates.data;\n// });\r\n// }\n\n// getChannelProductLinks(): void {\n// this.cloudStorageService.getAnonymousProductsByChannel(this.channelId)\n// .pipe(take(1))\n// .subscribe(productList => {\n// this.channelProduct = productList;\n// });\r\n// }\n\n// getRateTooltip(data: any): string {\n// return 'Effective as of ' + data.rateStartDate;\r\n// }\n\n// onClickTabSelect(link: string) {\n// $('#listMenu').find(\"*\").removeClass(\"router-link-exact-active\");\n// $(link).addClass('router-link-exact-active');\n// this.gridApi.sizeColumnsToFit();\n// this.gridApi1.sizeColumnsToFit();\n// this.gridApi2.sizeColumnsToFit();\n// this.gridApi3.sizeColumnsToFit();\n// this.gridApi4.sizeColumnsToFit();\n// this.gridApi5.sizeColumnsToFit();\n// this.gridApi6.sizeColumnsToFit();\n// this.gridApi7.sizeColumnsToFit();\n// }\n\n// onGridReady(params: any) {\n// this.gridApi = params.api;\n// this.gridColumnApi = params.columnApi;\n// }\n// onGridReady1(params: any) {\n// this.gridApi1 = params.api;\n// this.gridColumnApi1 = params.columnApi;\n// }\n// onGridReady2(params: any) {\n// this.gridApi2 = params.api;\n// this.gridColumnApi2 = params.columnApi;\n// }\n// onGridReady3(params: any) {\n// this.gridApi3 = params.api;\n// this.gridColumnApi3 = params.columnApi;\n// }\n// onGridReady4(params: any) {\n// this.gridApi4 = params.api;\n// this.gridColumnApi4 = params.columnApi;\n// }\n// onGridReady5(params: any) {\n// this.gridApi5 = params.api;\n// this.gridColumnApi5 = params.columnApi;\n// }\n// onGridReady6(params: any) {\n// this.gridApi6 = params.api;\n// this.gridColumnApi6 = params.columnApi;\n// }\n// onGridReady7(params: any) {\n// this.gridApi7 = params.api;\n// this.gridColumnApi7 = params.columnApi;\n// }\n//}\n\n//function seriesAndProductGetter(params: any) {\r\n// return params.data.product + ' - ' + params.data.series;\r\n//}\r\n\r\n//function rateGetter(params: any) {\r\n// let rateValue = \"\";\r\n// if (params.data.rate !== params.data.rateFirstYear) {\r\n// rateValue = params.data.rateFirstYear + ' (FY), ' + params.data.rate + ' (Base) ';\r\n// }\r\n// else {\r\n// rateValue = params.data.rate;\r\n// }\r\n\r\n// return rateValue;\r\n//}\r\n\r\n//function periodAndRateGetter(params: any) {\r\n// let returnValue = \"\"\r\n// let rateValue = \"\";\r\n// if (params.data.rateFirstYear !== \"\" && params.data.rate !== params.data.rateFirstYear) {\r\n// rateValue = params.data.rateFirstYear + ' (FY),
    ' + params.data.rate + ' (Base) ';\r\n// }\r\n// else {\r\n// rateValue = params.data.rate;\r\n// }\r\n\r\n// if (params.data.guaranteePeriod === \"\") {\r\n// returnValue = rateValue;\r\n// }\r\n// else {\r\n// returnValue = params.data.guaranteePeriod + '
    ' + rateValue;\r\n// }\r\n\r\n// return returnValue;\r\n}\r\n","
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n

    \n If this is your first time logging in to this portal, you will need to create an account first by using\n the “First-Time Sign Up” button. Once created and logged in, you will be prompted to perform a one-time link using one of your LBIG Agent IDs so\n that you can have access to all of your Agent IDs and data. Please make sure to use your full Agent ID for successful linking.\n

    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n

    \n \n If you are interested in becoming a contracted annuity agent, we’d love to connect with you and discuss how you can be a part of providing financial protection for your clients.\n Please contact us at 800-274-4829 for full details.\n \n

    \n
    \n
    \n
    \n
    \n

    This site is intended for sole use by contracted agent producers of Liberty Bankers Insurance Group and any of its affiliate companies. By entering the site, you agree to abide by its Terms of Use.

    \n
    \n
    \n
    \n
    \n","import { Component, AfterViewInit, OnInit } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { SiteParameterService } from '../../../services/siteparameter.service';\nimport { Profile } from '../../../models/profile';\n\n@Component({\n selector: 'app-briefcase',\n templateUrl: './briefcase.component.html',\n styles: [\n ]\n})\nexport class BriefcaseComponent implements OnInit, AfterViewInit {\n profile!: Profile;\n private channelUpdate: Subscription;\n public selectedBusinessChannel: number = 0;\n private kpiSearchSubscription: Subscription;\n\n\n constructor(private siteParmService: SiteParameterService) {\n this.kpiSearchSubscription = this.siteParmService.getkpiSearchUpdate().subscribe\n (message => {\n $('#Performance-tab').removeClass(\"router-link-exact-active\");\n $('#Performance-tab').removeClass(\"active\");\n $('#Policy-tab').addClass('router-link-exact-active');\n $('#Performance').removeClass(\"tab-pane active\");\n $('#Performance').addClass(\"tab-pane\");\n $('#Policy').addClass('tab-pane active');\n });\n this.channelUpdate = this.siteParmService.getChannelUpdate().subscribe\n (message => {\n this.profile = this.siteParmService.getStaticProfile();\n this.getChannel();\n });\n }\n\n ngAfterViewInit(): void {\n $('#menu li a').click(function () {\n if (this.parentElement?.className.indexOf('dropdown') == -1) {\n $('#menu').find(\"*\").removeClass(\"router-link-exact-active\");\n $(this).addClass('router-link-exact-active');\n }\n });\n }\n\n ngOnInit(): void {\n this.profile = this.siteParmService.getStaticProfile();\n this.getChannel();\n }\n\n getChannel(): void {\n this.selectedBusinessChannel = this.profile ? this.profile.channelPreferenceValue : 0;\n }\n\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.kpiSearchSubscription.unsubscribe();\n this.channelUpdate.unsubscribe();\n }\n}\n","
    \n \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n\n\n","import { Component, HostListener, OnInit } from '@angular/core';\nimport { PolicyRoute } from '../../../models/policyRoute';\nimport { ColDef, GridApi } from 'ag-grid-enterprise';\nimport { OnPremStorageService } from '../../../services/onprem-storage';\nimport { SiteParameterService } from '../../../services/siteparameter.service';\nimport { DateComparator } from '../../../common/helpers';\nimport { Observable, Subscription } from 'rxjs';\r\nimport { map, take, tap } from 'rxjs/operators';\r\nimport { Profile } from '../../../models/profile';\r\nimport { AgentGrid } from '../../../models/agentGrid';\r\nimport { ColSpanParams, GetContextMenuItemsParams, Grid, GridOptions, MenuItemDef, RowSelectedEvent, SelectionChangedEvent } from 'ag-grid-community';\r\nimport '../../../../assets/css/routelist.css';\r\nimport { param, trim } from 'jquery';\r\nimport { Policy } from '../../../models/policy';\r\nimport { Agent } from '../../../models/agent';\r\nimport { AgentLink } from '../../../models/agentLink';\r\nimport { gridColumn } from '../../../models/gridColumn';\r\nimport { GridTooltipComponent } from '../../components/grid-tooltip/grid-tooltip.component';\r\nimport { currencyFormatter, formatNumber } from '../../../common/ag-grid-currencyFormatter';\r\nimport { AbstractControl } from '@angular/forms';\r\n\n@Component({\n selector: 'app-collectionsPage',\n templateUrl: './collections.component.html',\n styles: [\n ]\n})\nexport class CollectionsPageComponent implements OnInit {\n public activeTab: string = 'RouteList';\n public searchTerm: string = '';\n public routeListRowHeight = 80;\n public enableRouteListSearch: boolean = true;\n public showCollectionParameters: boolean = true;\n public showSubmitBatchButton: boolean = false;\n public showRouteList: boolean = true;\n public showPendingCollectionsList: boolean = true;\n public showCollectingManagerList: boolean = false;\n public showCollectionForm: boolean = false;\n public showLapsedCollectionForm: boolean = false;\n public enablePolicyNumberSearch: boolean = true;\n public showPolicyFound: boolean = false;\n public showPolicyNotFound: boolean = false;\n public showLapseCollectionInfo: boolean = false;\n public showGroupCollectionForm: boolean = false;\n public showSequenceNumberForm: boolean = false;\n public showSequenceContactForm: boolean = false;\n public showLapseAlert: boolean = false;\n public lapseAlertMessage: string = '';\n public showNoPremiumCollected: boolean = false;\n public showNoGroupPremiumCollected: boolean = false;\n public showSuspenseAlert: boolean = false;\n public showLoanBalanceAlert: boolean = false;\n public disableSaveCollectionButton: boolean = true;\n public disableSaveLapsedCollectionButton: boolean = true;\n public disableSaveGroupCollectionButton: boolean = true;\n public disableSubmitBatchButton: boolean = true;\n private channelSubscription: Subscription;\n public routeList$?: Observable\n public pendingCollectionsRowData: [] = [];\n public batchHistoryRowData: [] = [];\n public screenWidthForDesktops: number = 1920;\n public pendingCollectionsListHeaderHeight: number = 75;\n private selectedTab: string = \"Route List\";\n private topRowID: number = 0;\n public showBillFormListCheckboxes: boolean = true;\n public agentCollectCount: number = 0;\r\n private autoPremiumLoanCount: number = 0;\r\n private bankDraftCount: number = 0;\r\n private creditCardCount: number = 0;\r\n private directBillCount: number = 0;\r\n private groupListBillCount: number = 0;\n public agentCollectCheckValue: string = \"X\";\r\n private autoPremiumLoanCheckValue: string = \"4\";\r\n private bankDraftCheckValue: string = \"2\";\r\n private creditCardCheckValue: string = \"C\";\r\n private directBillCheckValue: string = \"1\";\r\n private groupListBillCheckValue: string = \"3\";\n public policyNumber: string = \"\";\n public policyAgentID: string = \"\";\n public sequenceNo: string = \"\";\n public routeSequenceId: string = \"\";\n public amountCollected: number = 0.00;\n public modalPremium: number = 0.00;\n public premiumDue: number = 0.00;\n public monthsPaid: number = 0;\n public monthlyPremiumPaid: number = 0.00;\n public minimumMonths: number = 0;\n public groupModalPremium: number = 0.00;\n public groupPremiumDue: number = 0.00;\n public premiumGroupCollected: number = 0.00;\n public monthsGroupPaid: number = 0;\n public currentGroupCommRate: number = 0.00;\n private collectionId!: string;\n private collectionTypeId: number = 1;\n private regionId: number = 0;\n private collectionAgentId: string = \"\";\n private paidToDate: string = \"\";\n private cashAmount: number = 0.00;\n private isUseSuspenseChecked: boolean = false;\n private isMakeLoanPaymentChecked: boolean = false;\n private isMakeOverPaymentChecked: boolean = false;\n private availableSuspenseAmount: number = 0.00;\n private suspenseAmount: number = 0.00;\n private overpaymentAmount: number = 0.00;\n private currentLoanBalance: number = 0.00;\n private loanPaymentAmount: number = 0.00;\n private insuredName: string = \"\";\n private payorName: string = \"\";\n public premiumCollected: number = 0.00;\n public currentCommRate: number = 0.00;\n public contactName: string = \"\";\r\n public contactAddressLine1: string = \"\";\r\n public contactAddressLine2: string = \"\";\r\n public contactCity: string = \"\";\r\n public contactState: string = \"\";\r\n public contactZip: string = \"\";\r\n public contactEmailAddress: string = \"\";\r\n public contactPhone: string = \"\";\r\n public contactNotes: string = \"\";\n private gridApi1?: GridApi;\n private gridApi2?: GridApi;\n private gridApi3?: GridApi;\n private gridApi4?: GridApi;\n private gridApi5?: GridApi;\n private gridApi6?: GridApi;\n private gridApi7?: GridApi;\n private gridApi8?: GridApi;\n private gridApi9?: GridApi;\n private gridc: any;\n private gridColumnApi1: any;\n private gridColumnApi2: any;\n private gridColumnApi3: any;\n private gridColumnApi4: any;\n private gridColumnApi5: any;\n private gridColumnApi6: any;\n private gridColumnApi7: any;\n private gridColumnApi8: any;\n private gridColumnApi9: any;\n public noRowsTemplate: string = \"\";\n public groupDefaultExpanded = 1;\n public profile: Profile = {};\n public collectingAgents: Agent[] = [];\n public agents: Agent[] = [];\n public selectedAgentId: string = \"\";\n public selectedCollectingAgentId: string = \"\";\n public showPolicyDetail: boolean = false;\n public selectedPolicy: Policy = {};\n public coverageRowData: [] = [];\n public paymentRowData: [] = [];\n public statusHistoryRowData: [] = [];\n public underwritingStatusRowData: [] = [];\n public allocationRowData: [] = [];\n public hierarchyRowData: [] = [];\n public beneficiaryInfoRowData: [] = [];\n public beneficiaryRowData: [] = [];\n public clientInfoAccordionExpanded: boolean = false;\n public innerWidth: any;\n columnRoutleListDefs!: ColDef[];\n columnPendingCollectionsDefs!: ColDef[];\n columnBatchHistoryDefs!: ColDef[];\n\n coverageColumnDefs = [\n { field: 'coverageType', headerName: 'Coverage', minWidth: 125, maxWidth: 125 },\n { field: 'coveragePlanCode', headerName: 'Plan Code', minWidth: 125, maxWidth: 125 },\n { field: 'coveragePlanDesc', headerName: 'Plan Description', minWidth: 300 },\n { field: 'coveredPerson', headerName: 'Insured', minWidth: 100 },\n { field: 'ageAtIssue', headerName: 'Issue Age', minWidth: 125, maxWidth: 125 },\n { field: 'benefitAmt', headerName: 'Benefit Amount', minWidth: 125, maxWidth: 150 },\n { field: 'expiryDate', headerName: 'Expires', minWidth: 125, maxWidth: 125, comparator: DateComparator },\n { field: 'payUpDate', headerName: 'Paid To', minWidth: 125, maxWidth: 125, comparator: DateComparator }\n ];\n paymentColumnDefs = [\n { field: 'paymentDate', headerName: 'Payment Date', minWidth: 100, comparator: DateComparator },\n { field: 'postDate', headerName: 'Post Date', minWidth: 100, comparator: DateComparator },\n { field: 'premiumAmt', headerName: 'Premuim', minWidth: 100 },\n { field: 'source', headerName: 'Source', minWidth: 100 }\n ];\n statusHistoryColumnDefs = [\n { field: 'status', headerName: 'Status', minWidth: 100 },\n { field: 'date', headerName: 'Status Date', minWidth: 100, comparator: DateComparator },\n ];\n hierarchyColumnDefs = [\n { field: 'agentID', headerName: 'Agent ID', minWidth: 100, maxWidth: 125 },\n { field: 'agentName', headerName: 'Agent Name', minWidth: 275 },\n { field: 'level', headerName: 'Level', minWidth: 100, maxWidth: 125 },\n { field: 'commissionPct', headerName: 'Commission %', minWidth: 125, maxWidth: 150 },\n { field: 'agentType', headerName: 'Agent Type', minWidth: 100 }\n ];\n beneficiaryColumnDefs = [\n { field: 'name', headerName: 'Name', minWidth: 300 },\n { field: 'relationship', headerName: 'Relationship', minWidth: 175 },\n { field: 'split', headerName: 'Split %', minWidth: 125, maxWidth: 100 },\n { field: 'type', headerName: 'Type', minWidth: 175 }\n ];\n public defaultRoutleListColumnDef = {\n sortable: true,\n resizable: true,\n };\n public defaultColumnDef = {\n sortable: true,\n resizable: true,\n };\n\n public autoGroupColumnDef: ColDef = {\r\n headerName: '',\r\n cellRendererParams: {\r\n suppressCount: true,\r\n },\r\n maxWidth: 20,\r\n colSpan: (params: ColSpanParams) => {\r\n if (params.data) {\r\n return 1;\r\n } else {\r\n return 9;\r\n }\r\n },\r\n headerClass: (params: any) => {\r\n if (this.innerWidth >= this.screenWidthForDesktops) {\r\n return '';\r\n } else {\r\n return 'commission-header';\r\n }\r\n } \r\n };\n\n public gridOptions: GridOptions = {\n context: this,\n tooltipShowDelay: 0\n }\n\n public gridOptions2: GridOptions = {\n context: this,\n tooltipShowDelay: 0\n }\n\n public gridOptions3: GridOptions = {\n context: this,\n }\n\n constructor(public onPremService: OnPremStorageService, private siteParmService: SiteParameterService) {\n this.noRowsTemplate = this.siteParmService.getGridNoResults();\n this.channelSubscription = this.siteParmService.getChannelUpdate().subscribe\n (message => {\n this.profile = siteParmService.getStaticProfile();\n this.selectedAgentId = \"\";\n\n this.getAgentList();\n \n this.lapseAlertMessage = this.profile.channelPreference === 'Home Service' ?\n \"Months Paid must equal or exceed the Months Due\" : \"ALERT >> Must Collect or Lapse Will Occur << ALERT\";\n });\n }\n\n ngOnInit(): void {\n this.innerWidth = window.innerWidth;\n this.getRoutleListColumnDefs();\n this.getPendingCollectionsColumnDefs();\r\n this.getBatchHistoryColumnDefs();\n this.profile = this.siteParmService.getStaticProfile();\n this.getAgentList();\n\n this.refreshRouteList();\n $('#menu li a').click(function () {\n $('#menu').find(\"*\").removeClass(\"router-link-exact-active\");\n $(this).addClass('router-link-exact-active');\n });\n this.lapseAlertMessage = this.profile.channelPreference === 'Home Service' ?\n \"Months Paid must equal or exceed the Months Due\" : \"ALERT >> Must Collect or Lapse Will Occur << ALERT\";\n }\n\n @HostListener('window:resize', ['$event'])\r\n onResize(event: any) {\r\n this.innerWidth = window.innerWidth;\r\n this.getRoutleListColumnDefs();\r\n this.getPendingCollectionsColumnDefs();\r\n this.getBatchHistoryColumnDefs(); \r\n\r\n if (this.selectedTab === 'Pending Collections') {\r\n this.refreshPendingCollectionsList();\r\n }\r\n }\n\n getRoutleListColumnDefs(): void {\n if (this.innerWidth >= this.screenWidthForDesktops) {\n this.columnRoutleListDefs = [\n { field: 'sequenceNoGroupText', rowGroup: true, hide: true },\n {\r\n minWidth: 50, maxWidth: 75, cellRenderer: (params: any) => {\n return this.getRoutleListGridIcons(params.data);\r\n },\r\n tooltipValueGetter: (params: any) => {\r\n return this.getRoutleListGridTooltip(params.data);\r\n },\r\n },\n { field: 'insuredName', headerName: 'Insured', minWidth: 100},\n { field: 'payorName', headerName: 'Payor', minWidth: 100, },\n { field: 'policyNum', headerName: 'Policy #', minWidth: 100, maxWidth: 125 },\n { field: 'agentID', headerName: 'Agent', minWidth: 110, maxWidth: 110 },\n { field: 'paidToDate', headerName: 'Paid-To Date', minWidth: 110, maxWidth: 110 },\n { field: 'modalPremium', headerName: 'Modal Prem', valueFormatter: currencyFormatter, minWidth: 120, maxWidth: 120 },\n { field: 'monthsDue', headerName: 'Months Due', minWidth: 100, maxWidth: 100 },\n { field: 'premiumDue', headerName: 'Prem Due', minWidth: 100, maxWidth: 100, valueFormatter: currencyFormatter },\n { field: 'availableSuspense', headerName: 'Avail Suspense', minWidth: 120, maxWidth: 120, valueFormatter: currencyFormatter },\n { field: 'currentLoanBalance', headerName: 'Loan Balance', minWidth: 120, maxWidth: 120, valueFormatter: currencyFormatter },\n { field: 'collectionAmt', headerName: 'Prem Collected', minWidth: 120, maxWidth: 120, valueFormatter: currencyFormatter }\n ];\r\n }\n else {\n this.columnRoutleListDefs = [\n { field: 'sequenceNoGroupText', rowGroup: true, hide: true },\n {\r\n minWidth: 75, maxWidth: 75, cellRenderer: (params: any) => {\n return this.getRoutleListGridIcons(params.data);\r\n },\r\n tooltipValueGetter: (params: any) => {\r\n return this.getRoutleListGridTooltip(params.data);\r\n }, headerClass: 'commission-header'\r\n },\n { field: 'insuredName', headerName: 'Insured', minWidth: 100, headerClass: 'commission-header' },\n { field: 'policyNum', headerName: 'Policy #', minWidth: 100, maxWidth: 125, headerClass: 'commission-header' },\n { field: 'agentID', headerName: 'Agent', minWidth: 110, maxWidth: 110, headerClass: 'commission-header' },\n { field: 'paidToDate', headerName: 'Paid-To Date', minWidth: 110, maxWidth: 110, headerClass: 'commission-header' },\n { field: 'modalPremium', headerName: 'Modal Prem', valueFormatter: currencyFormatter, minWidth: 120, maxWidth: 120, headerClass: 'commission-header' },\n { field: 'monthsDue', headerName: 'Months Due', minWidth: 100, maxWidth: 100, headerClass: 'commission-header' },\n { field: 'premiumDue', headerName: 'Prem Due', minWidth: 100, maxWidth: 100, valueFormatter: currencyFormatter, headerClass: 'commission-header' },\n { field: 'availableSuspense', headerName: 'Avail Suspense', minWidth: 120, maxWidth: 120, valueFormatter: currencyFormatter, headerClass: 'commission-header' },\n { field: 'currentLoanBalance', headerName: 'Loan Balance', minWidth: 120, maxWidth: 120, valueFormatter: currencyFormatter, headerClass: 'commission-header' },\n { field: 'collectionAmt', headerName: 'Prem Collected', minWidth: 120, maxWidth: 120, valueFormatter: currencyFormatter, headerClass: 'commission-header' }\n ];\n }\n }\n\n getPendingCollectionsColumnDefs(): void {\n if (this.innerWidth >= this.screenWidthForDesktops) {\n this.columnPendingCollectionsDefs = [\r\n { field: 'sequenceNo', headerName: 'Route Seq #', minWidth: 75 },\n {\r\n minWidth: 50, maxWidth: 50, cellRenderer: (params: any) => {\n return this.getPendingCollectionsListGridIcons(params.data);\r\n },\r\n tooltipValueGetter: (params: any) => {\r\n return this.getPendingCollectionsListGridTooltip(params.data);\r\n },\r\n },\r\n { field: 'insuredName', headerName: 'Insured', minWidth: 150 },\r\n { field: 'policyNum', headerName: 'Policy Number', minWidth: 150 },\r\n { field: 'agentID', headerName: 'Agent' },\r\n { field: 'premiumAmt', headerName: 'Premium', valueFormatter: currencyFormatter },\r\n { field: 'overpaymentAmt', headerName: 'Overpayment Amt', valueFormatter: currencyFormatter },\r\n { field: 'agentCollectAmt', headerName: 'Agent Collect/Due', valueFormatter: currencyFormatter },\r\n { field: 'appliedSuspenseAmt', headerName: 'Applied Suspense', valueFormatter: currencyFormatter },\r\n { field: 'loanPaymentAmt', headerName: 'Loan Payment', valueFormatter: currencyFormatter },\r\n { field: 'totalCollectionAmt', headerName: 'Total Collection', valueFormatter: currencyFormatter },\r\n { field: 'estCommAmt', headerName: 'Est. Commission Amt', valueFormatter: currencyFormatter },\r\n { field: 'estNetAmt', headerName: 'Est. Net Draft', valueFormatter: currencyFormatter }\r\n ];\n }\n else {\n this.columnPendingCollectionsDefs = [\r\n { field: 'sequenceNo', headerName: 'Route Seq #', minWidth: 75, headerClass: 'commission-header' },\n {\r\n minWidth: 50, maxWidth: 50, cellRenderer: (params: any) => {\n return this.getPendingCollectionsListGridIcons(params.data);\r\n },\r\n tooltipValueGetter: (params: any) => {\r\n return this.getPendingCollectionsListGridTooltip(params.data);\r\n },\r\n },\r\n { field: 'insuredName', headerName: 'Insured', minWidth: 150, headerClass: 'commission-header' },\r\n { field: 'policyNum', headerName: 'Policy Number', minWidth: 150, headerClass: 'commission-header' },\r\n { field: 'agentID', headerName: 'Agent', headerClass: 'commission-header' },\r\n { field: 'premiumAmt', headerName: 'Premium', valueFormatter: currencyFormatter, headerClass: 'commission-header' },\r\n { field: 'overpaymentAmt', headerName: 'Overpayment Amt', valueFormatter: currencyFormatter, headerClass: 'commission-header' },\r\n { field: 'agentCollectAmt', headerName: 'Agent Collect/Due', valueFormatter: currencyFormatter, headerClass: 'commission-header' },\r\n { field: 'appliedSuspenseAmt', headerName: 'Applied Suspense', valueFormatter: currencyFormatter, headerClass: 'commission-header' },\r\n { field: 'loanPaymentAmt', headerName: 'Loan Payment', valueFormatter: currencyFormatter, headerClass: 'commission-header' },\r\n { field: 'totalCollectionAmt', headerName: 'Total Collection', valueFormatter: currencyFormatter, headerClass: 'commission-header' },\r\n { field: 'estCommAmt', headerName: 'Est. Commission Amt', valueFormatter: currencyFormatter, headerClass: 'commission-header' },\r\n { field: 'estNetAmt', headerName: 'Est. Net Draft', valueFormatter: currencyFormatter, headerClass: 'commission-header' }\r\n ];\r\n }\n }\n\n getBatchHistoryColumnDefs(): void {\n if (this.innerWidth >= this.screenWidthForDesktops) {\r\n this.columnBatchHistoryDefs = [\r\n { field: 'batchNum', headerName: 'Batch No.' },\r\n { field: 'agentID', headerName: 'Agent' },\r\n { field: 'premiumAmt', headerName: 'Premium' },\r\n { field: 'overpaymentAmt', headerName: 'Overpayment' },\r\n { field: 'loanPaymentAmt', headerName: 'Loan Repayment' },\r\n { field: 'agentCollectAmt', headerName: 'Agent Collect/Due' },\r\n { field: 'appliedSuspenseAmt', headerName: 'Applied Suspense' },\r\n { field: 'totalCollectionAmt', headerName: 'Total Collection' },\r\n { field: 'estCommAmt', headerName: 'Est. Commission' },\r\n { field: 'estNetAmt', headerName: 'Est. Net Draft' },\r\n { field: 'createDTM', headerName: 'Batch Date', comparator: DateComparator },\r\n { field: 'collectionBatchStatus', headerName: 'Status' },\r\n { field: 'statusUpdateDTM', headerName: 'Status Date', comparator: DateComparator }\r\n ];\r\n }\r\n else {\r\n this.columnBatchHistoryDefs = [\r\n { field: 'batchNum', headerName: 'Batch No.', headerClass: 'commission-header' },\r\n { field: 'agentID', headerName: 'Agent', headerClass: 'commission-header' },\r\n { field: 'premiumAmt', headerName: 'Premium', headerClass: 'commission-header' },\r\n { field: 'overpaymentAmt', headerName: 'Overpayment', headerClass: 'commission-header' },\r\n { field: 'loanPaymentAmt', headerName: 'Loan Repayment', headerClass: 'commission-header' },\r\n { field: 'agentCollectAmt', headerName: 'Agent Collect/Due', headerClass: 'commission-header' },\r\n { field: 'appliedSuspenseAmt', headerName: 'Applied Suspense', headerClass: 'commission-header' },\r\n { field: 'totalCollectionAmt', headerName: 'Total Collection', headerClass: 'commission-header' },\r\n { field: 'estCommAmt', headerName: 'Est. Commission', headerClass: 'commission-header' },\r\n { field: 'estNetAmt', headerName: 'Est. Net Draft', headerClass: 'commission-header' },\r\n { field: 'createDTM', headerName: 'Batch Date', comparator: DateComparator, headerClass: 'commission-header' },\r\n { field: 'collectionBatchStatus', headerName: 'Status', headerClass: 'commission-header' },\r\n { field: 'statusUpdateDTM', headerName: 'Status Date', comparator: DateComparator, headerClass: 'commission-header' }\r\n ];\r\n }\r\n }\n\n getRouteList() {\r\n var billFormCodeListValues = \"\";\r\n if (this.agentCollectCheckValue != \"\") {\r\n billFormCodeListValues = billFormCodeListValues === \"\" ? this.agentCollectCheckValue : billFormCodeListValues.concat(\",\").concat(this.agentCollectCheckValue);\r\n }\r\n if (this.autoPremiumLoanCheckValue != \"\") {\r\n billFormCodeListValues = billFormCodeListValues === \"\" ? this.autoPremiumLoanCheckValue : billFormCodeListValues.concat(\",\").concat(this.autoPremiumLoanCheckValue);\r\n }\r\n if (this.bankDraftCheckValue != \"\") {\r\n billFormCodeListValues = billFormCodeListValues === \"\" ? this.bankDraftCheckValue : billFormCodeListValues.concat(\",\").concat(this.bankDraftCheckValue);\r\n }\r\n if (this.creditCardCheckValue != \"\") {\r\n billFormCodeListValues = billFormCodeListValues === \"\" ? this.creditCardCheckValue : billFormCodeListValues.concat(\",\").concat(this.creditCardCheckValue);\r\n }\r\n if (this.directBillCheckValue != \"\") {\r\n billFormCodeListValues = billFormCodeListValues === \"\" ? this.directBillCheckValue : billFormCodeListValues.concat(\",\").concat(this.directBillCheckValue);\r\n }\r\n if (this.groupListBillCheckValue != \"\") {\r\n billFormCodeListValues = billFormCodeListValues === \"\" ? this.groupListBillCheckValue : billFormCodeListValues.concat(\",\").concat(this.groupListBillCheckValue);\r\n }\r\n\r\n this.routeList$ = this.onPremService\r\n .getRouteList(this.selectedAgentId, billFormCodeListValues)\r\n .pipe(map(response => {\r\n this.agentCollectCount = response.data[0].billFormCountAgentCollect;\n this.autoPremiumLoanCount = response.data[0].billFormCountAutoPremLoan;\r\n this.bankDraftCount = response.data[0].billFormCountBankDraft;\r\n this.creditCardCount = response.data[0].billFormCountCreditCard;\r\n this.directBillCount = response.data[0].billFormCountDirectBill;\r\n this.groupListBillCount = response.data[0].billFormCountGroupListBill;\r\n response.data.shift();\r\n return response.data;\r\n }));\r\n }\n\n resetDisplayBillingMethods() {\n this.agentCollectCheckValue = \"X\";\r\n this.autoPremiumLoanCheckValue = \"4\";\r\n this.bankDraftCheckValue = \"2\";\r\n this.creditCardCheckValue = \"C\";\r\n this.directBillCheckValue = \"1\";\r\n this.groupListBillCheckValue = \"3\";\n this.agentCollectCount = 0;\n this.autoPremiumLoanCount = 0;\r\n this.bankDraftCount = 0;\r\n this.creditCardCount = 0;\r\n this.directBillCount = 0;\r\n this.groupListBillCount = 0;\r\n }\n\n getPendingCollections() {\r\n this.onPremService.getPendingCollections(this.selectedAgentId)\n .pipe(take(1))\n .subscribe(policyInfo => {\n this.pendingCollectionsRowData = policyInfo.data;\n this.disableSubmitBatchButton = policyInfo.data.length === 0;\n setTimeout(() => {\r\n this.gridApi2?.sizeColumnsToFit();\r\n }, 100);\n });\r\n }\n\n getBatchHistory() {\r\n this.onPremService.getBatchHistory(this.selectedAgentId)\n .pipe(take(1))\n .subscribe(policyInfo => {\n this.batchHistoryRowData = policyInfo.data;\n });\r\n }\n\n getAgentList(): void {\n this.onPremService.getAgentWithDownineList(this.profile.selectedAgentNumber)\n .pipe(take(1))\n .subscribe(agents => {\n this.agents = agents;\r\n this.selectedAgentId = agents[0].agentId;\r\n\r\n switch (this.selectedTab) {\r\n case 'Pending Collections':\r\n this.getPendingCollections();\r\n break;\r\n\r\n case 'Batch History':\r\n this.getBatchHistory();\r\n break;\r\n\r\n default:\r\n this.refreshRouteList();\r\n };\r\n });\n }\n\n changeAgentId(e: any) {\r\n\r\n this.selectedAgentId = e.target.value;\r\n\r\n switch (this.selectedTab) {\r\n case 'Pending Collections':\r\n this.getPendingCollections();\r\n break;\r\n\r\n case 'Batch History':\r\n this.getBatchHistory();\r\n break;\r\n\r\n default:\r\n this.topRowID = 0;\r\n this.refreshRouteList();\r\n }\r\n }\n\n changeCollectingAgentId(e: any) {\r\n this.selectedCollectingAgentId = e.target.value;\r\n\r\n this.onPremService.getAgentActiveHierarchyListWithSelf(this.selectedCollectingAgentId, true)\n .pipe(take(1))\n .subscribe(apiReponse => {\n this.agents = apiReponse.data;\n this.selectedAgentId = apiReponse.data[0].agentId;\n\n switch (this.selectedTab) {\r\n case 'Pending Collections':\r\n this.getPendingCollections();\r\n break;\r\n\r\n case 'Batch History':\r\n this.getBatchHistory();\r\n break;\r\n\r\n default:\r\n this.topRowID = 0;\r\n this.getRouteList();\r\n }\n });\r\n }\n\n checkBillingMethod(e: any) {\r\n if (e.target.id == 'displayAgentCollect') {\r\n this.agentCollectCheckValue = e.target.checked ? \"X\" : \"\";\r\n }\r\n if (e.target.id == 'displayAutoPremiumLoan') {\r\n this.autoPremiumLoanCheckValue = e.target.checked ? \"4\" : \"\";\r\n }\r\n if (e.target.id == 'displayBankDraft') {\r\n this.bankDraftCheckValue = e.target.checked ? \"2\" : \"\";\r\n }\r\n if (e.target.id == 'displayCreditCard') {\r\n this.creditCardCheckValue = e.target.checked ? \"C\" : \"\";\r\n }\r\n if (e.target.id == 'displayDirectBill') {\r\n this.directBillCheckValue = e.target.checked ? \"1\" : \"\";\r\n }\r\n if (e.target.id == 'displayGroupListBill') {\r\n this.groupListBillCheckValue = e.target.checked ? \"3\" : \"\";\r\n }\r\n this.getRouteList();\r\n }\n\n clearForm() {\n this.policyNumber = \"\";\n this.sequenceNo = \"\";\n this.routeSequenceId = \"\";\n this.amountCollected = 0.00;\n this.modalPremium = 0.00;\n this.premiumDue = 0.00;\n this.monthsPaid = 0;\n this.monthlyPremiumPaid = 0;\n this.minimumMonths = 0;\n this.collectionId = \"\";\n this.regionId = 0;\n this.collectionAgentId = \"\";\n this.cashAmount = 0.00;\n this.loanPaymentAmount = 0.00;\n this.suspenseAmount = 0.00;\n this.overpaymentAmount = 0.00;\n this.premiumCollected = 0.00;\n this.insuredName = \"\";\n this.payorName = \"\";\r\n\r\n this.groupModalPremium = 0.00;\n this.groupPremiumDue = 0.00;\n this.premiumGroupCollected = 0.00;\n this.monthsGroupPaid = 0;\r\n }\n\n onRouteListRowClicked(event: RowSelectedEvent) {\r\n if (event.node.isSelected()) {\r\n if (!event.node.key) {\r\n if (event.data.lockPayment === 'YES') {\r\n this.showLockAlert();\r\n }\r\n else {\r\n this.getCollection(event.data);\r\n this.openCollectionForm();\r\n }\r\n }\r\n }\r\n }\n\n onBatchHistoryListRowClicked(event: RowSelectedEvent) {\r\n if (event.node.isSelected()) {\r\n if (!event.node.key) {\r\n this.getReport(75, \"\", event.node.data.collectionBatchID);\r\n }\r\n }\r\n }\n\n openCollectionForm() {\r\n switch (this.selectedTab) {\r\n case 'Route List':\r\n this.showRouteList = false;\r\n break;\r\n case 'Pending Collections':\r\n this.showSubmitBatchButton = false;\r\n this.showPendingCollectionsList = false;\r\n break;\r\n default:\r\n }\r\n this.disabledTabs();\r\n this.showCollectionParameters = false;\r\n this.showCollectionForm = true;\r\n this.disableSaveCollectionButton = true;\r\n }\n\n closeCollectionForm() {\r\n this.clearForm();\r\n this.enableTabs();\r\n this.showCollectionParameters = true;\r\n this.showCollectionForm = false;\r\n this.showLapseAlert = false;\r\n this.showNoPremiumCollected = false;\r\n this.showSuspenseAlert = false;\r\n this.showLoanBalanceAlert = false;\r\n\r\n switch (this.selectedTab) {\r\n case 'Route List':\r\n this.showRouteList = true;\r\n break;\r\n case 'Pending Collections':\r\n this.showSubmitBatchButton = true;\r\n this.showPendingCollectionsList = true;\r\n this.refreshPendingCollectionsList();\r\n break;\r\n default:\r\n }\r\n }\n\n openLapsedCollectionForm() {\r\n this.showSubmitBatchButton = false;\r\n this.showPendingCollectionsList = false;\r\n this.disabledTabs();\r\n this.showCollectionParameters = false;\r\n this.isMakeOverPaymentChecked = false;\r\n this.showLapsedCollectionForm = true;\r\n this.enablePolicyNumberSearch = true;\r\n this.disableSaveLapsedCollectionButton = true;\r\n }\n\n closeLapsedCollectionForm() {\r\n this.clearForm();\r\n this.enableTabs();\r\n this.showCollectionParameters = true;\r\n this.showLapsedCollectionForm = false;\r\n this.showLapseAlert = false;\r\n this.showLapseCollectionInfo = false;\r\n this.showNoPremiumCollected = false;\r\n this.showPolicyFound = false;\n this.showPolicyNotFound = false;\r\n this.showSubmitBatchButton = true;\r\n this.showPendingCollectionsList = true;\r\n this.refreshPendingCollectionsList();\r\n }\n\n openGroupCollectionForm() {\r\n this.showCollectionParameters = false;\r\n this.showRouteList = false;\r\n this.showGroupCollectionForm = true;\r\n this.disableSaveGroupCollectionButton = false;\r\n this.disabledTabs();\r\n }\n\n closeGroupCollectionForm() {\r\n this.clearForm();\r\n this.enableTabs();\r\n this.showCollectionParameters = true;\r\n this.showRouteList = true;\r\n this.showGroupCollectionForm = false;\r\n this.showNoGroupPremiumCollected = false;\r\n }\n\n getCollection(data: any): void {\n if (data.collectionID === null) {\r\n this.collectionTypeId = data.collectionTypeID;\r\n this.policyNumber = data.policyNum;\n this.sequenceNo = data.sequenceNo;\r\n this.routeSequenceId = data.routeSequenceID\r\n this.modalPremium = data.modalPremium;\r\n this.premiumDue = data.premiumDue;\r\n this.paidToDate = data.paidToDate;\r\n this.monthsPaid = data.requireFullPayment == 'YES' && this.profile.channelPreference === 'Home Service' ? data.monthsDue : 0;\r\n this.monthlyPremiumPaid = this.modalPremium * this.monthsPaid;\r\n this.showLapseAlert = data.requireFullPayment == 'YES';\r\n this.minimumMonths = data.requireFullPayment == 'YES' && this.profile.channelPreference === 'Home Service' ? this.monthsPaid : 0;\r\n this.premiumCollected = data.requireFullPayment == 'YES' && this.profile.channelPreference === 'Home Service' ? data.premiumDue : 0;\r\n this.currentCommRate = data.currentCommRate;\r\n // Commission Displayed may be implemented later\r\n //this.estimatedCommission = this.premiumCollected * this.currentCommRate; \r\n this.regionId = data.regionID;\n this.collectionAgentId = this.profile.auth0Id;\n this.cashAmount = 0;// this.premiumDue;\n this.availableSuspenseAmount = data.availableSuspense;\n this.isUseSuspenseChecked = false;\n this.currentLoanBalance = data.currentLoanBalance;\n this.isMakeLoanPaymentChecked = false;\n this.isMakeOverPaymentChecked = false;\n this.insuredName = data.insuredName;\n this.payorName = data.payorName;\r\n } else {\r\n this.onPremService.getCollection(data.collectionID)\r\n .pipe(take(1))\r\n .subscribe(response => {\r\n this.collectionId = response.data[0].collectionID;\r\n this.collectionTypeId = response.data[0].collectionTypeID;\r\n this.policyNumber = response.data[0].policyNum;\n this.sequenceNo = response.data[0].sequenceNo;\r\n this.modalPremium = response.data[0].modalPremium;\r\n this.premiumDue = response.data[0].premiumDue;\r\n this.paidToDate = response.data[0].paidToDate;\r\n this.monthsPaid = response.data[0].monthsPaid;\r\n this.showLapseAlert = response.data[0].requireFullPayment == 'YES';\r\n this.minimumMonths = response.data[0].requireFullPayment == 'YES' && this.profile.channelPreference === 'Home Service' ? response.data[0].monthsDue : 0;\r\n this.premiumCollected = response.data[0].cashAmt + response.data[0].overpaymentAmt;\r\n this.currentCommRate = response.data[0].currentCommRate;\r\n // Commission Displayed may be implemented later\r\n //this.estimatedCommission = response.data[0].premiumDue * response.data[0].currentCommRate;\r\n this.regionId = response.data[0].regionID;\n this.collectionAgentId = response.data[0].collectionAgentID;\n let originalCashAmount = response.data[0].cashAmt + response.data[0].suspenseAmt;\n this.monthlyPremiumPaid = this.modalPremium * this.monthsPaid;\n this.cashAmount = originalCashAmount;\n this.availableSuspenseAmount = response.data[0].availableSuspense;\n this.suspenseAmount = response.data[0].suspenseAmt;\n this.isUseSuspenseChecked = response.data[0].suspenseAmt > 0;\n this.loanPaymentAmount = response.data[0].loanPaymentAmt;\n this.currentLoanBalance = response.data[0].loanBalanceAmt;\n this.isMakeLoanPaymentChecked = response.data[0].loanPaymentAmt > 0;\n this.overpaymentAmount = response.data[0].overpaymentAmt;\n this.isMakeOverPaymentChecked = response.data[0].overpaymentAmt > 0;\n this.amountCollected = (Math.round(((this.cashAmount - this.suspenseAmount + this.loanPaymentAmount + this.overpaymentAmount) + Number.EPSILON) * 100) / 100);\n this.insuredName = response.data[0].insuredName;\n this.payorName = response.data[0].payorName;\r\n });\r\n }\r\n }\n\n addCollection(formData: any): void {\r\n if (this.premiumCollected > 0) {\r\n if (this.currentLoanBalance >= this.loanPaymentAmount) {\r\n if (this.availableSuspenseAmount >= this.suspenseAmount) {\r\n let netCashAmount = this.cashAmount - this.suspenseAmount;\r\n this.disableSaveCollectionButton = true;\r\n this.onPremService.saveCollection(this.collectionId, this.collectionTypeId, this.regionId, this.policyNumber, this.selectedAgentId, this.collectionAgentId,\r\n this.monthsPaid, netCashAmount, this.suspenseAmount, this.overpaymentAmount, this.loanPaymentAmount, this.profile.auth0Id, this.modalPremium,\r\n this.currentCommRate, this.insuredName, this.payorName, this.sequenceNo)\r\n .pipe(take(1))\r\n .subscribe((response: any) => {\r\n if (response.data.responseCode.code === -1) {\r\n this.showCollectionErrorAlert(response.data.responseCode.message);\r\n } else {\r\n if (this.showCollectionForm) {\n this.closeCollectionForm();\r\n\r\n if (this.selectedTab == \"Pending Collections\") {\r\n this.refreshPendingCollectionsList();\r\n }\r\n };\r\n if (this.showLapsedCollectionForm) {\r\n this.closeLapsedCollectionForm();\r\n this.refreshPendingCollectionsList();\r\n };\r\n //}\r\n }\r\n });\r\n }\r\n else {\r\n this.showSuspenseAlert = true;\r\n }\r\n }\r\n else {\r\n this.showLoanBalanceAlert = true;\r\n }\r\n }\r\n else {\r\n this.showNoPremiumCollected = true;\r\n }\r\n }\n\n deleteCollection(collectionId: string): void {\n if (confirm(\"Are you sure you want to delete this payment?\")) {\n this.onPremService.deleteCollection(collectionId)\r\n .pipe(take(1))\r\n .subscribe();\n if (this.showCollectionForm) {\n this.closeCollectionForm();\r\n } else if (this.showLapsedCollectionForm) {\r\n this.closeLapsedCollectionForm();\r\n } else {\n this.refreshPendingCollectionsList();\n };\n }\n }\n\n setGroupCollectionValues(listCollection: any) {\r\n var premiumSum = 0;\r\n var premiumDueSum = 0;\r\n this.collectionId = listCollection[0].data.collectionID;\r\n this.sequenceNo = listCollection[0].data.sequenceNo;\r\n this.routeSequenceId = listCollection[0].data.routeSequenceID;\r\n this.monthsGroupPaid = listCollection[0].data.requireFullPayment == 'YES' && this.profile.channelPreference === 'Home Service' ? listCollection[0].data.monthsDue : 0;\r\n this.showLapseAlert = listCollection[0].data.requireFullPayment == 'YES';\r\n this.minimumMonths = listCollection[0].data.requireFullPayment == 'YES' && this.profile.channelPreference === 'Home Service' ? this.monthsGroupPaid : 0;\r\n this.currentGroupCommRate = listCollection[0].data.currentCommRate;\r\n this.collectionAgentId = this.profile.auth0Id;\r\n\r\n let isLapsed: boolean = false;\r\n let monthsLapsed: number = 0;\r\n\r\n for (var i = 0; i < listCollection.length; i++) {\r\n premiumSum += listCollection[i].data.modalPremium;\r\n premiumDueSum += listCollection[i].data.premiumDue;\r\n\r\n if (listCollection[i].data.requireFullPayment == 'YES' && this.profile.channelPreference === 'Home Service') {\r\n isLapsed = true;\r\n if (listCollection[i].data.monthsDue > monthsLapsed)\r\n monthsLapsed = listCollection[i].data.monthsDue;\r\n }\r\n }\r\n\r\n if (isLapsed) {\r\n this.showLapseAlert = isLapsed;\r\n this.monthsGroupPaid = monthsLapsed;\r\n this.minimumMonths = monthsLapsed;\r\n this.premiumGroupCollected = premiumSum * monthsLapsed;\r\n }\r\n else {\r\n this.premiumGroupCollected = 0;\r\n }\r\n this.groupModalPremium = premiumSum;\r\n this.groupPremiumDue = premiumDueSum;\r\n }\n\n checkToDisableAddGroupCollection(listCollection: any): boolean {\n var disable = false;\n if (listCollection[0].data.sequenceNo == 'UNSEQUENCED') {\n disable = true;\r\n }\n return disable;\r\n }\n\n addGroupCollection(formData: any): void {\r\n let collectionError = false;\r\n if (this.premiumGroupCollected > 0) {\r\n this.disableSaveGroupCollectionButton = true;\r\n this.onPremService.saveGroupCollection(this.routeSequenceId, this.selectedAgentId, this.collectionAgentId, this.monthsGroupPaid,\r\n this.premiumGroupCollected, this.profile.auth0Id)\r\n .then((response: any) => {\r\n if (response.responseCode.code === -1) {\r\n collectionError = true;\r\n this.showCollectionErrorAlert(response.responseCode.message);\r\n };\r\n })\r\n .finally(() => {\r\n if (!collectionError) {\r\n this.closeGroupCollectionForm();\r\n }\r\n });\r\n }\r\n else {\r\n this.showNoGroupPremiumCollected = true;\r\n }\r\n }\n\n checkToDisableDeleteGroupCollection(listCollection: any): boolean {\n var collectedSum = 0;\n\n for (var i = 0; i < listCollection.length; i++) {\r\n collectedSum += listCollection[i].data.collectionAmt;\r\n }\r\n\n return collectedSum === 0;\r\n }\n\n checkForLockInGroupCollection(listCollection: any): boolean {\n var locked = false;\n\n for (var i = 0; i < listCollection.length; i++) {\r\n if (listCollection[i].data.lockPayment === 'YES') {\r\n locked = true;\r\n }\r\n }\n return locked;\r\n }\n\n deleteGroupCollection(routeSequenceId: string): void {\n if (confirm(\"Are you sure you want to delete this group payment?\")) {\n this.onPremService.deleteGroupCollection(routeSequenceId)\r\n .finally(() => {\r\n //this.getTotalCollectedAmount();\r\n this.refreshRouteList();\r\n });\r\n }\n }\n\n searchPolicyNumber(formPolicyNumberCtrl: AbstractControl) {\r\n var policyNumber = formPolicyNumberCtrl.value;\r\n this.onPremService.getLapsedPolicy(this.selectedAgentId, policyNumber)\r\n .pipe(take(1))\r\n .subscribe(apiResponse => {\r\n if (apiResponse.data.length === 0) {\r\n this.showPolicyFound = false;\r\n this.showLapseAlert = false;\r\n this.showLapseCollectionInfo = false;\r\n this.showNoPremiumCollected = false;\r\n this.insuredName = \"\";\r\n this.showPolicyNotFound = true;\r\n }\r\n else {\r\n this.enablePolicyNumberSearch = false;\r\n this.showPolicyFound = true;\r\n this.showPolicyNotFound = false;\r\n this.showLapseCollectionInfo = true;\r\n this.disableSaveLapsedCollectionButton = true;\r\n this.collectionTypeId = apiResponse.data[0].collectionTypeID;\r\n this.policyNumber = apiResponse.data[0].policyNum;\n this.sequenceNo = apiResponse.data[0].sequenceNo;\r\n this.routeSequenceId = apiResponse.data[0].routeSequenceID\r\n this.modalPremium = apiResponse.data[0].modalPremium;\r\n this.premiumDue = apiResponse.data[0].premiumDue;\r\n this.paidToDate = apiResponse.data[0].paidToDate;\r\n this.monthsPaid = apiResponse.data[0].requireFullPayment == 'YES' ? apiResponse.data[0].monthsDue : 0;\r\n this.monthlyPremiumPaid = this.modalPremium * this.monthsPaid;\r\n this.showLapseAlert = apiResponse.data[0].requireFullPayment == 'YES';\r\n this.minimumMonths = apiResponse.data[0].requireFullPayment == 'YES' ? this.monthsPaid : 0;\r\n this.premiumCollected = apiResponse.data[0].requireFullPayment == 'YES' ? apiResponse.data[0].premiumDue : 0;\r\n this.currentCommRate = apiResponse.data[0].currentCommRate;\r\n this.regionId = apiResponse.data[0].regionID;\n this.collectionAgentId = this.profile.auth0Id;\n this.cashAmount = 0;// this.premiumDue;\n this.availableSuspenseAmount = apiResponse.data[0].availableSuspense;\n this.isMakeOverPaymentChecked = false;\n this.currentLoanBalance = apiResponse.data[0].currentLoanBalance;\n this.insuredName = apiResponse.data[0].insuredName;\n this.payorName = apiResponse.data[0].payorName;\r\n }\r\n });\r\n }\n\n resetPolicyNumberSearch() {\n this.enablePolicyNumberSearch = true;\r\n this.policyNumber = '';\r\n this.insuredName = '';\r\n this.amountCollected = 0;\r\n this.overpaymentAmount = 0;\r\n this.showPolicyFound = false;\r\n this.showPolicyNotFound = false;\r\n this.showLapseAlert = false;\r\n this.showLapseCollectionInfo = false;\r\n }\n\n openSequenceNumberForm() {\r\n this.showCollectionParameters = false;\r\n this.showRouteList = false;\r\n this.showSequenceNumberForm = true;\r\n this.disabledTabs();\r\n }\n\n closeSequenceNumberForm() {\r\n this.enableTabs();\r\n this.showCollectionParameters = true;\r\n this.showRouteList = true;\r\n this.showSequenceNumberForm = false;\r\n }\n\n getSequenceNumberInfo(data: any): void {\n this.regionId = data.regionID;\n this.policyNumber = data.policyNum;\n this.policyAgentID = data.agentID;\n this.sequenceNo = data.sequenceNo === 'UNSEQUENCED' ? '' : data.sequenceNo;\n }\n\n updateSequenceNumber(formData: any): void {\r\n this.onPremService.saveSequence(this.regionId, this.policyNumber, this.policyAgentID, trim(formData.sequenceNo), this.profile.auth0Id)\r\n .pipe(take(1))\r\n .subscribe();\r\n\r\n this.closeSequenceNumberForm();\r\n }\n\n openSequenceContactForm() {\r\n this.showCollectionParameters = false;\r\n this.showRouteList = false;\r\n this.showSequenceContactForm = true;\r\n this.disabledTabs();\r\n }\n\n closeSequenceContactForm() {\r\n this.enableTabs();\r\n this.showCollectionParameters = true;\r\n this.showRouteList = true;\r\n this.showSequenceContactForm = false;\r\n }\n\n getSequenceContactInfo(data: any): void {\n this.routeSequenceId = data.routeSequenceID;\n this.sequenceNo = data.sequenceNo;\n\n this.onPremService.getSequenceContact(this.routeSequenceId)\r\n .pipe(take(1))\r\n .subscribe(response => {\r\n this.contactName = response.data[0].name;\r\n this.contactAddressLine1 = response.data[0].addressLine1;\r\n this.contactAddressLine2 = response.data[0].addressLine2;\r\n this.contactCity = response.data[0].city;\r\n this.contactState = response.data[0].state;\r\n this.contactZip = response.data[0].zip;\r\n this.contactEmailAddress = response.data[0].emailAddress;\r\n this.contactPhone = response.data[0].phone;\r\n this.contactNotes = response.data[0].notes;\r\n });\n }\n\n updateSequenceContact(formData: any): void {\r\n this.onPremService.saveSequenceContact(this.routeSequenceId, this.sequenceNo, this.contactName, this.contactAddressLine1, this.contactAddressLine2,\r\n this.contactCity, this.contactState, this.contactZip, this.contactEmailAddress, this.contactPhone, this.contactNotes, this.profile.auth0Id)\r\n .pipe(take(1))\r\n .subscribe();\r\n\r\n this.closeSequenceContactForm();\r\n }\n\n submitBatch(collectionId: string): void {\n if (confirm(\"Are you sure you want to submit this collection batch?\")) {\n this.onPremService.insertCollectionBatch(this.selectedAgentId)\n .finally(() => {\r\n this.refreshPendingCollectionsList();\r\n });\n }\n }\n\n displayPolicyDetail(agentId: string, policyNumber: string, regionID: number) {\n this.selectedPolicy = {};\n this.onPremService.getPolicyDetail(agentId, policyNumber, regionID, this.profile.channelPreferenceValue)\n .pipe(take(1))\n .subscribe(policyInfo => {\n this.selectedPolicy = policyInfo.data[0];\n this.coverageRowData = policyInfo.data[0].policyCoverages;\n this.paymentRowData = policyInfo.data[0].policyPayments;\n this.statusHistoryRowData = policyInfo.data[0].policyStatusHistory;\n this.underwritingStatusRowData = policyInfo.data[0].policyUnderwritingStatus;\n this.hierarchyRowData = policyInfo.data[0].policyHierarchy;\n this.beneficiaryInfoRowData = policyInfo.data[0].policyBeneficiaryInfo;\n this.beneficiaryRowData = policyInfo.data[0].policyBeneficiary;\n this.allocationRowData = policyInfo.data[0].policyAllocation;\n if (policyInfo.data[0].policyCoverages == null) {\n $('#Coverages-tab').addClass('policymenudisabled');\n }\n if (policyInfo.data[0].policyPayments == null) {\n $('#PremiumHistory-tab').addClass('policymenudisabled');\n }\n if (policyInfo.data[0].policyStatusHistory == null) {\n $('#StatusHistory-tab').addClass('policymenudisabled');\n }\n if (policyInfo.data[0].policyUnderwritingStatus == null) {\n $('#Underwriting-tab').addClass('policymenudisabled');\n }\n if (policyInfo.data[0].policyHierarchy == null) {\n $('#Hierarchy-tab').addClass('policymenudisabled');\n }\n });\n this.showCollectionParameters = false;\r\n this.showRouteList = false;\r\n this.showPolicyDetail = true;\n this.disabledTabs();\n }\n\n displayList(list: string): boolean {\n var show: boolean = false;\n switch (this.profile.channelPreference) {\r\n case 'Annuity': {\r\n if (list === 'Underwriting' || list === 'BeneficiaryInfo') {\r\n show = true;\r\n }\r\n break;\r\n }\r\n case 'Annuity [Bank]': {\r\n if (list === 'Underwriting' || list === 'BeneficiaryInfo') {\r\n show = true;\r\n }\r\n break;\r\n }\r\n case 'Pre-Need': {\r\n if (list === 'BeneficiaryInfo') {\r\n show = true;\r\n }\r\n break;\r\n }\r\n case 'Home Service': {\r\n if (list === 'BeneficiaryInfo') {\r\n show = true;\r\n }\r\n break;\r\n }\r\n case 'Home Service [Career]': {\r\n if (list === 'BeneficiaryInfo') {\r\n show = true;\r\n }\r\n break;\r\n }\r\n default: {\r\n show = false;\r\n }\r\n };\r\n return show;\r\n }\n\n toggleClientInfoAccordion() {\r\n this.clientInfoAccordionExpanded = !this.clientInfoAccordionExpanded;\r\n }\r\n getClientInfoAccordionArrowStyle() {\r\n return this.clientInfoAccordionExpanded ? 'fas fa-angle-up' : 'fas fa-angle-down';\r\n }\n\n closePolicyDetail() {\n this.enableTabs();\n this.showPolicyDetail = false;\n this.showCollectionParameters = true;\r\n this.showRouteList = true;\n }\n printPolicyDetail() {\r\n window.print();\r\n }\n\n enableTabs() {\n $('#RouteList-tab').removeClass('policymenudisabled');\n $('#PendingCollections-tab').removeClass('policymenudisabled');\r\n $('#BatchHistory-tab').removeClass('policymenudisabled');\r\n }\n\n disabledTabs() {\n switch (this.selectedTab) {\r\n case 'Pending Collections':\r\n $('#RouteList-tab').addClass('policymenudisabled');\r\n $('#BatchHistory-tab').addClass('policymenudisabled');\r\n break;\r\n case 'Batch History':\r\n $('#RouteList-tab').addClass('policymenudisabled');\r\n $('#PendingCollections-tab').addClass('policymenudisabled');\r\n break;\r\n default:\r\n $('#PendingCollections-tab').addClass('policymenudisabled');\r\n $('#BatchHistory-tab').addClass('policymenudisabled');\r\n }\r\n }\n\n policyDetailTabView(link: string) {\n $('#policyDetailMenu').find(\"*\").removeClass(\"router-link-exact-active\");\n $(link).addClass('router-link-exact-active');\n\n switch (link) {\r\n case '#Coverages-tab':\r\n this.gridApi4?.sizeColumnsToFit();\r\n break;\r\n case '#PremiumHistory-tab':\r\n this.gridApi5?.sizeColumnsToFit();\r\n break;\r\n case '#StatusHistory - tab':\r\n this.gridApi6?.sizeColumnsToFit();\r\n break;\r\n case '#Underwriting-tab':\r\n this.gridApi7?.sizeColumnsToFit();\r\n break;\r\n case '#Hierarchy-tab':\r\n this.gridApi8?.sizeColumnsToFit();\r\n break;\r\n case '#Beneficiary-tab':\r\n this.gridApi9?.sizeColumnsToFit();\r\n break;\r\n default:\r\n }\n }\n\n onGridReady1(params: any) {\n this.gridApi1 = params.api;\n this.gridColumnApi1 = params.columnApi;\n this.gridApi1?.setQuickFilter(this.searchTerm);\n params.api.sizeColumnsToFit();\n }\n onGridReady2(params: any) {\n this.gridApi2 = params.api;\n this.gridColumnApi2 = params.columnApi;\n }\n onGridReady3(params: any) {\n this.gridApi3 = params.api;\n this.gridColumnApi3 = params.columnApi;\n }\n onGridReady4(params: any) {\n this.gridApi4 = params.api;\n this.gridColumnApi4 = params.columnApi;\n }\n onGridReady5(params: any) {\n this.gridApi5 = params.api;\n this.gridColumnApi5 = params.columnApi;\n }\n onGridReady6(params: any) {\n this.gridApi6 = params.api;\n this.gridColumnApi6 = params.columnApi;\n }\n onGridReady7(params: any) {\n this.gridApi7 = params.api;\n this.gridColumnApi7 = params.columnApi;\n }\n onGridReady8(params: any) {\n this.gridApi8 = params.api;\n this.gridColumnApi8 = params.columnApi;\n }\n onGridReady9(params: any) {\n this.gridApi9 = params.api;\n this.gridColumnApi9 = params.columnApi;\n }\n\n onRowDataRouteListUpdated(params: any) {\n if (params.api.rowModel.rowsToDisplay.length > 0) {\n this.gridApi1?.ensureIndexVisible(this.topRowID, 'top');\n }\n }\n\n onBodyScroll(params: any) {\n //console.log(params);\n let topIndex = params.top;\r\n let rows = params.api.rowModel.rowsToDisplay.map((a: { rowTop: number; }) => a.rowTop);\r\n\r\n const topIndexValue = rows.reduce((a: number, b: number) => {\r\n return (topIndex > a && topIndex < b) || topIndex == a ? a : b;\r\n });\r\n\r\n this.topRowID = params.api.rowModel.rowsToDisplay\r\n .filter((a: { rowTop: number; }) => a.rowTop === topIndexValue)\r\n .map((a: { rowIndex: number; }) => a.rowIndex)[0];\r\n }\n\n onRowDataCollectionsListUpdated(params: any) {\n var rows = params.columnApi.columnModel.rowModel.rowsToDisplay;\n\n var premiumColumn = this.gridColumnApi2.getColumn(\"premiumAmt\");\n var premiumTotal = rows.reduce((a: any, b: any) => a + b.data.premiumAmt, 0);\n premiumColumn.colDef.headerName = `Premium \\n (${formatNumber(premiumTotal)})`;\r\n\r\n var overpaymentAmtColumn = this.gridColumnApi2.getColumn(\"overpaymentAmt\");\n var overpaymentAmtTotal = rows.reduce((a: any, b: any) => a + b.data.overpaymentAmt, 0);\n overpaymentAmtColumn.colDef.headerName = `Overpayment \\n (${formatNumber(overpaymentAmtTotal)})`;\r\n\r\n var agentCollectAmtColumn = this.gridColumnApi2.getColumn(\"agentCollectAmt\");\n var agentCollectAmtTotal = rows.reduce((a: any, b: any) => a + b.data.agentCollectAmt, 0);\n agentCollectAmtColumn.colDef.headerName = `Agent Collect/Due \\n (${formatNumber(agentCollectAmtTotal)})`;\r\n\r\n var appliedSuspenseAmtColumn = this.gridColumnApi2.getColumn(\"appliedSuspenseAmt\");\n var appliedSuspenseAmtTotal = rows.reduce((a: any, b: any) => a + b.data.appliedSuspenseAmt, 0);\n appliedSuspenseAmtColumn.colDef.headerName = `Applied Suspense \\n (${formatNumber(appliedSuspenseAmtTotal)})`;\r\n\r\n var loanPaymentAmtColumn = this.gridColumnApi2.getColumn(\"loanPaymentAmt\");\n var loanPaymentAmtTotal = rows.reduce((a: any, b: any) => a + b.data.loanPaymentAmt, 0);\n loanPaymentAmtColumn.colDef.headerName = `Loan Payment \\n (${formatNumber(loanPaymentAmtTotal)})`;\r\n\r\n var totalCollectionAmtColumn = this.gridColumnApi2.getColumn(\"totalCollectionAmt\");\n var totalCollectionAmtTotal = rows.reduce((a: any, b: any) => a + b.data.totalCollectionAmt, 0);\n totalCollectionAmtColumn.colDef.headerName = `Total Collection \\n (${formatNumber(totalCollectionAmtTotal)})`;\r\n\r\n var estCommAmtColumn = this.gridColumnApi2.getColumn(\"estCommAmt\");\n var estCommAmtTotal = rows.reduce((a: any, b: any) => a + b.data.estCommAmt, 0);\n estCommAmtColumn.colDef.headerName = `Est. Commission \\n (${formatNumber(estCommAmtTotal)})`;\r\n\r\n var estNetAmtColumn = this.gridColumnApi2.getColumn(\"estNetAmt\");\n var estNetAmtTotal = rows.reduce((a: any, b: any) => a + b.data.estNetAmt, 0);\n estNetAmtColumn.colDef.headerName = `Est. Net Draft \\n (${formatNumber(estNetAmtTotal)})`;\r\n\r\n this.gridApi2!.refreshHeader();\n }\n\n getRouteListContextMenuItems(\r\n params: GetContextMenuItemsParams\r\n ): (string | MenuItemDef)[] {\r\n var result: (string | MenuItemDef)[] = [\r\n {\r\n name: 'Collect/Update Payment',\r\n action: () => {\r\n if (params.node!.data.lockPayment === 'YES') {\r\n params.context.showLockAlert();\r\n }\r\n else {\r\n params.context.openCollectionForm();\r\n params.context.getCollection(params.node!.data);\r\n }\r\n }\r\n },\r\n {\r\n name: 'Delete Payment',\r\n action: () => {\r\n if (params.node!.data.lockPayment === 'YES') {\r\n params.context.showLockAlert();\r\n }\r\n else {\r\n params.context.deleteCollection(params.node!.data.collectionID);\r\n params.context.refreshRouteList();\r\n }\r\n },\r\n disabled: !params.node!.data.collectionID,\r\n },\r\n {\r\n name: 'Edit Sequence Number',\r\n action: () => {\r\n params.context.openSequenceNumberForm();\r\n params.context.getSequenceNumberInfo(params.node!.data);\r\n },\r\n },\r\n 'separator',\r\n {\r\n name: 'Collect Entire Sequence',\r\n action: () => {\r\n params.context.setGroupCollectionValues(params.node!.parent!.allLeafChildren);\r\n params.context.openGroupCollectionForm();\r\n },\r\n disabled: (params.context.checkToDisableAddGroupCollection(params.node!.parent!.allLeafChildren) ||\r\n params.context.checkForLockInGroupCollection(params.node!.parent!.allLeafChildren))\r\n },\r\n {\r\n name: 'Delete For Entire Sequence',\r\n action: () => {\r\n if (params.context.checkForLockInGroupCollection(params.node!.parent!.allLeafChildren)) {\r\n params.context.showGroupLockAlert();\r\n }\r\n else {\r\n params.context.deleteGroupCollection(params.node!.data.routeSequenceID);\r\n }\r\n },\r\n disabled: params.context.checkToDisableDeleteGroupCollection(params.node!.parent!.allLeafChildren)\r\n },\r\n {\r\n name: 'Edit Sequence Payor',\r\n action: () => {\r\n params.context.openSequenceContactForm();\r\n params.context.getSequenceContactInfo(params.node!.data);\r\n },\r\n disabled: params.node!.data.sequenceNo == 'UNSEQUENCED'\r\n },\r\n 'separator',\r\n {\r\n name: 'View Policy Detail',\r\n action: () => {\r\n params.context.displayPolicyDetail(params.node!.data.agentID, params.node!.data.policyNum, params.node!.data.regionID);\r\n }\r\n },\r\n 'separator',\r\n {\r\n name: 'Print Arrears Letter',\r\n action: () => {\r\n let sequence = params.node!.data.sequenceNo;\r\n params.context.getReport(71, sequence);\r\n },\r\n disabled: params.node!.data.sequenceNo == 'UNSEQUENCED'\r\n },\r\n {\r\n name: 'Print Collection Sheet',\r\n action: () => {\r\n let sequence = params.node!.data.sequenceNo;\r\n params.context.getReport(70, sequence);\r\n },\r\n disabled: params.node!.data.sequenceNo == 'UNSEQUENCED'\r\n },\r\n {\r\n name: 'Print Policy Review Letter',\r\n action: () => {\r\n let sequence = params.node!.data.sequenceNo;\r\n params.context.getReport(91, sequence);\r\n },\r\n disabled: params.node!.data.sequenceNo == 'UNSEQUENCED'\r\n },\r\n {\r\n name: 'Print Premium Receipt Book (Back)',\r\n action: () => {\r\n params.context.getReport(73);\r\n },\r\n disabled: params.node!.data.sequenceNo == 'UNSEQUENCED'\r\n },\r\n {\r\n name: 'Print Premium Receipt Book (Front)',\r\n action: () => {\r\n let sequence = params.node!.data.sequenceNo;\r\n params.context.getReport(72, sequence);\r\n },\r\n disabled: params.node!.data.sequenceNo == 'UNSEQUENCED'\r\n },\r\n {\r\n name: 'Print Route List',\r\n action: () => {\r\n params.context.getReport(74);\r\n },\r\n },\r\n ];\r\n\r\n return result;\r\n }\n\n getPendingCollectionsListContextMenuItems(\r\n params: GetContextMenuItemsParams\r\n ): (string | MenuItemDef)[] {\r\n var result: (string | MenuItemDef)[] = [\r\n {\r\n name: 'Collect for Lapsed Policy',\r\n action: () => {\r\n params.context.openLapsedCollectionForm();\r\n }\r\n },\r\n 'separator',\r\n {\r\n name: 'Update Payment',\r\n action: () => {\r\n params.context.openCollectionForm();\r\n params.context.getCollection(params.node!.data);\r\n }\r\n },\r\n {\r\n name: 'Delete Payment',\r\n action: () => {\r\n params.context.deleteCollection(params.node!.data.collectionID);\r\n params.context.refreshPendingCollectionsList();\r\n }\r\n },\r\n ];\r\n\r\n return result;\r\n }\n\n getBatchHistoryListContextMenuItems(\r\n params: GetContextMenuItemsParams\r\n ): (string | MenuItemDef)[] {\r\n var result: (string | MenuItemDef)[] = [\r\n {\r\n name: 'Print Batch Details',\r\n action: () => {\r\n params.context.getReport(75, \"\", params.node!.data.collectionBatchID);\r\n },\r\n },\r\n ];\r\n\r\n return result;\r\n }\n\n getRoutleListGridIcons(data: any): string {\n var iconString = '';\n\n switch (data.billFormCode) {\r\n case '1':\r\n iconString += '';\r\n break;\r\n case '2':\r\n iconString += '';\r\n break;\r\n case '3':\r\n iconString += '';\r\n break;\r\n case '4':\r\n iconString += '';\r\n break;\r\n case 'C':\r\n iconString += '';\r\n break;\r\n case 'X':\r\n iconString += '';\r\n break;\r\n default:\r\n iconString += '';\r\n break;\r\n }\n iconString = data.requireFullPayment ? iconString += '' : iconString;\n iconString = data.lockPayment === 'YES' ? iconString +=\n '' : iconString;\n return iconString;\r\n }\n\n getRoutleListGridTooltip(data: any): string {\n var tipString = data.billFormDesc + \"\\n\";\n tipString = data.requireFullPayment ? tipString += 'Policy is near lapse. Full payment is required for collection.' + \"\\n\" : tipString;\n tipString = data.lockPayment === 'YES' ? tipString += 'Policy locked due to in-process payment.' : tipString;\n return tipString;\r\n }\n\n refreshRouteList() {\r\n this.getRouteList();\r\n }\n\n getPendingCollectionsListGridIcons(data: any): string {\n var iconString = '';\n\n switch (data.collectionTypeID) {\r\n case 1:\r\n iconString = '';\r\n break;\r\n case 2:\r\n iconString = '';\r\n break;\r\n default:\r\n iconString = '';\r\n break;\r\n }\n return iconString;\r\n }\n\n getPendingCollectionsListGridTooltip(data: any): string {\n return data.collectionType + ' Collection';\r\n }\n\n refreshPendingCollectionsList() {\n this.getPendingCollections();\r\n }\n\n refreshBatchHistory() {\n this.gridApi3?.sizeColumnsToFit();\n this.getBatchHistory();\r\n }\n\n getReport(reportId: number, sequenceNum: string = \"\", collectionBatchId: string = \"\"): void {\n let url: string = `https://apreports.lbig.com/Reports?ReportID=${reportId}&agent=${this.selectedAgentId}&sequenceNo=${sequenceNum}&collectionBatchID=${collectionBatchId}&source=uap&tguid=`;\n\n this.onPremService.getAgentToken(this.selectedAgentId)\n .pipe(take(1))\n .subscribe(t => {\n let reportURL = url + t.data.token;\n window.open(reportURL, '_blank');\n });\n }\n\n onClickTabSelect(tab: string) {\r\n this.selectedTab = tab;\r\n switch (tab) {\r\n case 'Pending Collections':\r\n this.enableRouteListSearch = false;\r\n this.showBillFormListCheckboxes = false;\r\n this.showSubmitBatchButton = true;\r\n this.refreshPendingCollectionsList();\r\n break;\r\n\r\n case 'Batch History':\r\n this.enableRouteListSearch = false;\r\n this.showBillFormListCheckboxes = false;\r\n this.showSubmitBatchButton = false;\r\n this.refreshBatchHistory();\r\n break;\r\n\r\n default:\r\n this.topRowID = 0;\r\n this.showBillFormListCheckboxes = true;\r\n this.showSubmitBatchButton = false;\r\n this.enableRouteListSearch = true;\r\n this.refreshRouteList();\r\n }\r\n }\n\n onSearchChanged() {\n this.searchTerm = (document.getElementById('search') as HTMLInputElement).value;\n this.gridApi1?.setQuickFilter(this.searchTerm);\n }\r\n\r\n makeLoanPaymentChecked(e: any) {\r\n if (e.target.checked) {\r\n this.isMakeLoanPaymentChecked = true;\r\n }\r\n else {\r\n this.loanPaymentAmount = 0;\r\n this.isMakeLoanPaymentChecked = false;\r\n }\r\n this.calculatePremiumCollected();\r\n }\r\n\r\n useSuspenseChecked(e: any) {\r\n if (e.target.checked) {\r\n this.suspenseAmount = this.suspenseAmount > 0 ? this.suspenseAmount : this.availableSuspenseAmount;\r\n this.isUseSuspenseChecked = true;\r\n }\r\n else {\r\n this.suspenseAmount = 0;\r\n this.isUseSuspenseChecked = false;\r\n }\r\n this.calculatePremiumCollected();\r\n }\r\n\r\n onSuspenseAmtChanged(e: any) {\r\n this.suspenseAmount = +e.target.value;\r\n this.calculatePremiumCollected();\r\n }\r\n\r\n makeOverPaymentChecked(e: any) {\r\n if (e.target.checked) {\r\n this.isMakeOverPaymentChecked = true;\r\n }\r\n else {\r\n this.overpaymentAmount = 0;\r\n this.isMakeOverPaymentChecked = false;\r\n }\r\n this.calculatePremiumCollected();\r\n }\r\n\r\n onAmountCollectedChanged(e: any) {\r\n this.amountCollected = +e.target.value;\r\n this.calculatePremiumCollected();\r\n }\r\n\r\n onOverpaymentAmtChanged(e: any) {\r\n this.overpaymentAmount = +e.target.value;\r\n this.calculatePremiumCollected();\r\n }\r\n\r\n onLoanPaymentAmtChanged(e: any) {\r\n this.loanPaymentAmount = +e.target.value;\r\n this.calculatePremiumCollected();\r\n }\r\n\r\n onPolicyNumberChanged(e: any) {\r\n this.policyNumber = e.target.value;\r\n }\r\n\r\n calculatePremiumCollected() {\r\n this.cashAmount = this.modalPremium * this.monthsPaid;\r\n var totalCollected = this.cashAmount - this.suspenseAmount + this.overpaymentAmount + this.loanPaymentAmount;\r\n this.premiumCollected = Math.round((totalCollected + Number.EPSILON) * 100) / 100\r\n\r\n var disableSave = this.amountCollected === this.premiumCollected ? false : true;\r\n\r\n this.disableSaveLapsedCollectionButton = disableSave;\r\n this.disableSaveCollectionButton = disableSave;\r\n }\r\n\r\n calculatePremiumGroupCollected() {\r\n this.premiumGroupCollected = this.groupModalPremium * this.monthsGroupPaid;\r\n }\r\n\r\n autoApply() {\r\n if ((this.amountCollected >= this.premiumDue && this.showLapseAlert) || (this.amountCollected >= this.modalPremium && !this.showLapseAlert)) {\r\n let appliedAmount = Math.floor(this.amountCollected / this.modalPremium);\r\n let appliedOverpayment = Math.round((this.amountCollected - (appliedAmount * this.modalPremium) + Number.EPSILON) * 100) / 100;\r\n if (appliedAmount >= 1) {\r\n this.monthsPaid = appliedAmount;\r\n this.monthlyPremiumPaid = Math.round(((this.monthsPaid * this.modalPremium) + Number.EPSILON) * 100) / 100;\r\n this.suspenseAmount = 0;\r\n this.isUseSuspenseChecked = false;\r\n this.isMakeOverPaymentChecked = appliedOverpayment > 0;\r\n this.overpaymentAmount = appliedOverpayment > 0 ? appliedOverpayment : 0;\r\n this.calculatePremiumCollected();\r\n }\r\n }\r\n }\r\n\r\n showLockAlert() {\r\n alert(\"The selected policy is locked due to in-process payment\");\r\n }\r\n\r\n showGroupLockAlert() {\r\n alert(\"At least one policy in group is locked due to in-process payment\");\r\n }\r\n\r\n showCollectionErrorAlert(message: string) {\r\n alert(message);\r\n }\r\n\r\n increaseMonthsPaid() {\r\n var value = this.monthsPaid;\r\n value = isNaN(value) ? 0 : value;\r\n value++;\r\n this.monthsPaid = value;\r\n this.monthlyPremiumPaid = Math.round(((this.monthsPaid * this.modalPremium) + Number.EPSILON) * 100) / 100;\r\n this.calculatePremiumCollected()\r\n }\r\n\r\n decreaseMonthsPaid() {\r\n let value = this.monthsPaid;\r\n let minValue = this.collectionTypeId === 2 ? this.minimumMonths - 1 : this.minimumMonths;\r\n value = isNaN(value) ? 0 : value;\r\n value < 1 ? value = 1 : '';\r\n if (minValue < value) {\r\n value--;\r\n this.monthsPaid = value;\r\n this.monthlyPremiumPaid = Math.round(((this.monthsPaid * this.modalPremium) + Number.EPSILON) * 100) / 100;\r\n this.calculatePremiumCollected()\r\n }\r\n }\r\n\r\n increaseGroupMonthsPaid() {\r\n var value = this.monthsGroupPaid;\r\n value = isNaN(value) ? 0 : value;\r\n value++;\r\n this.monthsGroupPaid = value;\r\n this.calculatePremiumGroupCollected();\r\n }\r\n\r\n decreaseGroupMonthsPaid() {\r\n var value = this.monthsGroupPaid;\r\n var minValue = this.minimumMonths;\r\n value = isNaN(value) ? 0 : value;\r\n value < 1 ? value = 1 : '';\r\n if (minValue < value) {\r\n value--;\r\n this.monthsGroupPaid = value;\r\n this.calculatePremiumGroupCollected();\r\n }\r\n }\n\n decimalFilter(event: any) {\r\n const reg = /^-?\\d*(\\.\\d{0,2})?$/;\r\n let input = event.target.value + String.fromCharCode(event.charCode);\r\n\r\n if (!reg.test(input)) {\r\n event.preventDefault();\r\n }\r\n }\n\n decimalCheck(event: any) {\r\n {\r\n var charCode = (event.which) ? event.which : event.keyCode;\r\n if (charCode != 46 && charCode > 31\r\n && (charCode < 48 || charCode > 57))\r\n return false;\r\n\r\n return true;\r\n }\r\n }\n\n numberWithDecimal(event: any) {\n var charCode = (event.which) ? event.which : event.keyCode;\r\n if (charCode != 46 && charCode > 31\r\n && (charCode < 48 || charCode > 57))\r\n return false;\r\n\r\n const reg = /^-?\\d*(\\.\\d{0,2})?$/;\r\n let input = event.target.value + String.fromCharCode(charCode);\r\n\r\n if (!reg.test(input))\r\n return false;\r\n\r\n return true;\r\n }\n\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.channelSubscription.unsubscribe();\n }\n}\r\n\r\nfunction insuredAndPayorCellRenderer(params: any) {\r\n return params.data.insuredName + '
    ' + params.data.payorName;\r\n}\r\nfunction insuredAndPayorValueGetter(params: any) {\r\n return params.data.insuredName + ' ' + params.data.payorName;\r\n}\r\nfunction policyNumAndAgentIDCellRenderer(params: any) {\r\n return params.data.policyNum + '
    ' + params.data.agentID;\r\n}\r\nfunction policyNumAndAgentIDValueGetter(params: any) {\r\n return params.data.policyNum + ' ' + params.data.agentID;\r\n}\r\nfunction paidToDateAndIssueDateCellRenderer(params: any) {\r\n return params.data.paidToDate + '
    ' + params.data.issueDate;\r\n}\r\nfunction paidToDateAndIssueDateValueGetter(params: any) {\r\n return params.data.paidToDate + ' ' + params.data.issueDate;\r\n}\r\nfunction premiumDueAndMonthsCellRenderer(params: any) {\r\n return '$' + params.data.premiumDue.toFixed(2) + '
    ' + params.data.monthsDue;\r\n}\r\nfunction premiumDueAndMonthsValueGetter(params: any) {\r\n return '$' + params.data.premiumDue.toFixed(2) + ' ' + params.data.monthsDue;\r\n}\r\nfunction suspenseAndLoanBalanceCellRenderer(params: any) {\r\n return '$' + params.data.availableSuspense.toFixed(2) + '
    ' + '$' + params.data.currentLoanBalance.toFixed(2);\r\n}\r\nfunction suspenseAndLoanBalanceValueGetter(params: any) {\r\n return '$' + params.data.availableSuspense.toFixed(2) + ' ' + params.data.currentLoanBalance.toFixed(2);\r\n}\r\n","
    \r\n \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Collect Policy - {{policyNumber ? sequenceNo + \" - \" + policyNumber : \"Loading...\"}}\r\n

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    {{ lapseAlertMessage }}
    \r\n
    No Premium Collected for this Policy
    \r\n
    \r\n The Available Suspense for this policy is not enough to cover the amount specified to lower the net collection.\r\n
    \r\n
    \r\n The repayment amount is greater than the amount owed for the current loan amount.\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Modal Premium\r\n {{ modalPremium | currency }} // Total Premium Due {{ premiumDue | currency }} // Paid To {{ paidToDate }}\r\n

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

    The current commission amount for this policy is {{ currentCommRate | percent }}

    \r\n
    \r\n
    \r\n\r\n
    0 || suspenseAmount > 0\">\r\n
    \r\n
    \r\n

    >> This policy currently has {{ availableSuspenseAmount | currency }} held in available suspense <<

    \r\n
    \r\n
    \r\n
    \r\n\r\n
    0 || loanPaymentAmount > 0\">\r\n
    \r\n
    \r\n

    >> This policy has a current loan balance of {{ currentLoanBalance | currency }} <<

    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n $\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n Allocation (must be fully allocated to Save)\r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n $\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    0 || suspenseAmount > 0\">\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n $\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n $\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    0 || loanPaymentAmount > 0\">\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n $\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n $\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Collect Lapsed Policy - {{policyNumber ? sequenceNo + \" - \" + policyNumber : \"Loading...\"}}\r\n

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Months Paid must equal or exceed the Months Due
    \r\n
    No Premium Collected for this Policy
    \r\n
    \r\n An error has occurred during the Save of your collection. Please contact Home Service Agent Support for guidance.\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n    \r\n \r\n  \r\n Lapsed Policy Found!\r\n \r\n \r\n  \r\n Lapsed Policy Not Found!\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Modal Premium\r\n {{ modalPremium | currency }} // Total Premium Due {{ premiumDue | currency }} // Paid To {{ paidToDate }}\r\n

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

    The current commission amount for this policy is {{ currentCommRate | percent }}

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n $\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n Allocation (must be fully allocated to Save)\r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n $\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n $\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n $\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Collect All Policies - {{ sequenceNo }}\r\n

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Months Paid must equal or exceed the Months Due
    \r\n
    No Premium Collected for this Policy
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Modal Premium {{ groupModalPremium | currency }} // Total Premium Due {{ groupPremiumDue | currency }}

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

    The current commission amount for this policy is {{ currentGroupCommRate | percent }}

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

    \r\n Edit Sequence Number\r\n

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

    \r\n Edit Sequence Payor {{contactName ? \"\" : \"- Loading...\"}}\r\n

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

    \r\n \r\n Policy Detail -\r\n {{selectedPolicy.policyNumber ? selectedPolicy.policyNumber + \" - \" + selectedPolicy.insuredName + \"   [ values as of \" + selectedPolicy.asOfDate + \" ]\": \"Loading...\"}}\r\n \r\n

    \r\n
    \r\n
    \r\n     \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    Error Loading Policy Information
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n

    \r\n \r\n Client Details  \r\n \r\n

    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n Insured\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    {{selectedPolicy.insuredName}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    {{selectedPolicy.insuredAddress}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Phone: {{ selectedPolicy.insuredPhone | phone }}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    DOB: {{selectedPolicy.insuredDob}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n Owner\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    {{selectedPolicy.ownerName}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    {{selectedPolicy.ownerAddress}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Phone: {{ selectedPolicy.ownerPhone | phone }}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    DOB: {{selectedPolicy.ownerDob}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n Payor\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    {{selectedPolicy.payorName}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    {{selectedPolicy.payorAddress}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Phone: {{ selectedPolicy.payorPhone | phone }}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    DOB: {{selectedPolicy.payorDob}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n","import { Component, OnInit } from '@angular/core';\nimport { AuthService } from '@auth0/auth0-angular';\nimport { Router } from '@angular/router';\nimport { Subscription } from 'rxjs';\nimport { SiteParameterService } from '../../../services/siteparameter.service'\nimport { Profile } from '../../../models/profile';\nimport { profileOptions } from '../../../models/profileOptions';\nimport { AgentLinkResponse } from '../../../models/agentLinkResponse';\nimport { OnPremStorageService } from '../../../services/onprem-storage';\nimport { CloudStorageService } from '../../../services/cloud-storage';\nimport { APIResponse } from '../../../models/apiresponse';\nimport { ToastrService } from 'ngx-toastr';\nimport { take } from 'rxjs/operators';\r\n\n@Component({\n selector: 'app-profile',\n templateUrl: './completeprofile.component.html',\n})\nexport class CompleteProfileComponent implements OnInit {\r\n private errorCode!: number;\n private emailAddress = \"\";\n private auth0ID = \"\";\n private avatarLink = \"\";\n private updateSuccess = false;\n private updateFailed = false;\n private showForm = true;\n private showGrid = false;\n private showLinkCode = false;\n\n public profile!: Profile;\n public profileOptions!: profileOptions;\n public profileJson = \"\";\n constructor(public auth: AuthService, public router: Router, private onPremService: OnPremStorageService, public cloudStorageService: CloudStorageService, private siteParmService: SiteParameterService, private toastr: ToastrService) { }\n\n ngOnInit(): void {\n this.auth.user$.subscribe(\n (profile) => (this.profileJson = JSON.stringify(profile, null, 2),\n this.emailAddress = profile.email,\n this.auth0ID = profile.sub,\n this.avatarLink = profile.picture)\n );\n }\n btnClick(): void {\n this.router.navigate(['/home']);\n };\n btnLinkCode(): void {\n this.onPremService.addAgentLinkCodeRecord(this.emailAddress)\n .pipe(take(1))\n .subscribe();\n\n this.showLinkCode = true;\r\n }\n inputFocused(event: any) {\r\n event.target.select()\r\n }\n disableArrowKeys(event: any) {\r\n var key = event.keyCode;\r\n if (key >= 37 && key <= 40) {\n return false;\n }\r\n else\r\n return true;\r\n }\n setFocus(event: any, input: number): void {\n var key = event.keyCode;\r\n if ((key >= 48 && key <= 57) || (key >= 65 && key <= 90) || (key >= 96 && key <= 105)) {\n var next = input + 1;\n var elementReference = document.getElementById('linkCode' + next);\r\n if (elementReference instanceof HTMLElement) {\r\n elementReference.focus();\r\n elementReference.scrollIntoView();\r\n }\n }\n }\n onSubmit(formData: any): void {\n var linkCode = formData.linkCode1 + formData.linkCode2 + formData.linkCode3 + formData.linkCode4 + formData.linkCode5 + formData.linkCode6;\n this.onPremService.linkAgent(this.emailAddress, formData.agentId, formData.ssn, formData.dob, linkCode)\n .pipe(take(1))\n .subscribe((resp: APIResponse) => {\n if (resp.data.responseCode > 0) {\n resp.data.emailAddress = this.emailAddress;\n resp.data.avatarLink = this.avatarLink;\n resp.data.auth0Id = this.auth0ID;\n this.cloudStorageService.createUserProfile(resp.data)\n .pipe(take(1))\n .subscribe((resp: Profile) => {\n if (resp.userId !== '') {\n this.updateSuccess = true;\n this.siteParmService.setProfile(resp); //save to local storage\n this.siteParmService.sendChannelInit(resp.channelPreferenceValue); //alert navbar etc of registered agent\n this.showForm = false;\n this.showGrid = true;\n this.toastr.success('Your profile has been created and all of you agent numbers are now linked to your account', 'Profile Created', {\n positionClass: 'toast-product-info', tapToDismiss: true, timeOut: 0\n });\n } else {\n this.toastr.warning('We could not locate your account using the information provided. Please verify and try again.', '', {\n positionClass: 'toast-product-info', tapToDismiss: true, timeOut: 0\n });\n }\n });\n } else {\n this.errorCode = resp.data.responseCode * -1;\n this.toastr.error('We could not locate your account using the information provided. Please verify and try again.

    Error Code: ' + this.errorCode + '', '', {\n positionClass: 'toast-product-info', tapToDismiss: true, enableHtml: true, timeOut: 0\n });\n }\n });\n }\n}\n","
    \n
     
    \n
    \n
    \n
    \n
    \n

    Link my Agent IDs

    \n
    \n
    \n

    In order to securely associate your agent contracts to your login account, we need to ask you for three details related to one of your Agent IDs that have been assigned to you during the contracting process. Please enter the data below and use any one of your Agent IDs that we have assigned to you so we can safely verify you in our systems.

    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n
    \n If an LBIG support rep directs you to, click this LINK to proceed using a one-time code.\n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n\n
    \n
    \n
    \n \n   \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n
    \n\n \n
    \n
    \n
    \n","import { Component, AfterViewInit } from '@angular/core';\nimport { Observable, Subscription } from 'rxjs';\nimport { Profile } from '../../../models/profile';\nimport { SiteParameterService } from '../../../services/siteparameter.service';\n\n@Component({\n selector: 'app-contact',\n templateUrl: './contact.component.html',\n styles: [\n ]\n})\nexport class ContactPageComponent implements AfterViewInit {\n profile!: Profile;\n private channelUpdate: Subscription;\n\n constructor(private siteParmService: SiteParameterService) {\n this.channelUpdate = this.siteParmService.getChannelUpdate().subscribe\n (message => {\n this.setTab();\n });\n }\n\n ngAfterViewInit(): void {\n this.profile = this.siteParmService.getStaticProfile();\n this.setTab();\n $('#menu li a').click(function () {\n if (this.parentElement?.className.indexOf('dropdown') == -1) {\n $('#menu').find(\"*\").removeClass(\"router-link-exact-active\");\n $(this).addClass('router-link-exact-active');\n }\n });\n }\n setTab(): void {\n $('#menu').find(\"*\").removeClass(\"router-link-exact-active\");\n $('#tabPanes').find(\"*\").removeClass(\"active\");\n\n let selectedChannel = this.profile ? this.profile.channelPreference : \"\";\n\n switch (selectedChannel) {\r\n case \"Home Service\": {\r\n $('#HomeService-tab').addClass('router-link-exact-active');\n $('#HomeService').addClass('tab-pane active');\r\n break;\r\n }\r\n case \"Home Service [Career]\": {\r\n $('#HomeService-tab').addClass('router-link-exact-active');\n $('#HomeService').addClass('tab-pane active');\r\n break;\r\n }\r\n case \"Supplemental Health [Plus Series]\": {\r\n $('#SuppHealthHIP-tab').addClass('router-link-exact-active');\n $('#SuppHealthHIP').addClass('tab-pane active');\r\n break;\r\n }\r\n case \"Ordinary Life\": {\r\n $('#Ordinary-tab').addClass('router-link-exact-active');\n $('#Ordinary').addClass('tab-pane active');\r\n break;\r\n }\r\n case \"Pre-Need\": {\r\n $('#HomeService-tab').addClass('router-link-exact-active');\n $('#HomeService').addClass('tab-pane active');\r\n break;\r\n }\r\n default: {\r\n $('#Annuity-tab').addClass('router-link-exact-active');\n $('#Annuity').addClass('tab-pane active');\r\n break;\r\n }\r\n }\n }\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.channelUpdate.unsubscribe();\n }\n}\n","\n
    \n\n
    \n
    \n
    \n
    \n
    \n

    \n Marketing\n

    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    Phone800-274-4829EmailAnnuityMarketing@lbig.com
    Mailing Address9800 Woodway Drive
    Waco, TX 76712
    Fax254-751-0115
    Hours of OperationM-Th 8:00am-5:00pm
    F 8:00am-3:00pm
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Additional Contact Information\n

    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    New BusinessCommissionsPolicy Holder ServiceClaims
    Phone800-745-4927800-745-4927800-745-4927800-745-4927
    Emailannuitynewbiz@insadmin.comannuityCSR@insadmin.comannuityCSR@insadmin.comannuityCSR@insadmin.com
    Mailing AddressPO Box 224
    Brownwood, TX 76804-0224
    PO Box 224
    Brownwood, TX 76804-0224
    PO Box 224
    Brownwood, TX 76804-0224
    PO Box 224
    Brownwood, TX 76804-0224
    Fax844-351-6806254-751-0115844-351-6806844-351-6806
    Hours of OperationM-F 8:00am-5:00pmM-F 8:00am-5:00pmM-F 8:00am-5:00pmM-F 8:00am-5:00pm
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Marketing\n

    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    Phone1-866-615-2309Emailsheri.fields@lbig.com
    Mailing Address6956 SW Woodbine Way
    Palm City, FL 34990
    Fax772-232-6640
    Hours of OperationM-Th 8:00am-5:30pm
    F 8:00am-4:00pm
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Additional Contact Information\n

    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    New BusinessCommissionsPolicy Holder ServiceClaims
    Phone1-800-972-66151-800-972-66151-800-972-66151-800-972-6615
    Emailnewbiz@lbladmin.comhomeservice@life-insurers.comhomeservice@life-insurers.comhomeservice@life-insurers.com
    Mailing AddressPO Box 224
    Brownwood, TX 76804-0224
    PO Box 224
    Brownwood, TX 76804-0224
    PO Box 224
    Brownwood, TX 76804-0224
    PO Box 224
    Brownwood, TX 76804-0224
    Fax1-888-525-50021-866-505-93771-866-505-93771-866-505-9377
    Hours of OperationM-Th 8:00am-5:30pm
    F 8:00am-4:00pm
    M-Th 8:00am-5:30pm
    F 8:00am-4:00pm
    M-Th 8:00am-5:30pm
    F 8:00am-4:00pm
    M-Th 8:00am-5:30pm
    F 8:00am-4:00pm
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Marketing\n

    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    PhoneEmail
    Mailing AddressFax
    Hours of Operation
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Additional Contact Information\n

    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    New BusinessCommissionsPolicy Holder ServiceClaims
    Phone844-770-2400
    Email
    Mailing AddressPO Box 14707
    Clearwater, FL 33766-4707
    Fax
    Hours of Operation
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Marketing\n

    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    Phone(866) 237-3010Email
    Mailing AddressFax
    Hours of OperationMon - Thu: 7:30a-4:00p CT
    Fri: 7:30 - 11:00a CT
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Additional Contact Information\n

    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    New BusinessCommissionsPolicy Holder ServiceClaims
    Phone(866) 237-3010(866) 237-3010(866) 237-3010(866) 237-3010
    Email
    Mailing AddressThe Capitol Life Insurance Company
    P.O. Box 14399
    Lexington, KY 40512-9700
    The Capitol Life Insurance Company
    P.O. Box 14399
    Lexington, KY 40512-9700
    Fax(859) 425-3368(859) 425-3368
    Hours of OperationMon - Fri 7:30a - 5:00p CTMon - Fri 8:00a -5:00p CT (agents)
    Mon - Fri 7:00a -7:00p CT
    Mon - Fri 8:00a -5:00p CT (agents)
    Mon - Fri 7:00a -7:00p CT (policyholders)
    Mon - Fri 7:00a-5:00p CT
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Marketing\n

    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    Phone(833) 504-0331Email
    Mailing AddressFax
    Hours of OperationMon -Thu: 7:30 AM-4:00 PM CST
    Fri: 7:30 AM - 11:00 AM CST
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Additional Contact Information\n

    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    New BusinessCommissionsPolicy Holder ServiceClaims
    Phone(833) 504-0331(833) 504-0331(833) 504-0331(833) 504-0331
    Email
    Mailing AddressAmerican Benefit Life Insurance Company American Benefit Life
    P.O. Box 14399
    Insurance Company
    Lexington, KY 40512-9700
    American Benefit Life Insurance Company
    PO Box 14865
    Lexington, KY 40512-4865
    Fax(833) 380-2777(855) 291-0553(859) 280-1264
    Hours of OperationM-F 7:30 AM-7:00 PM CSTM-F 8:00 AM-5:00 PM CST (policyholders)
    (agents) M-F 7:00 AM-7:00 PM CST
    M-F 7:00 AM-5:00 PM CST
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Marketing\n

    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    Phone800-731-4300Emaildavid.decker@lbig.com
    Mailing Address1605 LBJ FWY Suite 700 Dallas, TX 75234Fax
    Hours of OperationM-F 8:00am-5:00pm
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Additional Contact Information\n

    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    New BusinessCommissionsPolicy Holder ServiceClaims
    Phone888-525-4467 opt 1214-245-5292800-604-8002 opt 2800-604-8002 opt 1
    EmailagentNBinfo@life-insurers.comagentsupport@lbig.comcsr@life-insurers.comcsr@life-insurers.com
    Mailing AddressPO Box 224
    Brownwood, TX 76804-0224
    1605 LBJ FWY Suite 700
    Dallas, TX 75234
    ATTN: Lizzie Carmack
    PO Box 224
    Brownwood, TX 76804-0224
    PO Box 224
    Brownwood, TX 76804-0224
    Fax888-525-5002972-247-6291888-525-5002888-525-5002
    Hours of OperationM-Th 8:00am-5:00pm
    F 8:00am-2:30pm
    M-F 8:00am-5:00pmM-Th 8:00am-5:00pm
    F 8:00am-2:30pm
    M-Th 8:00am-5:00pm
    F 8:00am-2:30pm
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n

    \n Marketing\n

    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    Phone469-522-4624Emailmjones@lbig.com
    Mailing Address1605 LBJ Freeway
    Suite 700
    Dallas, TX 75234
    Fax
    Hours of OperationM-F 8:00am-5:00pm
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Additional Contact Information\n

    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    New BusinessCommissionsPolicy Holder ServiceClaims
    Phone888-525-4467800-731-4300800-604-8002800-604-8002
    Emailnewbiz@life-insurers.com agentsupport@lbig.comcsr@insadmin.comsupphealthclaims@lbig.com
    Mailing AddressPO Box 224
    Brownwood TX 76804-0224
    1605 LBJ Freeway, Suite 700
    Dallas, TX 75234
    PO Box 224
    Brownwood TX 76804-0224
    PO Box 224
    Brownwood TX 76804-0224
    Fax888-525-5002972-247-6291325-643-4043325-643-4043
    Hours of OperationM-F 8:00am-5:00pmM-F 8:00am-5:00pmM-F 8:00am-5:00pmM-F 8:00am-5:00pm
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Marketing\n

    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    Phone469-522-4624Emailmjones@lbig.com
    Mailing Address1605 LBJ Freeway
    Suite 700
    Dallas, TX 75234
    Fax972-247-6291
    Hours of OperationM-F 8:00am-5:00pm CST
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Additional Contact Information\n

    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    New BusinessCommissionsPolicy Holder ServiceClaims
    Phone833-658-2844833-658-2844833-658-2844833-658-2844
    EmailsupphealthNB@lbig.comsupphealthNB@lbig.comsupphealthService@lbig.comsupphealthclaims@lbig.com
    Mailing AddressPO Box 17628
    Winston-Salem NC 27116
    PO Box 17628
    Winston-Salem NC 27116
    PO Box 17628
    Winston-Salem NC 27116
    PO Box 17628
    Winston-Salem NC 27116
    Fax336-464-2684336-464-2684336-464-2664336-464-2961
    Hours of OperationM-F 8:00am-5:00pm ESTM-F 8:00am-5:00pm ESTM-F 8:00am-5:00pm ESTM-F 8:00am-5:00pm EST
    \n
    \n
    \n
    \n
    \n
    \n
    \n\n\n","import { Component } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { Router } from '@angular/router';\r\nimport { Profile } from '../../../models/profile';\r\nimport { SiteParameterService } from '../../../services/siteparameter.service';\r\n\n@Component({\n selector: 'app-documents',\n templateUrl: './documents.component.html',\n styles: [\n ]\n})\nexport class DocumentsPageComponent {\n\n public profile!: Profile;\n private channelUpdate: Subscription;\r\n public message: string = '';\n\n constructor(private router: Router, private siteParmService: SiteParameterService) {\n this.channelUpdate = this.siteParmService.getChannelUpdate().subscribe\n (message => {\n this.profile = this.siteParmService.getStaticProfile();\n if (this.profile.channelPreferenceValue !== 1 && this.profile.channelPreferenceValue !== 2) {\n this.router.navigate(['/home']);\r\n }\n });\n }\n\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.channelUpdate.unsubscribe();\n }\n}\n","
    \n \n
    \n","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { take } from 'rxjs/operators';\r\nimport { EAppConfig } from '../../../models/eappconfig';\nimport { Profile } from '../../../models/profile';\nimport { CloudStorageService } from '../../../services/cloud-storage';\nimport { OnPremStorageService } from '../../../services/onprem-storage';\nimport { SiteParameterService } from '../../../services/siteparameter.service';\nimport { environment as env } from '../../../../environments/environment';\nimport { AbstractControl } from '@angular/forms';\r\nimport { SelectListItem } from '../../../models/selectlistitem';\r\n\n@Component({\n selector: 'app-eapp',\n templateUrl: './eapp.component.html',\n styles: [\n ]\n})\nexport class EAppComponent implements OnInit {\n public profile!: Profile;\n public eAppConfiguration!: EAppConfig;\n public eAppEnabled = false;\n public eAppMessage = '';\n public eAppURI = '';\n public isAnnuity = false;\n public isSuppHealth = false;\n public isWebHookConnection = false;\n public isRestricted = false;\n public restrictionMessage = '';\n public disableIllustrate = true;\n public product = '';\n public companyList: Array = Array();\n public company = '0';\n private subscriptionName: Subscription;\n @ViewChild(\"AnnuityEAppForm\") eAppForm!: ElementRef;\n public annuityEAppURL = '';\n public samlResponse = '';\n // Generic Annuity Login with NO access to E App link\n private genericAnnuityLogin: string = 'annuity.advisor@lbig.com';\n\n constructor(private cloudStorageService: CloudStorageService, private onPremService: OnPremStorageService, private siteParmService: SiteParameterService) {\n this.subscriptionName = this.siteParmService.getChannelUpdate().subscribe\n (message => {\n this.profile = siteParmService.getStaticProfile();\n this.cloudStorageService.checkeAppStatus(this.profile.channelPreferenceValue).subscribe(eApp => {\n this.eAppEnabled = eApp.enabled && this.profile.emailAddress != this.genericAnnuityLogin;\n this.eAppMessage = eApp.message;\n });\n this.isWebHookConnection = this.profile.channelPreference === 'Supplemental Health [Plus Series]' ||\n this.profile.channelPreference === 'Home Service' || this.profile.channelPreference === 'Home Service [Career]' ? true : false;\n this.isSuppHealth = this.profile.channelPreference === 'Supplemental Health [Plus Series]';\n this.isAnnuity = this.profile.channelPreference === 'Annuity';\n });\n }\n ngOnInit(): void {\n this.profile = this.siteParmService.getStaticProfile();\n this.cloudStorageService.checkeAppStatus(this.profile.channelPreferenceValue).subscribe(eApp => {\n this.eAppEnabled = eApp.enabled && this.profile.emailAddress != this.genericAnnuityLogin;\n this.eAppMessage = eApp.message;\n this.isWebHookConnection = this.profile.channelPreference === 'Supplemental Health [Plus Series]' ||\n this.profile.channelPreference === 'Home Service' || this.profile.channelPreference === 'Home Service [Career]' ? true : false;\n this.isSuppHealth = this.profile.channelPreference === 'Supplemental Health [Plus Series]';\n this.isAnnuity = this.profile.channelPreference === 'Annuity';\n });\n this.cloudStorageService.getUserRestriction(this.profile.userId, 'EApp')\n .pipe(take(1))\n .subscribe(restriction => {\n this.restrictionMessage = restriction.message;\n this.isRestricted = this.restrictionMessage != '';\n });\n this.annuityEAppURL = env.dev.annuityEAppURL;\n }\n login(isProd: boolean): void {\n if (!this.isRestricted) {\n this.trackEvent(isProd ? 1 : 2);\n this.cloudStorageService.getEAppURI(this.profile.auth0Id, isProd)\n .pipe(take(1))\n .subscribe(eApp => {\n if (eApp.uri) {\n this.eAppURI = eApp.uri;\n const a = document.createElement('a');\n a.setAttribute('style', 'display:none;');\n document.body.appendChild(a);\n a.href = this.eAppURI;\n a.target = '_blank';\n a.click();\n document.body.removeChild(a);\n }\n });\n } else {\n alert(this.restrictionMessage)\r\n }\n }\n goToApp(isProd: boolean): void {\n if (!this.isRestricted) {\n if (this.profile.channelPreference === 'Supplemental Health [Plus Series]') {\n let tappURL = isProd ? env.dev.tappUrl : env.dev.tappUrl + \"?trainingmode=1\";\n window.open(tappURL, '_blank');\n } else {\n let mrsURL = isProd ? env.dev.mrsHomeServiceUrl : env.dev.mrsHomeServiceUrl + \"?trainingmode=1\";\n window.open(mrsURL, '_blank');\r\n }\n this.trackEvent(isProd ? 1 : 2);\n } else {\n alert(this.restrictionMessage)\r\n }\n }\n returnToApp(): void {\n if (!this.isRestricted) {\n let mrsURL = env.dev.mrsSuppHealthUrl;\n window.open(mrsURL, '_blank');\n this.trackEvent(3);\n } else {\n alert(this.restrictionMessage)\r\n }\n }\n viewCompletedApp(): void {\n if (!this.isRestricted) {\n let mrsURL = env.dev.mrsSuppHealthUrl;\n window.open(mrsURL, '_blank');\n this.trackEvent(4);\n } else {\n alert(this.restrictionMessage)\r\n }\n }\n trackEvent(eventId: number): void {\n this.onPremService.trackEvent(eventId, this.profile.auth0Id, '', this.profile.selectedAgentNumber, this.profile.channelPreferenceValue)\r\n .pipe(take(1))\r\n .subscribe();\r\n }\n openIllustration(): void {\n let companyName = '';\n\n switch (this.company) {\r\n case '1':\r\n companyName = 'LBL';\r\n break;\r\n\r\n case '2':\r\n companyName = 'CLIC';\r\n break;\r\n }\n\n this.onPremService.getAgentDetail(this.profile.selectedAgentNumber)\n .pipe(take(1))\n .subscribe(apiResponse => {\n let firstName = apiResponse.data.length > 0 ? apiResponse.data[0].firstName : '';\n let lastName = apiResponse.data.length > 0 ? apiResponse.data[0].lastName : '';\n const params = `c=${companyName}&FirstName=${firstName}&LastName=${lastName}`;\n var url = `https://myportal.lbig.com/illustrations-new/${this.product}?` + params;\n const a = document.createElement('a');\n a.setAttribute('style', 'display:none;');\n document.body.appendChild(a);\n a.href = url;\n a.target = '_blank';\n a.click();\n document.body.removeChild(a);\n });\n }\n onProductChange(formProductCtrl: AbstractControl) {\r\n this.product = formProductCtrl.value;\r\n this.company = '0';\r\n\r\n this.companyList.splice(0, this.companyList.length);\r\n\r\n switch (this.product) {\r\n case 'spiaIllustrations.php':\r\n this.companyList.push(({ value: 1, text: 'Liberty Bankers Life' }));\r\n this.companyList.push(({ value: 2, text: 'Capitol Life' }));\r\n break;\r\n\r\n case 'deferredIllustrations.php':\r\n this.companyList.push(({ value: 1, text: 'Liberty Bankers Life' }));\r\n this.companyList.push(({ value: 2, text: 'Capitol Life' }));\r\n break;\r\n\r\n case 'fiaIllustrations.php':\r\n this.companyList.push(({ value: 2, text: 'Capitol Life' }));\r\n break;\r\n\r\n default:\r\n this.companyList.splice(0, this.companyList.length); \r\n }\r\n\r\n if (this.product != '' && this.company != '0') {\r\n this.disableIllustrate = false;\r\n }\r\n else {\r\n this.disableIllustrate = true;\r\n }\r\n }\n onCompanyChange(formCompanyCtrl: AbstractControl) {\r\n this.company = formCompanyCtrl.value;\r\n\r\n if (this.product != '' && this.company != '0') {\r\n this.disableIllustrate = false;\r\n }\r\n else {\r\n this.disableIllustrate = true;\r\n }\r\n }\n openAnnuityEApp(): void {\n this.cloudStorageService.getEncryptedSaml(this.annuityEAppURL, this.profile.auth0Id, this.profile.displayName, this.profile.emailAddress)\n .pipe(take(1))\n .subscribe(resp => {\n this.samlResponse = resp.content;\n setTimeout((_: any) => this.eAppForm.nativeElement.submit());\n });\n }\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.subscriptionName.unsubscribe();\n }\n}\n","
    \n
    \n

    \n
    \n
    \n\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    New Business E-Application System

    \n
    \n
    \n

    Demo the E-App in \"Training\" Mode

    \n
    \n
    \n
    \n
    \n

    We're making it easier for you and your clients to submit an electronic application! With our new E-App, you are able to use quick fill-and-sign features, can work on it remotely or in-person and eliminate applications that are not in good order.

    \n
    \n
    \n

    First time using the E-App? Use the Training mode to try out a test case and make sure you are comfortable before working with your client.

    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n

    Resume Pended New Business Application

    \n
    \n
    \n

    View Recently Submitted Applications
    (Submitted in the Past 30 Days)

    \n
    \n
    \n
    \n
    \n
    \n

    If you started an E-Application but did not finish, click here to resume and select your case from the list to continue.

    \n
    \n
    \n
    \n
    \n

    \n If you have questions regarding information submitted on a recently completed application, click here. Please note changes cannot\n be made to completed applications, this feature is for reference only.\n

    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n\n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Quote\n

    \n
    \n
    \n
    \n

    Select to use our comprehensive system to create quotes for Deferred, Fixed Indexed and SPIA annuities.

    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Apply\n

    \n
    \n
    \n
    \n

    Select to submit an E-App for Deferred and FIA Annuities.

    \n
    \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { environment as env } from '../../../../environments/environment';\n\n\n@Component({\n selector: 'app-eapp-redirect',\n templateUrl: './eappredirect.component.html',\n styles: [\n ]\n})\nexport class EAppRedirectComponent implements OnInit {\n caseId: string | null = \"\";\n constructor(private router: Router, private route: ActivatedRoute) { }\n\n\n ngOnInit(): void {\n var url = new URL(window.location.href);\n var caseId = url.searchParams.get(\"case\") as string;\n\n if (caseId !== \"\")\n this.router.navigate([\"/redirecting\"]).then(result =>\n {\r\n window.location.href = `${env.dev.eAppRedirectUrlPart1 + encodeURIComponent(env.dev.eAppRedirectUrlPart2 + caseId)}`;\n });\n }\n}\n","\r\n\r\n\r\n \r\n EApp Redirect\r\n\r\n\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\nimport { RowSelectedEvent } from 'ag-grid';\nimport { ToastrService } from 'ngx-toastr';\nimport { Observable, Subscription } from 'rxjs';\nimport { Profile } from '../../../models/profile';\nimport { searchParams } from '../../../models/searchParams';\nimport { CloudStorageService } from '../../../services/cloud-storage';\nimport { SiteParameterService } from '../../../services/siteparameter.service';\nimport { DatePipe } from '@angular/common';\r\nimport { take } from 'rxjs/operators';\r\n\r\n@Component({\n selector: 'app-formPage',\n templateUrl: './forms.component.html',\n styles: [\n ]\n})\nexport class FormsPageComponent implements OnInit {\n public showSpinner = false;\n public combineForms = false;\n public showSearch = false;\n public showHeaderText = false;\n public profile!: Profile;\n public parms!: searchParams;\n public headerText = \"\";\n public description = \"\";\n public state = \"0\";\n public company = \"0\";\n public product = \"0\";\n public formClass = \"0\";\n public type = \"0\";\n public forms$?: Observable;\n public combineDisabled = true;\n public individualDisabled = true;\n public sendEmailDisabled = false;\n private nodeCount: number = 0;\n private gridApi: any;\n private gridColumnApi: any;\n private channelUpdate: Subscription;\n columnDefs = [\n {\r\n checkboxSelection: true, headerCheckboxSelection: true, cellRenderer: (params: any) => {\r\n params.node.setSelected(params.node!.data.preselected)\r\n }, maxWidth: 50\r\n },\n { field: 'description', headerName: 'Form Name' },\n { field: 'number', headerName: 'Number', filter: 'agTextColumnFilter' },\n { field: 'lastUpdate', headerName: 'Last Updated' },\n { field: 'company', headerName: 'Company', filter: 'agTextColumnFilter' },\n { field: 'class', headerName: 'Form Class', filter: 'agTextColumnFilter' },\n { field: 'type', headerName: 'Form Type', filter: 'agTextColumnFilter' },\n { field: 'product', headerName: 'Product', filter: 'agTextColumnFilter' }\n ];\n defaultColumnDef = {\n sortable: true,\n resizable: true,\n };\n\n // Generic Annuity Login with NO access to Send Email button\n private genericAnnuityLogin: string = 'annuity.advisor@lbig.com';\n\n constructor(private cloudStorageService: CloudStorageService, private siteParmService: SiteParameterService, private toastr: ToastrService, public datepipe: DatePipe) {\n this.channelUpdate = this.siteParmService.getChannelUpdate().subscribe\n (message => {\n this.profile = this.siteParmService.getStaticProfile();\n this.getSearchParmsAndMessage();\n });\n }\n ngOnInit(): void {\n this.profile = this.siteParmService.getStaticProfile();\n this.getSearchParmsAndMessage();\n }\n getSearchParmsAndMessage(): void {\n const selectedBusinessChannel = this.profile ? this.profile.channelPreferenceValue : 0;\n this.cloudStorageService.getSearchParms(selectedBusinessChannel)\n .pipe(take(1))\n .subscribe(parms => {\n this.parms = parms;\n });\n this.cloudStorageService.getChannel(selectedBusinessChannel)\n .pipe(take(1))\n .subscribe(channel => {\n this.headerText = channel.formsPageMessage;\n this.showHeaderText = channel.formsPageMessage == null ? false : true;\n });\n }\n searchForms(): void {\n this.showSearch = true;\n this.showSpinner = false;\n const selectedBusinessChannel = this.profile ? this.profile.channelPreferenceValue : 0;\n let stateSearch = \"0\";\n this.company = \"0\";\n\n if (this.state.indexOf(\":\") > -1) {\n const stateCompanyArray = this.state.split(\":\");\n stateSearch = stateCompanyArray[0];\n this.company = stateCompanyArray[1];\n }\n\n this.forms$ = this.cloudStorageService.searchForms(selectedBusinessChannel, this.description, this.formClass, stateSearch, this.type, this.product, this.company);\n }\n resetSearch(): void {\n this.description = \"\";\n this.state = \"0\";\n this.company = \"0\";\n this.product = \"0\";\n this.formClass = \"0\";\n this.type = \"0\";\n this.showSearch = false;\n }\n onGridReady(params: any) {\n this.gridApi = params.api;\n this.gridColumnApi = params.columnApi;\n this.gridApi.sizeColumnsToFit();\n }\n downloadForms() {\n this.showSpinner = true;\n const selectedNodes = this.gridApi.getSelectedNodes();\n var selectedFiles: string[] = [];\n var company = '';\n var formNumber = '';\n var container = '';\n const date = new Date();\n const currentDateTime = this.datepipe.transform(date, 'yyyyMMddhhmm');\n this.nodeCount = selectedNodes.length;\n if (this.combineForms) {\n selectedNodes.forEach((node: any) => { selectedFiles.push(node.data.fileName), company = node.data.company, formNumber = node.data.number, container = node.data.containerName });\n this.cloudStorageService.downloadCombinedForms(selectedFiles, container)\n .pipe(take(this.nodeCount))\n .subscribe(data => {\n this.showSpinner = false;\n const binaryData = [];\n binaryData.push(data);\n const downloadedFile = new Blob(binaryData, { type: 'application/pdf' });\n const a = document.createElement('a');\n a.setAttribute('style', 'display:none;');\n document.body.appendChild(a);\n if (company != null) { a.download = 'FormsPackage' + \"_\" + company + \"_\" + currentDateTime + \".pdf\"; }\n else { a.download = 'FormsPackage' + \"_\" + currentDateTime + \".pdf\"; }\n a.href = URL.createObjectURL(downloadedFile);\n a.target = '_blank';\n a.click();\n document.body.removeChild(a);\n });\n } else {\n selectedNodes.forEach((node: any) => {\n selectedFiles = [];\n selectedFiles.push(node.data.fileName);\n this.cloudStorageService.downloadCombinedForms(selectedFiles, node.data.containerName)\n .pipe(take(this.nodeCount))\n .subscribe(data => {\n this.showSpinner = false;\n const binaryData = [];\n binaryData.push(data);\n const downloadedFile = new Blob(binaryData, { type: 'application/pdf' });\n const a = document.createElement('a');\n a.setAttribute('style', 'display:none;');\n document.body.appendChild(a);\n a.download = node.data.description + \"_\" + node.data.number + \"_\" + node.data.company + \"_\" + currentDateTime + \".pdf\";\n a.href = URL.createObjectURL(downloadedFile);\n a.target = '_blank';\n a.click();\n document.body.removeChild(a);\n });\n });\n }\n }\n emailForms() {\n this.showSpinner = true;\n const selectedNodes = this.gridApi.getSelectedNodes();\n const selectedFiles: string[] = [];\n let container = '';\n selectedNodes.forEach((node: any) => { selectedFiles.push(node.data.fileName), container = node.data.containerName });\n this.nodeCount = selectedNodes.length;\n this.cloudStorageService.emailForms(selectedFiles, container, this.profile.emailAddress, this.combineForms)\n .pipe(take(this.nodeCount))\n .subscribe(data => {\n this.toastr.success('The selected files were sent to your email address', 'Forms Sent', {\n positionClass: 'toast-email-info', tapToDismiss: true, timeOut: 0\n });\n this.showSpinner = false;\n });\n }\n onRowSelected(event: any) {\n const nodeCount = this.gridApi.getSelectedNodes().length;\n this.individualDisabled = nodeCount < 1 ? true : false;\n this.combineDisabled = nodeCount > 1 ? false : true;\n\n this.sendEmailDisabled = this.profile.emailAddress === this.genericAnnuityLogin;\n }\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\r\n this.channelUpdate.unsubscribe();\r\n }\n}\n","
    \r\n
    \r\n
    \r\n

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

    \r\n Search\r\n

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

    \r\n Search Results (1 Form)\r\n Search Results (0 Forms)\r\n Search Results ({{(forms$ | async)?.length}} Forms)\r\n

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n   \r\n    \r\n   \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\nimport { SiteParameterService } from '../../../services/siteparameter.service';\nimport { CloudStorageService } from '../../../services/cloud-storage';\nimport { Profile } from '../../../models/profile';\nimport { ToastrService } from 'ngx-toastr';\nimport { OnPremStorageService } from '../../../services/onprem-storage';\nimport { AgentLinkResponse } from '../../../models/agentLinkResponse';\nimport { AgentLink } from '../../../models/agentLink';\nimport { AuthService } from '@auth0/auth0-angular';\r\nimport { Router } from '@angular/router';\r\nimport { take } from 'rxjs/operators';\r\n\n@Component({\n selector: 'app-home',\n templateUrl: './home.component.html',\n})\nexport class HomeComponent implements OnInit {\n profile!: Profile;\n linkedAgentResponse!: AgentLinkResponse;\n linkedAgents!: AgentLink[];\n public showLinkMessage = false;\n public showFirstTimeMessage = false;\n \n constructor(private onPremService: OnPremStorageService, private siteParmService: SiteParameterService, public cloudStorageService: CloudStorageService, private toastr: ToastrService, private router: Router) { }\n\n ngOnInit(): void {\n \n if (!this.siteParmService.profileLoadComplete) {\n this.siteParmService.loadProfile()\n .pipe(take(1))\n .subscribe(f => {\n this.profile = this.siteParmService.getStaticProfile();\n if (this.profile.agents.length < 1) {\n this.showLinkMessage = true\n }\n else {\n this.profile = this.siteParmService.getStaticProfile();\n if (this.profile.updateRequired)\n {\n this.onPremService.getAgentList().subscribe(agents => {\n this.linkedAgents = agents;\n this.linkedAgentResponse = {\n auth0Id: this.profile.auth0Id, linkIdentities: this.linkedAgents, responseCode: 0, emailAddress: '', eAppUser: [{clientID: '', clientSecret: '', name: '', username: ''}] };\n this.cloudStorageService.updateLinkedAgents(this.linkedAgentResponse)\n .pipe(take(1))\n .subscribe(p => {\n if (p.agents.length < 1) {\n this.showLinkMessage = true;\n //this.siteParmService.setProfile({}); //clear out cached profile\n this.siteParmService.sendunlinkedAgentUpdate('all linked agents have been removed');\r\n this.router.navigate(['']);\r\n } else {\n this.siteParmService.setProfile(p);\r\n } \r\n });\n });\n }\n if (this.profile && !this.profile.homeVisited) {\n this.toastr.info('The top navigation bar provides access to different business channels, system status and your profile. Your Profile is used to set the default business channel. ', 'Information', {\n positionClass: 'toast-nav-info', tapToDismiss: true, timeOut: 0\n });\n } \n this.cloudStorageService.updatePageVisited(this.profile.auth0Id, 1)\n .pipe(take(1))\n .subscribe((resp: boolean) => { });\n }\n });\n } else {\n var agents = this.siteParmService.getStaticProfile().agents;\n if (agents.length === 0) { this.showLinkMessage = true }\n }\n }\n}\n","
    \n \n
    \n
    \n
    \n

    How Does This Thing Work?

    \n
    \n
    \n

    Since this is your first time take a look at the top right corner of the screen. The first menu item allows you to change your business channel. The second menu item provides access to your profile.

    \n
    \n
    \n
    \n
    \n
    \n

    How Do I See My Agent Data?

    \n
    \n
    \n

    Your account profile is not yet linked to your Liberty Agent IDs. In order to view your specific agent information – including policy details, commission data, and reports – please click the button below to perform a one-time link so that your login profile can be securely associated with your agent contracts.

    \n
    \n
    \n \n
    \n","import { Component, Inject, OnInit } from '@angular/core';\nimport { AuthService } from '@auth0/auth0-angular';\n\n@Component({\n selector: 'app-login',\n templateUrl: './login.component.html',\n})\nexport class LoginPageComponent implements OnInit { \n public loginRedirect = false;\n public disableSignUp = false;\n constructor(public auth: AuthService) { }\n \n ngOnInit(): void {\n }\n login(): void {\n this.auth.loginWithRedirect({ appState: { target: '/home' }, registration_code: '123456789' });\n \n }\n signup(): void {\n this.auth.loginWithRedirect({ appState: { target: '/home' }, screen_hint: 'signup' });\n\n }\n}\n","
    \n
    \n
    \n
    \n
    \n
    \n

    Agent/Producer Portal

    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n

    New Sign Ups are not available at this time.

    \n
    \n
    \n
    \n
    \n

    \n If this is your first time logging in to this portal, you will need to create an account first by using\n the “Sign Up” button. Once created and logged in, you will be prompted to perform a one-time link using one of your LBIG Agent IDs so\n that you can have access to all of your Agent IDs and data. Please make sure to use your full Agent ID for successful linking.\n

    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n \n If you are interested in becoming a contracted agent, we’d love to connect with\n you and discuss how you can be part of providing insurance and financial protection to your clients … For Life. Please contact us at 800-731-4300 for full details.\n \n

    \n
    \n
    \n
    \n
    \n

    This site is intended for sole use by contracted agent producers of Liberty Bankers Insurance Group and any of its affiliate companies. By entering the site, you agree to abide by its Terms of Use.

    \n
    \n
    \n
    \n","import { Component, OnInit } from '@angular/core';\nimport { ToastrService } from 'ngx-toastr';\nimport { Observable, Subscription } from 'rxjs';\nimport { map, take } from 'rxjs/operators';\r\nimport { channelProduct } from '../../../models/channelProduct';\r\nimport { Profile } from '../../../models/profile';\nimport { CloudStorageService } from '../../../services/cloud-storage';\nimport { OnPremStorageService } from '../../../services/onprem-storage';\nimport { SiteParameterService } from '../../../services/siteparameter.service';\n\n@Component({\n selector: 'app-products',\n templateUrl: './products.component.html',\n styleUrls: ['./products.component.css']\n})\nexport class ProductsComponent implements OnInit {\n profile!: Profile;\n private channelUpdate: Subscription;\n public selectedBusinessChannel: number = 0;\n public showFront = false;\n public showBack = false;\n public showForAnnuity = false;\n public hideFromAnnuityBank = false;\n public channelProduct!: channelProduct;\n public sections!: channelProduct[];\n\n public slides: Array = [];\n\n constructor(private cloudStorageService: CloudStorageService, private siteParmService: SiteParameterService, private toastr: ToastrService) {\n this.channelUpdate = this.siteParmService.getChannelUpdate().subscribe\n (message => {\n this.displayPreference();\n this.getProducts();\n });\n }\n ngAfterViewInit(): void {\n $('#menu li a').click(function () {\n if (this.parentElement?.className.indexOf('dropdown') == -1) {\n $('#menu').find(\"*\").removeClass(\"router-link-active\");\n $(this).addClass('router-link-active');\n }\n });\n if (this.profile) {\n if (!this.profile.productOverviewSelected) {\n $('#channel-tab').addClass('router-link-active');\n $('#Channel').addClass('tab-pane active');\n } else {\n $('#overview-tab').addClass('router-link-active');\n $('#Overview').addClass('tab-pane active');\n }\n } else {\n $('#overview-tab').addClass('router-link-active');\n $('#Overview').addClass('tab-pane active');\n }\n }\n ngOnInit(): void {\n this.profile = this.siteParmService.getStaticProfile();\n this.displayPreference();\n this.getProducts();\n if (this.profile.agents.length > 0) {\n if (!this.profile.productsVisited) {\n this.toastr.info('The navigation toggle here provides detailed information for the currently selected business channel ', 'Information', {\n positionClass: 'toast-product-info', tapToDismiss: true, timeOut: 0\n });\n this.profile.productsVisited = true;\n this.siteParmService.setProfile(this.profile);\n }\n this.cloudStorageService.updatePageVisited(this.profile.auth0Id, 2)\n .pipe(take(1))\n .subscribe((resp: boolean) => { });\n } else {\n $('#overview-tab').addClass('router-link-active');\n $('#Overview').addClass('tab-pane active');\n }\n }\n getProducts(): void {\n this.selectedBusinessChannel = this.profile ? this.profile.channelPreferenceValue : 0;\n this.cloudStorageService.getProductsByChannel(this.selectedBusinessChannel)\n .pipe(take(1))\n .subscribe(productList => {\n this.channelProduct = productList;\n this.slides.length = 0;\n for (var i = 0; i < productList.products.length; i++) {\r\n this.slides.push(productList.products[i].title)\r\n }\n });\n this.cloudStorageService.getProductSectors()\n .pipe(take(1))\n .subscribe(sections => {\n this.sections = sections;\n });\n }\n updatePreference(overview: boolean) {\n if (this.profile) {\n this.profile.productOverviewSelected = overview;\n this.siteParmService.setProfile(this.profile);\n this.cloudStorageService.updatePreference(\"Product\", this.profile.auth0Id, overview).subscribe((resp: boolean) => { });\n }\n }\n displayPreference(): void {\n this.profile = this.siteParmService.getStaticProfile();\n this.showForAnnuity = this.profile.channelPreference === 'Annuity';\n this.hideFromAnnuityBank = this.profile.channelPreference === 'Annuity [Bank]';\r\n }\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.channelUpdate.unsubscribe();\n }\n}\n","\n\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n

    {{sections[0].description}}

    \n
    \n
    \n
    \n
    \n
    \n
    \n

    {{product.title}}

    \n
    \n
    \n

    {{product.description}}

    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n

    {{sections[1].description}}

    \n
    \n
    \n
    \n
    \n
    \n
    \n

    {{product.title}}

    \n
    \n
    \n

    {{product.description}}

    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n

    {{sections[2].description}}

    \n
    \n
    \n
    \n
    \n
    \n
    \n

    {{product.title}}

    \n
    \n
    \n

    {{product.description}}

    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n {{channelProduct.channelHeadline}}\n

    \n
    \n
    \n
    \n
    \n

    \n
    \n
    \n
    \n \n
    0\" class=\"row justify-content-center mt-2\">\n
    \n
    \n \n
    \n
    \n
    \n \n
    \n \n \n \n
    \n
    \n

    {{product.title}}

    \n

    \n
    \n

    Product Details

    \n
    \n \n \n \n \n \n \n \n
    {{feature.title}}
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n","import { Component, OnInit } from '@angular/core';\nimport { AuthService } from '@auth0/auth0-angular';\nimport { Profile } from '../../../models/profile';\nimport { profileOptions } from '../../../models/profileOptions';\nimport { Subscription } from 'rxjs';\nimport { SiteParameterService } from '../../../services/siteparameter.service'\nimport { CloudStorageService } from '../../../services/cloud-storage';\nimport { ToastrService } from 'ngx-toastr';\nimport { take } from 'rxjs/operators';\r\n\n@Component({\n selector: 'app-profile',\n templateUrl: './profile.component.html',\n})\nexport class ProfileComponent implements OnInit {\n private setDefaultAgentUpdate: Subscription; //important to create a subscription\n private setDefaultChannelUpdate: Subscription; //important to create a subscription\n public profile!: Profile;\n public profileOptions!: profileOptions;\n public displayName = \"\";\n private defaultAgentId = \"\";\n private defaultChannel = \"\";\n constructor(public auth: AuthService, public cloudStorageService: CloudStorageService, private siteParmService: SiteParameterService, private toastr: ToastrService) {\n this.setDefaultAgentUpdate = this.siteParmService.getDefaultAgentUpdate().subscribe\n (message => {\n this.defaultAgentId = message.value;\n });\n this.setDefaultChannelUpdate = this.siteParmService.getDefaultChannelUpdate().subscribe\n (message => {\n this.defaultChannel = message.value;\n });\n }\n\n ngOnInit(): void {\n this.profile = this.siteParmService.getStaticProfile();\n this.defaultAgentId = this.profile.selectedAgentNumber;\n this.displayName = this.profile.displayName;\n this.cloudStorageService.getProfileOptions(this.profile.auth0Id)\n .pipe(take(1))\n .subscribe((resp: any) => {\n this.profileOptions = resp;\n });\r\n }\n onSubmit(formData: any): void {\n this.cloudStorageService.updateProfile(this.profile.auth0Id, this.defaultAgentId, this.displayName)\n .pipe(take(1))\n .subscribe((resp: any) => {\n this.profile.defaultAgentNumber = this.defaultAgentId;\n this.profile.selectedAgentNumber = this.defaultAgentId;\n this.profile.channelPreference = this.defaultChannel;\n this.profile.displayName = this.displayName;\n this.siteParmService.setProfile(this.profile);\n this.toastr.success('Profile Successfully Updated', 'Update', {\n positionClass: 'toast-bottom-center'\n });\n this.siteParmService.sendParmServiceInit(null);\n });\n }\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.setDefaultAgentUpdate.unsubscribe();\n this.setDefaultChannelUpdate.unsubscribe();\n }\n}\n","\n
    \n
    \n
    \n
    \n

    \n Profile Settings\n

    \n
    \n
    \n
    \n \"User's\n
    \n

    {{profile.emailAddress}}

    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n\n","import { Component, OnInit } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { Router } from '@angular/router';\r\nimport { Profile } from '../../../models/profile';\r\nimport { SiteParameterService } from '../../../services/siteparameter.service';\r\n\n@Component({\n selector: 'app-rates',\n templateUrl: './rates.component.html',\n styles: [\n ]\n})\nexport class RatesPageComponent implements OnInit {\n\n public profile!: Profile;\n private channelUpdate: Subscription;\r\n public channelId: number = 0;\r\n public message: string = '';\n\n constructor(private router: Router, private siteParmService: SiteParameterService) {\n this.channelUpdate = this.siteParmService.getChannelUpdate().subscribe\n (message => {\n this.profile = this.siteParmService.getStaticProfile();\n if (this.profile.channelPreferenceValue !== 1 && this.profile.channelPreferenceValue !== 2) {\n this.router.navigate(['/home']);\r\n }\n this.channelId = this.profile.channelPreferenceValue;\n });\n }\n ngOnInit(): void {\n this.profile = this.siteParmService.getStaticProfile();\n this.channelId = this.profile.channelPreferenceValue;\n }\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.channelUpdate.unsubscribe();\n }\n}\n","
    \n \n
    \n
    \n \n
    \n","import { Component } from \"@angular/core\";\r\n\r\n@Component({\n selector: 'app-redirecting',\n templateUrl: './redirecting.component.html',\n styles: [\n ]\n})\nexport class RedirectingComponent {\n constructor() { }\n}\n","\r\n\r\n\r\n \r\n Redirecting\r\n\r\n\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-terms',\n templateUrl: './terms.component.html',\n styles: [\n ]\n})\nexport class TermsPageComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
    \n
    \n
    \n
    \n

    Terms of Use

    \n
    \n

    \n Please read these Terms of Use carefully before using this site. By using this site, you signify your agreement with these Terms of Use. If you do not agree with any of the Terms of Use listed below, do not use this site. LBL reserves the right, at its sole discretion, to modify,\n alter or otherwise update these Terms of Use at any time and you agree to be bound by such modifications, alterations or updates.\n

    \n\n

    \n This site is controlled and operated by Liberty Bankers Life Insurance Company (LBL), 1605 LBJ Freeway, Suite 710, Dallas, Texas 75234. Our telephone number is (800) 745-4927. All material on this site, including but not limited to images, illustrations, audio clips, and video clips,\n is protected by copyrights which are owned and controlled by LBL or by other parties that have licensed their material to us (“Copyrights”). Material from LibertyBankers.com, LibertyBankersAdvisors.com or any web site owned, operated, licensed or controlled by LBL may not be copied, reproduced,\n republished, uploaded, posted, transmitted, or distributed in any way without our written consent. Modification of the materials or use of the materials for any other purpose is a violation of the copyrights and other proprietary rights. Persons or entities that maintain their own web site(s) may not link to any web site operated by LBL without our written permission,\n signed by an authorized officer of the company.\n

    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    Disclosure

    \n

    \n The information contained herein is provided solely for general informational purposes and is not intended to be a solicitation or an offer to sell in connection with any product or service, nor is the information a complete description of all terms,\n conditions and exclusions applicable to the products and services described. For complete descriptions of the terms, conditions and exclusions of insurance coverages or other products or services, please contact your LBL agent or the LBL Home Office. Products and services referenced here in may not be available in all states.\n

    \n\n

    \n We may provide links to other Internet sites that are not maintained by LBL. Such external Internet addresses contain information created, published, maintained or otherwise posted by organizations and entities independent of LBL. LBL is not responsible for the content of those sites nor does it approve, endorse or certify\n information available at any external site or linked addresses contained herein. The links are for your convenience only and you use them at your own risk.\n

    \n\n

    © Copyright 2021 Liberty Bankers Life Insurance Company, Dallas, Texas. All rights reserved. No part of this site may be reproduced without written permission from LBL.

    \n
    \n
    \n
    \n
    \n
    \n
    \n","import { Component, OnInit, AfterViewInit } from '@angular/core';\nimport { RowSelectedEvent } from 'ag-grid';\nimport { ToastrService } from 'ngx-toastr';\nimport { Subscription } from 'rxjs';\nimport { Profile } from '../../../models/profile';\nimport { trainingcontent } from '../../../models/trainingcontent';\nimport { trainingdisplay } from '../../../models/trainingdisplay';\nimport { trainingdisplayitem } from '../../../models/trainingdisplayitem';\nimport { CloudStorageService } from '../../../services/cloud-storage';\nimport { SiteParameterService } from '../../../services/siteparameter.service';\nimport * as moment from 'moment';\nimport { take } from 'rxjs/operators';\r\n@Component({\n selector: 'app-training',\n templateUrl: './training.component.html',\n styles: [\n ]\n})\nexport class TrainingComponent implements OnInit {\n public profile!: Profile;\n private channelUpdate: Subscription;\n private gridApi1: any;\n private gridColumnApi1: any;\n private gridApi2: any;\n private gridColumnApi2: any;\n public training!: trainingdisplay;\n public showGroup: boolean = true;\n public showList: boolean = false;\n public showNew: boolean = false;\n public overViewList: trainingcontent[] = [];\n public channelList: trainingcontent[] = [];\n public activeFilter: string = 'Category';\n public overviewGroupList: trainingdisplayitem[] = [];\n public channelGroupList: trainingdisplayitem[] = [];\n public overviewNewList: trainingdisplayitem[] = [];\n public channelNewList: trainingdisplayitem[] = [];\n columnDefs = [\n {\n field: 'icon', sortable: true, headerName: 'Type',\n cellRenderer: function (params: any) {\n return ''\n }\n },\n { field: 'title', sortable: true, headerName: 'Name' },\n { field: 'description', sortable: true, headerName: 'Description' },\n {\n field: 'startDate', sortable: true, headerName: 'Date' \n }\n ];\n constructor(private cloudStorageService: CloudStorageService, private siteParmService: SiteParameterService, private toastr: ToastrService) {\n this.channelUpdate = this.siteParmService.getChannelUpdate().subscribe\n (message => {\n this.getTraining();\n });\n }\n ngOnInit(): void {\n this.profile = this.siteParmService.getStaticProfile();\n this.getTraining();\n if (!this.profile.trainingVisited) {\n this.toastr.info('The navigation toggle here provides detailed information for the currently selected business channel. You can also sort and filter by using the dropdown to the right ', 'Information', {\n positionClass: 'toast-product-info', tapToDismiss: true, timeOut: 0\n });\n this.profile.trainingVisited = true;\n this.siteParmService.setProfile(this.profile);\n }\n this.cloudStorageService.updatePageVisited(this.profile.auth0Id, 3)\n .pipe(take(1))\n .subscribe((resp: boolean) => { });\n }\n ngAfterViewInit(): void {\n $('#menu li a').click(function () {\n if (this.parentElement?.className.indexOf('dropdown') == -1) {\n $('#menu').find(\"*\").removeClass(\"router-link-active\");\n $(this).addClass('router-link-active');\n }\n });\n if (this.profile.agents.length > 0) {\n if (!this.profile.trainingOverviewSelected) {\n $('#tchannel-tab').addClass('router-link-active');\n $('#tChannel').addClass('tab-pane active');\n } else {\n $('#toverview-tab').addClass('router-link-active');\n $('#tOverview').addClass('tab-pane active');\n }\n } else {\n $('#toverview-tab').addClass('router-link-active');\n $('#tOverview').addClass('tab-pane active');\n }\n }\n getTraining(): void {\n var selectedBusinessChannel = this.profile ? this.profile.channelPreferenceValue : 0;\n this.cloudStorageService.getTraining(selectedBusinessChannel)\n .pipe(take(1))\n .subscribe(training => {\n this.training = training;\n this.overViewList = this.training.overviewList;\n this.channelList = this.training.channelList;\n if (this.activeFilter == 'Category') {\n this.overviewGroupList = this.training.overviewByCategory;\n this.channelGroupList = this.training.channelByCategory;\n } else {\n this.overviewGroupList = this.training.overviewByType;\n this.channelGroupList = this.training.channelByType;\n }\n this.channelNewList = this.training.channelNew;\n this.overviewNewList = this.training.overviewNew;\n });\n }\n toggleView(name: string) {\n this.activeFilter = name;\n switch (name) {\n case 'Category':\n this.showGroup = true;\n this.showList = false;\n this.showNew = false;\n this.overviewGroupList = this.training.overviewByCategory;\n this.channelGroupList = this.training.channelByCategory;\n break;\n case 'Type':\n this.showGroup = true;\n this.showList = false;\n this.showNew = false;\n this.overviewGroupList = this.training.overviewByType;\n this.channelGroupList = this.training.channelByType;\n break;\n case 'Name':\n this.showGroup = false;\n this.showList = true;\n this.showNew = false;\n break;\n case 'Latest':\n this.showGroup = false;\n this.showList = false;\n this.showNew = true;\n break;\n }\n }\n onGrid1Ready(params: any) {\n this.gridApi1 = params.api;\n this.gridColumnApi1 = params.columnApi;\n this.gridApi1.sizeColumnsToFit();\n }\n onGrid2Ready(params: any) {\n this.gridApi2 = params.api;\n this.gridColumnApi2 = params.columnApi;\n this.gridApi2.sizeColumnsToFit();\n }\n getItem(url: string): void {\n window.open(url, '_blank');\n }\n onRowClicked(event: RowSelectedEvent) {\n window.open(event.data.linkUrl, '_blank');\n }\n updatePreference(overview: boolean) { \n this.profile.trainingOverviewSelected = overview;\n this.siteParmService.setProfile(this.profile);\n this.cloudStorageService.updatePreference(\"Training\", this.profile.auth0Id, overview)\n .pipe(take(1))\n .subscribe((resp: boolean) => { });\n this.gridApi1.sizeColumnsToFit();\n this.gridApi2.sizeColumnsToFit();\n }\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.channelUpdate.unsubscribe();\n }\n}\n","
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    {{group.title}}

    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n
    \n
    {{item.title}}
    \n
    {{item.description}} 
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    {{group.title}}

    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n
    \n
    {{item.title}}
    \n
    {{item.description}} 
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    {{group.title}}

    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n
    \n
    {{item.title}}
    \n
    {{item.description}} 
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    {{group.title}}

    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n
    \n
    {{item.title}}
    \n
    {{item.description}} 
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n\n\n\n","import { Component, OnInit } from '@angular/core';\nimport { UserGrid } from '../../../models/userGrid';\nimport { GridApi } from 'ag-grid-enterprise';\nimport { CloudStorageService } from '../../../services/cloud-storage';\nimport { SiteParameterService } from '../../../services/siteparameter.service';\nimport { Observable } from 'rxjs';\r\nimport { take } from 'rxjs/operators';\r\n\n@Component({\n selector: 'app-userlist',\n templateUrl: './userslist.component.html',\n styles: [\n ]\n})\nexport class UserListPageComponent implements OnInit {\n public users$?: Observable\n private gridApi!: GridApi;\n\n public columnDefs = [\n {\n headerName: 'Select',\n width: 30,\n checkboxSelection: true,\n cellStyle: { 'pointer-events': 'none' },\n field: 'selected'\n },\n { headerName: 'Email', width: 100, field: 'email' },\n { headerName: 'Name', width: 100, field: 'name' },\n { headerName: 'E-App UserName', width: 100, field: 'eAppUserName' },\n { headerName: `Agent ID's`, field: 'lnkAgentIds' },\n {\r\n headerName: 'User Id', field: 'userId', hide: true,\n // this is needed to hide field from Quick Filter\n getQuickFilterText: (params: any) => {\r\n return null;\r\n }\n }\n ];\n public defaultColumnDef = {\n sortable: true,\n resizable: true,\n };\n\n constructor(public cloudStorageService: CloudStorageService, private siteParmService: SiteParameterService) { }\n\n ngOnInit(): void {\n this.users$ = this.cloudStorageService.getUserList();\n }\n\n onSearchChanged() {\n this.gridApi.setQuickFilter(\n (document.getElementById('search') as HTMLInputElement).value\n );\n }\n\n onRowSelected(event: any) {\n if (event.node.selected) {\n this.cloudStorageService.getImpersonationProfile(event.data.userId)\n .pipe(take(1))\n .subscribe((resp: any) => {\n this.siteParmService.setProfile(resp);\n this.siteParmService.sendImpersonationUpdate(resp);\n });\n }\n }\n onGridReady(params: any) {\n this.gridApi = params.api;\n params.api.sizeColumnsToFit();\n }\n}\n","
    \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, Inject, OnInit, OnDestroy } from '@angular/core';\nimport { AuthService } from '@auth0/auth0-angular';\nimport { DOCUMENT } from '@angular/common';\nimport { Subscription } from 'rxjs';\nimport { SiteParameterService } from '../../../services/siteparameter.service'\nimport { SelectListItem } from '../../../models/selectlistitem';\nimport { Profile } from '../../../models/profile';\nimport { APIResponse } from '../../../models/apiresponse';\nimport { OnPremStorageService } from '../../../services/onprem-storage';\n\n@Component({\n selector: 'app-nav-bar',\n templateUrl: './nav-bar.component.html',\n styleUrls: ['./nav-bar.component.css'],\n})\nexport class NavBarComponent implements OnInit {\n public profile!: Profile;\n public messageReceived: any;\n public showImpersonation = false;\n public showAdmin = false;\n public showEAppLink = false;\n public showContactUsLink = false;\n public showDocumentLink = false;\n public showCollectionsLink = false;\n public showZoomControls = false;\n public showRatesLink = false;\n public systemStatus = '';\n public systemStatusBadgeText = \"\";\n public systemStatusColor = \"\";\n public notices: any[] = [];\n public profileComplete = false;\n public initialChannelValue: number = 0;\n public apiResponse!: APIResponse;\n getImpersonationUpdate!: Subscription;\n getParmServiceInit!: Subscription;\n getUnlinkedAgentUpdate!: Subscription;\n currChromeZoom: number = 100;\n currFireFoxZoom: number = 1;\r\n currZoomValue: string = '100%';\n // Generic Annuity Login with NO access to Document Upload\n private genericAnnuityLogin: string = 'annuity.advisor@lbig.com';\n\n constructor(private onPremService: OnPremStorageService, public auth: AuthService, private siteParmService: SiteParameterService, @Inject(DOCUMENT) private doc: Document) {\n this.getImpersonationUpdate = this.siteParmService.getImpersonationUpdate().subscribe\n (message => {\n this.profile = this.siteParmService.getStaticProfile();\n this.siteParmService.sendChannelUpdate(message.channelPreferenceValue);\n });\n this.getParmServiceInit = this.siteParmService.getParmServiceInit().subscribe(message => {\n this.profile = siteParmService.getStaticProfile();\n if (this.profile.agents.length > 0) {\n if (this.profile.permissions && this.profile.permissions.find(x => x === \"read:impersonation\")) {\n this.showImpersonation = true;\n }\n if (this.profile.permissions && this.profile.permissions.find(x => x === \"edit:associations\" || x === \"read:link-code\" || x === \"read:statements\")) {\n this.showAdmin = true;\n }\n this.profileComplete = true;\n this.siteParmService.sendAgentUpdate(this.profile.selectedAgentNumber);\n } else {\n this.auth.user$.subscribe(profile => {\n if (profile.sub) {\n this.profile = {};\n this.profile.displayName = profile.nickname;\n }\n });\n }\n this.setShowEAppLink(this.profile.channelPreferenceValue);\n this.setShowContactUsLink(this.profile.channelPreferenceValue);\n this.setShowDocumentsLink(this.profile.channelPreferenceValue);\n this.setShowCollectionsLink(this.profile.channelPreferenceValue);\n this.setShowRatesLink(this.profile.channelPreferenceValue);\n });\n this.getUnlinkedAgentUpdate = this.siteParmService.getunlinkedAgentUpdate().subscribe(message => { \n this.profileComplete = false;\n this.auth.user$.subscribe(profile => {\n if (profile.sub) {\n this.profile = {};\n this.profile.displayName = profile.nickname;\n }\n });\n });\n }\n ngOnInit(): void {\n this.profile = {};\n setInterval(() => {\n this.onPremService.systemStatus()\n .subscribe({\n next: (apiResponse) => {\n this.apiResponse = apiResponse;\n this.notices = apiResponse.data.notices;\n this.systemStatus = apiResponse.data.status.message;\n if (this.notices.length > 0) {\n this.systemStatusColor = apiResponse.data.status.color;\n this.systemStatusBadgeText = this.notices.length.toString();\n } else { this.systemStatusBadgeText = \"\"; }\n },\n error: (err: any) => {\n this.systemStatusBadgeText = \"1\";\n this.systemStatusColor = \"warning\";\n let errorNotice = { description: 'API Issue', message: 'Limited Functionality due to connectivity issues' }\n this.notices[0] = errorNotice;\n }\n });\n },\n 5000);\n }\n ngOnDestroy() { // It's a good practice to unsubscribe to ensure no memory leaks\n this.getImpersonationUpdate.unsubscribe()\n this.getParmServiceInit.unsubscribe();\n this.getUnlinkedAgentUpdate.unsubscribe();\n }\n logout(): void {\n this.auth.logout({ returnTo: this.doc.location.origin });\n }\n loginWithRedirect(): void {\n this.auth.loginWithRedirect({ appState: { target: '/home' } });\n }\n changeChannel(selectedchannel: number, selectedDescription: string): void {\n this.profile.channelPreference = selectedDescription;\n this.profile.channelPreferenceValue = selectedchannel;\n if (this.profile.agents) {\n var agent = this.profile.agents.find(x => x.channel == selectedchannel);\n this.profile.selectedAgentNumber = agent?.agentNumber || \"\";\n }\n this.siteParmService.setProfile(this.profile);\n this.siteParmService.sendChannelUpdate(selectedchannel);\n //this.setShowDocumentsLink(this.profile.channelPreferenceValue);\n }\n setShowEAppLink(selectedchannel: number): void {\n if (selectedchannel) {\n this.showEAppLink = selectedchannel === 2 ? false : true;\n }\r\n }\n setShowContactUsLink(selectedchannel: number): void {\n if (selectedchannel) {\n this.showContactUsLink = selectedchannel === 2 ? false : true;\n }\r\n }\n setShowDocumentsLink(selectedchannel: number): void {\n // DISABLED UNTIL Landmark is Ready\n if (selectedchannel) {\n this.onPremService.getFileTargetList(selectedchannel).subscribe(resp => {\n if (resp.count.valueOf() == \"0\" || this.profile.emailAddress === this.genericAnnuityLogin) {\n this.showDocumentLink = false;\n }\n else\n this.showDocumentLink = true;\n });\r\n }\r\n }\n setShowCollectionsLink(selectedchannel: number): void {\n if (selectedchannel) {\n if (selectedchannel === 3 || selectedchannel === 4) {\n this.showCollectionsLink = true;\n this.showZoomControls = true;\n }\n else {\n this.showCollectionsLink = false;\n this.showZoomControls = false;\n }\n }\r\n }\n setShowRatesLink(selectedchannel: number): void {\n if (selectedchannel) {\n if (selectedchannel === 1 || selectedchannel === 2) {\n this.showRatesLink = true;\n }\n else {\n this.showRatesLink = false;\n }\n }\r\n }\n zoomOut(): void {\n if (navigator.userAgent.indexOf('Firefox') != -1 && parseFloat(navigator.userAgent.substring(navigator.userAgent.indexOf('Firefox') + 8)) >= 3.6) { //Firefox\r\n var step = 0.10\r\n this.currFireFoxZoom -= step;\r\n $('body').css('MozTransform', 'scale(' + this.currFireFoxZoom + ')');\r\n this.currZoomValue = this.currFireFoxZoom * 100 + '%';\r\n\r\n } else {\r\n var step = 10;\r\n this.currChromeZoom -= step;\r\n $('body').css('zoom', ' ' + this.currChromeZoom + '%');\r\n this.currZoomValue = this.currChromeZoom + '%';\r\n }\r\n }\n zoomIn(): void {\n if (navigator.userAgent.indexOf('Firefox') != -1 && parseFloat(navigator.userAgent.substring(navigator.userAgent.indexOf('Firefox') + 8)) >= 3.6) { //Firefox\r\n var step = 0.10;\r\n this.currFireFoxZoom += step;\r\n $('body').css('MozTransform', 'scale(' + this.currFireFoxZoom + ')');\r\n this.currZoomValue = this.currFireFoxZoom * 100 + '%';\r\n } else {\r\n var step = 10;\r\n this.currChromeZoom += step;\r\n $('body').css('zoom', ' ' + this.currChromeZoom + '%');\r\n this.currZoomValue = this.currChromeZoom + '%';\r\n }\r\n }\n}\n","\n
    \n \n
    \n\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { AgentGrid } from '../models/agentGrid';\nimport { profileOptions } from '../models/profileOptions';\nimport { UserGrid } from '../models/userGrid';\nimport { CarouselImage } from '../models/carouselimage';\nimport { AgentLinkResponse } from '../models/agentLinkResponse';\nimport { Profile } from '../models/profile';\nimport { alertItem } from '../models/alertItem';\nimport { documentGroup } from '../models/documentGroup';\nimport { channel } from '../models/channel';\nimport { channelProduct } from '../models/channelProduct';\nimport { product } from '../models/product';\nimport { feature } from '../models/feature';\nimport { trainingdisplay } from '../models/trainingdisplay';\nimport { searchParams } from '../models/searchParams';\nimport { EAppConfig } from '../models/eappconfig';\nimport { EApp } from '../models/eapp';\nimport { SiteSetting } from '../models/siteSetting';\r\n\n\nconst endpoint = './api/clouddata/';\n@Injectable({\n providedIn: 'root'\n})\n\nexport class CloudStorageService {\n private httpOptions = {};\n constructor(private http: HttpClient) { }\n createUserProfile(thedata: AgentLinkResponse): Observable {\n return this.http.post(endpoint + 'CreateUserProfile', thedata);\n }\n getUserProfile(id: string): Observable {\n return this.http.get(endpoint + 'GetUserProfile?auth0ID=' + id);\n }\n getImpersonationProfile(id: string): Observable {\n return this.http.get(endpoint + 'GetImpersonationProfile?userID=' + id);\n }\n getLinkedAgents(auth0Id: string): Observable {\n return this.http.get(endpoint + 'GetLinkedAgents?auth0ID=' + auth0Id);\n }\n updateLinkedAgents(thedata: AgentLinkResponse): Observable {\n return this.http.post(endpoint + 'updateLinkedAgents', thedata);\n }\n getProfileOptions(auth0Id: string): Observable {\n return this.http.get(endpoint + 'GetProfileOptions?auth0ID=' + auth0Id);\n }\n getUserList(): Observable {\n return this.http.get(endpoint + 'GetUserList');\n }\n updateProfile(authId: string, defaultAgentId: string, displayName: string): Observable {\n return this.http.get(endpoint + 'UpdateProfile?auth0ID=' + authId + '&defaultAgentId=' + defaultAgentId + '&displayName=' + displayName);\n }\n getUserRestriction(id: string, area: string): Observable {\n return this.http.get(endpoint + 'GetUserRestriction?userID=' + id + '&area=' + area);\n }\n getAlertsByChannel(channelID: number): Observable {\n return this.http.get(endpoint + 'GetAlerts?luChannelID=' + channelID);\n }\n getCarouselImages(): Observable {\n return this.http.get(endpoint + 'GetCarouselImages');\n }\n getDocuments(channelID: number): Observable {\n return this.http.get(endpoint + 'getDocuments?luChannelID=' + channelID);\n }\n updatePageVisited(auth0ID: string, pageTypeId: number): Observable { \n return this.http.get(endpoint + 'updatePageVisited?auth0ID=' + auth0ID + \"&pageTypeID=\" + pageTypeId);\n }\n getChannel(channelID: number): Observable {\n return this.http.get(endpoint + 'GetChannelInfo?luChannelID=' + channelID);\n }\n getProductsByChannel(channelID: number): Observable {\n return this.http.get(endpoint + 'GetProducts?luChannelID=' + channelID);\n }\n getAnonymousProductsByChannel(channelID: number): Observable {\n return this.http.get(endpoint + 'GetAnonymousProducts?luChannelID=' + channelID);\n }\n getProductSectors(): Observable {\n return this.http.get(endpoint + 'GetProductSectors');\n }\n updatePreference(prefType: string, auth0ID: string, overview: boolean): Observable { \n return this.http.get(endpoint + 'updatePreference?type=' + prefType + '&auth0ID=' + auth0ID + '&overview=' + overview);\n }\n updateDateModified(agentLinkID: number, dateModified: string): Observable {\n return this.http.get(endpoint + 'UpdateDateModified?&agentLinkID=' + agentLinkID + '&dateModified=' + dateModified);\n }\n getTraining(channelID: number): Observable {\n return this.http.get(endpoint + 'getTrainingList?luChannelID=' + channelID);\n }\n getSearchParms(channelID: number): Observable {\n return this.http.get(endpoint + 'GetSearchParms?luChannelID=' + channelID);\n }\n searchForms(channelID: number, description: string, formClassID: string, formStateID: string, formTypeID: string, formProductID: string, formCompanyID: string): Observable { \n return this.http.get(endpoint + 'searchForms?luChannelID=' + channelID + '&description=' + description + '&formClassID=' + formClassID + '&formTypeID=' + formTypeID + '&formProductID=' + formProductID + '&formStateID=' + formStateID + '&formCompanyID=' + formCompanyID);\n }\n downloadCombinedForms(fileNames: string[], container: string) {\n return this.http.post(endpoint + \"DownloadCombinedForms\", { fileNames: fileNames, formsContainerName: container}, { responseType: 'blob' as 'json' } );\n }\n emailForms(fileNames: string[], container: string, email: string, combined: boolean) {\n return this.http.post(endpoint + \"EmailForms\", { fileNames: fileNames, formsContainerName: container, emailAddress: email, combineForms: combined });\n }\n getEAppURI(auth0ID: string, isProd: boolean): Observable {\n return this.http.get(endpoint + 'BuildEAppLoginURI?auth0ID=' + auth0ID + '&isProd=' + isProd);\n }\n checkeAppStatus(channelID: number): Observable {\n return this.http.get(endpoint + 'CheckeAppStatus?channelID=' + channelID);\n }\n getSiteSettings(): Observable {\n return this.http.get(endpoint + 'GetSiteSettings');\n }\n getEncryptedSaml(url: string, id: string, name: string, email: string): Observable {\n return this.http.get(endpoint + 'GetEncryptedSaml?samlUrl=' + url + '&authID=' + id + '&name=' + name + '&email=' + email);\n }\n}\n\n","import { HttpClient, HttpBackend, HttpEvent } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { environment as env } from '../../environments/environment';\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FileUploadService {\r\n\r\n private http: HttpClient;\r\n\r\n constructor(backend: HttpBackend) {\r\n this.http = new HttpClient(backend);\r\n }\r\n\r\n public upload(fileTargetId: number, channelId: number, emailAddress: string, auth0Id: string, agentId: string, policyNumber: string,\r\n clientName: string, fileName: string, file: File): Observable {\r\n const formData = new FormData();\r\n formData.append(\"fileTargetId\", fileTargetId.toString());\r\n formData.append(\"channelId\", channelId.toString());\r\n formData.append(\"emailAddress\", emailAddress);\r\n formData.append(\"authUserId\", auth0Id);\r\n formData.append(\"agentID\", agentId);\r\n formData.append(\"policyNumber\", policyNumber);\r\n formData.append(\"clientName\", clientName);\r\n formData.append(\"fileName\", fileName);\r\n formData.append('file', file, file.name);\r\n\r\n return this.http.post>(`${env.dev.onPremServerUrl + 'file/upload'}`, formData, {\r\n reportProgress: true,\r\n observe: 'events',\r\n })\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment as env } from '../../environments/environment';\nimport { AuthService } from '@auth0/auth0-angular';\nimport { Report } from '../models/report';\nimport { AgentLinkResponse } from '../models/agentLinkResponse';\nimport { APIResponse } from '../models/apiresponse';\nimport { map, share } from 'rxjs/operators';\nimport { AgentLink } from '../models/agentLink';\nimport { KPI } from '../models/kpi';\nimport { Policy } from '../models/policy';\nimport { AgentDownline } from '../models/downline';\nimport { policySearchResponse } from '../models/policysearchresponse';\nimport { PolicyRoute } from '../models/policyRoute';\nimport { EAppConfig } from '../models/eappconfig';\nimport { AgentGrid } from '../models/agentGrid';\r\nimport { Agent } from '../models/agent';\r\n\n@Injectable({\n providedIn: 'root'\n})\nexport class OnPremStorageService {\n private httpOptions = {};\n\n constructor(\n private http: HttpClient, public auth: AuthService) { }\n public getReports(agentID: string): Observable {\n return this.http.get(`${env.dev.onPremServerUrl + 'reports?agentid=' + agentID}`, this.httpOptions);\n }\n public getAgentToken(agentID: string): Observable {\n return this.http.get(`${env.dev.onPremServerUrl + 'reports/token?agentid=' + agentID}`);\n }\n public linkAgent(email: string, agentId: string, ssn: string, dob: string, linkCode: string): Observable {\n return this.http.post(`${env.dev.onPremServerUrl + 'agentLink/'}`, { emailAddress: email, InputAgentID: agentId, InputLast4SSN: ssn, InputDOB: dob, LinkCode: linkCode });\n }\n public unLinkAgent(): Observable {\n return this.http.get(`${env.dev.onPremServerUrl + 'agentLink/delete'}`);\n }\n public deleteAgentLink(): Observable {\n return this.http.get(`${env.dev.onPremServerUrl + 'agentLink/Delete'}`);\n }\n public systemStatus(): Observable {\n return this.http.get(`${env.dev.onPremServerUrl + 'systemStatus'}`);\n }\n public getAgentList(): Observable {\n return this.http.get(`${env.dev.onPremServerUrl + 'agentlink'}`)\n .pipe(map((res: any) => res.data));\n }\n public getAgentDetail(agentId: string): Observable {\n const params = `agentid=${agentId}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'agent/info?' + params}`);\n }\n public getAgentHierarchyList(agentId: string): Observable {\n const params = `agentid=${agentId}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'agent/hierarchylist?' + params}`);\n }\n public getLinkedAgentDetail(agentId: string): Observable {\n const params = `agentid=${agentId}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'agentlink/info?' + params}`);\n }\n public getLinkedAgentList(auth0Id: string, channelId: number, hideFireAgents: boolean): Observable {\n const params = `authuserid=${auth0Id}&ChannelId=${channelId}&hideFireAgents=${hideFireAgents}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'agentlink/List?' + params}`);\n }\n public getAgentDownlineList(agentId: string): Observable {\n const params = `agentid=${agentId}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'agent/downlinelist?' + params}`).pipe(map((res: any) => res.data));\n }\n public getAgentWithDownine(agentLinkId: number, channelId: number, hideFireAgents: boolean): Observable {\n const params = `agentlinkid=${agentLinkId}&ChannelId=${channelId}&hidefireagents=${hideFireAgents}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'agentlink/WithDownline?' + params}`)\n .pipe(map((res: any) => res.data));\n }\n public getAgentWithDownineList(agentId: string): Observable {\n const params = `agentid=${agentId}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'agentlink/WithDownlineList?' + params}`)\n .pipe(map((res: any) => res.data));\n }\n public getUnassociatedLinkedAgentList(): Observable {\n return this.http.get(`${env.dev.onPremServerUrl + 'agent/unassociatedList?'}`);\n }\n public getAgentActiveHierarchyListWithSelf(agentId: string, hideFireAgents: boolean): Observable {\n const params = `agentid=${agentId}&hidefireagents=${hideFireAgents}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'agent/ActiveHierarchyListIncSelf?' + params}`);\n }\n public getPolicies(agentId: string): Observable {\n const params = `agentid=${agentId}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'policies?' + params}`);\n }\n public getPolicyDetail(agentId: string, policyNumber: string, regionId: number, channelId: number): Observable {\n return this.http.get(`${env.dev.onPremServerUrl + 'policies?agentid=' + agentId + '&policyNumber=' + policyNumber + '®ionId=' + regionId + '&channelId=' + channelId}`);\n }\n public searchPolicies(agentId: string, status: string, startDate: string, endDate: string, included: number, channel: string): Observable {\n var endpoint = channel == 'Annuity' || channel == 'Annuity [Bank]' ? 'annuityquicksearch?' : 'quicksearch?';\n const params = `agentid=${agentId}&status=${status}&startdate=${startDate}&enddate=${endDate}&includedagents=${included}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'policies/' + endpoint + params}`).pipe(map((res: any) => res.data));\n }\n public searchAdvancedPolicies(agentId: string, selectedAgentID: string, downlineAgentId: string, status: string, startDate: string, endDate: string, insuredName: string,\n addressOrCity: string, phoneNumber: string, policyNumber: string, channel: string): Observable {\n var endpoint = channel == 'Annuity' || channel == 'Annuity [Bank]' ? 'annuityadvancedsearch?' : 'advancedsearch?';\n const params = `agentid=${agentId}&selectedagentid=${selectedAgentID}&downlineagentid=${downlineAgentId}&status=${status}&startdate=${startDate}&enddate=${endDate}&insuredname=${insuredName}&addressorcity=${addressOrCity}&phone=${phoneNumber}&policynumber=${policyNumber}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'policies/' + endpoint + params}`).pipe(map((res: any) => res.data));\n }\n public searchKpiPolicies(agentId: string, kpiId: number, included: number, channel: string): Observable {\n var endpoint = channel == 'Annuity' || channel == 'Annuity [Bank]' ? 'annuitykpi?' : 'kpi?';\n const params = `agentid=${agentId}&kpiid=${kpiId}&includedagents=${included}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'policies/' + endpoint + params}`).pipe(map((res: any) => res.data));\n }\n public getGridColumnList(channelId: number, name: string): Observable {\n const params = `channelid=${channelId}&name=${name}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'grid/columnlist?' + params}`);\n }\n public downloadStatement(statementId: number) {\n const params = `${statementId}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'statements/' + params}`, { responseType: 'blob' });\n }\n public searchStatements(agentId: string, type: number, startDate: string, endDate: string, included: number): Observable {\n const params = `agentid=${agentId}&type=${type}&startdate=${startDate}&enddate=${endDate}&includedagents=${included}`;\n var x = env.dev.onPremServerUrl + 'statements/search?' + params;\n return this.http.get(x);\n }\n public getKpis(agentId: string): Observable {\n const params = `agentid=${agentId}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'kpi?' + params}`, this.httpOptions);\n }\n public getKpiList(agentId: string, policySearch: boolean): Observable {\n const params = `agentid=${agentId}&policysearchonly=${policySearch}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'kpi/list?' + params}`, this.httpOptions)\n .pipe(map((res: any) => res.data));\n }\n public getEAppInfo(agentId: string): Observable {\n const params = `agentid=${agentId}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'agent/EAppUser?' + params}`, this.httpOptions)\n .pipe(map((res: APIResponse) => res.data));\n }\n public getAssociations(): Observable {\n return this.http.get(`${env.dev.onPremServerUrl + 'agentassociation'}`);\n }\n public getAssociation(agentLinkAssociationID: number): Observable {\n return this.http.get(`${env.dev.onPremServerUrl + 'agentassociation/' + agentLinkAssociationID}`);\n }\n public addAssociation(agentID: string, channelID: number, regionID: number, associatedAgentID: string, associatedRegionID: number): Observable {\n return this.http.post(`${env.dev.onPremServerUrl + 'agentassociation'}`,\n { agentId: agentID, channelId: channelID, regionId: regionID, associatedAgentId: associatedAgentID, associatedRegionId: associatedRegionID });\n }\n public updateAssociation(agentLinkAssociationID: number, associatedAgentID: string, associatedRegionID: number): Observable {\n return this.http.put(`${env.dev.onPremServerUrl + 'agentassociation/' + agentLinkAssociationID}`, { associatedAgentId: associatedAgentID, associatedRegionId: associatedRegionID });\n }\n public deleteAssociation(agentLinkAssociationID: number): Observable {\n return this.http.delete(`${env.dev.onPremServerUrl + 'agentassociation/delete/' + agentLinkAssociationID}`);\n }\n public getExternalLink(linkUri: string): Observable {\n return this.http.get(linkUri, this.httpOptions);\n }\n public getAgentLinkCodeRecords(): Observable {\n return this.http.get(`${env.dev.onPremServerUrl + 'agentlink/code'}`);\n }\n public getAgentLinkCodeRecord(agentLinkCodeId: number): Observable {\n return this.http.get(`${env.dev.onPremServerUrl + 'agentlink/code/' + agentLinkCodeId}`);\n }\n public addAgentLinkCodeRecord(emailAddress: string): Observable {\n return this.http.post(`${env.dev.onPremServerUrl + 'agentlink/code'}`,\n { emailAddress: emailAddress });\n }\n public updateAgentLinkCodeRecord(agentLinkCodeId: number, agentId: string): Observable {\n return this.http.put(`${env.dev.onPremServerUrl + 'agentlink/code/' + agentLinkCodeId}`, { agentID: agentId });\n }\n public getFileTargetList(channelId: number): Observable {\n const params = `channelid=${channelId}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'file/targets?' + params}`);\n }\n public getFileUploadList(auth0Id: string): Observable {\n const params = `authuserid=${auth0Id}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'file/uploadlist?' + params}`);\n }\n public getRouteList(agentId: string, billFormCodeList: string): Observable {\n const params = `agentid=${agentId}&billformcodelist=${billFormCodeList}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'collections/routelist?' + params}`);\n }\n public getCollection(collectionId: string): Observable {\n const params = `collectionid=${collectionId}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'collections?' + params}`);\n }\n public saveCollection(collectionId: string, collectionTypeId: number, regionId: number, policyNum: string, agentId: string, collectionAgentId: string, monthsPaid: number,\n cashAmt: number, suspenseAmt: number, overpaymentAmt: number, loanPaymentAmt: number, userId: string, modalPremium: number, currentCommRate: number, insuredName: string,\n payorName: string, sequenceNo: string): Observable {\n return this.http.post(`${env.dev.onPremServerUrl + 'collections'}`, {\r\n collectionId: collectionId ? collectionId : null, collectionTypeId: collectionTypeId, regionId: regionId, policyNum: policyNum,\n agentID: agentId, collectionAgentId: collectionAgentId, monthsPaid: monthsPaid, cashAmt: cashAmt, suspenseAmt: suspenseAmt, overpaymentAmt: overpaymentAmt,\n loanPaymentAmt: loanPaymentAmt, userId: userId, modalPremium: modalPremium, currentCommRate: currentCommRate, insuredName: insuredName, payorName: payorName,\n sequenceNo: sequenceNo\r\n });\n }\n public deleteCollection(collectionId: string): Observable {\n return this.http.delete(`${env.dev.onPremServerUrl + 'collections/delete/' + collectionId}`);\n }\n public async saveGroupCollection(routeSequenceId: string, agentId: string, collectionAgentId: string, monthsPaid: number, cashAmt: number, userId: string): Promise> {\n return (await this.http.post(`${env.dev.onPremServerUrl + 'collections/group'}`, {\r\n RouteSequenceId: routeSequenceId, AgentID: agentId, CollectionAgentId: collectionAgentId, MonthsPaid: monthsPaid, CashAmt: cashAmt, UserId: userId\r\n }).toPromise()).data;\n }\n public async deleteGroupCollection(routeSequenceId: string): Promise> {\n return (await this.http.delete(`${env.dev.onPremServerUrl + 'collections/group/delete/' + routeSequenceId}`).toPromise()).data;\n }\n public saveSequence(regionId: number, policyNum: string, agentId: string, sequenceNum: string, userId: string): Observable {\n return this.http.post(`${env.dev.onPremServerUrl + 'collections/sequence'}`, {\r\n RegionId: regionId, PolicyNum: policyNum, AgentID: agentId, SequenceNum: sequenceNum, UserId: userId });\n }\n public getSequenceContact(routeSequenceId: string): Observable {\n const params = `routesequenceId=${routeSequenceId}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'collections/sequencecontact?' + params}`);\n }\n public saveSequenceContact(routeSequenceId: string, sequenceNum: string, name: string, addressLine1: string, addressLine2: string, city: string,\n state: string, zip: string, emailAddress: string, phone: string, notes: string, userId: string): Observable {\n return this.http.post(`${env.dev.onPremServerUrl + 'collections/sequencecontact'}`, {\r\n RouteSequenceId: routeSequenceId, SequenceNum: sequenceNum, Name: name, AddressLine1: addressLine1, AddressLine2: addressLine2, City: city,\n State: state, Zip: zip, EmailAddress: emailAddress, Phone: phone, Notes: notes, UserId: userId });\n }\n public getPendingCollections(agentId: string): Observable {\n const params = `agentid=${agentId}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'collections/pendingList?' + params}`);\n }\n public getBatchHistory(agentId: string): Observable {\n const params = `agentid=${agentId}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'collections/batchhistory?' + params}`);\n }\n public async insertCollectionBatch(agentId: string): Promise> {\n return (await this.http.post(`${env.dev.onPremServerUrl + 'collections/batch'}`, {\r\n agentID: agentId}).toPromise()).data;\n }\n public getLapsedPolicy(agentId: string, policyNumber: string): Observable {\n const params = `agentid=${agentId}&policynumber=${policyNumber}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'collections/lapsedpolicysearch?' + params}`);\n }\n public downloadDocument(documentId: number) {\n const params = `${documentId}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'policies/documents/' + params}`, { responseType: 'blob' });\n }\n public getAnnuityDeferredRates(channelId: number, rateType: string, caOnly: boolean): Observable {\n const params = `channelid=${channelId}&ratetype=${rateType}&caonly=${caOnly}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'annuityrates/deferred?' + params}`, this.httpOptions);\n }\n public getAnnuityImmediateRates(channelId: number, rateType: string, caOnly: boolean): Observable {\n const params = `channelid=${channelId}&ratetype=${rateType}&caonly=${caOnly}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'annuityrates/immediate?' + params}`, this.httpOptions);\n }\n public getAnnuityFixedIndexRates(channelId: number, rateType: string, caOnly: boolean): Observable {\n const params = `channelid=${channelId}&ratetype=${rateType}&caonly=${caOnly}`;\n return this.http.get(`${env.dev.onPremServerUrl + 'annuityrates/fixedindex?' + params}`, this.httpOptions);\n }\n public trackEvent(eventId: number, userId: string, eventData: string, agentId: string, channelId: number): Observable {\n return this.http.post(`${env.dev.onPremServerUrl + 'siteanalytics/event'}`,\n { eventId: eventId, userId: userId, eventData: eventData, agentId: agentId, channelId: channelId });\n }\n}\n","import { HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { AuthService } from '@auth0/auth0-angular';\nimport { Observable, of, Subject } from 'rxjs';\nimport { map, mergeMap, switchMap } from 'rxjs/operators';\nimport { Profile } from '../models/profile';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SiteParameterService { \n private _profile!: Profile;\n private endpoint = './api/clouddata/';\n public profileLoadComplete = false;\n public setProfile(profile: Profile) { this._profile = profile; this.profileLoadComplete = true; this.sendParmServiceInit(this._profile); }\n public getStaticProfile(): Profile { return this._profile };\n private gridNoResults = '
    No search results
     
    ';\n public getGridNoResults(): string { return this.gridNoResults };\n\n constructor(public auth: AuthService, private http: HttpClient) {}\n public loadProfile() {\n return this.auth.user$.pipe(mergeMap((auth: any) => this.http.get(this.endpoint + 'GetUserProfile?auth0ID=' + auth.sub).pipe(map((profile: Profile) => { this.setProfile(profile) }))\n .pipe(switchMap(l => { return of(true) }))));\n }\n private parmServiceInit = new Subject(); //need to create a subject\n sendParmServiceInit(message: any) { //the component that wants to update something, calls this fn\n this.parmServiceInit.next({ value: message }); //next() will feed the value in Subject\n }\n getParmServiceInit(): Observable { //the receiver component calls this function\n return this.parmServiceInit.asObservable(); //it returns as an observable to which the receiver function will subscribe\n }\n\n private impersonation = new Subject();\n sendImpersonationUpdate(message: any) { //the component that wants to update something, calls this fn\n this.impersonation.next({ value: message }); //next() will feed the value in Subject\n }\n getImpersonationUpdate(): Observable { //the receiver component calls this function\n return this.impersonation.asObservable(); //it returns as an observable to which the receiver function will subscribe\n }\n\n private channelUpdate = new Subject(); //need to create a subject\n sendChannelUpdate(message: any) { //the component that wants to update something, calls this fn\n this.channelUpdate.next({ value: message }); //next() will feed the value in Subject\n }\n getChannelUpdate(): Observable { //the receiver component calls this function \n return this.channelUpdate.asObservable(); //it returns as an observable to which the receiver function will subscribe\n }\n\n private channelInit = new Subject(); //need to create a subject\n sendChannelInit(message: any) { //the component that wants to update something, calls this fn\n this.channelInit.next({ value: message }); //next() will feed the value in Subject\n }\n getChannelInit(): Observable { //the receiver component calls this function \n return this.channelInit.asObservable(); //it returns as an observable to which the receiver function will subscribe\n }\n\n private agentUpdate = new Subject(); //need to create a subject\n sendAgentUpdate(message: any) { //the component that wants to update something, calls this fn\n this.agentUpdate.next({ value: message }); //next() will feed the value in Subject\n }\n getAgentUpdate(): Observable { //the receiver component calls this function\n return this.agentUpdate.asObservable(); //it returns as an observable to which the receiver funtion will subscribe\n }\n\n private defaultAgentUpdate = new Subject(); //need to create a subject\n sendDefaultAgentUpdate(message: any) { //the component that wants to update something, calls this fn\n this.defaultAgentUpdate.next({ value: message }); //next() will feed the value in Subject\n }\n getDefaultAgentUpdate(): Observable { //the receiver component calls this function\n return this.defaultAgentUpdate.asObservable(); //it returns as an observable to which the receiver funtion will subscribe\n }\n\n private defaultChannelUpdate = new Subject(); //need to create a subject\n sendDefaultChannelUpdate(message: any) { //the component that wants to update something, calls this fn\n this.defaultChannelUpdate.next({ value: message }); //next() will feed the value in Subject\n }\n getDefaultChannelUpdate(): Observable { //the receiver component calls this function\n return this.defaultChannelUpdate.asObservable(); //it returns as an observable to which the receiver funtion will subscribe\n }\n\n private agentDetailUpdate = new Subject(); //need to create a subject\n sendAgentDetailUpdate(message: any) { //the component that wants to update something, calls this fn\n this.defaultChannelUpdate.next({ value: message }); //next() will feed the value in Subject\n }\n getAgentDetailUpdate(): Observable { //the receiver component calls this function\n return this.defaultChannelUpdate.asObservable(); //it returns as an observable to which the receiver funtion will subscribe\n }\n\n private kpiSearchUpdate = new Subject(); //need to create a subject\n sendkpiSearchUpdate(message: any) { //the component that wants to update something, calls this fn\n this.kpiSearchUpdate.next({ value: message }); //next() will feed the value in Subject\n }\n getkpiSearchUpdate(): Observable { //the receiver component calls this function\n return this.kpiSearchUpdate.asObservable(); //it returns as an observable to which the receiver funtion will subscribe\n }\n\n private unlinkedAgentUpdate = new Subject(); //need to create a subject\n sendunlinkedAgentUpdate(message: any) { //the component that wants to update something, calls this fn\n this.unlinkedAgentUpdate.next({ value: message }); //next() will feed the value in Subject\n }\n getunlinkedAgentUpdate(): Observable { //the receiver component calls this function\n return this.unlinkedAgentUpdate.asObservable(); //it returns as an observable to which the receiver funtion will subscribe\n }\n}\n","export default \".ag-theme-alpine .ag-row.ag-row-level-0 {\\r\\n background-color: #dddbdb;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hc3NldHMvY3NzL3JvdXRlbGlzdC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSx5QkFBeUI7QUFDM0IiLCJmaWxlIjoic3JjL2Fzc2V0cy9jc3Mvcm91dGVsaXN0LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5hZy10aGVtZS1hbHBpbmUgLmFnLXJvdy5hZy1yb3ctbGV2ZWwtMCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZGJkYjtcclxufVxyXG4iXX0= */\";","// src/environments/environment.ts\n\n//import { domain, clientId, serverUrl } from '../../auth_config.json';\n\n//export const environment = {\n// production: false,\n// auth: {\n// domain,\n// clientId,\n// redirectUri: window.location.origin, \n// },\n// dev: {\n// serverUrl,\n// },\n//};\n\nimport * as ConfigInfo from '../../config.json';\n\nexport const environment = {\n production: true,\n auth: {\n domain: ConfigInfo.domain,\n clientId: ConfigInfo.clientId,\n redirectUri: window.location.origin,\n audience: ConfigInfo.audience\n },\n dev: {\n serverUrl: ConfigInfo.serverUrl,\n tappUrl: ConfigInfo.tappUrl,\n mrsSuppHealthUrl: ConfigInfo.mrsSuppHealthUrl,\n mrsHomeServiceUrl: ConfigInfo.mrsHomeServiceUrl,\n onPremServerUrl: ConfigInfo.onPremServerUrl,\n annuityEAppURL: ConfigInfo.annuityEAppURL,\n anonymousAllowedList: ConfigInfo.anonymousAllowedList,\n eAppRedirectUrlPart1: ConfigInfo.eAppRedirectUrlPart1,\n eAppRedirectUrlPart2: ConfigInfo.eAppRedirectUrlPart2,\n disableFileUpload: ConfigInfo.disableFileUpload,\n maxFileSize: ConfigInfo.maxFileSize\n },\n};\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.error(err));\n"]}