{"version":3,"sources":["./$_lazy_route_resource lazy namespace object","./src/app/app-routing.module.ts","./src/app/app.component.html","./src/app/app.component.ts","./src/app/app.module.ts","./src/app/components/address/address.component.html","./src/app/components/address/address.component.ts","./src/app/components/admin/admin-dashboard/admin-dashboard.component.html","./src/app/components/admin/admin-dashboard/admin-dashboard.component.ts","./src/app/components/admin/admin-dashboard/emploee-widget/emploee-widget.component.html","./src/app/components/admin/admin-dashboard/emploee-widget/emploee-widget.component.ts","./src/app/components/admin/admin-header/admin-header.component.html","./src/app/components/admin/admin-header/admin-header.component.ts","./src/app/components/admin/admin-header/logout.service.ts","./src/app/components/admin/admin-layout/admin-layout.component.html","./src/app/components/admin/admin-layout/admin-layout.component.ts","./src/app/components/admin/admin-plan-details/admin-plan-details.component.html","./src/app/components/admin/admin-plan-details/admin-plan-details.component.ts","./src/app/components/admin/admin-plan/admin-plan.component.html","./src/app/components/admin/admin-plan/admin-plan.component.ts","./src/app/components/admin/admin-profile/admin-profile.component.html","./src/app/components/admin/admin-profile/admin-profile.component.ts","./src/app/components/admin/admin-profile/billing/billing.component.html","./src/app/components/admin/admin-profile/billing/billing.component.ts","./src/app/components/admin/admin-profile/billing/secure-billing.service.ts","./src/app/components/admin/admin-profile/broker/broker.component.html","./src/app/components/admin/admin-profile/broker/broker.component.ts","./src/app/components/admin/admin-profile/broker/secure-broker.service.ts","./src/app/components/admin/admin-profile/company/company.component.html","./src/app/components/admin/admin-profile/company/company.component.ts","./src/app/components/admin/admin-profile/company/secure-company.service.ts","./src/app/components/admin/admin-profile/documents/documents.component.html","./src/app/components/admin/admin-profile/documents/documents.component.ts","./src/app/components/admin/admin-profile/documents/secure-document.service.ts","./src/app/components/admin/admin-profile/primary-contact/primary-contact.component.html","./src/app/components/admin/admin-profile/primary-contact/primary-contact.component.ts","./src/app/components/admin/admin-profile/primary-contact/secure-primary-contact.service.ts","./src/app/components/admin/admin-routing.module.ts","./src/app/components/admin/admin-settings/admin-settings.component.html","./src/app/components/admin/admin-settings/admin-settings.component.ts","./src/app/components/admin/admin-settings/admin-settings.service.ts","./src/app/components/admin/admin-sidebar/admin-sidebar.component.html","./src/app/components/admin/admin-sidebar/admin-sidebar.component.ts","./src/app/components/admin/admin.component.html","./src/app/components/admin/admin.component.ts","./src/app/components/admin/admin.module.ts","./src/app/components/admin/employee-details/employee-details.component.html","./src/app/components/admin/employee-details/employee-details.component.ts","./src/app/components/admin/employees-list/employees-list.component.html","./src/app/components/admin/employees-list/employees-list.component.ts","./src/app/components/admin/employees-list/employees.service.ts","./src/app/components/admin/general-faqs-layout/general-faqs-layout.component.html","./src/app/components/admin/general-faqs-layout/general-faqs-layout.component.ts","./src/app/components/admin/help-contact-us/help-contact-us.component.html","./src/app/components/admin/help-contact-us/help-contact-us.component.ts","./src/app/components/admin/help-contact-us/secure-contact-us.service.ts","./src/app/components/admin/page-heading/page-heading.component.html","./src/app/components/admin/page-heading/page-heading.component.ts","./src/app/components/admin/upload-employees/upload-employees.component.html","./src/app/components/admin/upload-employees/upload-employees.component.ts","./src/app/components/admin/upload-employees/upload-employess.service.ts","./src/app/components/banner/banner.component.html","./src/app/components/banner/banner.component.ts","./src/app/components/bread-crumb/bread-crumb.component.html","./src/app/components/bread-crumb/bread-crumb.component.ts","./src/app/components/contact-us/contact-us.component.html","./src/app/components/contact-us/contact-us.component.ts","./src/app/components/contact-us/contact-us.service.ts","./src/app/components/disclosures/disclosures.component.html","./src/app/components/disclosures/disclosures.component.ts","./src/app/components/discount-faqs-layout/discount-faqs-layout.component.html","./src/app/components/discount-faqs-layout/discount-faqs-layout.component.ts","./src/app/components/discount-faqs/discount-faqs.component.html","./src/app/components/discount-faqs/discount-faqs.component.ts","./src/app/components/find-a-provider/find-a-provider.component.html","./src/app/components/find-a-provider/find-a-provider.component.ts","./src/app/components/footer/footer.component.html","./src/app/components/footer/footer.component.ts","./src/app/components/forgot-password/forgot-password.component.html","./src/app/components/forgot-password/forgot-password.component.ts","./src/app/components/forgot-password/forgot-password.service.ts","./src/app/components/general-faqs/general-faqs.component.html","./src/app/components/general-faqs/general-faqs.component.ts","./src/app/components/get-started/administrator-account/administrator-account.component.html","./src/app/components/get-started/administrator-account/administrator-account.component.ts","./src/app/components/get-started/administrator-account/administrator.service.ts","./src/app/components/get-started/billing-information/billing-information.component.html","./src/app/components/get-started/billing-information/billing-information.component.ts","./src/app/components/get-started/billing-information/billinginformation.service.ts","./src/app/components/get-started/broker-details/broker-details.component.html","./src/app/components/get-started/broker-details/broker-details.component.ts","./src/app/components/get-started/broker-information/broker-information.service.ts","./src/app/components/get-started/broker-information/broker.component.html","./src/app/components/get-started/broker-information/broker.component.ts","./src/app/components/get-started/choose-plan/choose-plan.component.html","./src/app/components/get-started/choose-plan/choose-plan.component.ts","./src/app/components/get-started/choose-plan/choose-plan.service.ts","./src/app/components/get-started/company-information/company-information.component.html","./src/app/components/get-started/company-information/company-information.component.ts","./src/app/components/get-started/company-information/company-information.service.ts","./src/app/components/get-started/contact-information/contact-information.component.html","./src/app/components/get-started/contact-information/contact-information.component.ts","./src/app/components/get-started/contract/benefits-plan/benefits-plan.component.html","./src/app/components/get-started/contract/benefits-plan/benefits-plan.component.ts","./src/app/components/get-started/contract/billing-contact/billing-contact.component.html","./src/app/components/get-started/contract/billing-contact/billing-contact.component.ts","./src/app/components/get-started/contract/careington-witness/careington-witness.component.html","./src/app/components/get-started/contract/careington-witness/careington-witness.component.ts","./src/app/components/get-started/contract/client-witness/client-witness.component.html","./src/app/components/get-started/contract/client-witness/client-witness.component.ts","./src/app/components/get-started/contract/contract-address/contract-address.component.html","./src/app/components/get-started/contract/contract-address/contract-address.component.ts","./src/app/components/get-started/contract/contract.component.html","./src/app/components/get-started/contract/contract.component.ts","./src/app/components/get-started/contract/contract.service.ts","./src/app/components/get-started/contract/recitals/recitals.component.html","./src/app/components/get-started/contract/recitals/recitals.component.ts","./src/app/components/get-started/contract/secure-plan.service.ts","./src/app/components/get-started/contract/signature/signature.component.html","./src/app/components/get-started/contract/signature/signature.component.ts","./src/app/components/get-started/contract/witness/witness.component.html","./src/app/components/get-started/contract/witness/witness.component.ts","./src/app/components/get-started/contract/your-contract/your-contract.component.html","./src/app/components/get-started/contract/your-contract/your-contract.component.ts","./src/app/components/get-started/get-started-routing.module.ts","./src/app/components/get-started/get-started.component.html","./src/app/components/get-started/get-started.component.ts","./src/app/components/get-started/get-started.module.ts","./src/app/components/get-started/navigation-buttons/navigation-buttons.component.html","./src/app/components/get-started/navigation-buttons/navigation-buttons.component.ts","./src/app/components/get-started/plan/plan.component.html","./src/app/components/get-started/plan/plan.component.ts","./src/app/components/get-started/primary-contact/primary-contact.component.html","./src/app/components/get-started/primary-contact/primary-contact.component.ts","./src/app/components/get-started/primary-contact/primary-contact.service.ts","./src/app/components/get-started/progress-bar-step-item/progress-bar-step-item.component.html","./src/app/components/get-started/progress-bar-step-item/progress-bar-step-item.component.ts","./src/app/components/get-started/progress-bar-steps/progress-bar-steps.component.html","./src/app/components/get-started/progress-bar-steps/progress-bar-steps.component.ts","./src/app/components/get-started/registration-step.enum.ts","./src/app/components/get-started/user-state/user-state.component.html","./src/app/components/get-started/user-state/user-state.component.ts","./src/app/components/get-started/verify-email/email-verification.service.ts","./src/app/components/get-started/verify-email/verify-email.component.html","./src/app/components/get-started/verify-email/verify-email.component.ts","./src/app/components/group-plans/group-plan/group-plan.component.html","./src/app/components/group-plans/group-plan/group-plan.component.ts","./src/app/components/group-plans/group-plans.component.html","./src/app/components/group-plans/group-plans.component.ts","./src/app/components/header/header.component.html","./src/app/components/header/header.component.ts","./src/app/components/home/home.component.html","./src/app/components/home/home.component.ts","./src/app/components/how-to-use-layout/how-to-use-layout.component.html","./src/app/components/how-to-use-layout/how-to-use-layout.component.ts","./src/app/components/how-to-use/how-to-use.component.html","./src/app/components/how-to-use/how-to-use.component.ts","./src/app/components/layout/layout.component.html","./src/app/components/layout/layout.component.ts","./src/app/components/login/login.component.html","./src/app/components/login/login.component.ts","./src/app/components/login/login.service.ts","./src/app/components/plan-details/plan-details.component.html","./src/app/components/plan-details/plan-details.component.ts","./src/app/components/privacy-policy/privacy-policy.component.html","./src/app/components/privacy-policy/privacy-policy.component.ts","./src/app/components/reset-password/reset-password.component.html","./src/app/components/reset-password/reset-password.component.ts","./src/app/components/reset-password/reset-password.service.ts","./src/app/components/site-map/site-map.component.html","./src/app/components/site-map/site-map.component.ts","./src/app/components/telemedicine-faqs-layout/telemedicine-faqs-layout.component.html","./src/app/components/telemedicine-faqs-layout/telemedicine-faqs-layout.component.ts","./src/app/components/telemedicine-faqs/telemedicine-faqs.component.html","./src/app/components/telemedicine-faqs/telemedicine-faqs.component.ts","./src/app/components/term-and-conditions/term-and-conditions.component.html","./src/app/components/term-and-conditions/term-and-conditions.component.ts","./src/app/components/thank-you/thank-you.component.html","./src/app/components/thank-you/thank-you.component.ts","./src/app/core/app-initializer.ts","./src/app/core/app-state.ts","./src/app/core/components/loader/loader.component.html","./src/app/core/components/loader/loader.component.ts","./src/app/core/components/product-language/product-language.component.html","./src/app/core/components/product-language/product-language.component.ts","./src/app/core/core.module.ts","./src/app/core/global-error-handler.ts","./src/app/core/interceptors/auth.interceptor.ts","./src/app/core/interceptors/loader.interceptor.ts","./src/app/core/interceptors/no-cache-interceptor.ts","./src/app/core/interceptors/retry.interceptor.ts","./src/app/core/operators/delayed-retry.operator.ts","./src/app/core/services/api-gateway.service.ts","./src/app/core/services/group-portal-api.service.ts","./src/app/core/services/internal-api.service.ts","./src/app/core/services/loader.service.ts","./src/app/core/services/log.service.ts","./src/app/core/services/notification.service.ts","./src/app/core/services/storage.service.ts","./src/app/core/utils/constants.ts","./src/app/core/utils/field-validations.ts","./src/app/directives/numeric-only.directive.ts","./src/app/models/Employee-List/upload-employee-file.ts","./src/app/models/GroupPlan/Rates.ts","./src/app/models/banner-context.ts","./src/app/pipes/coverage-type.pipe.ts","./src/app/pipes/date-suffix.pipe.ts","./src/app/pipes/gender-abbreviation.pipe.ts","./src/app/pipes/low-price.pipe.ts","./src/app/pipes/marital-status.pipe.ts","./src/app/pipes/phone-number.pipe.ts","./src/app/pipes/pipes.module.ts","./src/app/pipes/pricing-options.pipe.ts","./src/app/pipes/products.pipe.ts","./src/app/pipes/relationship-abbreviation.pipe.ts","./src/app/pipes/sort-bundle-rate.pipe.ts","./src/app/services/Auth/auth-guard.service.ts","./src/app/services/Auth/auth.service.ts","./src/app/services/careington-info.service.ts","./src/app/services/common-gateway.service.ts","./src/app/shared.module.ts","./src/app/shared/utils/ApiPaths.ts","./src/app/shared/utils/Months.ts","./src/app/shared/utils/http-status-codes.ts","./src/environments/environment.default.ts","./src/environments/environment.ts","./src/main.ts"],"names":[],"mappings":"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","file":"main-es2015.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\";","import { NgModule } from \"@angular/core\";\r\nimport { Routes, RouterModule } from \"@angular/router\";\r\n\r\nimport { LayoutComponent } from \"./components/layout/layout.component\";\r\nimport { TermAndConditionsComponent } from \"./components/term-and-conditions/term-and-conditions.component\";\r\nimport { PrivacyPolicyComponent } from \"./components/privacy-policy/privacy-policy.component\";\r\nimport { LoginComponent } from \"./components/login/login.component\";\r\nimport { AdminLayoutComponent } from './components/admin/admin-layout/admin-layout.component';\r\nimport { ContactUsComponent } from './components/contact-us/contact-us.component';\r\nimport { GroupPlansComponent } from \"./components/group-plans/group-plans.component\";\r\nimport { ForgotPasswordComponent } from './components/forgot-password/forgot-password.component';\r\nimport { ResetPasswordComponent } from './components/reset-password/reset-password.component';\r\nimport { PlanDetailsComponent } from './components/plan-details/plan-details.component';\r\nimport { DiscountFaqsLayoutComponent } from './components/discount-faqs-layout/discount-faqs-layout.component';\r\nimport { TelemedicineFaqsLayoutComponent } from './components/telemedicine-faqs-layout/telemedicine-faqs-layout.component';\r\nimport { HowToUseLayoutComponent } from './components/how-to-use-layout/how-to-use-layout.component';\r\nimport { HomeComponent } from './components/home/home.component';\r\nimport { SiteMapComponent } from './components/site-map/site-map.component';\r\nimport { ThankYouComponent } from \"./components/thank-you/thank-you.component\";\r\nimport { FindAProviderComponent } from \"./components/find-a-provider/find-a-provider.component\";\r\n\r\n\r\nconst routes: Routes = [\r\n //Site routes goes here\r\n {\r\n path: \"\",\r\n data: { breadCrumb: \"Home\" },\r\n component: LayoutComponent,\r\n children: [\r\n {\r\n path: \"\",\r\n component: HomeComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"application\",\r\n loadChildren: () =>\r\n import(\"./components/get-started/get-started.module\").then(\r\n m => m.GetStartedModule\r\n )\r\n },\r\n\r\n {\r\n path: \"admin/login\",\r\n component: LoginComponent,\r\n data: { breadCrumb: 'Login' },\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"faqs-dental-plans\",\r\n component: DiscountFaqsLayoutComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"faqs-telemedicine\",\r\n component: TelemedicineFaqsLayoutComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"how-to-use\",\r\n component: HowToUseLayoutComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"terms-and-conditions\",\r\n component: TermAndConditionsComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"privacy-policy\",\r\n component: PrivacyPolicyComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"group-plans\",\r\n component: GroupPlansComponent,\r\n data: { breadCrumb: \"Group Plans\" },\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"plan-details/:id\",\r\n component: PlanDetailsComponent,\r\n data: { breadCrumb: \"id\" },\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"\",\r\n redirectTo: \"application\",\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"contact-us\",\r\n component: ContactUsComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"forgot-password\",\r\n component: ForgotPasswordComponent,\r\n data: { breadCrumb: 'Forgot Password' },\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"reset-password/:id\",\r\n component: ResetPasswordComponent,\r\n data: { breadCrumb: 'Reset Password' },\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"site-map\",\r\n component: SiteMapComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"provider-search/:id\",\r\n component: FindAProviderComponent,\r\n pathMatch: \"full\"\r\n },\r\n \r\n ]\r\n },\r\n {\r\n path: \"thank-you\",\r\n component: ThankYouComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"admin\",\r\n component: AdminLayoutComponent,\r\n loadChildren: () =>\r\n import(\"./components/admin/admin.module\").then(\r\n m => m.AdminModule\r\n )\r\n },\r\n {\r\n path: \"\",\r\n redirectTo: \"application\",\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"**\",\r\n redirectTo: \"\",\r\n pathMatch: \"full\"\r\n }\r\n\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","<app-loader></app-loader>\r\n<router-outlet></router-outlet>","import { Component } from '@angular/core';\r\nimport { Router, ActivatedRoute, NavigationEnd, NavigationStart } from \"@angular/router\";\r\nimport { filter } from \"rxjs/operators\";\r\nimport { Title, Meta } from '@angular/platform-browser';\r\n\r\nimport { AppState } from './core/app-state';\r\nimport { AnyARecord } from 'dns';\r\n\r\ndeclare let _vwo_code: any;\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.less']\r\n})\r\nexport class AppComponent {\r\n\r\n private browserGlobals = {\r\n windowRef(): any {\r\n return window;\r\n },\r\n documentRef(): any {\r\n return document;\r\n },\r\n };\r\n\r\n constructor(private router: Router, private appState: AppState, private titleService: Title, private metaService: Meta) {\r\n this.titleService.setTitle(\"Careington Direct\");\r\n\r\n this.router.events\r\n .pipe(filter(e => (e instanceof NavigationEnd || e instanceof NavigationStart)))\r\n .subscribe((event: NavigationEnd | NavigationStart) => {\r\n if (event instanceof NavigationEnd) {\r\n this.SetWindowScroll();\r\n _vwo_code.load(_vwo_code.get_vwo_url());\r\n const window = this.browserGlobals.windowRef();\r\n window['dataLayer'] = window['dataLayer'] || [];\r\n window['dataLayer'].push({\r\n 'event': 'Pageview',\r\n page: { //reference: https://www.bounteous.com/insights/2018/03/30/single-page-applications-google-analytics/\r\n 'path': this.router.url,\r\n 'title': titleService.getTitle()\r\n }\r\n });\r\n }\r\n else if (event instanceof NavigationStart) {\r\n this.metaService.removeTag('name=\"description\"');\r\n }\r\n });\r\n }\r\n\r\n SetWindowScroll(): void {\r\n window.scrollTo(0, 0);\r\n }\r\n}\r\n","import { BrowserModule } from \"@angular/platform-browser\";\r\nimport { NgModule, CUSTOM_ELEMENTS_SCHEMA } from \"@angular/core\";\r\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\r\nimport { BrowserAnimationsModule } from \"@angular/platform-browser/animations\";\r\nimport { ModalModule } from 'ngx-bootstrap';\r\nimport { PopoverModule } from \"ngx-bootstrap/popover\";\r\nimport { Ng2PageScrollModule } from 'ng2-page-scroll';\r\nimport { InViewportModule } from 'ng-in-viewport';\r\n\r\nimport { AppRoutingModule } from \"./app-routing.module\";\r\nimport { CoreModule } from \"./core/core.module\";\r\nimport { GetStartedModule } from \"./components/get-started/get-started.module\";\r\nimport { AdminModule } from \"./components/admin/admin.module\";\r\nimport { SharedModule } from \"./shared.module\";\r\nimport { PipesModule } from \"./pipes/pipes.module\";\r\n\r\nimport { AppComponent } from \"./app.component\";\r\nimport { HeaderComponent } from \"./components/header/header.component\";\r\nimport { LayoutComponent } from \"./components/layout/layout.component\";\r\nimport { FooterComponent } from \"./components/footer/footer.component\";\r\nimport { TermAndConditionsComponent } from \"./components/term-and-conditions/term-and-conditions.component\";\r\nimport { PrivacyPolicyComponent } from \"./components/privacy-policy/privacy-policy.component\";\r\nimport { ContactUsComponent } from \"./components/contact-us/contact-us.component\";\r\nimport { GroupPlansComponent } from \"./components/group-plans/group-plans.component\";\r\nimport { GroupPlanComponent } from \"./components/group-plans/group-plan/group-plan.component\";\r\nimport { LoginComponent } from './components/login/login.component';\r\nimport { PlanDetailsComponent } from './components/plan-details/plan-details.component';\r\nimport { ResetPasswordComponent } from './components/reset-password/reset-password.component';\r\nimport { ForgotPasswordComponent } from './components/forgot-password/forgot-password.component';\r\nimport { DiscountFaqsLayoutComponent } from './components/discount-faqs-layout/discount-faqs-layout.component';\r\nimport { TelemedicineFaqsLayoutComponent } from './components/telemedicine-faqs-layout/telemedicine-faqs-layout.component';\r\nimport { HowToUseLayoutComponent } from './components/how-to-use-layout/how-to-use-layout.component';\r\nimport { HomeComponent } from './components/home/home.component';\r\nimport { SiteMapComponent } from './components/site-map/site-map.component';\r\nimport { DisclosuresComponent } from './components/disclosures/disclosures.component';\r\nimport { ThankYouComponent } from \"./components/thank-you/thank-you.component\";\r\nimport { FindAProviderComponent } from './components/find-a-provider/find-a-provider.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n HeaderComponent,\r\n LayoutComponent,\r\n FooterComponent,\r\n TermAndConditionsComponent,\r\n PrivacyPolicyComponent,\r\n ContactUsComponent,\r\n GroupPlansComponent,\r\n GroupPlanComponent,\r\n LoginComponent,\r\n PlanDetailsComponent,\r\n DiscountFaqsLayoutComponent,\r\n TelemedicineFaqsLayoutComponent,\r\n HowToUseLayoutComponent,\r\n HomeComponent,\r\n SiteMapComponent,\r\n DisclosuresComponent,\r\n ResetPasswordComponent,\r\n ForgotPasswordComponent,\r\n ThankYouComponent,\r\n FindAProviderComponent\r\n ],\r\n imports: [\r\n FormsModule,\r\n ReactiveFormsModule,\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n AppRoutingModule,\r\n CoreModule,\r\n GetStartedModule,\r\n AdminModule,\r\n SharedModule,\r\n PipesModule,\r\n [PopoverModule.forRoot()],\r\n ModalModule.forRoot(),\r\n Ng2PageScrollModule,\r\n InViewportModule\r\n ],\r\n schemas: [\r\n CUSTOM_ELEMENTS_SCHEMA\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n","<div [formGroup]=\"AddressForm\">\r\n <div>\r\n <div class=\"row\">\r\n <div [ngClass]=\"colClass\">\r\n <div class=\"form-group\">\r\n <label>Address 1:<span class=\"req\">*</span></label>\r\n <input type=\"text\" formControlName=\"address1\" class=\"form-control\" placeholder=\"Address 1\" maxlength=\"64\" />\r\n <p class=\"help-block\">Street address, P.O. box, company name, c/o</p>\r\n <div *ngIf=\"\r\n AddressForm.controls.address1.invalid &&\r\n (AddressForm.controls.address1.dirty ||\r\n AddressForm.controls.address1.touched)\r\n \" class=\"alert alert-danger\">\r\n <div *ngIf=\"AddressForm.controls.address1.errors\">\r\n Address 1 is required.\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div [ngClass]=\"colClass\">\r\n <div class=\"form-group\">\r\n <label>Address 2:</label>\r\n <input type=\"text\" formControlName=\"address2\" class=\"form-control\" placeholder=\"Address 2\" maxlength=\"32\" />\r\n <p class=\"help-block\">Apartment, suite, unit, building, floor, etc.</p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row\">\r\n <div [ngClass]=\"colClass\">\r\n <div class=\"form-group\">\r\n <label>City:<span class=\"req\">*</span></label>\r\n <input type=\"text\" formControlName=\"city\" class=\"form-control\" placeholder=\"City\" maxlength=\"32\" />\r\n <div *ngIf=\"\r\n AddressForm.controls.city.invalid &&\r\n (AddressForm.controls.city.dirty ||\r\n AddressForm.controls.city.touched)\r\n \" class=\"alert alert-danger\">\r\n <div *ngIf=\"AddressForm.controls.city.errors\">\r\n City is required.\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div [ngClass]=\"colClass\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-8\">\r\n <div class=\"form-group\">\r\n <label>State:<span class=\"req\">*</span></label>\r\n <select formControlName=\"stateCode\" class=\"form-control\">\r\n <option value=\"\" disabled>Select a State</option>\r\n <option *ngFor=\"let state of states; let i = index\" [value]=\"state.stateCode\">\r\n {{ state.stateName | titlecase }}\r\n </option>\r\n </select>\r\n <div *ngIf=\"\r\n AddressForm.controls.stateCode.invalid &&\r\n (AddressForm.controls.stateCode.dirty ||\r\n AddressForm.controls.stateCode.touched)\r\n \" class=\"alert alert-danger\">\r\n <div *ngIf=\"AddressForm.controls.stateCode.errors.required\">\r\n State is required.\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-4\">\r\n <div class=\"form-group\">\r\n <label>ZIP Code:<span class=\"req\">*</span></label>\r\n <input type=\"text\" formControlName=\"zipCode\" class=\"form-control\" placeholder=\"ZIP Code\" maxlength=\"5\"\r\n numericOnly />\r\n <div\r\n *ngIf=\"AddressForm.controls.zipCode.invalid && (AddressForm.controls.zipCode.dirty || AddressForm.controls.zipCode.touched) \"\r\n class=\"alert alert-danger\">\r\n <div *ngIf=\"AddressForm.controls.zipCode.errors.required\">\r\n Zip Code is required.\r\n </div>\r\n <div *ngIf=\"AddressForm.controls.zipCode.hasError('pattern')\">\r\n Zip Code should have only numbers.\r\n </div>\r\n <div *ngIf=\"AddressForm.controls.zipCode.errors.minlength\">\r\n Zip Code should be 5 digits.\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Component, OnInit, Input } from \"@angular/core\";\r\nimport { FormGroup } from \"@angular/forms\";\r\n\r\nimport { StateInfo } from \"../../models/state-info\";\r\nimport { RegistrationStep } from \"../get-started/registration-step.enum\";\r\n\r\n@Component({\r\n selector: \"app-address\",\r\n templateUrl: \"./address.component.html\",\r\n styleUrls: [\"./address.component.less\"]\r\n})\r\nexport class AddressComponent implements OnInit {\r\n @Input() states: StateInfo[];\r\n @Input() AddressForm: FormGroup;\r\n @Input() parentForm: RegistrationStep;\r\n @Input() isDisabled: boolean;\r\n\r\n colClass: string;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n if (this.states != null)\r\n {\r\n this.states = this.states.filter(x=> (x.stateCode != \"AA\") && (x.stateCode !=\"AE\") && (x.stateCode !=\"AP\"));\r\n }\r\n this.loadStyles();\r\n if (this.isDisabled) {\r\n this.disableFields();\r\n }\r\n }\r\n\r\n disableFields() {\r\n this.AddressForm.get('address1').disable();\r\n this.AddressForm.get('address2').disable();\r\n this.AddressForm.get('city').disable();\r\n this.AddressForm.get('stateCode').disable();\r\n this.AddressForm.get('zipCode').disable();\r\n }\r\n\r\n loadStyles() {\r\n if (this.parentForm == null || this.parentForm == this.registrationStep.CompanyInformation) {\r\n this.colClass = \"col-sm-6\";\r\n } else {\r\n this.colClass = \"col-sm-12\";\r\n }\r\n }\r\n\r\n get registrationStep() {\r\n return RegistrationStep;\r\n }\r\n}\r\n","<div class=\"row\">\r\n <div class=\"col-lg-12\">\r\n <h1 class=\"page-header\">WELCOME TO CAREINGTON DIRECT</h1>\r\n </div>\r\n</div>\r\n<div class=\"row\">\r\n <div class=\"col-lg-3 col-md-6\" *ngFor=\"let empWidget of employeeWidget\">\r\n <app-emploee-widget [employeeWidget]=\"empWidget\"></app-emploee-widget>\r\n </div>\r\n</div>\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { Router } from '@angular/router';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\nimport { EmployeeWideget } from '../../../models/AdminDashboard/EmployeeWidget';\r\nimport { EmployeesService } from '../employees-list/employees.service';\r\nimport { NotificationService } from '../../../core/services/notification.service';\r\nimport { HttpStatusCodes } from '../../../shared/utils/http-status-codes';\r\n\r\n\r\n@Component({\r\n selector: 'app-admin-dashboard',\r\n templateUrl: './admin-dashboard.component.html',\r\n styleUrls: ['./admin-dashboard.component.less']\r\n})\r\nexport class AdminDashboardComponent implements OnInit {\r\n employeeWidget: EmployeeWideget[];\r\n\r\n constructor(private employeesService: EmployeesService, \r\n private notificationService: NotificationService, \r\n private router: Router,\r\n private titleService:Title\r\n ) { \r\n titleService.setTitle('Careington Direct');\r\n }\r\n\r\n ngOnInit() {\r\n this.getEmpCount();\r\n }\r\n\r\n getEmpCount() {\r\n const rowData = this.employeesService.GetEmployeeCount().subscribe(data => {\r\n this.loadWidgetData(data.toString());\r\n } ,\r\n error => {\r\n if (error.status != HttpStatusCodes.NOT_FOUND) {\r\n this.loadWidgetData(\"0\");\r\n this.handleError(error);\r\n }\r\n });\r\n }\r\n\r\n loadWidgetData(empCount: string) {\r\n this.employeeWidget = [{\r\n type: \"myEmployees\",\r\n title: \"MY EMPLOYEES\",\r\n count: empCount,\r\n url: \"emp-list\",\r\n icon: \"fa-users\",\r\n cls: \"panel-primary\"\r\n },\r\n {\r\n type: \"addEmployees\",\r\n title: \"ADD EMPLOYEE/S\",\r\n count: \"1+\",\r\n url: \"upload-employees\",\r\n icon: \"fa-user-plus\",\r\n cls: \"panel-primary\"\r\n },\r\n {\r\n type: \"updateProfile\",\r\n title: \"UPDATE PROFILE\",\r\n count: \"\",\r\n url: \"profile\",\r\n icon: \"fa-user-circle\",\r\n cls: \"panel-default\"\r\n }];\r\n }\r\n //todo: remove this duplicate code\r\n handleError(error: HttpErrorResponse): void {\r\n let errorList: string = \"\";\r\n console.log(\"admin-dashboard.component.ts\",error);\r\n console.log(\"admin-dashboard.component.ts\",error.status);\r\n if (error.status == HttpStatusCodes.UNAUTHORIZED) {\r\n this.router.navigate(['/admin/login']);\r\n }\r\n\r\n if (error.status == HttpStatusCodes.UNPROCESSABLE_ENTITY && error.error.errors != null) {\r\n for (const key in error.error.errors) {\r\n error.error.errors[key].forEach(errorValue => {\r\n errorList = errorList.concat(errorValue, \"\\n\");\r\n });\r\n }\r\n }\r\n else if (error.status != HttpStatusCodes.UNAUTHORIZED) {\r\n errorList = \"Something went wrong, please try again after some time or reach out to helpdesk.\";\r\n this.notificationService.Error(errorList, true);\r\n return;\r\n }\r\n\r\n if (errorList) {\r\n this.notificationService.Error(errorList, true);\r\n }\r\n }\r\n}\r\n","<div class=\"panel admin-panel widgetPadding\" ngClass=\"{{employeeWidget.cls}}\">\r\n <div class=\" panel-heading\">\r\n <div class=\"row\">\r\n <div class=\"col-xs-3\">\r\n <i class=\"fa fa-5x\" ngClass=\"{{employeeWidget.icon}}\" aria-hidden=\"true\"></i>\r\n </div>\r\n <div class=\"col-xs-9 text-right\">\r\n <div class=\"huge\"> {{employeeWidget.count}}</div>\r\n <div>{{employeeWidget.title}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <a [routerLink]=\"employeeWidget.url\">\r\n <div class=\"panel-footer\">\r\n <span class=\"pull-left\">View Details</span>\r\n <span class=\"pull-right\"><i class=\"fa fa-arrow-circle-right\" aria-hidden=\"true\"></i></span>\r\n <div class=\"clearfix\"></div>\r\n </div>\r\n </a>\r\n</div>\r\n<div class=\"widgetMinHeight\"></div>\r\n","import { Component, OnInit, Input } from '@angular/core';\r\n\r\nimport { EmployeeWideget } from '../../../../models/AdminDashboard/EmployeeWidget';\r\n\r\n@Component({\r\n selector: 'app-emploee-widget',\r\n templateUrl: './emploee-widget.component.html',\r\n styleUrls: ['./emploee-widget.component.less']\r\n})\r\nexport class EmploeeWidgetComponent implements OnInit {\r\n\r\n @Input() employeeWidget: EmployeeWideget;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","<div class=\"navbar-header\">\r\n <button type=\"button\" class=\"navbar-toggle\" data-toggle=\"collapse\" data-target=\".navbar-collapse\">\r\n <span class=\"sr-only\">Toggle navigation</span>\r\n <span class=\"icon-bar\"></span>\r\n <span class=\"icon-bar\"></span>\r\n <span class=\"icon-bar\"></span>\r\n </button>\r\n <a class=\"navbar-brand\" [routerLink]=\"'/admin'\"><img src=\"../../../../assets/img/ci-direct-logo-wht.png\"\r\n alt=\"Official Careington Direct Logo\"></a>\r\n</div>\r\n<ul class=\"nav navbar-top-links navbar-right\">\r\n <li class=\"dropdown\"><a class=\"dropdown-toggle user-icon\" data-toggle=\"dropdown\" href=\"#\" aria-expanded=\"true\"><i\r\n class=\"fa fa-user fa-fw\" aria-hidden=\"true\"></i> <i class=\"fa fa-caret-down\" aria-hidden=\"true\"></i></a>\r\n <ul class=\"dropdown-menu dropdown-user\">\r\n <li><a [routerLink]=\"['/admin/profile']\"><i class=\"fas fa-user fa-fw\"></i> Profile</a></li>\r\n <li><a [routerLink]=\"['/admin/settings']\"><i class=\"fas fa-cogs fa-fw\"></i> Settings</a></li>\r\n <li class=\"divider\"></li>\r\n <li><a style=\"cursor:pointer\" (click)=\"logout()\"><i class=\"fas fa-sign-out-alt fa-fw\" aria-hidden=\"true\"></i>\r\n Logout</a></li>\r\n </ul>\r\n </li>\r\n</ul>\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { LogoutService } from './logout.service';\r\nimport { AppState } from '../../../core/app-state';\r\n\r\n@Component({\r\n selector: 'app-admin-header',\r\n templateUrl: './admin-header.component.html',\r\n styleUrls: ['./admin-header.component.less']\r\n})\r\nexport class AdminHeaderComponent implements OnInit {\r\n\r\n constructor(private logoutService: LogoutService, private router: Router, private appState: AppState) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n logout() {\r\n this.logoutService.logout()\r\n .subscribe(result => {\r\n this.appState.ClearLoggedInUserInfo();\r\n this.router.navigate(['admin/login']);\r\n });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\nimport { GroupPortalApiService } from '../../../core/services/group-portal-api.service';\r\nimport { ApiPaths } from '../../../shared/utils/ApiPaths';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LogoutService {\r\n\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n logout() {\r\n const withCredentials: boolean = true;\r\n localStorage.removeItem('recordLocator');\r\n return this.groupPortalApiService.post(ApiPaths.logout_post, \"\", {withCredentials: withCredentials});\r\n }\r\n}\r\n","<div id=\"wrapper\" style='background-color:#222'>\r\n <nav class=\"navbar navbar-inverse navbar-static-top\" role=\"navigation\" style=\"margin-bottom: 0\">\r\n <app-admin-header></app-admin-header>\r\n <app-admin-sidebar></app-admin-sidebar>\r\n </nav>\r\n <div id=\"page-wrapper\" style=\"min-height:918px;\">\r\n <router-outlet></router-outlet>\r\n </div>\r\n</div>","import { Component, OnInit } from '@angular/core';\r\n\r\n\r\n@Component({\r\n selector: 'app-admin-layout',\r\n templateUrl: './admin-layout.component.html',\r\n styleUrls: ['./admin-layout.component.less']\r\n})\r\nexport class AdminLayoutComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","<app-page-heading [heading]=\"pageHeading\"></app-page-heading>\r\n<div class=\"row\">\r\n <div class=\"col-md-4 col-sm-6\" *ngFor=\"let bundle of bundles\">\r\n <app-admin-plan [bundle]=\"bundle\"></app-admin-plan>\r\n </div>\r\n</div>\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\nimport { SecurePlanService } from '../../get-started/contract/secure-plan.service';\r\nimport { CommonGatewayService } from '../../../services/common-gateway.service';\r\nimport { Bundle } from '../../../models/GroupPlan/Bundle';\r\nimport { ApplicationPlanResponse } from '../../../models/ApplicationPlan/application-plan-response';\r\n\r\n@Component({\r\n selector: 'app-admin-plan-details',\r\n templateUrl: './admin-plan-details.component.html',\r\n styleUrls: ['./admin-plan-details.component.less']\r\n})\r\nexport class AdminPlanDetailsComponent implements OnInit {\r\n pageHeading: string;\r\n bundleIds: number[];\r\n bundles: Bundle[];\r\n appPlans:ApplicationPlanResponse[];\r\n\r\n constructor(private choosePlanService: SecurePlanService,\r\n private commonGatewayService: CommonGatewayService) { }\r\n\r\n ngOnInit() {\r\n this.pageHeading = \"PLAN DETAILS\";\r\n this.getData();\r\n }\r\n\r\n getData() {\r\n this.getBundleIds();\r\n }\r\n\r\n getBundleIds() {\r\n //Retrieve BundleIds of choosen plans.\r\n this.choosePlanService.getChoosenPlans()\r\n .subscribe(applicationPlans => {\r\n this.bundleIds = [];\r\n this.appPlans = applicationPlans;\r\n applicationPlans.forEach(applicationPlan => {\r\n this.bundleIds.push(+applicationPlan.bundleId);\r\n });\r\n this.getPlanDetails();\r\n })\r\n }\r\n\r\n getPlanDetails() {\r\n this.commonGatewayService.getChoosenPlansByIds(this.bundleIds)\r\n .subscribe(result => {\r\n this.appPlans.forEach(appPlan =>{\r\n result.forEach(resp =>{\r\n if(appPlan.bundleId == resp.id)\r\n {\r\n resp.groupCode = appPlan.groupCode;\r\n }\r\n });\r\n \r\n });\r\n this.bundles = result;\r\n });\r\n }\r\n}\r\n","<div class=\"panel panel-primary admin-panel\">\r\n <div class=\"panel-heading\">\r\n <h3 class=\"h4\">{{bundle.bundleName}} <i class=\"fas fa-file-medical-alt pull-right\" aria-hidden=\"true\"></i></h3>\r\n </div>\r\n <div class=\"panel-body\">\r\n <table class=\"table table-condensed table-bordered table-striped plan-details-table\">\r\n <tbody>\r\n <tr>\r\n <td><strong>Group Code:</strong></td>\r\n <td>{{ bundle.groupCode == 'NULL' ? '' : bundle.groupCode }}</td>\r\n </tr>\r\n <tr>\r\n <td><strong>Pricing Options:</strong></td>\r\n <td>\r\n <table class=\"table table-condensed table-bordered table-striped small plan-pricing-details small\">\r\n <tbody>\r\n <tr *ngFor=\"let price of bundle.bundleRates | sortBundleRate\">\r\n <td><strong>{{ price.coverage | coverageType }}</strong></td>\r\n <td>${{ price.rate | number : '1.2-2' }} per month</td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </td>\r\n </tr>\r\n <tr>\r\n <td><strong>Products Included:</strong></td>\r\n <td>\r\n <span *ngFor=\"let bundlePlan of bundle.bundlePlans; let i = index;\">\r\n <a href=\"#\" data-toggle=\"modal\"\r\n (click)=\"openModal(template, bundlePlan)\">{{bundlePlan.planName | titlecase}}</a>\r\n <span *ngIf=\"i != bundle.bundlePlans.length - 1\">, </span>\r\n\r\n </span>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n</div>\r\n<ng-template #template>\r\n <div class=\"modal-header\">\r\n <h4 class=\"modal-title pull-left\">{{currentBundlePlan.planName | uppercase}}</h4>\r\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\r\n <span aria-hidden=\"true\">×</span>\r\n </button>\r\n </div>\r\n <div class=\"modal-body\">\r\n <app-product-language [contentCode]=\"currentBundlePlan.genericPlan.code\"></app-product-language>\r\n </div>\r\n</ng-template>\r\n","import { Component, OnInit, Input, TemplateRef } from '@angular/core';\r\n\r\nimport { Bundle } from '../../../models/GroupPlan/Bundle';\r\nimport { BundlePlan } from 'src/app/models/GroupPlan/BundlePlan';\r\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\r\n\r\n@Component({\r\n selector: 'app-admin-plan',\r\n templateUrl: './admin-plan.component.html',\r\n styleUrls: ['./admin-plan.component.less']\r\n})\r\nexport class AdminPlanComponent implements OnInit {\r\n @Input() bundle: Bundle;\r\n currentBundlePlan: BundlePlan;\r\n modalRef: BsModalRef;\r\n constructor(private modalService: BsModalService) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n openModal(template: TemplateRef<any>, bundlePlan: BundlePlan) {\r\n this.currentBundlePlan = bundlePlan;\r\n this.modalRef = this.modalService.show(template, {\r\n class: \"modal-dialog modal-lg\", \r\n backdrop : 'static',\r\n keyboard : false\r\n });\r\n }\r\n}\r\n","<div class=\"row\">\r\n <div class=\"col-lg-12\">\r\n <h1 class=\"page-header\">ADMINISTRATOR PROFILE</h1>\r\n </div>\r\n</div>\r\n<div class=\"row\">\r\n <div class=\"col-md-4 col-sm-6\">\r\n <app-documents (downloadContract)=\"DownloadContract()\"></app-documents>\r\n <app-primary-contact *ngIf=\"primary\" [primaryContact]=\"primary\" (savePrimaryContact)=\"SavePrimaryContact($event)\">\r\n </app-primary-contact>\r\n <app-broker [broker]=\"broker\" (saveBrokerInfo)=\"SaveBrokerInfo($event)\"></app-broker>\r\n </div>\r\n <div class=\"col-sm-8\">\r\n <app-company *ngIf=\"states && company\" [states]=\"states\" [company]=\"company\" (saveCompany)=\"SaveCompany($event)\">\r\n </app-company>\r\n <app-billing *ngIf=\"states && billing\" [states]=\"states\" [billing]=\"billing\"\r\n (saveBillingInformation)=\"SaveBillingInformation($event)\"></app-billing>\r\n </div>\r\n</div>\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { forkJoin, Observable } from 'rxjs';\r\nimport { tap } from 'rxjs/operators';\r\n\r\nimport { StateInfo } from '../../../models/state-info';\r\nimport { AppState } from '../../../core/app-state';\r\nimport { CommonGatewayService } from '../../../services/common-gateway.service';\r\nimport { BillingInformationResponse } from '../../../models/BillingInformation/billinginformation-response.model';\r\nimport { CompanyResponse } from '../../../models/Company/company-response';\r\nimport { PrimaryContactResponse } from '../../../models/PrimaryContact/primary-contact-response';\r\nimport { SecurePrimaryContactService } from './primary-contact/secure-primary-contact.service';\r\nimport { SecureCompanyService } from './company/secure-company.service';\r\nimport { SecureBillingService } from './billing/secure-billing.service';\r\nimport { PrimaryContactRequest } from '../../../models/PrimaryContact/primary-contact-request';\r\nimport { NotificationService } from '../../../core/services/notification.service';\r\nimport { SecureDocumentService } from './documents/secure-document.service';\r\nimport { SponsorAgreementResponse } from '../../../models/SponsorAgreement/sponsor-agreement-response';\r\nimport { BrokerRequest } from '../../../models/Broker/broker-request';\r\nimport { BrokerResponse } from '../../../models/Broker/broker-response';\r\nimport { SecureBrokerService } from \"./broker/secure-broker.service\";\r\nimport { CompanyRequest } from 'src/app/models/Company/company-request';\r\nimport { BillingInformationRequest } from 'src/app/models/BillingInformation/billinginformation-request.model';\r\n\r\n@Component({\r\n selector: \"app-admin-profile\",\r\n templateUrl: \"./admin-profile.component.html\",\r\n styleUrls: [\"./admin-profile.component.less\"]\r\n})\r\nexport class AdminProfileComponent implements OnInit {\r\n primary: PrimaryContactResponse;\r\n company: CompanyResponse;\r\n billing: BillingInformationResponse;\r\n broker: BrokerResponse;\r\n states: StateInfo[];\r\n\r\n constructor(private appState: AppState, private commonGatewayService: CommonGatewayService, private primaryContactService: SecurePrimaryContactService, private companyInfoService: SecureCompanyService, private billingInfoService: SecureBillingService, private notificationService: NotificationService, private contractService: SecureDocumentService, private brokerInfoService: SecureBrokerService) { }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n\r\n getData() {\r\n forkJoin(\r\n this.commonGatewayService.getStates().pipe(tap(States => this.loadStates(States))),\r\n this.companyInfoService.getCompanyInfo().pipe(tap(companyInfo => this.loadCompanyDetails(companyInfo))),\r\n this.billingInfoService.getBillingInformation().pipe(tap(billingInfo => this.loadBillingInfo(billingInfo))),\r\n this.primaryContactService.getPrimaryContactInformation().pipe(tap(primaryContactInfo => this.loadPrimaryInfo(primaryContactInfo))))\r\n .subscribe(result => {\r\n }\r\n );\r\n }\r\n\r\n SavePrimaryContact(contactRequest: PrimaryContactRequest) {\r\n return this.primaryContactService\r\n .updatePrimaryContact(contactRequest, this.primary.id)\r\n .subscribe(\r\n (response: PrimaryContactResponse) => {\r\n this.primary = response;\r\n this.notificationService.Success(\"Primary Contact Information saved successfully.\");\r\n }\r\n );\r\n }\r\n\r\n SaveBillingInformation(billingInfoRequest: BillingInformationRequest) {\r\n this.billingInfoService.updateBillingInformation(billingInfoRequest, this.billing.id).subscribe(\r\n (billingInfoResponse: BillingInformationResponse) => {\r\n this.billing = billingInfoResponse;\r\n this.notificationService.Success(\"Billing Information saved successfully.\");\r\n }\r\n );\r\n }\r\n\r\n SaveCompany(companyRequest: CompanyRequest) {\r\n this.companyInfoService.updateCompany(companyRequest, this.company.id).subscribe(\r\n (companyResponse: CompanyResponse) => {\r\n this.company = companyResponse;\r\n this.notificationService.Success(\"Company Information saved successfully.\");\r\n }\r\n );\r\n }\r\n\r\n SaveBrokerInfo(brokerRequest: any) {\r\n this.UpsertService(brokerRequest).subscribe(\r\n (brokerResponse: BrokerResponse) => {\r\n this.broker = brokerResponse;\r\n this.notificationService.Success(\"Broker Information saved successfully.\");\r\n }\r\n )\r\n }\r\n\r\n UpsertService(brokerRequest: any): Observable<BrokerResponse> {\r\n if (brokerRequest[1] != 0) {\r\n return this.brokerInfoService.updateBroker(brokerRequest[0], brokerRequest[1])\r\n } else {\r\n return this.brokerInfoService.createBroker(brokerRequest[0]);\r\n }\r\n }\r\n\r\n DownloadContract() {\r\n this.contractService.GetSavedContractFileStream().subscribe(\r\n (response: SponsorAgreementResponse) => {\r\n const binary = atob(response.pdfContent);\r\n const array = [];\r\n for (let i = 0; i < binary.length; i++) {\r\n array.push(binary.charCodeAt(i));\r\n }\r\n const blob = new Blob([new Uint8Array(array)], {\r\n type: 'application/pdf'\r\n });\r\n\r\n // IE gives error while downloding a pdf. So for IE we are implementing SaveOrOpenBlob\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(blob,\"SponsorAgreement.pdf\");\r\n }\r\n else {\r\n const fileURL = URL.createObjectURL(blob);\r\n window.open(fileURL, '_blank');\r\n }\r\n });\r\n }\r\n\r\n private loadPrimaryInfo(primary: PrimaryContactResponse) {\r\n this.primary = primary;\r\n }\r\n\r\n private loadBillingInfo(billing: BillingInformationResponse) {\r\n this.billing = billing;\r\n }\r\n\r\n private loadCompanyDetails(company: CompanyResponse) {\r\n this.company = company;\r\n }\r\n\r\n private loadStates(states: StateInfo[]): void {\r\n this.states = states;\r\n this.appState.States = states;\r\n }\r\n}\r\n","<div [formGroup]=\"billingInfoForm\" class=\"panel panel-primary admin-panel\">\r\n <div class=\"panel-heading\">\r\n <h3 class=\"h4\">\r\n Billing Address\r\n <i class=\"fas fa-archive pull-right\" aria-hidden=\"true\"></i>\r\n </h3>\r\n </div>\r\n <div class=\"panel-body\">\r\n <hr class=\"hr-clear-sm\">\r\n <h4 class=\"red\">Billing Contact</h4>\r\n <hr class=\"hr-normal-sm\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-group\">\r\n <label>First Name:<span class=\"req\">*</span></label>\r\n <input type=\"text\" formControlName=\"firstName\" class=\"form-control\" placeholder=\"First Name\" maxlength=\"31\"\r\n disabled=\"true\" />\r\n <div *ngIf=\" billingInfoForm.controls.firstName.invalid && (billingInfoForm.controls.firstName.dirty ||\r\n billingInfoForm.controls.firstName.touched)\" class=\"alert alert-danger\">\r\n <div *ngIf=\"billingInfoForm.controls.firstName.errors\">\r\n First Name is required.\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-group\">\r\n <label>Last Name:<span class=\"req\">*</span></label>\r\n <input type=\"text\" formControlName=\"lastName\" class=\"form-control\" placeholder=\"Last Name\" maxlength=\"31\"\r\n disabled=\"true\" />\r\n <div *ngIf=\"billingInfoForm.controls.lastName.invalid && (billingInfoForm.controls.lastName.dirty ||\r\n billingInfoForm.controls.lastName.touched)\" class=\"alert alert-danger\">\r\n <div *ngIf=\"billingInfoForm.controls.lastName.errors\">\r\n Last Name is required.\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <app-address [states]=\"states\" [AddressForm]=\"billingInfoForm\" [parentForm]=\"null\" [isDisabled]=true></app-address>\r\n <!-- <hr class=\"hr-normal\" />\r\n <div class=\"text-right\">\r\n <button type=\"submit\" class=\"btn btn-primary\" [disabled]=\"!billingInfoForm.valid\" (click)=\"Save()\">SAVE</button>\r\n </div> -->\r\n </div>\r\n</div>\r\n","import { Component, OnInit, Input, Output, EventEmitter } from \"@angular/core\";\r\nimport { FormBuilder, FormControl, FormGroup, Validators } from \"@angular/forms\";\r\n\r\nimport { StateInfo } from \"../../../../models/state-info\";\r\nimport { BillingInformationResponse } from \"../../../../models/BillingInformation/billinginformation-response.model\";\r\nimport { BillingInformationRequest } from \"../../../../models/BillingInformation/billinginformation-request.model\";\r\nimport { FieldValidationPattern } from \"../../../../core/utils/field-validations\";\r\nimport { SecureBillingService } from \"./secure-billing.service\";\r\nimport { NotificationService } from \"../../../../core/services/notification.service\";\r\n\r\n@Component({\r\n selector: \"app-billing\",\r\n templateUrl: \"./billing.component.html\",\r\n styleUrls: [\"./billing.component.less\"]\r\n})\r\nexport class BillingComponent implements OnInit {\r\n billingInfoForm: FormGroup;\r\n @Input() states: StateInfo[];\r\n @Input() billing: BillingInformationResponse;\r\n @Output() saveBillingInformation = new EventEmitter<BillingInformationRequest>();\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private billinginformationService: SecureBillingService,\r\n private notificationService: NotificationService,\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.buildForm();\r\n this.loadBillingInformation();\r\n }\r\n\r\n buildForm(): void {\r\n this.billingInfoForm = this.formBuilder.group({\r\n firstName: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n lastName: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n phoneNumber: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.phoneformat)]),\r\n faxNumber: new FormControl(\"\", [Validators.pattern(FieldValidationPattern.phoneformat)]),\r\n emailAddress: new FormControl(\"\", [\r\n Validators.required,\r\n Validators.pattern(FieldValidationPattern.EmailValidationPattern)\r\n ]),\r\n address1: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n address2: new FormControl(\"\"),\r\n city: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n stateCode: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n zipCode: new FormControl(\"\", [\r\n Validators.required,\r\n Validators.pattern(FieldValidationPattern.numerals),\r\n Validators.minLength(5)\r\n ])\r\n });\r\n }\r\n\r\n loadBillingInformation(): void {\r\n this.billingInfoForm.patchValue(this.billing);\r\n }\r\n\r\n Save() {\r\n let billingInfoRequest: BillingInformationRequest = <BillingInformationRequest>this.billingInfoForm.getRawValue();\r\n this.saveBillingInformation.emit(billingInfoRequest);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, of } from \"rxjs\";\r\n\r\nimport { BillingInformationRequest } from \"../../../../models/BillingInformation/billinginformation-request.model\";\r\nimport { BillingInformationResponse } from \"../../../../models/BillingInformation/billinginformation-response.model\";\r\nimport { GroupPortalApiService } from \"../../../../core/services/group-portal-api.service\";\r\nimport { ApiPaths } from '../../../../shared/utils/ApiPaths';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SecureBillingService {\r\n withCredentials: boolean = true;\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n getBillingInformation(): Observable<BillingInformationResponse> {\r\n const apiUrl = ApiPaths.billing_secureGet;\r\n return this.groupPortalApiService.get<BillingInformationResponse>(apiUrl, { withCredentials: this.withCredentials });\r\n }\r\n\r\n updateBillingInformation(billingInformation: BillingInformationRequest, billingInfoId: number): Observable<BillingInformationResponse> {\r\n const apiUrl = ApiPaths.billing_securePut.replace(\"{id}\", billingInfoId.toString());\r\n return this.groupPortalApiService.put<BillingInformationResponse>(apiUrl, billingInformation, this.withCredentials);\r\n }\r\n}\r\n","<div [formGroup]=\"brokerForm\" class=\"panel panel-primary admin-panel\">\r\n <div class=\"panel-heading\">\r\n <h3 class=\"h4\">\r\n Your Broker <i class=\"fas fa-handshake pull-right\" aria-hidden=\"true\"></i>\r\n </h3>\r\n </div>\r\n <div class=\"panel-body\">\r\n <div class=\"form-group\">\r\n <label>Broker First Name:<span class=\"req\">*</span></label>\r\n <input type=\"text\" class=\"form-control\" placeholder=\"Broker First Name\" formControlName=\"firstName\" maxlength=\"32\"\r\n disabled=\"true\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"brokerForm.controls.firstName.invalid &&(\r\n brokerForm.controls.firstName.touched || brokerForm.controls.firstName.dirty)\r\n \">\r\n <div *ngIf=\"brokerForm.controls.firstName.errors\">\r\n Broker First Name is required\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <label>Broker Last Name:<span class=\"req\">*</span></label>\r\n <input type=\"text\" class=\"form-control\" placeholder=\"Broker Last Name\" formControlName=\"lastName\" maxlength=\"32\"\r\n disabled=\"true\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"brokerForm.controls.lastName.invalid &&(\r\n brokerForm.controls.lastName.touched ||\r\n brokerForm.controls.lastName.dirty)\">\r\n <div *ngIf=\"brokerForm.controls.lastName.errors\">\r\n Broker Last Name is required\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <label>Broker Email Address:<span class=\"req\">*</span></label>\r\n <input type=\"email\" class=\"form-control\" placeholder=\"broker@broker.com\" formControlName=\"emailAddress\"\r\n maxlength=\"320\" disabled=\"true\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"brokerForm.controls.emailAddress.invalid &&(\r\n brokerForm.controls.emailAddress.touched ||\r\n brokerForm.controls.emailAddress.dirty)\r\n \">\r\n <div *ngIf=\"brokerForm.controls.emailAddress.hasError('required') &&\r\n !brokerForm.controls.emailAddress.valid\">\r\n Email address is required\r\n </div>\r\n <div *ngIf=\"brokerForm.controls.emailAddress.hasError('pattern')\">\r\n Email is not valid\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <label>Broker Phone Number:</label>\r\n <input type=\"tel\" class=\"form-control\" placeholder=\"(123) 123-1234\" formControlName=\"phoneNumber\"\r\n [textMask]=\"{mask: USphoneMask}\" disabled=\"true\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"brokerForm.controls.phoneNumber.invalid &&(\r\n brokerForm.controls.phoneNumber.touched ||\r\n brokerForm.controls.phoneNumber.dirty)\r\n \">\r\n <div *ngIf=\"brokerForm.controls.phoneNumber.hasError('pattern')\">\r\n Phone Number is not valid\r\n </div>\r\n </div>\r\n </div>\r\n <!-- <hr class=\"hr-normal\" />\r\n <button type=\"submit\" class=\"btn btn-primary\" [disabled]=\"!brokerForm.valid\" (click)=\"Save()\">SAVE</button> -->\r\n </div>\r\n</div>\r\n","import { Component, OnInit, Input, Output, EventEmitter } from \"@angular/core\";\r\nimport { FormControl, Validators, FormGroup, FormBuilder } from \"@angular/forms\";\r\nimport { Observable } from 'rxjs';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { BrokerResponse } from \"../../../../models/Broker/broker-response\";\r\nimport { BrokerRequest } from \"../../../../models/Broker/broker-request\";\r\nimport { FieldValidationPattern } from \"../../../../core/utils/field-validations\";\r\nimport { SecureBrokerService } from \"./secure-broker.service\";\r\nimport { NotificationService } from '../../../../core/services/notification.service';\r\nimport { HttpStatusCodes } from '../../../../shared/utils/http-status-codes';\r\n\r\n@Component({\r\n selector: \"app-broker\",\r\n templateUrl: \"./broker.component.html\",\r\n styleUrls: [\"./broker.component.less\"]\r\n})\r\nexport class BrokerComponent implements OnInit {\r\n brokerForm: FormGroup;\r\n @Input() broker: BrokerResponse;\r\n USphoneMask = FieldValidationPattern.USphoneFormat;\r\n @Output() saveBrokerInfo = new EventEmitter<[BrokerRequest, number]>();\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private brokerInfoService: SecureBrokerService,\r\n private notificationService: NotificationService,\r\n private router: Router\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.buildForm();\r\n this.getBrokerInfo();\r\n }\r\n\r\n buildForm() {\r\n this.brokerForm = this.formBuilder.group({\r\n firstName: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n lastName: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n phoneNumber: new FormControl(\"\", [Validators.pattern(FieldValidationPattern.phoneformat)]),\r\n agentCode: new FormControl(\"\"),\r\n emailAddress: new FormControl(\"\", [\r\n Validators.required,\r\n Validators.pattern(FieldValidationPattern.EmailValidationPattern)\r\n ])\r\n });\r\n }\r\n\r\n getBrokerInfo() {\r\n this.brokerInfoService.getBrokerInformation().subscribe(result => {\r\n this.broker = result;\r\n if (this.broker != undefined && this.broker != null) {\r\n this.brokerForm.patchValue(this.broker);\r\n }\r\n },\r\n error => {\r\n if (error.status != HttpStatusCodes.NOT_FOUND) {\r\n this.handleError(error);\r\n }\r\n }\r\n )\r\n }\r\n //todo: remove this duplicate code\r\n handleError(error: HttpErrorResponse): void {\r\n let errorList: string = \"\";\r\n if (error.status == HttpStatusCodes.UNAUTHORIZED) {\r\n this.router.navigate(['/admin/login']);\r\n }\r\n\r\n if (error.status == HttpStatusCodes.UNPROCESSABLE_ENTITY && error.error.errors != null) {\r\n for (const key in error.error.errors) {\r\n error.error.errors[key].forEach(errorValue => {\r\n errorList = errorList.concat(errorValue, \"\\n\");\r\n });\r\n }\r\n }\r\n else if (error.status != HttpStatusCodes.UNAUTHORIZED) {\r\n errorList = \"Something went wrong, please try again after some time or reach out to helpdesk.\";\r\n this.notificationService.Error(errorList, true);\r\n return;\r\n }\r\n\r\n if (errorList) {\r\n this.notificationService.Error(errorList, true);\r\n }\r\n }\r\n\r\n Save() {\r\n let brokerRequest: BrokerRequest = <BrokerRequest>(\r\n this.brokerForm.getRawValue()\r\n );\r\n\r\n if (brokerRequest.phoneNumber == \"\") {\r\n brokerRequest.phoneNumber = null;\r\n } else {\r\n brokerRequest.phoneNumber = brokerRequest.phoneNumber.replace(/\\D/g, '');\r\n }\r\n\r\n const brokerId = (this.broker != undefined && this.broker != null) ? this.broker.id : 0\r\n\r\n this.saveBrokerInfo.emit([brokerRequest, brokerId]);\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Observable, of } from \"rxjs\";\r\n\r\nimport { GroupPortalApiService } from \"../../../../core/services/group-portal-api.service\";\r\nimport { BrokerResponse } from \"../../../../models/Broker/broker-response\";\r\nimport { BrokerRequest } from \"../../../../models/Broker/broker-request\";\r\nimport { ApiPaths } from '../../../../shared/utils/ApiPaths';\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class SecureBrokerService {\r\n withCredentials: boolean = true;\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n getBrokerInformation(): Observable<BrokerResponse> {\r\n const apiUrl = ApiPaths.broker_secureGet;\r\n return this.groupPortalApiService.get<BrokerResponse>(apiUrl, { withCredentials: this.withCredentials, throwError: true });\r\n }\r\n\r\n createBroker(brokerRequest: BrokerRequest): Observable<BrokerResponse> {\r\n const apiUrl = ApiPaths.broker_securePost;\r\n return this.groupPortalApiService.post<BrokerResponse>(apiUrl, brokerRequest, { withCredentials: this.withCredentials });\r\n }\r\n\r\n updateBroker(brokerRequest: BrokerRequest, brokerId: number): Observable<BrokerResponse> {\r\n const apiUrl = ApiPaths.broker_securePut.replace(\"{id}\", brokerId.toString());\r\n return this.groupPortalApiService.put<BrokerResponse>(apiUrl, brokerRequest, this.withCredentials);\r\n }\r\n}\r\n","<div [formGroup]=\"companyInfoForm\" class=\"panel panel-primary admin-panel\">\r\n <div class=\"panel-heading\">\r\n <h3 class=\"h4\">\r\n Company Info <i class=\"fas fa-archive pull-right\" aria-hidden=\"true\"></i>\r\n </h3>\r\n </div>\r\n <div class=\"panel-body\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-group\">\r\n <label>Company Name<span class=\"req\"></span>:<span class=\"req\">*</span></label>\r\n <input type=\"text\" formControlName=\"name\" class=\"form-control\" placeholder=\"Company Name\" maxlength=\"64\"\r\n disabled=\"true\" />\r\n <div\r\n *ngIf=\"companyInfoForm.controls.name.invalid &&(companyInfoForm.controls.name.dirty || companyInfoForm.controls.name.touched)\"\r\n class=\"alert alert-danger\">\r\n <div *ngIf=\"companyInfoForm.controls.name.errors\">\r\n Company Name is required.\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <hr class=\"hr-normal\">\r\n <h4 class=\"red\">Mailing Address</h4>\r\n <app-address [states]=\"states\" [AddressForm]=\"companyInfoForm\" [parentForm]=\"null\" [isDisabled]=true>\r\n </app-address>\r\n <!-- <hr class=\"hr-normal\" />\r\n <div class=\"text-right\">\r\n <button type=\"submit\" class=\"btn btn-primary\" [disabled]=\"!companyInfoForm.valid\" (click)=\"Save()\">SAVE</button>\r\n </div> -->\r\n </div>\r\n</div>\r\n","import { Component, OnInit, Input, Output, EventEmitter } from \"@angular/core\";\r\nimport { FormGroup, FormBuilder, FormControl, Validators } from \"@angular/forms\";\r\n\r\nimport { StateInfo } from \"../../../../models/state-info\";\r\nimport { CompanyResponse } from \"../../../../models/Company/company-response\";\r\nimport { FieldValidationPattern } from \"../../../../core/utils/field-validations\";\r\nimport { CompanyRequest } from \"../../../../models/Company/company-request\";\r\nimport { SecureCompanyService } from \"./secure-company.service\";\r\nimport { NotificationService } from '../../../../core/services/notification.service';\r\n\r\n@Component({\r\n selector: \"app-company\",\r\n templateUrl: \"./company.component.html\",\r\n styleUrls: [\"./company.component.less\"]\r\n})\r\nexport class CompanyComponent implements OnInit {\r\n companyInfoForm: FormGroup;\r\n @Input() states: StateInfo[];\r\n @Input() company: CompanyResponse;\r\n @Output() saveCompany = new EventEmitter<CompanyRequest>();\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private companyInfoService: SecureCompanyService,\r\n private notificationService: NotificationService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.buildForm();\r\n this.loadCompanyData();\r\n }\r\n\r\n loadCompanyData(): void {\r\n this.companyInfoForm.patchValue(this.company);\r\n }\r\n\r\n buildForm(): void {\r\n this.companyInfoForm = this.formBuilder.group({\r\n name: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n address1: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n address2: new FormControl(\"\"),\r\n city: new FormControl(\"\", [\r\n Validators.required,\r\n Validators.maxLength(50),\r\n Validators.pattern(FieldValidationPattern.noSpace)\r\n ]),\r\n stateCode: new FormControl(\"\", [Validators.required]),\r\n zipCode: new FormControl(\"\", [\r\n Validators.required,\r\n Validators.pattern(FieldValidationPattern.numerals),\r\n Validators.minLength(5)\r\n ]),\r\n taxID: new FormControl(\"\")\r\n });\r\n }\r\n\r\n Save() {\r\n let companyRequest: CompanyRequest = <CompanyRequest>(\r\n this.companyInfoForm.getRawValue()\r\n );\r\n this.saveCompany.emit(companyRequest);\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Observable, of } from \"rxjs\";\r\n\r\nimport { GroupPortalApiService } from \"../../../../core/services/group-portal-api.service\";\r\nimport { CompanyResponse } from \"../../../../models/Company/company-response\";\r\nimport { CompanyRequest } from \"../../../../models/Company/company-request\";\r\nimport { ApiPaths } from '../../../../shared/utils/ApiPaths';\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class SecureCompanyService {\r\n withCredentials: boolean = true;\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n getCompanyInfo(): Observable<CompanyResponse> {\r\n const apiUrl = ApiPaths.company_secureGet;\r\n return this.groupPortalApiService.get<CompanyResponse>(apiUrl, { withCredentials: this.withCredentials });\r\n }\r\n\r\n updateCompany(company: CompanyRequest, companyId: number): Observable<CompanyResponse> {\r\n const apiUrl = ApiPaths.company_securePut.replace(\"{id}\", companyId.toString());\r\n return this.groupPortalApiService.put<CompanyResponse>(apiUrl, company, this.withCredentials);\r\n }\r\n}\r\n","<div class=\"panel panel-primary admin-panel\">\r\n <div class=\"panel-heading\">\r\n <h3 class=\"h4\">\r\n My Documents <i class=\"fas fa-folder pull-right\" aria-hidden=\"true\"></i>\r\n </h3>\r\n </div>\r\n <div class=\"panel-body\">\r\n <ul>\r\n <li><a class=\"anchorCursor\" (click)=\"DownloadContract()\">Careington Direct Contract</a></li>\r\n </ul>\r\n </div>\r\n</div>\r\n","import { Component, OnInit, Output, EventEmitter } from '@angular/core';\r\n\r\nimport { SecureDocumentService } from './secure-document.service';\r\nimport { SponsorAgreementResponse } from '../../../../models/SponsorAgreement/sponsor-agreement-response';\r\n\r\n@Component({\r\n selector: 'app-documents',\r\n templateUrl: './documents.component.html',\r\n styleUrls: ['./documents.component.less']\r\n})\r\nexport class DocumentsComponent implements OnInit {\r\n\r\n @Output() downloadContract = new EventEmitter<any>();\r\n\r\n constructor(private contractService: SecureDocumentService\r\n ) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n DownloadContract() {\r\n this.downloadContract.emit();\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\n\r\nimport { GroupPortalApiService } from '../../../../core/services/group-portal-api.service';\r\nimport { ApiPaths } from '../../../../shared/utils/ApiPaths';\r\nimport { SponsorAgreementResponse } from '../../../../models/SponsorAgreement/sponsor-agreement-response';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SecureDocumentService {\r\n\r\n constructor(private http: GroupPortalApiService) { }\r\n\r\n GetSavedContractFileStream(\r\n ): Observable<SponsorAgreementResponse> {\r\n return this.http.get<SponsorAgreementResponse>(\r\n ApiPaths.contract_secureGet, { withCredentials: true }\r\n );\r\n }\r\n}\r\n","<div [formGroup]=\"contactForm\" class=\"panel panel-primary admin-panel\">\r\n <div class=\"panel-heading\">\r\n <h3 class=\"h4\">\r\n Primary Contact Information\r\n <i class=\"fas fa-phone pull-right\" aria-hidden=\"true\"></i>\r\n </h3>\r\n </div>\r\n <div class=\"panel-body\">\r\n <div class=\"form-group\">\r\n <label>First Name:<span class=\"req\">*</span></label>\r\n <input type=\"text\" class=\"form-control\" formControlName=\"firstName\" placeholder=\"First Name\" maxlength=\"31\"\r\n tabindex=\"1\" disabled=\"true\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"contactForm.controls.firstName.invalid &&(\r\n contactForm.controls.firstName.touched ||\r\n contactForm.controls.firstName.dirty)\r\n \">\r\n <div *ngIf=\"contactForm.controls.firstName.errors\">\r\n First Name is required\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <label>Last Name:<span class=\"req\">*</span></label>\r\n <input type=\"text\" class=\"form-control\" formControlName=\"lastName\" placeholder=\"Last Name\" maxlength=\"31\"\r\n tabindex=\"2\" disabled=\"true\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"contactForm.controls.lastName.invalid &&(\r\n contactForm.controls.lastName.touched ||\r\n contactForm.controls.lastName.dirty)\r\n \">\r\n <div *ngIf=\"contactForm.controls.lastName.errors\">\r\n Last Name is required\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <label>Phone Number:<span class=\"req\">*</span></label>\r\n <input type=\"tel\" class=\"form-control\" formControlName=\"phoneNumber\" [textMask]=\"{mask: USphoneMask}\"\r\n placeholder=\"(123) 123-1234\" tabindex=\"3\" disabled=\"true\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"contactForm.controls.phoneNumber.invalid &&(\r\n contactForm.controls.phoneNumber.touched ||\r\n contactForm.controls.phoneNumber.dirty)\r\n \">\r\n <div *ngIf=\"contactForm.controls.phoneNumber.hasError('required')\">\r\n Phone Number is required\r\n </div>\r\n <div *ngIf=\"contactForm.controls.phoneNumber.hasError('pattern')\">\r\n Phone Number is not valid\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"form-group\">\r\n <label>Email Address:<span class=\"req\">*</span></label>\r\n <input type=\"email\" class=\"form-control\" formControlName=\"emailAddress\" placeholder=\"Email Address\"\r\n maxlength=\"320\" tabindex=\"4\" disabled=\"true\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"contactForm.controls.emailAddress.invalid &&(\r\n contactForm.controls.emailAddress.touched ||\r\n contactForm.controls.emailAddress.dirty)\r\n \">\r\n <div *ngIf=\"\r\n contactForm.controls.emailAddress.hasError('required') &&\r\n !contactForm.controls.emailAddress.valid\r\n \">\r\n Email address is required\r\n </div>\r\n <div *ngIf=\"contactForm.controls.emailAddress.hasError('pattern')\">\r\n Email is not valid\r\n </div>\r\n </div>\r\n </div>\r\n <!-- <hr class=\"hr-normal\" />\r\n <button type=\"submit\" class=\"btn btn-primary\" [disabled]=\"!contactForm.valid\" (click)=\"Save()\">SAVE</button> -->\r\n </div>\r\n</div>\r\n","import { Component, OnInit, Input, Output, EventEmitter } from \"@angular/core\";\r\nimport { FormBuilder, FormControl, FormGroup, Validators } from \"@angular/forms\";\r\n\r\nimport { SecurePrimaryContactService } from \"./secure-primary-contact.service\";\r\nimport { PrimaryContactRequest } from \"../../../../models/PrimaryContact/primary-contact-request\";\r\nimport { PrimaryContactResponse } from \"../../../../models/PrimaryContact/primary-contact-response\";\r\nimport { FieldValidationPattern } from \"../../../../core/utils/field-validations\";\r\nimport { NotificationService } from '../../../../core/services/notification.service';\r\n\r\n@Component({\r\n selector: \"app-primary-contact\",\r\n templateUrl: \"./primary-contact.component.html\",\r\n styleUrls: [\"./primary-contact.component.less\"]\r\n})\r\nexport class PrimaryContactComponent implements OnInit {\r\n contactForm: FormGroup;\r\n @Input() primaryContact: PrimaryContactResponse;\r\n @Output() savePrimaryContact = new EventEmitter<PrimaryContactRequest>();\r\n USphoneMask = FieldValidationPattern.USphoneFormat;\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private primaryContactService: SecurePrimaryContactService,\r\n private notificationService: NotificationService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.buildForm();\r\n this.loadPrimaryContact();\r\n }\r\n\r\n buildForm(): void {\r\n this.contactForm = this.formBuilder.group({\r\n title: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n firstName: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n lastName: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n phoneNumber: new FormControl(\"\", [Validators.required,\r\n Validators.pattern(FieldValidationPattern.phoneformat)\r\n ]),\r\n emailAddress: new FormControl(\"\", [\r\n Validators.required,\r\n Validators.pattern(FieldValidationPattern.EmailValidationPattern)\r\n ])\r\n });\r\n }\r\n\r\n loadPrimaryContact(): void {\r\n this.contactForm.patchValue(this.primaryContact);\r\n }\r\n\r\n Save() {\r\n let contactRequest: PrimaryContactRequest = <PrimaryContactRequest>(\r\n this.contactForm.getRawValue()\r\n );\r\n contactRequest.phoneNumber = contactRequest.phoneNumber.replace(/\\D/g, '');\r\n\r\n this.savePrimaryContact.emit(contactRequest);\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Observable, of } from \"rxjs\";\r\n\r\nimport { PrimaryContactResponse } from \"../../../../models/PrimaryContact/primary-contact-response\";\r\nimport { PrimaryContactRequest } from \"../../../../models/PrimaryContact/primary-contact-request\";\r\nimport { GroupPortalApiService } from \"../../../../core/services/group-portal-api.service\";\r\nimport { ApiPaths } from '../../../../shared/utils/ApiPaths';\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class SecurePrimaryContactService {\r\n withCredentials: boolean = true;\r\n constructor(private _http: GroupPortalApiService) { }\r\n\r\n getPrimaryContactInformation(): Observable<PrimaryContactResponse> {\r\n const apiUrl = ApiPaths.primary_secureGet;\r\n return this._http.get<PrimaryContactResponse>(apiUrl, { withCredentials: this.withCredentials });\r\n }\r\n\r\n updatePrimaryContact(primaryContact: PrimaryContactRequest, primaryContactId: number): Observable<PrimaryContactResponse> {\r\n const apiUrl = ApiPaths.primary_securePut.replace(\"{id}\", primaryContactId.toString());\r\n return this._http.put<PrimaryContactResponse>(apiUrl, primaryContact, this.withCredentials);\r\n }\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { Routes, RouterModule } from \"@angular/router\";\r\n\r\nimport { AdminProfileComponent } from \"./admin-profile/admin-profile.component\";\r\nimport { AdminComponent } from './admin.component';\r\nimport { GeneralFaqsLayoutComponent } from './general-faqs-layout/general-faqs-layout.component';\r\nimport { AuthGuardService as AuthGuard } from '../../services/Auth/auth-guard.service';\r\nimport { AdminDashboardComponent } from './admin-dashboard/admin-dashboard.component';\r\nimport { AdminSettingsComponent } from './admin-settings/admin-settings.component';\r\nimport { AdminPlanDetailsComponent } from './admin-plan-details/admin-plan-details.component';\r\nimport { EmployeesListComponent } from './employees-list/employees-list.component';\r\nimport { HelpContactUsComponent } from './help-contact-us/help-contact-us.component';\r\nimport { UploadEmployeesComponent } from './upload-employees/upload-employees.component';\r\nimport { AdminPlanComponent } from './admin-plan/admin-plan.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: \"\",\r\n component: AdminComponent,\r\n canActivate: [AuthGuard],\r\n children: [\r\n {\r\n path: \"\",\r\n component: AdminDashboardComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"help-faqs\",\r\n component: GeneralFaqsLayoutComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"plan-details\",\r\n component: AdminPlanDetailsComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"profile\",\r\n component: AdminProfileComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"settings\",\r\n component: AdminSettingsComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"emp-list\",\r\n component: EmployeesListComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"help-contact\",\r\n component: HelpContactUsComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"upload-employees\",\r\n component: UploadEmployeesComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"plan-details\",\r\n component: AdminPlanComponent,\r\n pathMatch: \"full\"\r\n }\r\n ]\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class AdminRoutingModule { }\r\n","<div class=\"col-lg-12\">\r\n <h1 class=\"page-header\">ADMINISTRATOR SETTINGS</h1>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-sm-4 col-md-4\">\r\n <div class=\"panel panel-primary admin-panel\" [formGroup]=\"adminSettingForm\" name=\"myForm\">\r\n <div class=\"panel-heading\">\r\n <h3 class=\"h4\">Your Login Details</h3>\r\n </div>\r\n <div class=\"panel-body\">\r\n <div class=\"form-group\">\r\n <label>Email Address:<span class=\"req\">*</span></label>\r\n <input type=\"email\" class=\"form-control\" formControlName=\"userName\" disabled=\"true\">\r\n </div>\r\n <p><button type=\"submit\" disabled=\"true\" class=\"btn btn-primary\">CHANGE LOGIN EMAIL</button></p>\r\n <hr class=\"hr-normal\">\r\n <p>Your password must contain 8 characters, one uppercase letter, one lowercase letter, at least one number and at\r\n least one special character ( !@#$%^&*()_+ ).</p>\r\n <div class=\"form-group\">\r\n <label>Current Password</label>\r\n <input type=\"password\" class=\"form-control\" formControlName=\"oldPassword\" placeholder=\"********\" maxlength=\"50\"\r\n autofocus>\r\n <div\r\n *ngIf=\"adminSettingForm.controls.oldPassword.invalid && (adminSettingForm.controls.oldPassword.dirty || adminSettingForm.controls.oldPassword.touched)\"\r\n class=\"alert alert-danger\">\r\n <div\r\n *ngIf=\"adminSettingForm.controls.oldPassword.hasError('required') && !adminSettingForm.controls.oldPassword.valid\">\r\n Current Password is required\r\n </div>\r\n <div *ngIf=\"adminSettingForm.controls.oldPassword.hasError('pattern')\">\r\n Current password is not valid\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <label>New Password</label>\r\n <input type=\"password\" class=\"form-control\" formControlName=\"password\" placeholder=\"********\" maxlength=\"50\">\r\n <div\r\n *ngIf=\"adminSettingForm.controls.password.invalid && (adminSettingForm.controls.password.dirty || adminSettingForm.controls.password.touched)\"\r\n class=\"alert alert-danger\">\r\n <div\r\n *ngIf=\"adminSettingForm.controls.password.hasError('required') && !adminSettingForm.controls.password.valid\">\r\n New Password is required\r\n </div>\r\n <div *ngIf=\"adminSettingForm.controls.password.hasError('pattern')\">\r\n New password is not valid\r\n </div>\r\n <div *ngIf=\"adminSettingForm.controls.password.hasError('mustNotMatch')\">\r\n Current Password and the New Password cannot be the same\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <label>Re-enter Password</label>\r\n <input type=\"password\" class=\"form-control\" formControlName=\"confirmPassword\" placeholder=\"********\"\r\n maxlength=\"50\">\r\n <div\r\n *ngIf=\"adminSettingForm.controls.confirmPassword.invalid && (adminSettingForm.controls.confirmPassword.dirty || adminSettingForm.controls.confirmPassword.touched)\"\r\n class=\"alert alert-danger\">\r\n <div *ngIf=\"adminSettingForm.controls.confirmPassword.hasError('required') &&\r\n !adminSettingForm.controls.confirmPassword.valid\">\r\n Re-enter Password is required\r\n </div>\r\n <div *ngIf=\"adminSettingForm.controls.confirmPassword.hasError('mustMatch')\">\r\n New Password and the Re-enter Password must match.\r\n </div>\r\n </div>\r\n </div>\r\n <p><a (click)=\"ChangePassword()\" [class.disabled]=\"!adminSettingForm.valid\" class=\"btn btn-primary\">CHANGE\r\n PASSWORD</a></p>\r\n </div>\r\n </div>\r\n</div>","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from \"@angular/router\";\r\nimport { FormBuilder, FormControl, FormGroup, Validators } from \"@angular/forms\";\r\n\r\nimport { FieldValidationPattern } from \"../../../core/utils/field-validations\";\r\nimport { AppState } from \"../../../core/app-state\";\r\nimport { AdminSettingsService } from \"../admin-settings/admin-settings.service\"\r\nimport { AdministratorResponse } from \"../../../models/Administrator/administrator-response.model\";\r\nimport { NotificationService } from \"../../../core/services/notification.service\";\r\n\r\n@Component({\r\n selector: 'app-admin-settings',\r\n templateUrl: './admin-settings.component.html',\r\n styleUrls: ['./admin-settings.component.less']\r\n})\r\nexport class AdminSettingsComponent implements OnInit {\r\n adminSettingForm: FormGroup;\r\n\r\n constructor(private formBuilder: FormBuilder,\r\n private route: Router,\r\n private appState: AppState,\r\n private notificationService: NotificationService,\r\n private adminSettingsService: AdminSettingsService) { }\r\n\r\n ngOnInit() {\r\n this.adminSettingForm = this.formBuilder.group(\r\n {\r\n userName: new FormControl(this.appState.LoggedInUser),\r\n oldPassword: new FormControl(\"\", [\r\n Validators.required,\r\n Validators.pattern(FieldValidationPattern.PasswordPattern)\r\n ]),\r\n password: new FormControl(\"\", [\r\n Validators.required,\r\n Validators.pattern(FieldValidationPattern.PasswordPattern)\r\n ]),\r\n confirmPassword: new FormControl(\"\", [Validators.required])\r\n },\r\n {\r\n validator: PasswordMatchValidator(\"oldPassword\", \"password\", \"confirmPassword\")\r\n }\r\n );\r\n }\r\n\r\n ChangePassword() {\r\n if (this.adminSettingForm.controls.password.invalid || this.adminSettingForm.controls.oldPassword.invalid || this.adminSettingForm.controls.confirmPassword.invalid) {\r\n return;\r\n }\r\n this.adminSettingsService.saveChangePassword(this.adminSettingForm.getRawValue().oldPassword, this.adminSettingForm.getRawValue().password).subscribe(\r\n (administratorResponse: AdministratorResponse) => {\r\n this.appState.Administrator = administratorResponse;\r\n this.adminSettingForm.reset();\r\n this.adminSettingForm.controls[\"userName\"].setValue(this.appState.LoggedInUser);\r\n this.notificationService.Success(\"New password saved successfully.\");\r\n }\r\n );\r\n }\r\n\r\n}\r\nexport function PasswordMatchValidator(currentPassword: string, newPassword: string, confirmPassword: string) {\r\n return (formGroup: FormGroup) => {\r\n const currentPasswordControl = formGroup.controls[currentPassword];\r\n const newPasswordControl = formGroup.controls[newPassword];\r\n const confirmPasswordControl = formGroup.controls[confirmPassword];\r\n\r\n // If no other validation errors on confirm passward or must match error then check for password match validation\r\n if (!confirmPasswordControl.errors || confirmPasswordControl.errors.mustMatch) {\r\n // set error on newPasswordControl if validation fails\r\n if (newPasswordControl.value != confirmPasswordControl.value) {\r\n confirmPasswordControl.setErrors({ mustMatch: true });\r\n } else {\r\n confirmPasswordControl.setErrors(null);\r\n }\r\n }\r\n\r\n // If no other validation errors on new passward then check for password not match validation\r\n if (!newPasswordControl.errors || newPasswordControl.errors.mustNotMatch) {\r\n // set error on newPasswordControl if validation fails\r\n if (currentPasswordControl.value == newPasswordControl.value) {\r\n newPasswordControl.setErrors({ mustNotMatch: true });\r\n } else {\r\n newPasswordControl.setErrors(null);\r\n }\r\n }\r\n };\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\nimport { Observable } from \"rxjs\";\r\n\r\nimport { GroupPortalApiService } from \"../../../core/services/group-portal-api.service\";\r\nimport { ApiPaths } from '../../../shared/utils/ApiPaths';\r\nimport { AdministratorResponse } from \"../../../models/Administrator/administrator-response.model\";\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AdminSettingsService {\r\n withCredentials: boolean = true;\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n saveChangePassword(\r\n oldPassword: string,\r\n newPassword: string\r\n ): Observable<AdministratorResponse> {\r\n const apiPaths = ApiPaths.changePassword_put.replace(\"{oldPassword}\", encodeURIComponent(oldPassword)).replace(\"{newPassword}\", encodeURIComponent(newPassword));\r\n return this.groupPortalApiService.put<AdministratorResponse>(\r\n apiPaths,\r\n \"\",\r\n this.withCredentials\r\n );\r\n }\r\n}\r\n","<div class=\"navbar-default sidebar\" role=\"navigation\">\r\n <div class=\"sidebar-nav navbar-collapse\">\r\n <ul class=\"nav in\" id=\"side-menu\">\r\n <li><a [routerLink]=\"['/admin']\"><i class=\"fas fa-user fa-fw\" aria-hidden=\"false\"></i> HELLO ADMIN!</a></li>\r\n <li><a data-toggle=\"collapse\" href=\"#divEmployee\" (click)=\"EmployeeInfoTab()\" class=\"collapsed anchorCursor\"\r\n [ngClass]=\"{'collapse': isEmployeeTabSelected}\" aria-controls=\"employee\"><i class=\"fas fa-users fa-fw\"\r\n aria-hidden=\"false\"></i> Employees<span class=\"fa arrow\" aria-hidden=\"true\"></span></a>\r\n <ul *ngIf=\"isEmployeeTabSelected\" class=\"nav nav-second-level collapse active\" aria-expanded=\"true\"\r\n id=\"divEmployee\">\r\n <li><a [routerLink]=\"['/admin/emp-list']\">My Employees</a></li>\r\n <li><a [routerLink]=\"['/admin/upload-employees']\">Add Employee/s</a></li>\r\n </ul>\r\n </li>\r\n <li><a data-toggle=\"collapse\" href=\"#divPlan\" (click)=\"PlanInfoTab()\" class=\"collapsed anchorCursor\"\r\n [ngClass]=\"{'collapse': isPlanTabSelected}\" aria-controls=\"plandetails\"><i class=\"fas fa-file-contract fa-fw\"\r\n aria-hidden=\"true\"></i> Plan Package<span class=\"fa arrow\" aria-hidden=\"true\"></span></a>\r\n <ul *ngIf=\"isPlanTabSelected\" class=\"nav nav-second-level collapse active\" aria-expanded=\"true\" id=\"divPlan\">\r\n <li><a [routerLink]=\"['/admin/plan-details']\">Plan Details</a></li>\r\n </ul>\r\n </li>\r\n <li><a data-toggle=\"collapse\" href=\"#divHelp\" (click)=\"HelpTab()\" class=\"collapsed anchorCursor\"\r\n [ngClass]=\"{'collapse': isHelpTabSelected}\" aria-controls=\"help\"><i class=\"fas fa-question-circle fa-fw\"\r\n aria-hidden=\"true\"></i> Help<span class=\"fa arrow\" aria-hidden=\"false\"></span></a>\r\n <ul *ngIf=\"isHelpTabSelected\" class=\"nav nav-second-level collapse active\" aria-expanded=\"true\" id=\"divHelp\">\r\n <li><a [routerLink]=\"['/admin/help-faqs']\">General FAQs</a></li>\r\n <li><a [routerLink]=\"['/admin/help-contact']\">Contact Us</a></li>\r\n </ul>\r\n </li>\r\n </ul>\r\n </div>\r\n</div>\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-admin-sidebar',\r\n templateUrl: './admin-sidebar.component.html',\r\n styleUrls: ['./admin-sidebar.component.less']\r\n})\r\nexport class AdminSidebarComponent implements OnInit {\r\n isEmployeeTabSelected : boolean;\r\n isPlanTabSelected : boolean;\r\n isHelpTabSelected : boolean;\r\n\r\n ngOnInit() {\r\n }\r\n\r\n EmployeeInfoTab() {\r\n this.isEmployeeTabSelected = true;\r\n this.isPlanTabSelected = false;\r\n this.isHelpTabSelected = false;\r\n }\r\n\r\n PlanInfoTab() {\r\n this.isEmployeeTabSelected = false;\r\n this.isPlanTabSelected = true;\r\n this.isHelpTabSelected = false;\r\n }\r\n\r\n HelpTab() {\r\n this.isEmployeeTabSelected = false;\r\n this.isPlanTabSelected = false;\r\n this.isHelpTabSelected = true;\r\n }\r\n}\r\n"," \r\n <router-outlet></router-outlet>","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-admin',\r\n templateUrl: './admin.component.html',\r\n styleUrls: ['./admin.component.less']\r\n})\r\nexport class AdminComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from \"@angular/core\";\r\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\r\nimport { CommonModule } from \"@angular/common\";\r\nimport { AgGridModule } from 'ag-grid-angular';\r\n\r\nimport { AdminRoutingModule } from \"./admin-routing.module\";\r\nimport { SharedModule } from \"src/app/shared.module\";\r\nimport { AdminLayoutComponent } from './admin-layout/admin-layout.component';\r\nimport { AdminHeaderComponent } from './admin-header/admin-header.component';\r\nimport { AdminSidebarComponent } from './admin-sidebar/admin-sidebar.component';\r\nimport { AdminComponent } from './admin.component';\r\nimport { PageHeadingComponent } from './page-heading/page-heading.component';\r\nimport { PipesModule } from '../../pipes/pipes.module';\r\nimport { AdminProfileComponent } from './admin-profile/admin-profile.component';\r\nimport { DocumentsComponent } from './admin-profile/documents/documents.component';\r\nimport { PrimaryContactComponent } from './admin-profile/primary-contact/primary-contact.component';\r\nimport { BrokerComponent } from './admin-profile/broker/broker.component';\r\nimport { CompanyComponent } from './admin-profile/company/company.component';\r\nimport { BillingComponent } from './admin-profile/billing/billing.component';\r\nimport { GeneralFaqsLayoutComponent } from './general-faqs-layout/general-faqs-layout.component';\r\nimport { AdminDashboardComponent } from './admin-dashboard/admin-dashboard.component';\r\nimport { MessagesComponent } from './admin-dashboard/messages/messages.component';\r\nimport { EmploeeWidgetComponent } from './admin-dashboard/emploee-widget/emploee-widget.component';\r\nimport { HelpContactUsComponent } from './help-contact-us/help-contact-us.component';\r\nimport { AdminSettingsComponent } from './admin-settings/admin-settings.component';\r\nimport { EmployeesListComponent } from './employees-list/employees-list.component';\r\nimport { EmployeeDetailsComponent } from './employee-details/employee-details.component';\r\nimport { AdminPlanDetailsComponent } from './admin-plan-details/admin-plan-details.component';\r\nimport { AdminPlanComponent } from './admin-plan/admin-plan.component';\r\nimport { UploadEmployeesComponent } from './upload-employees/upload-employees.component';\r\nimport { BillingInvoiceComponent } from './billing-invoice/billing-invoice.component';\r\nimport { CoreModule } from 'src/app/core/core.module';\r\n\r\n@NgModule({\r\n declarations: [\r\n AdminLayoutComponent,\r\n AdminHeaderComponent,\r\n AdminSidebarComponent,\r\n AdminComponent,\r\n PageHeadingComponent,\r\n GeneralFaqsLayoutComponent,\r\n AdminProfileComponent,\r\n DocumentsComponent,\r\n PrimaryContactComponent,\r\n BrokerComponent,\r\n CompanyComponent,\r\n BillingComponent,\r\n AdminDashboardComponent,\r\n MessagesComponent,\r\n EmploeeWidgetComponent,\r\n AdminSettingsComponent,\r\n AdminPlanDetailsComponent,\r\n EmployeesListComponent,\r\n EmployeeDetailsComponent,\r\n EmploeeWidgetComponent,\r\n AdminSettingsComponent,\r\n AdminPlanComponent,\r\n HelpContactUsComponent,\r\n UploadEmployeesComponent,\r\n BillingInvoiceComponent\r\n ],\r\n imports: [\r\n FormsModule, ReactiveFormsModule, CommonModule, AdminRoutingModule, SharedModule, PipesModule, CoreModule,\r\n AgGridModule.withComponents([EmployeesListComponent, EmployeeDetailsComponent])\r\n ],\r\n schemas: [\r\n CUSTOM_ELEMENTS_SCHEMA\r\n ]\r\n})\r\nexport class AdminModule { }\r\n","\r\n<a href=\"#\" data-target=\"#invoice-mod\" data-toggle=\"modal\" (click)=\"openModal(template)\">Details</a>\r\n\r\n<ng-template #template>\r\n <div class=\"modal-header\">\r\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\r\n <span aria-hidden=\"true\">×</span>\r\n </button>\r\n <h4 class=\"modal-title\">{{params.data.firstName}} {{params.data.lastName}}</h4>\r\n </div>\r\n \r\n <div class=\"modal-body\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-4\">\r\n <h5>START EFFECTIVE DATE</h5>\r\n <p>{{params.data.coverageStartDate | date: 'd/M/y'}}</p>\r\n <h5>GROUP CODE</h5>\r\n <p>{{params.data.group.code}}</p>\r\n <h5>POLICY NUMBER</h5>\r\n <p>{{params.data.policyNumber}}</p>\r\n </div>\r\n <div class=\"col-sm-4\">\r\n <h5>NAME</h5>\r\n <p>{{params.data.firstName}} {{params.data.lastName}}</p>\r\n <h5>DATE OF BIRTH</h5>\r\n <p>{{params.data.dob | date: 'd/M/y'}}</p>\r\n <h5>GENDER</h5>\r\n <p>{{params.data.gender | genderAbbreviation}}</p>\r\n <h5>MARITAL STATUS</h5>\r\n <p>{{params.data.maritalStatusCode | maritalStatus}}</p>\r\n <h5>COVERAGE LEVEL</h5>\r\n <p>{{params.data.coverageType | coverageType}}</p>\r\n </div>\r\n <div class=\"col-sm-4\">\r\n <h5>ADDRESS:</h5>\r\n <p>{{params.data.address1}}<br>\r\n {{params.data.city}},{{params.data.zip}}</p>\r\n <h5>PHONE:</h5>\r\n <p>{{params.data.homePhone | phoneNumber}}</p>\r\n <h5>EMAIL:</h5>\r\n <p>{{params.data.email}}</p>\r\n </div>\r\n </div>\r\n <h4>Dependents:</h4>\r\n <table class=\"table table-condensed table-bordered table-striped\">\r\n <thead>\r\n <tr>\r\n <th width=\"20%\">FIRST NAME</th>\r\n <th width=\"20%\">LAST NAME</th>\r\n <th width=\"20%\">DATE OF BIRTH</th>\r\n <th width=\"20%\">GENDER</th>\r\n <th width=\"20%\">RELATIONSHIP</th>\r\n </tr>\r\n </thead>\r\n <tbody *ngFor=\"let dependent of params.data.dependent\">\r\n <tr>\r\n <td>{{dependent.firstName}}</td>\r\n <td>{{dependent.lastName}}</td>\r\n <td>{{dependent.dob | date:'d/M/y'}}</td>\r\n <td>{{dependent.gender | genderAbbreviation}}</td>\r\n <td>{{dependent.relationshipCode | relationshipAbbreviation}}</td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n\r\n <div class=\"modal-footer\">\r\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"modalRef.hide()\">Close</button>\r\n </div>\r\n</ng-template>\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { TemplateRef } from \"@angular/core\";\r\nimport { BsModalService, BsModalRef } from \"ngx-bootstrap/modal\";\r\n\r\n@Component({\r\n selector: 'app-employee-details',\r\n templateUrl: './employee-details.component.html',\r\n styleUrls: ['./employee-details.component.less']\r\n})\r\nexport class EmployeeDetailsComponent implements OnInit {\r\n\r\n modalRef: BsModalRef;\r\n public params: any;\r\n constructor(private modalService: BsModalService) { }\r\n\r\n ngOnInit() {\r\n }\r\n \r\n agInit(params: any): void {\r\n this.params = params;\r\n}\r\n\r\n openModal(template: TemplateRef<any>) {\r\n this.modalRef = this.modalService.show(template, {\r\n class: \"modal-dialog modal-lg\"\r\n });\r\n }\r\n }\r\n","<div class=\"row\">\r\n <div class=\"col-lg-12\">\r\n <h1 class=\"page-header\">MY EMPLOYEES</h1>\r\n </div>\r\n</div>\r\n<div class=\"panel panel-primary admin-panel\">\r\n <div class=\"panel-heading\">\r\n <h3 class=\"h4\">Employee Database <i class=\"fas fa-users pull-right\" aria-hidden=\"true\"></i></h3>\r\n </div>\r\n <div class=\"panel-body\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-inline\">\r\n <label>Show\r\n <select (change)=\"onPageSizeChanged()\" [(ngModel)]=\"pagesize\" class=\"form-control input-sm\">\r\n <option value=\"10\" selected=\"\">10</option>\r\n <option value=\"25\">25</option>\r\n <option value=\"50\">50</option>\r\n <option value=\"100\">100</option>\r\n </select>\r\n entries\r\n </label>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-inline\">\r\n <label>Search:<input type=\"text\" class=\"form-control input-sm\" (keyup)=\"quickSearch()\"\r\n [(ngModel)]=\"searchValue\"></label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <ag-grid-angular style=\"width: 100%; height:100%;\" class=\"ag-theme-balham\" [columnDefs]=\"columnDefs\"\r\n [animateRows]=\"true\" [sortingOrder]=\"['asc', 'desc']\" [pagination]=\"true\" [paginationPageSize]=\"pagesize\"\r\n headerHeight=\"40\" rowHeight=\"40\" [suppressPaginationPanel]=\"true\" [suppressScrollOnNewData]=\"true\"\r\n [frameworkComponents]=\"frameworkComponents\" [icons]=\"icons\" (gridReady)=\"onGridReady($event)\"\r\n [suppressLoadingOverlay]=\"true\">\r\n </ag-grid-angular>\r\n </div>\r\n </div>\r\n <div class=\"\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"dataTables_info\" id=\"dataTables-example_info\" role=\"status\" aria-live=\"polite\">\r\n {{recordDisplayMessage}}\r\n </div>\r\n </div>\r\n <nav aria-label=\"Page navigation example\">\r\n <ul class=\"pagination\">\r\n <li class=\"page-item\">\r\n <button class=\"pagination-button-InActive\" (click)=\"onBtPrevious()\"\r\n [ngClass]=\"{'disabledContent':activePage == 1,'pagination-button-InActive':activePage != 1}\">Previous\r\n </button>\r\n </li>\r\n <li *ngFor='let item of counter(numberOfPages) ;let cnt = index' class=\"page-item\">\r\n <button\r\n [ngClass]=\"{'pagination-button-active': (cnt+1) == activePage, 'pagination-button-InActive': (cnt+1) != activePage }\"\r\n (click)=\"navigatePage(cnt)\">{{cnt+1}}</button>\r\n </li>\r\n <li class=\"page-item\">\r\n <button class=\"pagination-button-InActive\" (click)=\"onBtNext()\"\r\n [ngClass]=\"{'disabledContent': activePage == numberOfPages, 'pagination-button-InActive': activePage != numberOfPages }\">Next</button>\r\n </li>\r\n </ul>\r\n </nav>\r\n </div>\r\n</div>\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { EmployeesService } from \"./employees.service\";\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { Observable } from \"rxjs\";\r\nimport { EmployeesResponse } from \"../../../models/Employee-List/EmployeesResponse\";\r\nimport { EmployeeDetailsComponent } from '../employee-details/employee-details.component';\r\nimport { HttpStatusCodes } from '../../../shared/utils/http-status-codes';\r\nimport { NotificationService } from '../../../core/services/notification.service';\r\n\r\n@Component({\r\n selector: 'app-employees-list',\r\n templateUrl: './employees-list.component.html',\r\n styleUrls: ['./employees-list.component.less']\r\n})\r\nexport class EmployeesListComponent implements OnInit {\r\n private context;\r\n private gridApi;\r\n private gridColumnApi;\r\n public searchValue;\r\n public frameworkComponents;\r\n public columnDefs;\r\n\r\n public icons;\r\n\r\n pagesize: number = 10;\r\n totalRecords: number;\r\n numberOfPages: number = 1;\r\n activePage: number = 1;\r\n gridRecordCount: number;\r\n recordDisplayMessage: string = \"\";\r\n\r\n getAllEmp: Observable<EmployeesResponse[]>;\r\n\r\n constructor(\r\n private empListService: EmployeesService,\r\n private notificationService: NotificationService,\r\n private router: Router\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.columnDefs = [\r\n {\r\n headerName: \"First Name\",\r\n field: \"firstName\",\r\n sortable: true,\r\n sort: \"asc\",\r\n resizable: true\r\n },\r\n {\r\n headerName: \"Last Name\",\r\n field: \"lastName\",\r\n sortable: true,\r\n resizable: true\r\n },\r\n {\r\n headerName: \"Email\",\r\n field: \"email\",\r\n sortable: true,\r\n resizable: true\r\n },\r\n {\r\n headerName: \"Group Code\",\r\n field: \"code\",\r\n valueGetter: this.GetGroupCode,\r\n sortable: true,\r\n resizable: true\r\n },\r\n {\r\n headerName: \"More\",\r\n field: \"_id\",\r\n cellRenderer: \"employeeDetails\",\r\n colId: \"params\",\r\n }\r\n ];\r\n this.context = { componentParent: this };\r\n\r\n this.frameworkComponents = {\r\n employeeDetails: EmployeeDetailsComponent,\r\n };\r\n this.icons = {\r\n sortAscending: '<i class=\"fa fa-caret-down\" style=\"font-size:20px;\"/>',\r\n sortDescending: '<i class=\"fa fa-caret-up\" style=\"font-size:20px;\"/>',\r\n }\r\n }\r\n\r\n //This method is for getting the groupCode for Member\r\n GetGroupCode(params: any) {\r\n return params.data.group.code;\r\n }\r\n\r\n onGridReady(params) {\r\n this.gridApi = params.api;\r\n this.gridColumnApi = params.columnApi;\r\n params.api.sizeColumnsToFit();\r\n\r\n const rowData = this.empListService.GetEmployeesList().subscribe(data => {\r\n this.totalRecords = data.length == undefined ? 0 : data.length;\r\n params.api.setRowData(data);\r\n this.updateTotalRecords();\r\n }, error => {\r\n this.handleError(error);\r\n });\r\n }\r\n\r\n quickSearch() {\r\n this.activePage = 1;\r\n this.gridApi.setQuickFilter(this.searchValue);\r\n this.updateTotalRecords();\r\n }\r\n\r\n onPageSizeChanged() {\r\n this.activePage = 1;\r\n this.gridApi.paginationSetPageSize(Number(this.pagesize));\r\n this.updateTotalRecords();\r\n }\r\n\r\n updateTotalRecords() {\r\n this.gridRecordCount = this.gridApi.paginationGetRowCount();\r\n this.numberOfPages = Math.ceil(this.gridRecordCount / this.pagesize);\r\n if (this.numberOfPages == 0) {\r\n this.numberOfPages = 1;\r\n }\r\n this.loadPageNumbers();\r\n }\r\n\r\n onBtNext() {\r\n if (this.activePage != this.numberOfPages && this.totalRecords != 0) {\r\n this.navigatePage(this.activePage);\r\n }\r\n }\r\n\r\n onBtPrevious() {\r\n if (this.activePage != 1 && this.totalRecords != 0) {\r\n this.navigatePage(this.activePage - 2);\r\n }\r\n }\r\n\r\n //When We click on pagination button then we are calling the navigatePage method.\r\n navigatePage(pageNumber) {\r\n this.gridApi.paginationGoToPage(pageNumber);\r\n\r\n //After navigation we need to increment the active page by +1\r\n this.activePage = pageNumber + 1;\r\n\r\n this.loadPageNumbers();\r\n }\r\n\r\n //Load page number method is responsible for updating text in record count, current page number etc\r\n loadPageNumbers() {\r\n let startRecord: number;\r\n let endRecord: number = this.activePage * this.pagesize;\r\n this.totalRecords = this.totalRecords == undefined ? 0 : this.totalRecords;\r\n\r\n // if record count is 0 then we need to display records as 0 or we need to display (current page records * pagesize) + 1\r\n startRecord = (this.gridRecordCount == 0) ? 0 : ((this.activePage - 1) * this.pagesize) + 1;\r\n\r\n // if record count of active page and pagesize is greater than record count then we need to take grid record count or we need to take the (actve page * page size)\r\n endRecord = ((this.activePage * this.pagesize) > this.gridRecordCount) ? this.gridRecordCount : (this.activePage * this.pagesize);\r\n\r\n // Here we constirct record message in the footer of the grid\r\n this.recordDisplayMessage = (\"Showing \" + startRecord + \" to \" + endRecord + \" of \" + this.totalRecords + \" entries\") + ((this.gridRecordCount != this.totalRecords) ? \" (filtered from \" + this.totalRecords + \" total entries)\" : \"\");\r\n }\r\n\r\n counter(i: number) {\r\n return new Array(i);\r\n }\r\n\r\n handleError(error: HttpErrorResponse): void {\r\n let errorList: string = \"\";\r\n if (error.status == HttpStatusCodes.UNAUTHORIZED) {\r\n this.router.navigate(['/admin/login']);\r\n }\r\n\r\n if (error.status == HttpStatusCodes.UNPROCESSABLE_ENTITY && error.error.errors != null) {\r\n for (const key in error.error.errors) {\r\n error.error.errors[key].forEach(errorValue => {\r\n errorList = errorList.concat(errorValue, \"\\n\");\r\n });\r\n }\r\n }\r\n else if (error.status == HttpStatusCodes.NOT_FOUND) {\r\n errorList = \"No records found\";\r\n this.notificationService.Error(errorList, true);\r\n return;\r\n }\r\n if (errorList) {\r\n this.notificationService.Error(errorList, true);\r\n }\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, from } from \"rxjs\";\r\n\r\nimport { GroupPortalApiService } from \"../../../core/services/group-portal-api.service\";\r\nimport { EmployeesResponse } from \"../../../models/Employee-List/EmployeesResponse\";\r\nimport { ApiPaths } from '../../../shared/utils/ApiPaths';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EmployeesService {\r\n\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n GetEmployeesList(): Observable<EmployeesResponse[]> {\r\n return this.groupPortalApiService.get<EmployeesResponse[]>(ApiPaths.employeeList_get, { withCredentials: true, throwError: true });\r\n }\r\n GetEmployeeCount(): Observable<number> {\r\n return this.groupPortalApiService.get<number>(ApiPaths.employeeListCount_get, { withCredentials: true, throwError: true });\r\n }\r\n}\r\n","<div class=\"row\">\r\n <div class=\"col-lg-12\">\r\n <h1 class=\"page-header\">HELP: CAREINGTON DIRECT PORTAL</h1>\r\n </div>\r\n</div>\r\n<div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <div class=\"panel panel-primary admin-panel\">\r\n <div class=\"panel-heading\">\r\n <h3 class=\"h4\">Careington Direct Portal FAQs <i class=\"fas fa-question-circle pull-right\" aria-hidden=\"true\"></i></h3>\r\n </div>\r\n <div class=\"panel-body\">\r\n <app-general-faqs></app-general-faqs>\r\n </div>\r\n </div>\r\n </div>\r\n</div>","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-general-faqs-layout',\r\n templateUrl: './general-faqs-layout.component.html',\r\n styleUrls: ['./general-faqs-layout.component.less']\r\n})\r\nexport class GeneralFaqsLayoutComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","<app-page-heading [heading]=\"pageHeading\"></app-page-heading>\r\n<div class=\"row\">\r\n <div class=\"col-sm-8\">\r\n <div class=\"panel panel-primary admin-panel\">\r\n <div class=\"panel-heading\">\r\n <h3 class=\"h4\">CONTACT US</h3>\r\n </div>\r\n <div class=\"panel-body\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-4\">\r\n <h4 class=\"red\">Mailing Address:</h4>\r\n <p><strong>{{careingtonCommunicationDetails.name}}</strong><br>\r\n {{careingtonCommunicationDetails.address.address1}}<br>\r\n {{careingtonCommunicationDetails.address.city}}, {{careingtonCommunicationDetails.address.stateCode}}\r\n {{careingtonCommunicationDetails.address.zipCode}}</p>\r\n <hr class=\"hr-normal\">\r\n <h4 class=\"red\">Phone Number:</h4>\r\n <p><a\r\n href=\"tel: {{careingtonCommunicationDetails.phoneNumber}}\">{{careingtonCommunicationDetails.phoneNumber}}</a>\r\n </p>\r\n <h4 class=\"red\">Email:</h4>\r\n <p><a href=\"mailto: {{careingtonCommunicationDetails.email}}\">{{careingtonCommunicationDetails.email}}</a>\r\n </p>\r\n </div>\r\n <div class=\"col-sm-8\">\r\n <h4 class=\"red\">Send us an email</h4>\r\n <form [formGroup]=\"inquiryForm\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div id=\"fo45li6\" class=\"form-group\" >\r\n <label class=\"desc\" id=\"title6\" for=\"Field6\">Comments/Questions:</label>\r\n <textarea id=\"Field6\" formControlName=\"comments\" name=\"Field6\" class=\"form-control\"\r\n placeholder=\"Comments\" maxlength=\"4000\" spellcheck=\"true\" rows=\"3\" cols=\"50\" tabindex=\"7\"></textarea>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"buttons\">\r\n <button id=\"saveForm\" name=\"saveForm\" class=\"btn btn-primary btn-lg\" type=\"submit\"\r\n [disabled]=\"!inquiryForm.valid\" (click)=\"saveInquiry()\">CONTACT ME</button>\r\n </div>\r\n </div>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormControl, Validators, FormGroup } from '@angular/forms';\r\n\r\nimport { CareingtonInfoService } from 'src/app/services/careington-info.service';\r\nimport { AppState } from 'src/app/core/app-state';\r\nimport { CareingtonCommunicationDetails } from 'src/app/models/Contract/careington-communication-details';\r\nimport { SecureContactUsService } from './secure-contact-us.service';\r\nimport { NotificationService } from 'src/app/core/services/notification.service';\r\n\r\n@Component({\r\n selector: 'app-help-contact-us',\r\n templateUrl: './help-contact-us.component.html',\r\n styleUrls: ['./help-contact-us.component.less']\r\n})\r\nexport class HelpContactUsComponent implements OnInit {\r\n pageHeading: string;\r\n careingtonCommunicationDetails: CareingtonCommunicationDetails;\r\n inquiryForm: FormGroup;\r\n\r\n constructor(private careingtonInfoService: CareingtonInfoService,\r\n private appState: AppState,\r\n private formBuilder: FormBuilder,\r\n private secureContactUsService: SecureContactUsService,\r\n private notificationService: NotificationService) { }\r\n\r\n ngOnInit() {\r\n this.pageHeading = \"CONTACT US\";\r\n this.buildForm();\r\n this.loadCareingtonCommunicationDetails();\r\n }\r\n\r\n buildForm() {\r\n this.inquiryForm = this.formBuilder.group({\r\n comments: new FormControl(\"\", [Validators.required])\r\n });\r\n }\r\n\r\n loadCareingtonCommunicationDetails() {\r\n //Retrieve phone number from careington communication details.\r\n this.careingtonInfoService.getCareingtonCommunicationDetails().subscribe(\r\n result => {\r\n this.appState.CareingtonCommunicationDetails = <CareingtonCommunicationDetails>result;\r\n this.careingtonCommunicationDetails = this.appState.CareingtonCommunicationDetails;\r\n });\r\n }\r\n\r\n saveInquiry() {\r\n this.secureContactUsService.createInquiry(`\\\"${<string>this.inquiryForm.get('comments').value}\\\"`).subscribe(\r\n response => {\r\n this.notificationService.Success(\"Thanks for submitting the query. We will contact you shortly.\");\r\n this.inquiryForm.reset();\r\n });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\nimport { GroupPortalApiService } from 'src/app/core/services/group-portal-api.service';\r\nimport { Observable } from 'rxjs';\r\nimport { InquiryResponse } from 'src/app/models/contactusData/inquiry-response';\r\nimport { ApiPaths } from 'src/app/shared/utils/ApiPaths';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SecureContactUsService {\r\n withCredentials: boolean = true;\r\n\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n createInquiry(comments: string): Observable<InquiryResponse> {\r\n return this.groupPortalApiService.post<InquiryResponse>(ApiPaths.contactus_securepost, comments, {withCredentials: this.withCredentials});\r\n }\r\n}\r\n","<div class=\"row\">\r\n <div class=\"col-lg-12\">\r\n <h1 class=\"page-header\">{{heading | uppercase}}</h1>\r\n </div>\r\n</div>","import { Component, OnInit, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-page-heading',\r\n templateUrl: './page-heading.component.html',\r\n styleUrls: ['./page-heading.component.less']\r\n})\r\nexport class PageHeadingComponent implements OnInit {\r\n @Input() heading : string ;\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","<div class=\"row\">\r\n <div class=\"col-lg-12\">\r\n <h1 class=\"page-header\">ADD EMPLOYEE</h1>\r\n </div>\r\n</div>\r\n<div class=\"row\">\r\n <div class=\"col-lg-8 col-md-12\">\r\n <ul class=\"nav nav-tabs\" role=\"tablist\">\r\n <li role=\"presentation\" class=\"active\"><a href=\"#upload\" aria-controls=\"upload\" role=\"tab\"\r\n data-toggle=\"tab\">UPLOAD ELIGIBILITY FILE</a></li>\r\n <li role=\"presentation\" class=\"\"><a href=\"#how\" aria-controls=\"upload\" role=\"tab\" \r\n data-toggle=\"tab\" aria-expanded=\"false\">HOW TO ADD/CANCEL/CHANGE</a></li>\r\n </ul>\r\n <div class=\"tab-content\">\r\n <div role=\"tabpanel\" class=\"tab-pane active\" id=\"upload\">\r\n <h2 class=\"red h3\">Upload Eligibility File</h2>\r\n <hr class=\"hr-normal\">\r\n <p>Plans for newly entered employees will start at the first of {{currentMonth}}.</p>\r\n <p><a href=\"#\" data-toggle=\"modal\" (click)=\"openModal(template)\">Click here</a> for\r\n details on monthly billing.\r\n </p>\r\n <hr class=\"hr-clear-sm\">\r\n <div class=\"form-group\">\r\n <label class=\"h4 red\">Upload your employee database:</label>\r\n <p>Download our <a href=\"../../../../assets/files/GroupEligibilityUpdateSpreadsheet.xlsx\" target=\"_blank\">Careington Direct Eligibility File</a> \r\n to make sure your Excel file (.xlsx) is formatted correctly.\r\n </p>\r\n <div class=\"input-group\">\r\n <label class=\"input-group-btn\">\r\n <span class=\"btn btn-primary\">\r\n UPLOAD FILE <input type=\"file\" class=\"file-upload\" #fileInput style=\"display: none;\"\r\n (click)=\"fileInput.value = null\" name=\"\" (change)=\"uploadFile($event)\"\r\n accept=\"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel\">\r\n </span>\r\n </label>\r\n <input type=\"text\" class=\"form-control\" readonly=\"\" [(ngModel)]=\"fileName\">\r\n </div>\r\n </div>\r\n \r\n \r\n </div>\r\n\r\n <div role=\"tabpanel\" class=\"tab-pane\" id=\"how\">\r\n <h2 class=\"red h3\">Careington Eligibility File</h2>\r\n <hr class=\"hr-normal\">\r\n <p>The Careington Direct Eligibility File is what you will use to load your employees into the Careington system. Download the Excel file below and click through the instructions.</p>\r\n <p><a href=\"../../../../assets/files/CID-EligibilityFile.xlsx\" target=\"_blank\">Careington Direct Eligibility File <i class=\"fas fa-file-excel\" aria-hidden=\"true\"></i></a></p>\r\n <p>All fields in <strong class=\"red\">red</strong> are required fields.</p>\r\n <p><strong>For any questions or concerns regarding invoices, please contact Accounts Receivable at <a href=\"tel:group@careington.com\">group@careington.com</a> or <a href=\"tel:18004410380\" class=\"phone\">(800) 441-0380</a>, extension 2509.</strong></p>\r\n <div class=\"panel-group\" id=\"accordion\" role=\"tablist\" aria-multiselectable=\"true\">\r\n <div class=\"panel panel-default\">\r\n <div class=\"panel-heading\" role=\"tab\" id=\"headingOne\">\r\n <h4 class=\"panel-title\"><a role=\"button\" data-toggle=\"collapse\" data-parent=\"#accordion\" href=\"#collapseOne\" aria-expanded=\"true\" aria-controls=\"collapseOne\" class=\"\">How to Add an Employee</a></h4>\r\n </div>\r\n <div id=\"collapseOne\" class=\"panel-collapse collapse\" role=\"tabpanel\" aria-labelledby=\"headingOne\" aria-expanded=\"true\">\r\n <div class=\"panel-body\">\r\n <p>The <a href=\"#\" data-toggle=\"modal\" data-target=\"#Additions\" (click)=\"openAdditionsTemplate(AdditionsTemplate)\">\"Additions\"</a> tab is to be used to add any new member and their dependents. The start effective date should be the first of the month. If there are multiple dependents, use multiple lines.</p>\r\n <h4><strong>Dropdowns - You must select one of the options</strong></h4>\r\n <ul>\r\n <li><span class=\"red\">Start Effective Date</span></li>\r\n <li><span class=\"red\">Gender</span></li>\r\n <li>Marital Status</li>\r\n <li><span class=\"red\">Membership Level</span></li>\r\n <li>Dependent Gender</li>\r\n <li>Dependent Relation</li>\r\n </ul>\r\n <h4><strong>Effective Date:</strong></h4>\r\n <p>Be sure to include an effective date for additions which must land on the 1st of the effective month.</p>\r\n <p>If an effective date is not included, the following rule will be followed:</p>\r\n <ul>\r\n <li>If the member add/cancel was submitted between the 1st and the 15th of the month, the 1st of the <em>current</em> month will be used as the effective date.</li>\r\n </ul>\r\n <p>If the member add/cancel was submitted between the 16th and the last day of the month, the 1st of the <em>next</em> month will be used as the effective date.</p>\r\n <h5><a href=\"../../../../assets/files/CID-Eligibility-Additions-Sample.xlsx\" target=\"_blank\">Download Example File <i class=\"fas fa-file-excel\" aria-hidden=\"true\"></i></a></h5>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"panel panel-default\">\r\n <div class=\"panel-heading\" role=\"tab\" id=\"headingTwo\">\r\n <h4 class=\"panel-title\"><a class=\"collapsed\" role=\"button\" data-toggle=\"collapse\" data-parent=\"#accordion\" href=\"#collapseTwo\" aria-expanded=\"false\" aria-controls=\"collapseTwo\">How to Cancel/Remove an Employee</a></h4>\r\n </div>\r\n <div id=\"collapseTwo\" class=\"panel-collapse collapse\" role=\"tabpanel\" aria-labelledby=\"headingTwo\" aria-expanded=\"false\">\r\n <div class=\"panel-body\">\r\n <p>The <a href=\"#\" data-toggle=\"modal\" data-target=\"#Cancellations\" (click)=\"openCancellationTemplate(cancellationsTemplate)\">\"Cancellations\"</a> tab is for any member that is to be cancelled. There is no need to list dependents, as they will be cancelled automatically when the member is cancelled.</p>\r\n <h4><strong>Effective Date:</strong></h4>\r\n <p>Be sure to include an effective date for cancellations which must land on the 1st of the effective month.</p>\r\n <p>If an effective date is not included, the following rule will be followed:</p>\r\n <ul>\r\n <li>If the member add/cancel was submitted between the 1st and the 15th of the month, the 1st of the <em>current</em> month will be used as the effective date.</li>\r\n </ul>\r\n <p>If the member add/cancel was submitted between the 16th and the last day of the month, the 1st of the <em>next</em> month will be used as the effective date.</p>\r\n <h5><a href=\"../../../../assets/files/CID-Eligibility-Cancellations-Sample.xlsx\" target=\"_blank\">Download Example File <i class=\"fas fa-file-excel\" aria-hidden=\"true\"></i></a></h5>\r\n </div>\r\n </div>\r\n <div class=\"panel panel-default\">\r\n <div class=\"panel-heading\" role=\"tab\" id=\"headingThree\">\r\n <h4 class=\"panel-title\"><a class=\"collapsed\" role=\"button\" data-toggle=\"collapse\" data-parent=\"#accordion\" href=\"#collapseThree\" aria-expanded=\"false\" aria-controls=\"collapseThree\">How to Change Employee Information</a></h4>\r\n </div>\r\n <div id=\"collapseThree\" class=\"panel-collapse collapse\" role=\"tabpanel\" aria-labelledby=\"headingThree\" aria-expanded=\"false\">\r\n <div class=\"panel-body\">\r\n <p>The <a href=\"#\" data-toggle=\"modal\" data-target=\"#Changes\" (click)=\"openChangeTemplate(changeTemplate)\">\"Changes\"</a> tab is for any changes that need to be made to the members account, except Cancellation. A change could be:</p>\r\n <ul>\r\n <li>Change of personal information (i.e. address, phone number, email address, etc)</li>\r\n <li>Add/remove dependents</li>\r\n </ul>\r\n <p>If there are members to be added, cancelled, or updated, please send the full excel file at least 72 hours before the last business day of the month. This helps keep our records as accurate as possible which then works toward our system generating your invoice(s) correctly</p>\r\n <h5><a href=\"../../../../assets/files/CID-Eligibility-Changes-Sample.xlsx\" target=\"_blank\">Download Example File <i class=\"fas fa-file-excel\" aria-hidden=\"true\"></i></a></h5>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #template>\r\n <div class=\"modal-header\">\r\n <h4 class=\"modal-title pull-left\" id=\"myModalLabel\">A Quick Reference Guide to Invoicing</h4>\r\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\r\n <span aria-hidden=\"true\">×</span>\r\n </button>\r\n </div>\r\n <div class=\"modal-body\">\r\n <ul>\r\n <li>Invoices are generated on the last business day of the month for the current month.</li>\r\n <li>The invoice is based off of the active eligibility in our system with an effective date of the 1<sup>st</sup> of the current month and prior.</li>\r\n <li>In order for an invoice to be reflective of the most recent eligibility file, it must be received a minimum of 3 business days prior to the last business day of the month. It is recommended to schedule your final file of the month to be received by Careington by the 25<sup>th</sup> of each month in order to ensure invoices reflect current eligibility.</li>\r\n <li>As you are billed on the last business day of the month for the current month, any member added with a prior month's effective date will appear on the invoice both in the \"all products\" count for the invoiced month and as a \"retro-active add\" for the month in which the member was added.</li>\r\n <li>Should a member be passed in a file with an effective date of any prior months, the system will retroactively bill for the member up to 3 months back, appearing as a \"retro-active add.\"</li>\r\n <li>Careington's billing system accommodates only \"first-of-the-month\" effective dates.</li>\r\n <li>The system bills based on membership effective dates. The following policies detail how an invoice is impacted by an eligibility file which does not contain an effective date and/or by a file that contains an effective date that is not a \"first-of-the-month\":\r\n <ul>\r\n <li>Any member sent with an effective date of the 1-15<sup>th</sup> receives an effective date of the 1<sup>st</sup> of the month noted in the file.</li>\r\n <li>Any member sent with an effective date of the 16-31<sup>st</sup> will receive an effective date of the 1<sup>st</sup> of the upcoming month based on the date noted in the file.</li>\r\n <li>Any member added to our system on the 1-15<sup>th</sup> without an effective date will receive an effective date of the 1<sup>st</sup> of the current month.</li>\r\n <li>Any member added to our system on the 16-31<sup>st</sup> without an affective date will receive an effective date of the 1<sup>st</sup> of the upcoming month.</li>\r\n </ul>\r\n </li>\r\n <li>Files containing terminations must be received a minimum of 3 business days prior to the last business day of the month in order to be reflected on the current month invoice.</li>\r\n <li>Termination dates must be the \"first-of-the-month.\" Please be aware of the following policies with regard to termination dates when members are cancelled by omission or by a file that contains a termination date that is not a \"first-of-the-month\" date. Those rules are as follows:\r\n <ul>\r\n <li>Terminations dated for the I-15<sup>th</sup> will be effective the 1<sup>st</sup> of the current month noted in the file.</li>\r\n <li>Terminations dated for 16-31<sup>st</sup> will be effective the 1<sup>st</sup> of the following month noted in the file.</li>\r\n <li>Terminations done by omission use the 1-15<sup>th</sup> logic as noted above based off the date the file was loaded to our system.</li>\r\n </ul>\r\n </li>\r\n </ul>\r\n</div>\r\n</ng-template>\r\n\r\n<ng-template #changeTemplate>\r\n <div class=\"modal-header\">\r\n <h4 class=\"modal-title pull-left\" id=\"myModalLabel\">Changes Tab</h4>\r\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\r\n <span aria-hidden=\"true\">×</span>\r\n </button>\r\n </div>\r\n <div class=\"modal-body\">\r\n <p><img src=\"../../../../assets/img/CIDELF-Changes.jpg\" class=\"img-responsive\"></p>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #cancellationsTemplate>\r\n <div class=\"modal-header\">\r\n <h4 class=\"modal-title pull-left\" id=\"myModalLabel\">Cancellations Tab</h4>\r\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\r\n <span aria-hidden=\"true\">×</span>\r\n </button>\r\n </div>\r\n <div class=\"modal-body\">\r\n <p><img src=\"../../../../assets/img/CIDELF-Cancellations.jpg\" class=\"img-responsive\"></p>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #AdditionsTemplate>\r\n <div class=\"modal-header\">\r\n <h4 class=\"modal-title pull-left\" id=\"myModalLabel\">Additions Tab</h4>\r\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\r\n <span aria-hidden=\"true\">×</span>\r\n </button>\r\n </div>\r\n <div class=\"modal-body\">\r\n <p><img src=\"../../../../assets/img/CIDELF-Additions.jpg\" class=\"img-responsive\"></p>\r\n </div>\r\n</ng-template>\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { TemplateRef } from \"@angular/core\";\r\nimport { BsModalService, BsModalRef } from \"ngx-bootstrap/modal\";\r\nimport * as XLSX from 'xlsx';\r\nimport { Months } from \"../../../shared/utils/Months\";\r\nimport { UploadEmployeeService } from './upload-employess.service';\r\nimport { UploadEmployeeFile } from 'src/app/models/Employee-List/upload-employee-file';\r\nimport { NotificationService } from 'src/app/core/services/notification.service';\r\n\r\n@Component({\r\n selector: 'app-upload-employees',\r\n templateUrl: './upload-employees.component.html',\r\n styleUrls: ['./upload-employees.component.less']\r\n})\r\nexport class UploadEmployeesComponent implements OnInit {\r\n fileName: string;\r\n @ViewChild('fileInput', { static: true }) fileInput;\r\n modalRef: BsModalRef;\r\n currentMonth: string;\r\n\r\n constructor(private uploadEmployeeService: UploadEmployeeService, private modalService: BsModalService, private notificationService: NotificationService) { }\r\n\r\n ngOnInit() {\r\n const month = new Date();\r\n this.currentMonth = Months[month.getMonth()];\r\n }\r\n\r\n openModal(template: TemplateRef<any>) {\r\n this.modalRef = this.modalService.show(template, {\r\n class: \"modal-dialog modal-lg\"\r\n });\r\n }\r\n\r\n openChangeTemplate(changeTemplate: TemplateRef<any>) {\r\n this.modalRef = this.modalService.show(changeTemplate, {\r\n class: \"modal-dialog modal-lg\"\r\n });\r\n }\r\n\r\n openCancellationTemplate(cancellationsTemplate: TemplateRef<any>) {\r\n this.modalRef = this.modalService.show(cancellationsTemplate, {\r\n class: \"modal-dialog modal-lg\"\r\n });\r\n }\r\n\r\n openAdditionsTemplate(AdditionsTemplate: TemplateRef<any>) {\r\n this.modalRef = this.modalService.show(AdditionsTemplate, {\r\n class: \"modal-dialog modal-lg\"\r\n });\r\n }\r\n\r\n uploadFile(event: any) {\r\n let file = event.target.files[0];\r\n\r\n if (file && (file.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' || file.type === 'application/vnd.ms-excel')) {\r\n const fileReader = new FileReader();\r\n const submissionFileName = file.name;\r\n this.fileName = file.name;\r\n\r\n fileReader.onload = (e) => {\r\n const submissionFileStream = (fileReader.result.toString()).split(',')[1];\r\n var uploadEmployeeFile: UploadEmployeeFile = new UploadEmployeeFile();\r\n uploadEmployeeFile.FileName = submissionFileName;\r\n uploadEmployeeFile.FileStream = submissionFileStream;\r\n\r\n this.uploadEmployeeService.UploadExcel(uploadEmployeeFile).subscribe(result => {\r\n if (result == true) {\r\n this.notificationService.Success(\"File uploaded successfully.\");\r\n this.fileName = \"\";\r\n } else {\r\n this.notificationService.Success(\"Something went wrong. Please try again or contact support.\");\r\n }\r\n });\r\n };\r\n fileReader.readAsDataURL(file);\r\n }\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpHeaders, HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { GroupPortalApiService } from \"../../../core/services/group-portal-api.service\";\r\nimport { ApiPaths } from '../../../shared/utils/ApiPaths';\r\nimport { UploadEmployeeFile } from 'src/app/models/Employee-List/upload-employee-file';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UploadEmployeeService {\r\n withCredentials: boolean = true;\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n UploadExcel(addEmployeeRequest:UploadEmployeeFile): Observable<boolean> {\r\n const apiUrl = ApiPaths.upload_excel_post;\r\n return this.groupPortalApiService.post<boolean>(apiUrl, addEmployeeRequest, { withCredentials: this.withCredentials });\r\n }\r\n}\r\n","<header class=\"sub\" id=\"header-home\" *ngIf=\"context\">\r\n <div class=\"header-cont\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-md-12\">\r\n <h1 *ngIf=\"context.heading\">{{ context.heading | uppercase }}</h1>\r\n <h2 *ngIf=\"context.subHeading\">{{context.subHeading}}</h2>\r\n <p *ngIf=\"context.description\" class=\"small\"><em>{{context.description}}</em></p>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n","import { Component, OnInit, Input } from \"@angular/core\";\r\nimport { Router, ActivatedRoute, NavigationEnd } from \"@angular/router\";\r\nimport { isNullOrUndefined } from \"util\";\r\nimport { filter } from \"rxjs/operators\";\r\n\r\nimport { BannerContext } from '../../models/banner-context';\r\n\r\n@Component({\r\n selector: 'app-banner',\r\n templateUrl: './banner.component.html',\r\n styleUrls: ['./banner.component.less']\r\n})\r\nexport class BannerComponent implements OnInit {\r\n\r\n @Input() context: BannerContext;\r\n constructor(private _router: Router, private route: ActivatedRoute) {\r\n //Banner has to be rebuilt everytime user navigate. So subscribing to Navigation end event.\r\n this._router.events\r\n .pipe(filter(e => e instanceof NavigationEnd))\r\n .subscribe(() => {\r\n this.SetBanner();\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n console.log(this.context);\r\n if (this._router.url.indexOf(\"/contract\") >= 0) {\r\n this.SetBanner();\r\n }\r\n if (this._router.url == \"/reset-password\"){\r\n this.context.heading = \"PASSWORD RESET\"\r\n }\r\n \r\n }\r\n\r\n SetBanner() {\r\n if (this._router.url.indexOf(\"/contract\") >= 0) {\r\n const children: any[] = this.route.snapshot.routeConfig.children;\r\n if (children) {\r\n for (const child of children) {\r\n const label = child.data[\"bannerHeading\"];\r\n if (!isNullOrUndefined(label)) {\r\n this.context = new BannerContext();\r\n this.context.heading = label;\r\n }\r\n }\r\n }\r\n } else if (this._router.url.indexOf(\"/application\") >= 0) {\r\n this.context = null;\r\n }\r\n }\r\n}\r\n","<section class=\"bread\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <ul class=\"breadcrumb small bread-req\">\r\n <li\r\n *ngFor=\"let item of breadCrumbItems; let i = index\"\r\n class=\"active\"\r\n >\r\n <a\r\n [routerLink]=\"item.url\"\r\n *ngIf=\"i != breadCrumbItems.length - 1\"\r\n >{{ item.label }}</a\r\n >\r\n <span *ngIf=\"i === breadCrumbItems.length - 1\">{{\r\n item.label\r\n }}</span>\r\n \r\n </li>\r\n <ng-content></ng-content>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</section>\r\n","import { Component, OnInit, Input } from \"@angular/core\";\r\nimport { Router, ActivatedRoute, NavigationEnd } from \"@angular/router\";\r\nimport { isNullOrUndefined } from \"util\";\r\nimport { filter } from \"rxjs/operators\";\r\n\r\nimport { BreadCrumbItem } from \"../../models/bread-crumb-item\";\r\n\r\n@Component({\r\n selector: \"app-bread-crumb\",\r\n templateUrl: \"./bread-crumb.component.html\",\r\n styleUrls: [\"./bread-crumb.component.less\"]\r\n})\r\nexport class BreadCrumbComponent implements OnInit {\r\n public breadCrumbItems: BreadCrumbItem[] = [];\r\n constructor(private _router: Router, private route: ActivatedRoute) {\r\n //List of breadCrumbItems has to be rebuilt everytime user navigate\r\n //through the application. So subscribing to Navigation end event.\r\n this._router.events\r\n .pipe(filter(e => e instanceof NavigationEnd))\r\n .subscribe(() => {\r\n this.breadCrumbItems = this.setBreadcrumbs(this.route.root);\r\n });\r\n }\r\n ngOnInit() {}\r\n\r\n public setBreadcrumbs(\r\n route: ActivatedRoute,\r\n url: string = \"\",\r\n breadcrumbs: BreadCrumbItem[] = []\r\n ): BreadCrumbItem[] {\r\n const children: ActivatedRoute[] = route.children;\r\n\r\n if (children.length === 0) {\r\n return breadcrumbs;\r\n }\r\n\r\n //Iterate through children of activated route and retrieve URL and bread crumb label\r\n //associated to child route and add it to breadCrumbItems List.\r\n for (const child of children) {\r\n const routeURL: string = child.snapshot.url\r\n .map(segment => segment.path)\r\n .join(\"/\");\r\n if (routeURL !== \"\") {\r\n url += `/${routeURL}`;\r\n }\r\n\r\n const label = child.snapshot.data[\"breadCrumb\"];\r\n if (!isNullOrUndefined(label)) {\r\n breadcrumbs.push({ label, url });\r\n }\r\n\r\n return this.setBreadcrumbs(child, url, breadcrumbs);\r\n }\r\n }\r\n}\r\n","<app-banner [context]=\"bannerContext\"></app-banner>\r\n<section class=\"content\">\r\n <div class=\"container\">\r\n <div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <p>\r\n If you'd like to learn more about what Careington can do for you and\r\n your business, contact us at\r\n <a href=\"tel:{{ phone }}\" class=\"phone\">{{ phone }} ext. {{ ext }}</a>\r\n or fill out the form below, and we'll be happy to contact you about\r\n crafting your custom proposal.\r\n </p>\r\n <hr class=\"hr-clear\" />\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-4\">\r\n <h3>Mailing Address:</h3>\r\n <p>\r\n <strong>Careington International Corporation</strong><br />\r\n {{ address1 }}<br />\r\n {{ city }}, {{ state }} {{ zip }}\r\n </p>\r\n <h3>Phone Number:</h3>\r\n <p>\r\n <a href=\"tel:{{ phone }}\">{{ phone }}</a>\r\n </p>\r\n <h3>Email:</h3>\r\n <p>\r\n <a href=\"mailto:{{email}}\">{{email}}</a>\r\n </p>\r\n </div>\r\n <div class=\"col-sm-8\" [formGroup]=\"inquiryForm\">\r\n <h3>Send us an email</h3>\r\n <div class=\"row hidden\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-group\">\r\n <label class=\"desc\">From business section:</label>\r\n <input type=\"text\" class=\"form-control\" tabindex=\"1\" value=\"Business Home Page\" />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-group\">\r\n <label class=\"desc\">First Name:<span class=\"text-danger\">*</span></label>\r\n <input type=\"text\" class=\"form-control input-sm\" tabindex=\"1\" maxlength=\"32\" formControlName=\"firstName\"\r\n placeholder=\"First Name\" />\r\n <div class=\"alert alert-danger\" *ngIf=\" inquiryForm.controls.firstName.invalid &&(\r\n inquiryForm.controls.firstName.touched ||\r\n inquiryForm.controls.firstName.dirty)\r\n \">\r\n <div *ngIf=\"inquiryForm.controls.firstName.errors\">\r\n First Name is required\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-group\">\r\n <label class=\"desc\">Last Name:<span class=\"text-danger\">*</span></label>\r\n <input type=\"text\" class=\"form-control\" tabindex=\"2\" required=\"\" maxlength=\"32\"\r\n formControlName=\"lastName\" placeholder=\"Last Name\" />\r\n <div class=\"alert alert-danger\" *ngIf=\" inquiryForm.controls.lastName.invalid &&(\r\n inquiryForm.controls.lastName.touched ||\r\n inquiryForm.controls.lastName.dirty)\r\n \">\r\n <div *ngIf=\"inquiryForm.controls.lastName.errors\">\r\n Last Name is required\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-group\">\r\n <label class=\"desc\">Company Name:<span class=\"text-danger\">*</span></label>\r\n <input type=\"text\" class=\"form-control\" tabindex=\"3\" maxlength=\"32\" formControlName=\"companyName\"\r\n placeholder=\"Company Name\" />\r\n <div class=\"alert alert-danger\" *ngIf=\" inquiryForm.controls.companyName.invalid &&(\r\n inquiryForm.controls.companyName.touched ||\r\n inquiryForm.controls.companyName.dirty)\r\n \">\r\n <div *ngIf=\"inquiryForm.controls.companyName.errors\">\r\n Company Name is required\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-group\">\r\n <label class=\"desc\">Email:<span class=\"text-danger\">*</span></label>\r\n <input type=\"email\" spellcheck=\"false\" class=\"form-control\" tabindex=\"4\" maxlength=\"320\"\r\n formControlName=\"email\" placeholder=\"example@example.com\" />\r\n <div class=\"alert alert-danger\" *ngIf=\" inquiryForm.controls.email.invalid &&(\r\n inquiryForm.controls.email.touched ||\r\n inquiryForm.controls.email.dirty)\r\n \">\r\n <div *ngIf=\"\r\n inquiryForm.controls.email.hasError('required') &&\r\n !inquiryForm.controls.email.valid\r\n \">\r\n Email is required\r\n </div>\r\n <div *ngIf=\"\r\n inquiryForm.controls.email.hasError('pattern') &&\r\n !inquiryForm.controls.email.valid\r\n \">\r\n Email is not valid\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-group\">\r\n <label class=\"desc\">Phone Number:</label>\r\n <input type=\"text\" class=\"form-control\" tabindex=\"5\" formControlName=\"phoneNumber\"\r\n [textMask]=\"{mask: USphoneMask}\" placeholder=\"(123) 123-1234\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"inquiryForm.controls.phoneNumber.invalid &&(\r\n inquiryForm.controls.phoneNumber.touched ||\r\n inquiryForm.controls.phoneNumber.dirty) \">\r\n <div *ngIf=\"inquiryForm.controls.phoneNumber.hasError('pattern')\">\r\n Phone Number is not valid\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-group\">\r\n <label class=\"desc notranslate\">Number of Employees:</label>\r\n <select class=\"form-control\" tabindex=\"6\" formControlName=\"numberOfEmployees\">\r\n <option value=\"null\" selected=\"selected\">Number of Employees</option>\r\n <option value=\"0-25\">0-25</option>\r\n <option value=\"26-100\">26-100</option>\r\n <option value=\"101-500\">101-500</option>\r\n <option value=\"501+\">501+</option>\r\n </select>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-group\">\r\n <label class=\"desc\">Comments/Questions:</label>\r\n <textarea class=\"form-control\" spellcheck=\"true\" rows=\"3\" cols=\"50\" tabindex=\"7\" maxlength=\"4000\"\r\n formControlName=\"comments\" placeholder=\"Comments\"></textarea>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"buttons\">\r\n <button class=\"btn btn-primary btn-lg\" (click)=\"saveContactUsInfo()\" [disabled]=\"!inquiryForm.valid\">\r\n <i class=\"glyphicon glyphicon-ok\"></i> CONTACT ME\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</section>\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { FormBuilder, FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport { Meta, Title } from '@angular/platform-browser';\r\n\r\nimport { BannerContext } from \"../../models/banner-context\";\r\nimport { FieldValidationPattern } from \"../../core/utils/field-validations\";\r\nimport { ContactUsService } from \"./contact-us.service\";\r\nimport { NotificationService } from \"../../core/services/notification.service\";\r\nimport { AppState } from \"../../core/app-state\";\r\nimport { CareingtonInfoService } from \"../../services/careington-info.service\";\r\nimport { CareingtonCommunicationDetails } from \"../../models/Contract/careington-communication-details\";\r\n\r\n@Component({\r\n selector: \"app-contact-us\",\r\n templateUrl: \"./contact-us.component.html\",\r\n styleUrls: [\"./contact-us.component.less\"]\r\n})\r\nexport class ContactUsComponent implements OnInit {\r\n bannerContext: BannerContext;\r\n inquiryForm: FormGroup;\r\n address1: string;\r\n address2: string;\r\n city: string;\r\n state: string;\r\n zip: string;\r\n phone: string;\r\n ext: string;\r\n email: string;\r\n USphoneMask = FieldValidationPattern.USphoneFormat;\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private contactUsService: ContactUsService,\r\n private notificationService: NotificationService,\r\n private appState: AppState,\r\n private careingtonInfoService: CareingtonInfoService,\r\n private metaService: Meta, private titleService: Title\r\n ) {\r\n this.titleService.setTitle('Contact Us | Careington Direct');\r\n this.metaService.updateTag({ name: \"description\", content: \"If you'd like to learn more about what Careington can do for you and your business, contact us.\" });\r\n this.bannerContext = new BannerContext();\r\n this.bannerContext.heading = \"CONTACT US\";\r\n }\r\n\r\n ngOnInit() {\r\n this.buildForm();\r\n this.loadCareingtonCommunicationDetails();\r\n }\r\n\r\n buildForm() {\r\n this.inquiryForm = this.formBuilder.group({\r\n firstName: new FormControl(null, [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n lastName: new FormControl(null, [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n companyName: new FormControl(null, [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n email: new FormControl(null, [\r\n Validators.required,\r\n Validators.pattern(FieldValidationPattern.EmailValidationPattern)\r\n ]),\r\n phoneNumber: new FormControl(null, [Validators.pattern(FieldValidationPattern.phoneformat)]),\r\n numberOfEmployees: new FormControl(null, null),\r\n comments: new FormControl(null, null)\r\n });\r\n }\r\n\r\n private loadCareingtonCommunicationDetails(): void {\r\n this.careingtonInfoService.getCareingtonCommunicationDetails().subscribe(\r\n result => {\r\n this.appState.CareingtonCommunicationDetails = <\r\n CareingtonCommunicationDetails\r\n >result;\r\n this.loadAddressDetails();\r\n }\r\n );\r\n }\r\n\r\n loadAddressDetails() {\r\n this.address1 = this.appState.CareingtonCommunicationDetails.address.address1;\r\n this.address2 = this.appState.CareingtonCommunicationDetails.address.address2;\r\n this.city = this.appState.CareingtonCommunicationDetails.address.city;\r\n this.state = this.appState.CareingtonCommunicationDetails.address.stateCode;\r\n this.zip = this.appState.CareingtonCommunicationDetails.address.zipCode;\r\n this.phone = this.appState.CareingtonCommunicationDetails.phoneNumber;\r\n this.ext = this.appState.CareingtonCommunicationDetails.ext;\r\n this.email = this.appState.CareingtonCommunicationDetails.email;\r\n }\r\n\r\n saveContactUsInfo() {\r\n const inquirydata = this.inquiryForm.getRawValue();\r\n if (inquirydata.phoneNumber) {\r\n inquirydata.phoneNumber = inquirydata.phoneNumber.replace(/\\D/g, '');\r\n }\r\n if (inquirydata.numberOfEmployees == \"null\") {\r\n inquirydata.numberOfEmployees = \"\";\r\n }\r\n this.contactUsService.createContactUsInfo(inquirydata).subscribe(\r\n response => {\r\n this.notificationService.Success(\r\n \"Thanks for submitting the query. We will contact you shortly.\"\r\n );\r\n this.inquiryForm.reset();\r\n }\r\n );\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { GroupPortalApiService } from \"../../core/services/group-portal-api.service\";\r\nimport { InquiryRequest } from \"../../models/contactusData/inquiry-request\";\r\nimport { Observable } from \"rxjs\";\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class ContactUsService {\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n createContactUsInfo(inquiryData: InquiryRequest): Observable<InquiryRequest> {\r\n return this.groupPortalApiService.post<InquiryRequest>(\r\n \"api/contact-us/\",\r\n inquiryData\r\n );\r\n }\r\n}\r\n","<section class=\"disc\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div *ngIf=\"htmlContent\">\r\n <div [innerHTML]=htmlContent?.data.marketingComponent[0].htmlBody.html></div>\r\n <p>This plan is not available in Vermont or Washington.</p>\r\n <p><a href=\"https://www1.careington.com/help/privacy-statement.aspx\" target=\"_blank\" rel=\"noopener noreferrer\">Privacy Policy</a> | <a href=\"https://www1.careington.com/help/terms-and-conditions.aspx\" target=\"_blank\" rel=\"noopener noreferrer\">Terms & Conditions</a></p>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n","import { Component, OnInit, Input, ViewEncapsulation } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { AppState } from '../../core/app-state';\r\nimport { Content } from '../../models/Core/content';\r\n\r\n@Component({\r\n selector: 'app-disclosures',\r\n templateUrl: './disclosures.component.html',\r\n styleUrls: ['./disclosures.component.less']\r\n})\r\nexport class DisclosuresComponent implements OnInit {\r\n\r\n @Input() contentCode: string ;\r\n htmlContent: Content;\r\n constructor(private http: HttpClient,\r\n private appState: AppState) { }\r\n\r\n ngOnInit(): void {\r\n this.getContent();\r\n }\r\n\r\n getContent() {\r\n const query = `{\r\n marketingComponent (where: {alias:{alias:\"${this.contentCode}\"} })\r\n {\r\n alias{\r\n alias\r\n }\r\n marketingComponentType\r\n htmlBody{\r\n html\r\n }\r\n markdownBody{\r\n markdown\r\n }\r\n }\r\n }`\r\n const headers = new HttpHeaders()\r\n .set(\"Content-Type\", \"application/json\")\r\n .set(\"Accept\", \"application/json\");\r\n\r\n this.http\r\n .post(this.appState.AppConfig.CmsUrl, JSON.stringify({ query }), { headers: headers })\r\n .subscribe(\r\n (response: Content) => {\r\n this.htmlContent = response;\r\n }\r\n )\r\n }\r\n\r\n}\r\n","<app-banner [context]=\"bannerContext\"></app-banner>\r\n<section class=\"bread\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <ul class=\"breadcrumb small\">\r\n <li><a [routerLink]=\"''\">Home</a></li>\r\n <li class=\"active\">Careington Plan FAQs</li>\r\n <li><a [routerLink]=\"['/faqs-telemedicine']\">Telemedicine FAQs</a></li>\r\n <li><a [routerLink]=\"['/how-to-use']\">How to Use a Careington Plan</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</section>\r\n<section class=\"content\">\r\n <div class=\"container\">\r\n <app-discount-faqs></app-discount-faqs>\r\n </div>\r\n</section>\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Meta, Title } from '@angular/platform-browser';\r\n\r\nimport { BannerContext } from '../../models/banner-context';\r\n\r\n@Component({\r\n selector: 'app-discount-faqs-layout',\r\n templateUrl: './discount-faqs-layout.component.html',\r\n styleUrls: ['./discount-faqs-layout.component.less']\r\n})\r\nexport class DiscountFaqsLayoutComponent implements OnInit {\r\n\r\n bannerContext: BannerContext;\r\n\r\n constructor(private metaService: Meta, private titleService:Title) { \r\n this.titleService.setTitle('Frequently Asked Questions: Careington Plans | Careington Direct');\r\n this.metaService.updateTag({name:\"description\", content:\"Here are some answers to our most commonly asked questions.\"});\r\n }\r\n\r\n ngOnInit() {\r\n this.bannerContext = new BannerContext();\r\n this.bannerContext.heading = \"FREQUENTLY ASKED QUESTIONS\";\r\n this.bannerContext.subHeading = \"Careington Plans\";\r\n }\r\n\r\n}\r\n","<div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <h3>Is this an insurance plan?</h3>\r\n <p><strong>No, this is not an insurance plan</strong>. Our discount plans provide discounted prices on a wide range\r\n of health care services and products. Members will pay for services at the discounted price at the time services\r\n are received.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>How does a Careington plan work?</h3>\r\n <p>First, members can find participating providers by using the \"Provider Search\" page on <a\r\n href=\"https://www1.careington.com\">careington.com</a> or by calling <a href=\"tel:18002900523\"\r\n class=\"phone\">(800) 290-0523</a>. Current members can log into the <a href=\"https://member.careington.com/\"\r\n target=\"_blank\">Careington Member Portal</a> to find a provider in their area. After confirming the provider's\r\n continued participation when making an appointment, members just show their membership card at the time of\r\n service. Members are responsible for paying all fees directly to the provider.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>Can members include dependents on their plans?</h3>\r\n <p>Yes, one of the wonderful features of our plans is that an entire household can receive the discounts, even\r\n children living at college!</p>\r\n <hr class=\"hr-normal\">\r\n <h3>Can members use their membership cards when they travel away from home?</h3>\r\n <p>Yes, a Careington membership card can be used at any participating provider in the United States. Members only\r\n need their membership ID numbers to receive their savings.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>What providers can members go to?</h3>\r\n <p>Members can find participating providers for the plan by visiting the \"Provider Search\" page on <a\r\n href=\"https://www1.careington.com\" target=\"_blank\">careington.com</a> or calling <a href=\"tel:18002900523\"\r\n class=\"phone\">(800) 290-0523</a>. Current members can log into the <a href=\"https://member.careington.com/\"\r\n target=\"_blank\">Careington Member Portal</a> to find a provider in their area.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>How long will it take members to get into the system after they sign up?</h3>\r\n <p>Once your employees are signed up, they will receive their membership materials and membership ID cards in about\r\n 7-10 business days.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>How do members get additional membership cards?</h3>\r\n <p>If members need additional cards for their household, or have lost their card, please call Member Services at <a\r\n href=\"tel:18002900523\" class=\"phone\">(800) 290-0523</a>. They will receive their\r\n membership materials and membership cards in about 7-10 business days.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>Can members go to providers that do\r\n not participate?</h3>\r\n <p>Members may go to the provider of their choice. However, they will only receive a discount by going to a\r\n participating provider.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>There is not a provider close to the member's home. What do they do?</h3>\r\n <p>While some ZIP code areas may have a limited number of providers, there are usually providers within a 50-mile\r\n radius of the member's ZIP code. Members can refer a provider for participation in the network by visiting and\r\n selecting \"Nominate a Provider.\" The program administrator will contact the provider with information on how to\r\n apply to participate in the program. Because of the application and credentialing process, it may take 60-90 days\r\n before a provider is added to the network. Not all providers will agree to accept the discounted fees required by\r\n the program.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>If a doctor or dentist refers a member to a specialist who is not in the network, does the member still get a\r\n discount?</h3>\r\n <p>They will only receive a discount by going to a participating provider. They might try printing out a list of\r\n participating providers to share with their doctor or dentist to see if he/she could recommend any of the\r\n participating specialist locations.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>What if a member doesn't have their membership card?</h3>\r\n <p>If a member needs a membership card, they can call <a href=\"tel:18002900523\">(800) 290-0523</a>, or for faster\r\n service, they can email <a href=\"mailto:memberservices@careington.com\">memberservices@careington.com</a>.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>What if a member feels a provider overcharged them?</h3>\r\n <p>A member can send a copy of their bill and a written letter to the administrator of the plan: Careington\r\n International Corporation, Attn: Provider Relations, P.O. Box 2568, Frisco, TX 75034. They will investigate the\r\n member's inquiry, and will be contacted regarding the findings.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>What if a member has a complaint?</h3>\r\n <p>If a member would like to file a complaint regarding their plan membership, they must submit their complaint in\r\n writing to: Careington International Corporation, P.O. Box 2568, Frisco, TX 75034. Members have the right to\r\n request an appeal if they are dissatisfied with the complaint resolution. After completing the complaint\r\n resolution process, if the member remains dissatisfied, they may contact their state insurance department.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>What if a member has a complaint about a provider?</h3>\r\n <p>Submit all issues in writing, including a copy of their bill.</p>\r\n <div class=\"row\">\r\n <div class=\"col-sm-4\">\r\n <h4>Mailing Address:</h4>\r\n <p>Careington International Corporation<br>\r\n Attention: Member Services<br>\r\n 7400 Gaylord Parkway<br>\r\n Frisco, TX 75034</p>\r\n </div>\r\n <div class=\"col-sm-4\">\r\n <h4>Phone Numbers:</h4>\r\n <p><strong>Phone: </strong> <a href=\"tel:18002900523\" class=\"phone\">(800) 290-0523</a><br>\r\n <strong>Fax: </strong> <a href=\"tel:18883357330\" class=\"phone\">(866) 688-4825</a></p>\r\n </div>\r\n <div class=\"col-sm-4\">\r\n <h4>Email:</h4>\r\n <p><a href=\"mailto:qualityassurance@careington.com\">qualityassurance@careington.com</a></p>\r\n </div>\r\n </div>\r\n <hr class=\"hr-normal\">\r\n <h3>Once a member selects a provider, are they assigned to that provider?<br>\r\n How often can they change providers?</h3>\r\n <p>Another great feature of the plan is the member's ability to select any provider from the network. Members can\r\n change providers at any time, and household members can select their own providers. Members can call <a\r\n href=\"tel:18002900523\" class=\"phone\">(800) 290-0523</a> for help finding participating providers or they can\r\n visit the \"Provider Search\" page on <a href=\"https://www.careington.com\">careington.com</a>.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>What should a member say when they call a provider to make sure they participate?</h3>\r\n <p>The providers will recognize the name of the network with which they participate, so when members call, it is\r\n important to use the name of the correct network.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>How do members cancel their memberships?</h3>\r\n <p> If a member is having issues with their account, they should call Member Services at <a\r\n href=\"tel:18002900523\">(800) 290-0523</a>. If a member would like to cancel their membership, they may contact\r\n their employer.</p>\r\n </div>\r\n</div>\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-discount-faqs',\r\n templateUrl: './discount-faqs.component.html',\r\n styleUrls: ['./discount-faqs.component.less']\r\n})\r\nexport class DiscountFaqsComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","<app-banner [context]=\"bannerContext\"></app-banner>\r\n<section class=\"bread\" *ngIf=\"bundle\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <ul class=\"breadcrumb small\">\r\n <li><a [routerLink]=\"''\">Home</a></li>\r\n <li><a [routerLink]=\"'/group-plans'\">Group Plans</a></li>\r\n <li><a [routerLink]=\"['/plan-detail', bundle.bundleCode]\">{{bundle.bundleCode}}</a></li>\r\n <li class=\"active\">Find a Provider</li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n <section class=\"content\" *ngIf=\"bundle\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n\t\t\t\t<h2 class=\"text-center\">Find a {{bundle.bundleName}} provider in your area.</h2>\r\n\t\t\t\t<care-smart-search id=\"smart-search-wc\" [attr.group-code]=\"planCode\" member-id=\"0\" is-member=\"false\" bootstrap-version=\"3\"><p class=\"text-center\"><i class=\"fas fa-spinner fa-spin\"><span class=\"sr-only\">Loading icon</span></i> Loading...</p></care-smart-search>\r\n\t\t\t\t<hr class=\"hr-normal\">\r\n <p class=\"text-center\"><a [routerLink]=\"'/application'\" class=\"btn btn-lg btn-primary\">GET STARTED</a></p>\r\n </div>\r\n </div>\r\n\t</div>\r\n</section>\r\n<app-disclosures contentCode=\"DISC-NW-NOFEE\"></app-disclosures>\r\n\r\n","import { Component, OnInit, OnDestroy } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Route } from '@angular/compiler/src/core';\r\nimport { BsModalRef, BsModalService } from 'ngx-bootstrap';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Meta, Title } from '@angular/platform-browser';\r\n\r\nimport { BannerContext } from '../../models/banner-context';\r\nimport { AppState } from '../../core/app-state';\r\nimport { Bundle } from '../../models/GroupPlan/Bundle';\r\nimport { BundlePlan } from '../../models/GroupPlan/BundlePlan';\r\nimport { CommonGatewayService } from '../../services/common-gateway.service';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-find-a-provider',\r\n templateUrl: './find-a-provider.component.html',\r\n styleUrls: ['./find-a-provider.component.less']\r\n})\r\nexport class FindAProviderComponent implements OnInit, OnDestroy {\r\n\r\n modalRef: BsModalRef;\r\n bannerContext: BannerContext;\r\n planCode: string;\r\n bundle: Bundle;\r\n selectedPlan: BundlePlan;\r\n hasPageReloaded: boolean = false;\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n private appState: AppState,\r\n private modalService: BsModalService,\r\n private commonGatewatService: CommonGatewayService,\r\n private metaService: Meta,\r\n private titleService: Title\r\n ) { \r\n \r\n }\r\n\r\n ngOnInit() {\r\n this.onButtonClick();\r\n this.planCode = this.route.snapshot.paramMap.get(\"id\");\r\n if (this.planCode == \"CIDV14PD\") {\r\n this.titleService.setTitle('This plan offers savings on dental and vision care | Careington Direct');\r\n this.metaService.updateTag({ name: \"description\", content: \"Members of our Dental & Vision Discount Plan save big on their dental and vision needs.\" });\r\n } else if (this.planCode == \"CIDVT14PD\") {\r\n this.titleService.setTitle('Members save on dental and vision care and get 24/7 doctor access | Careington Direct');\r\n this.metaService.updateTag({ name: \"description\", content: \"Members get free, unlimited, 24/7 virtual access to licensed doctors in addition to receiving significant savings on dental and vision care and more.\" });\r\n } else if (this.planCode == \"CITLHHA16P\") {\r\n this.titleService.setTitle('Members receive 24/7 doctor access and many more health care service | Careington Direct');\r\n this.metaService.updateTag({ name: \"description\", content: \"The plan offers 24/7 free and unlimited virtual access to doctors and nurses, prescription discounts, a medical advocacy service and more.\" });\r\n }\r\n if (!this.isScriptLoaded(environment.careSmartSearchModule)) {\r\n const careSmartSearchJsModule = document.createElement('script');\r\n careSmartSearchJsModule.src = environment.careSmartSearchModule;\r\n careSmartSearchJsModule.setAttribute(\"type\", \"module\");\r\n careSmartSearchJsModule.setAttribute(\"crossorigin\", \"anonymous\");\r\n document.body.appendChild(careSmartSearchJsModule);\r\n }\r\n\r\n if (!this.isScriptLoaded(environment.careSmartSearchNoModule)) {\r\n const careSmartSearchNoModuleScript = document.createElement('script');\r\n careSmartSearchNoModuleScript.src = environment.careSmartSearchNoModule;\r\n careSmartSearchNoModuleScript.setAttribute(\"nomodule\", \"\");\r\n careSmartSearchNoModuleScript.setAttribute(\"crossorigin\", \"anonymous\");\r\n document.body.appendChild(careSmartSearchNoModuleScript);\r\n }\r\n this.bannerContext = new BannerContext();\r\n this.bannerContext.heading = \"CAREINGTON\";\r\n this.bannerContext.description = \"This plan is not available in Vermont & Washington.\";\r\n this.GetPlanDetails();\r\n }\r\n\r\n GetPlanDetails() {\r\n if (!this.appState.Bundles) {\r\n this.GetPlans();\r\n } else {\r\n let plans = this.appState.Bundles;\r\n if (plans != null) {\r\n this.bundle = plans.find(e => e.bundleCode.trim() == this.planCode.trim());\r\n this.bannerContext.subHeading = this.bundle != null ? this.bundle.bundleName : \"\";\r\n } else {\r\n this.bundle = null;\r\n }\r\n }\r\n }\r\n GetPlans() {\r\n return this.commonGatewatService.GetGroupPlans().subscribe(\r\n (response: Bundle[]) => {\r\n this.appState.Bundles = response;\r\n this.GetPlanDetails();\r\n }\r\n );\r\n }\r\n isScriptLoaded(src :any) {\r\n return Boolean(document.querySelector('script[src=\"' + src + '\"]'));\r\n }\r\n\r\n reloadPage(): void {\r\n if (localStorage.getItem('hasPageReloaded')==='yes') {\r\n console.log('hasPageReloaded',localStorage.getItem('hasPageReloaded'));\r\n return; // If the page has already reloaded once, do nothing\r\n }\r\n\r\n // Update the current URL with a query parameter to indicate that the page has been reloaded\r\n this.router.navigate([], {\r\n queryParams: { reloaded: 'true' },\r\n queryParamsHandling: 'merge', // Keeps the other query parameters if any\r\n });\r\n\r\n // Reload the page entirely\r\n window.location.reload();\r\n\r\n // Set the flag to true to prevent further reloads\r\n this.hasPageReloaded = true;\r\n localStorage.setItem('hasPageReloaded','yes')\r\n }\r\n\r\n ngOnDestroy(){\r\n localStorage.removeItem('hasPageReloaded');\r\n console.log('hasPageReloaded is removed');\r\n }\r\n\r\n onButtonClick(): void {\r\n console.log('Button clicked! Reloading page...');\r\n this.reloadPage(); // Calling reloadPage method\r\n }\r\n\r\n}\r\n","<footer>\r\n <div class=\"container\">\r\n <div class=\"row small\">\r\n <div class=\"col-xs-6 col-sm-4\">\r\n <h4 class=\"h5\">NAVIGATE</h4>\r\n <p><a class=\"anchorCursor\" [routerLink]=\"'/group-plans'\">Group Plans</a></p>\r\n <p><a class=\"anchorCursor\" [routerLink]=\"'/application'\">Get Started</a></p>\r\n <p><a class=\"anchorCursor\" [routerLink]=\"'/contact-us'\">Contact by Email</a></p>\r\n <p><a class=\"anchorCursor\" [routerLink]=\"['/faqs-dental-plans']\">Careington Plan FAQs</a></p>\r\n <p><a class=\"anchorCursor\" [routerLink]=\"['/faqs-telemedicine']\">Telemedicine FAQs</a></p>\r\n <p><a class=\"anchorCursor\" [routerLink]=\"['/how-to-use']\">How to Use a Careington Plan</a></p>\r\n <p><a class=\"anchorCursor\" [routerLink]=\"'/admin/login'\">Admin Login</a></p>\r\n </div>\r\n <div class=\"col-xs-6 col-sm-4 col-sm-push-4 text-right\">\r\n <h4 class=\"h5\">OUR BRANDS</h4>\r\n <p><a\r\n href=\"http://www1.careington.com/?utm_source=website&utm_medium=footerlink&utm_campaign=CareingtonDirectLink\"\r\n target=\"_blank\" title=\"This link will open in a new window.\">Careington International Corporation</a></p>\r\n <p><a\r\n href=\"http://www.careingtonbenefitsolutions.com/?utm_source=website&utm_medium=footerlink&utm_campaign=CareingtonDirectLink\"\r\n target=\"_blank\" title=\"This link will open in a new window.\">Careington Benefit Solutions</a></p>\r\n <p><a\r\n href=\"https://www.dialcare.com/?utm_source=website&utm_medium=footerlink&utm_campaign=CareingtonDirectLink\"\r\n target=\"_blank\" title=\"This link will open in a new window.\">DialCare</a></p>\r\n <p><a\r\n href=\"https://www.launchpatients.com/?utm_source=website&utm_medium=footerlink&utm_campaign=CareingtonDirectLink\"\r\n target=\"_blank\" title=\"This link will open in a new window.\">Launch Loyalty</a></p>\r\n <p><a\r\n href=\"https://www.munroesutton.co.uk/?utm_source=website&utm_medium=footerlink&utm_campaign=CareingtonDirectLink\"\r\n target=\"_blank\" title=\"This link will open in a new window.\">Munroe Sutton</a></p>\r\n </div>\r\n <div class=\"col-sm-4 col-sm-pull-4 text-center\">\r\n <p>\r\n <a class=\"anchorCursor\" (click)=\"NavigateToTop()\"><img src=\"../../assets/img/ci-ele-trans.png\"\r\n alt=\"Back to Top\" class=\"footer-icon\" /></a>\r\n </p>\r\n <p>\r\n ©{{year}} Copyright\r\n </p>\r\n <p>\r\n {{ communicationDetails.name }}<br />\r\n {{ communicationDetails.address.address1 }}<br />\r\n {{ communicationDetails.address.city }}, {{ communicationDetails.address.stateCode }}\r\n {{ communicationDetails.address.zipCode }}\r\n </p>\r\n <p>\r\n <a href=\"tel:{{ communicationDetails.phoneNumber }}\">{{ communicationDetails.phoneNumber }}</a>\r\n </p>\r\n <p>\r\n <a [routerLink]=\"['/terms-and-conditions']\" routerLinkActive=\"router-link-active\">Terms & Conditions</a>\r\n |\r\n <a [routerLink]=\"['/privacy-policy']\" routerLinkActive=\"router-link-active\">Privacy Policy</a>\r\n </p>\r\n <p><a [routerLink]=\"['/site-map']\">Site Map</a></p>\r\n </div>\r\n </div>\r\n </div>\r\n</footer>\r\n","import { Component, OnInit, Input } from \"@angular/core\";\r\n\r\nimport { AppState } from \"../../core/app-state\";\r\nimport { CareingtonInfoService } from '../../services/careington-info.service';\r\nimport { CareingtonCommunicationDetails } from '../../models/Contract/careington-communication-details';\r\n\r\n@Component({\r\n selector: \"app-footer\",\r\n templateUrl: \"./footer.component.html\",\r\n styleUrls: [\"./footer.component.less\"]\r\n})\r\nexport class FooterComponent implements OnInit {\r\n\r\n @Input() communicationDetails: CareingtonCommunicationDetails;\r\n\r\n year: number;\r\n\r\n constructor(private appState: AppState,\r\n private careingtonInfoService: CareingtonInfoService) { }\r\n\r\n ngOnInit() {\r\n this.year = new Date().getFullYear();\r\n }\r\n\r\n NavigateToTop() {\r\n window.scrollTo(0, 0);\r\n }\r\n}\r\n","<app-banner [context]=\"bannerContext\"></app-banner>\r\n<section class=\"bread\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <ul class=\"breadcrumb small\">\r\n <li><a class=\"anchorCursor\" [routerLink]=\"''\">Home</a></li>\r\n <li><a class=\"anchorCursor\" [routerLink]=\"['/admin/login']\">Login</a></li>\r\n <li class=\"active\">Forgot Password</li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</section>\r\n<section class=\"content\" id=\"learn-more\">\r\n <div class=\"container\" *ngIf=\"showReset\">\r\n <div [formGroup]=\"forgotPwdForm\" name=\"resetPwdForm\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <h2>Forgot Password</h2>\r\n <hr class=\"hr-left align-left\">\r\n <p>Enter your email address below to help us identify you.</p>\r\n <div class=\"row\">\r\n <div class=\"col-sm-4\">\r\n <div class=\"form-group\">\r\n <label class=\"sr-only\">Email Address:</label>\r\n <input type=\"email\" class=\"form-control\" placeholder=\"email@website.com\" formControlName=\"email\"\r\n maxlength=\"320\" />\r\n <div class=\"alert alert-danger\"\r\n *ngIf=\" forgotPwdForm.controls.email.invalid && (forgotPwdForm.controls.email.touched || forgotPwdForm.controls.email.dirty)\">\r\n <div *ngIf=\"forgotPwdForm.controls.email.hasError('required')\">\r\n Email is required\r\n </div>\r\n <div *ngIf=\"forgotPwdForm.controls.email.hasError('pattern')\">\r\n Email is not valid\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <p><a (click)=\"RedirectToSuccess()\" [class.disabled]=!forgotPwdForm.valid class=\"btn btn-success\">NEXT</a></p>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"container\" *ngIf=\"!showReset\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <h2>Reset Your Password</h2>\r\n <hr class=\"hr-left align-left\">\r\n <p>You will receive an email with a link to reset your password.</p>\r\n </div>\r\n </div>\r\n </div>\r\n</section>\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {\r\n FormBuilder,\r\n FormControl,\r\n FormGroup,\r\n Validators\r\n} from \"@angular/forms\";\r\nimport { Observable, of } from \"rxjs\";\r\nimport { Router } from \"@angular/router\";\r\nimport { Title } from '@angular/platform-browser';\r\n\r\nimport { BannerContext } from \"../../models/banner-context\";\r\nimport { FieldValidationPattern } from \"../../core/utils/field-validations\";\r\nimport { ResetPasswordResponse } from \"../../models/ForgotPassword/resetpassword-response\";\r\nimport { AppState } from \"../../core/app-state\";\r\nimport { ForgotPasswordService } from \"./forgot-password.service\";\r\n\r\n@Component({\r\n selector: 'app-forgot-password',\r\n templateUrl: './forgot-password.component.html',\r\n styleUrls: ['./forgot-password.component.less']\r\n})\r\nexport class ForgotPasswordComponent implements OnInit {\r\n\r\n showReset: boolean = true;\r\n forgotPwdForm: FormGroup;\r\n\r\n bannerContext: BannerContext;\r\n constructor(private formBuilder: FormBuilder,\r\n private route: Router,\r\n private appState: AppState,\r\n private forgotPsswordService: ForgotPasswordService,\r\n private titleService: Title\r\n ) {\r\n titleService.setTitle('Forgot Password | Careington Direct');\r\n this.bannerContext = new BannerContext();\r\n this.bannerContext.heading = \"ADMINISTRATOR LOGIN\";\r\n }\r\n\r\n ngOnInit() {\r\n this.forgotPwdForm = this.formBuilder.group({\r\n email: new FormControl(\"\", [\r\n Validators.required,\r\n Validators.pattern(FieldValidationPattern.EmailValidationPattern)\r\n ])\r\n });\r\n\r\n }\r\n RedirectToSuccess() {\r\n if (this.forgotPwdForm.invalid) {\r\n return;\r\n }\r\n this.forgotPsswordService.postForgotPassword(this.forgotPwdForm.getRawValue().email).subscribe(\r\n (resetPasswordResponse: ResetPasswordResponse) => {\r\n this.showReset = false;\r\n },\r\n error => {\r\n this.showReset = true;\r\n }\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable } from \"rxjs\";\r\n\r\nimport { GroupPortalApiService } from \"../../core/services/group-portal-api.service\";\r\nimport { ResetPasswordResponse } from \"../../models/ForgotPassword/resetpassword-response\";\r\nimport { ApiPaths } from '../../shared/utils/ApiPaths';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ForgotPasswordService {\r\n\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n postForgotPassword(\r\n email: string\r\n ): Observable<ResetPasswordResponse> {\r\n const apiPaths = ApiPaths.forgotPassword_post.replace(\"{email}\", encodeURIComponent(email));\r\n return this.groupPortalApiService.post<ResetPasswordResponse>(\r\n apiPaths,\r\n email\r\n );\r\n }\r\n\r\n}\r\n","<h3>How do I submit my group's members?</h3>\r\n<p>Fill in this <a href=\"../../../assets/files/CID-EligibilityFile.xlsx\">eligibility file</a> and upload it to the\r\n <a [routerLink]=\"['/admin/upload-employees']\">Add Employee/s</a> page.</p>\r\n<hr class=\"hr-normal\">\r\n<h3>What is eligibility?</h3>\r\n<p>The file used to add/update the names of your group members/employees. This is provided on the \"<a [routerLink]=\"['/admin/upload-employees']\">Add Employee/s</a>\" page.</p>\r\n<hr class=\"hr-normal\">\r\n<h3>Can I enroll my employees/members anywhere in the U.S.?</h3>\r\n<p>These plans are not available in VT, WA and UT.</p>\r\n<hr class=\"hr-normal\">\r\n<h3>How do I get invoices?</h3>\r\n<p><a href=\"#\" data-target=\"#invoice-mod\" data-toggle=\"modal\" (click)=\"openGetInvoiceTemplate(GetInvoiceTemplate)\">Click here</a> to view the invoicing reference guide.</p>\r\n<hr class=\"hr-normal\">\r\n<h3>How do I cancel my group plan?</h3>\r\n<p>If this plan is employee funded, the employee has the right to cancel within the first 30 days after the effective\r\n date or receipt of membership materials (whichever is later) and receive a full refund. If for any reason during this\r\n time period they are dissatisfied with the plan and wish to cancel and obtain a refund, they must submit a written\r\n cancellation request letter and a request for refund with employee name and member ID number to you. You, the\r\n administrator, will accept cancellation requests at any time and will stop collecting membership fees in a reasonable\r\n amount of time, but no later than 30 days after receiving a cancellation notice. When employees cancel, they will\r\n continue to have access to the plan for the remainder of the period for which they have paid; membership will\r\n terminate at the end of that period.</p>\r\n<hr class=\"hr-normal\">\r\n<h3>How do I add a group plan?</h3>\r\n<p>Contact us at <a href=\"tel:18444355671\">(844) 435-5671</a>.</p>\r\n<hr class=\"hr-normal\">\r\n<h3>How do members add dependents?</h3>\r\n<p><a href=\"../../../assets/files/CID-Eligibility-Additions-Sample.xlsx\">Click here</a> to download a sample of how to add\r\n dependents for your employees.</p>\r\n<hr class=\"hr-normal\">\r\n<h3>How do members get additional membership cards?</h3>\r\n<p>If a member needs additional cards for their household, or they have lost their card, they can call Member Services\r\n at <a href=\"tel:18002900523\">(800) 290-0523</a>. They will receive their membership materials and membership cards in\r\n about 7-10 business days.</p>\r\n\r\n <ng-template #GetInvoiceTemplate>\r\n <div class=\"modal-header\">\r\n <h4 class=\"modal-title pull-left\" id=\"myModalLabel\">A Quick Reference Guide to Invoicing</h4>\r\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\r\n <span aria-hidden=\"true\">×</span>\r\n </button>\r\n </div>\r\n <div class=\"modal-body\">\r\n <ul>\r\n <li>Invoices are generated on the last business day of the month for the current month.</li>\r\n <li>The invoice is based off of the active eligibility in our system with an effective date of the 1<sup>st</sup> of the current month and prior.</li>\r\n <li>In order for an invoice to be reflective of the most recent eligibility file, it must be received a minimum of 3 business days prior to the last business day of the month. It is recommended to schedule your final file of the month to be received by Careington by the 25<sup>th</sup> of each month in order to ensure invoices reflect current eligibility.</li>\r\n <li>As you are billed on the last business day of the month for the current month, any member added with a prior month's effective date will appear on the invoice both in the \"all products\" count for the invoiced month and as a \"retro-active add\" for the month in which the member was added.</li>\r\n <li>Should a member be passed in a file with an effective date of any prior months, the system will retroactively bill for the member up to 3 months back, appearing as a \"retro-active add.\"</li>\r\n <li>Careington's billing system accommodates only \"first-of-the-month\" effective dates.</li>\r\n <li>The system bills based on membership effective dates. The following policies detail how an invoice is impacted by an eligibility file which does not contain an effective date and/or by a file that contains an effective date that is not a \"first-of-the-month\":\r\n <ul>\r\n <li>Any member sent with an effective date of the 1-15<sup>th</sup> receives an effective date of the 1<sup>st</sup> of the month noted in the file.</li>\r\n <li>Any member sent with an effective date of the 16-31<sup>st</sup> will receive an effective date of the 1<sup>st</sup> of the upcoming month based on the date noted in the file.</li>\r\n <li>Any member added to our system on the 1-15<sup>th</sup> without an effective date will receive an effective date of the 1<sup>st</sup> of the current month.</li>\r\n <li>Any member added to our system on the 16-31<sup>st</sup> without an affective date will receive an effective date of the 1<sup>st</sup> of the upcoming month.</li>\r\n </ul>\r\n </li>\r\n <li>Files containing terminations must be received a minimum of 3 business days prior to the last business day of the month in order to be reflected on the current month invoice.</li>\r\n <li>Termination dates must be the \"first-of-the-month.\" Please be aware of the following policies with regard to termination dates when members are cancelled by omission or by a file that contains a termination date that is not a \"first-of-the-month\" date. Those rules are as follows:\r\n <ul>\r\n <li>Terminations dated for the I-15<sup>th</sup> will be effective the 1<sup>st</sup> of the current month noted in the file.</li>\r\n <li>Terminations dated for 16-31<sup>st</sup> will be effective the 1<sup>st</sup> of the following month noted in the file.</li>\r\n <li>Terminations done by omission use the 1-15<sup>th</sup> logic as noted above based off the date the file was loaded to our system.</li>\r\n </ul>\r\n </li>\r\n </ul>\r\n </div>\r\n </ng-template>","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';\r\n\r\n@Component({\r\n selector: 'app-general-faqs',\r\n templateUrl: './general-faqs.component.html',\r\n styleUrls: ['./general-faqs.component.less']\r\n})\r\nexport class GeneralFaqsComponent implements OnInit {\r\n\r\n modalRef: BsModalRef;\r\n constructor(private modalService: BsModalService) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n openGetInvoiceTemplate(template: TemplateRef<any>) {\r\n this.modalRef = this.modalService.show(template, {\r\n class: \"modal-dialog modal-lg\"\r\n });\r\n }\r\n\r\n}\r\n","<section class=\"content\" id=\"learn-more\" *ngIf=\"loginForm\">\r\n <div class=\"container\">\r\n <app-progress-bar-steps [CurrentStep]=\"registrationStep.AdministratorAccount\"></app-progress-bar-steps>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <h3 class=\"panel-title edgeBrowser-Heading\">Administrator Account</h3>\r\n <hr class=\"hr-left align-left\" />\r\n <p>Create your administrator account to add employees, view invoices, download plan information and more!</p>\r\n <div [formGroup]=\"loginForm\" name=\"myForm\">\r\n <hr class=\"hr-normal\" />\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <p>This will be your login information.</p>\r\n <div class=\"form-group\">\r\n <label>Email Address:<span class=\"req\">*</span></label>\r\n <div class=\"form-inline\">\r\n <input type=\"email\" formControlName=\"userName\" class=\"form-control amt\" maxlength=\"320\"\r\n placeholder=\"email@website.com\" (input)=\"showError = false\" />\r\n <button class=\"btn btn-primary btn-sm amt\" (click)=\"verifyEmail()\"\r\n [disabled]=\"disableVerifyButton()\">VERIFY</button>\r\n <div class=\"alert alert-danger\" *ngIf=\"showError\">{{errorMsg}}</div>\r\n <div *ngIf=\"loginForm.controls.userName.invalid && (\r\n loginForm.controls.userName.dirty ||\r\n loginForm.controls.userName.touched)\r\n \" class=\"alert alert-danger\">\r\n <div *ngIf=\"\r\n loginForm.controls.userName.hasError('required') &&\r\n !loginForm.controls.userName.valid\r\n \">\r\n Email address is required\r\n </div>\r\n <div *ngIf=\"loginForm.controls.userName.hasError('pattern')\">\r\n Email is not valid\r\n </div>\r\n </div>\r\n </div>\r\n <app-verify-email *ngIf=\"showVerifyEmailSection\" [verifyEmailForm]=\"loginForm\">\r\n </app-verify-email>\r\n </div>\r\n <div class=\"form-group\">\r\n <label>Password:<span class=\"req\">*</span></label>\r\n <input type=\"password\" formControlName=\"password\" class=\"form-control input-sm\" placeholder=\"********\"\r\n (keyup)=\"ValidatePwd($event)\" maxlength=\"50\" />\r\n </div>\r\n <div class=\"form-group\">\r\n <label>Confirm Password:<span class=\"req\">*</span></label>\r\n <input type=\"password\" formControlName=\"confirmPassword\" class=\"form-control input-sm\"\r\n placeholder=\"********\" maxlength=\"50\" />\r\n <div *ngIf=\"loginForm.controls.confirmPassword.invalid && (\r\n loginForm.controls.confirmPassword.dirty ||\r\n loginForm.controls.confirmPassword.touched)\r\n \" class=\"alert alert-danger\">\r\n <div *ngIf=\"\r\n loginForm.controls.confirmPassword.hasError('required') &&\r\n !loginForm.controls.confirmPassword.valid\r\n \">\r\n Confirm Password is required\r\n </div>\r\n <div\r\n *ngIf=\"\r\n loginForm.controls.confirmPassword.hasError('pattern') || loginForm.controls.confirmPassword.hasError('mustMatch')\">\r\n Password and Confirm Password must match\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-6\">\r\n <h4>Password Requirements</h4>\r\n <p>\r\n <i class=\"fas \"\r\n [ngClass]=\"{'fa-times-circle red': !isPwdLengthValid, 'fa-check-circle green': isPwdLengthValid }\"></i>\r\n At least 8 characters\r\n </p>\r\n <p>\r\n <i class=\"fas \"\r\n [ngClass]=\"{'fa-times-circle red': !isPwdUpperValid, 'fa-check-circle green': isPwdUpperValid }\"></i>\r\n One upppercase letter\r\n </p>\r\n <p>\r\n <i class=\"fas \"\r\n [ngClass]=\"{'fa-times-circle red': !isPwdLowerValid, 'fa-check-circle green': isPwdLowerValid }\"></i>\r\n One lowercase letter\r\n </p>\r\n <p>\r\n <i class=\"fas \"\r\n [ngClass]=\"{'fa-times-circle red': !isPwdNumberValid, 'fa-check-circle green': isPwdNumberValid }\"></i>\r\n One number\r\n </p>\r\n <p>\r\n <i class=\"fas \"\r\n [ngClass]=\"{'fa-times-circle red': !isPwdSpecialCharValid, 'fa-check-circle green': isPwdSpecialCharValid }\"></i>\r\n One special character\r\n </p>\r\n </div>\r\n </div>\r\n <hr class=\"hr-normal\" />\r\n <app-navigation-buttons [CurrentStep]=\"registrationStep.AdministratorAccount\" (NextEvent)=\"SaveAdminAccount()\"\r\n [isDisabled]=\"!canMoveNext()\"></app-navigation-buttons>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n</section>\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { FormBuilder, FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport { Observable, of } from \"rxjs\";\r\nimport { Title } from '@angular/platform-browser';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\n\r\nimport { FieldValidationPattern } from \"../../../core/utils/field-validations\";\r\nimport { AdministratorRequest } from \"../../../models/Administrator/administrator-request.model\";\r\nimport { AdministratorService } from \"../../../components/get-started/administrator-account/administrator.service\";\r\nimport { AdministratorResponse } from \"../../../models/Administrator/administrator-response.model\";\r\nimport { AppState } from \"../../../core/app-state\";\r\nimport { RegistrationStep } from \"../registration-step.enum\";\r\nimport { ChoosePlanService } from \"../choose-plan/choose-plan.service\";\r\nimport { ApplicationPlanResponse } from \"../../../models/ApplicationPlan/application-plan-response\";\r\nimport { EmailVerificationService } from '../verify-email/email-verification.service';\r\nimport { HttpStatusCodes } from '../../../../app/shared/utils/http-status-codes';\r\nimport { NotificationService } from '../../../core/services/notification.service';\r\n\r\n@Component({\r\n selector: \"administrator-account\",\r\n templateUrl: \"./administrator-account.component.html\",\r\n styleUrls: [\"./administrator-account.component.less\"]\r\n})\r\nexport class AdministratorAccountComponent implements OnInit {\r\n loginForm: FormGroup;\r\n isPwdLowerValid: boolean = false;\r\n isPwdUpperValid: boolean = false;\r\n isPwdSpecialCharValid: boolean = false;\r\n isPwdNumberValid: boolean = false;\r\n isPwdLengthValid: boolean = false;\r\n showVerifyEmailSection: boolean = false;\r\n showError: boolean = false;\r\n errorMsg: string = \"\";\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private route: Router,\r\n private administratorService: AdministratorService,\r\n private choosePlanService: ChoosePlanService,\r\n private appState: AppState,\r\n private emailVerificationService: EmailVerificationService,\r\n private titleService: Title,\r\n private notificationService: NotificationService\r\n ) { \r\n titleService.setTitle('Administrator Account | Careington Direct');\r\n }\r\n\r\n ngOnInit() {\r\n this.validateProgress();\r\n }\r\n\r\n validateProgress() {\r\n if (!this.appState.ChoosePlans) {\r\n this.route.navigate([\"/application\"]);\r\n } else {\r\n this.buildForm();\r\n this.getData();\r\n }\r\n }\r\n\r\n getData(): void {\r\n if (this.appState.Administrator) {\r\n this.loginForm.patchValue(this.appState.Administrator);\r\n this.loginForm.controls[\"confirmPassword\"].setValue(\r\n this.appState.Administrator.password\r\n );\r\n this.isPwdLowerValid = true;\r\n this.isPwdUpperValid = true;\r\n this.isPwdSpecialCharValid = true;\r\n this.isPwdNumberValid = true;\r\n this.isPwdLengthValid = true;\r\n this.loginForm.disable();\r\n }\r\n }\r\n\r\n buildForm(): void {\r\n this.loginForm = this.formBuilder.group(\r\n {\r\n userName: new FormControl(\"\", [\r\n Validators.required,\r\n Validators.pattern(FieldValidationPattern.EmailValidationPattern)\r\n ]),\r\n password: new FormControl({ value: \"\", disabled: true }, [\r\n Validators.required,\r\n Validators.pattern(FieldValidationPattern.PasswordPattern)\r\n ]),\r\n confirmPassword: new FormControl({ value: \"\", disabled: true }, [Validators.required]),\r\n verificationCode: new FormControl(\"\", [Validators.required,\r\n Validators.pattern(FieldValidationPattern.noSpace),\r\n Validators.pattern(FieldValidationPattern.numerals)])\r\n },\r\n {\r\n validator: MustMatch(\"password\", \"confirmPassword\")\r\n }\r\n );\r\n }\r\n\r\n ValidatePwd(event: any) {\r\n var lowerCaseLetters = /[a-z]/g;\r\n var pwdKeyValue = event.target.value;\r\n if (pwdKeyValue.match(lowerCaseLetters)) {\r\n this.isPwdLowerValid = true;\r\n } else {\r\n this.isPwdLowerValid = false;\r\n }\r\n // Validate capital letters\r\n var upperCaseLetters = /[A-Z]/g;\r\n if (pwdKeyValue.match(upperCaseLetters)) {\r\n this.isPwdUpperValid = true;\r\n } else {\r\n this.isPwdUpperValid = false;\r\n }\r\n\r\n // Validate special charector\r\n var specialChars = /([!,%,&,@,#,$,^,*,?,_,~])/g;\r\n if (pwdKeyValue.match(specialChars)) {\r\n this.isPwdSpecialCharValid = true;\r\n } else {\r\n this.isPwdSpecialCharValid = false;\r\n }\r\n\r\n // Validate numbers\r\n var numbers = /[0-9]/g;\r\n if (pwdKeyValue.match(numbers)) {\r\n this.isPwdNumberValid = true;\r\n } else {\r\n this.isPwdNumberValid = false;\r\n }\r\n\r\n // Validate length\r\n if (pwdKeyValue.length >= 8) {\r\n this.isPwdLengthValid = true;\r\n } else {\r\n this.isPwdLengthValid = false;\r\n }\r\n }\r\n\r\n canCreate(): boolean {\r\n if (this.appState.RecordLocator) return false;\r\n return true;\r\n }\r\n\r\n SaveAdminAccount() {\r\n\r\n let administratorRequest: AdministratorRequest = <AdministratorRequest>(\r\n this.loginForm.getRawValue()\r\n );\r\n this.upsertService(administratorRequest).subscribe(\r\n (administratorResponse: AdministratorResponse) => {\r\n if (this.appState.Administrator == null) {\r\n this.appState.Administrator = administratorResponse;\r\n this.appState.RecordLocator = administratorResponse.recordLocator;\r\n this.choosePlanService\r\n .SaveChoosePlan(\r\n this.appState.RecordLocator,\r\n this.appState.ChoosePlans.selectedPlans\r\n )\r\n .subscribe(\r\n (applicationPlan: ApplicationPlanResponse) => {\r\n this.route.navigate([\"/application/company\"]);\r\n }\r\n );\r\n } else {\r\n this.appState.Administrator = administratorResponse;\r\n this.route.navigate([\"/application/company\"]);\r\n }\r\n }\r\n );\r\n }\r\n upsertService(\r\n administratorRequest: AdministratorRequest\r\n ): Observable<AdministratorResponse> {\r\n if (this.canCreate()) {\r\n return this.administratorService.postAdministratorAccount(\r\n administratorRequest\r\n );\r\n }\r\n if (this.loginForm.pristine) {\r\n return of(this.appState.Administrator);\r\n }\r\n return this.administratorService.putAdministratorAccount(\r\n this.appState.RecordLocator,\r\n this.appState.Administrator.id,\r\n administratorRequest\r\n );\r\n }\r\n\r\n canMoveNext(): Boolean {\r\n if (this.appState.Administrator) {\r\n return this.loginForm.pristine || this.loginForm.valid;\r\n } else {\r\n //Enable next button only if form is valid and password text box is enabled.\r\n return (this.loginForm.valid && !this.loginForm.get('password').disabled);\r\n }\r\n }\r\n\r\n get registrationStep() {\r\n return RegistrationStep;\r\n }\r\n\r\n verifyEmail() {\r\n this.showError = false;\r\n this.emailVerificationService.verifyEmailAndSendVerificationCode(this.loginForm.get('userName').value)\r\n .subscribe(response => {\r\n this.showVerifyEmailSection = true;\r\n this.loginForm.get('userName').disable();\r\n },\r\n error => {\r\n this.handleError(error);\r\n });\r\n }\r\n\r\n handleError(error: HttpErrorResponse): void {\r\n let errorList: string = \"\";\r\n\r\n if (error.status == HttpStatusCodes.UNPROCESSABLE_ENTITY && error.error.errors != null) {\r\n this.showError = true;\r\n this.errorMsg = \"\";\r\n for (const key in error.error.errors) {\r\n error.error.errors[key].forEach(errorValue => {\r\n this.errorMsg = this.errorMsg.concat(errorValue, \"\\n\");\r\n });\r\n }\r\n return;\r\n }\r\n else if (error.status != HttpStatusCodes.UNAUTHORIZED) {\r\n errorList = \"Something went wrong, please try again after some time or reach out to helpdesk.\";\r\n this.notificationService.Error(errorList, true);\r\n return;\r\n }\r\n\r\n if (errorList) {\r\n this.notificationService.Error(errorList, true);\r\n }\r\n }\r\n\r\n disableVerifyButton() {\r\n return this.loginForm.controls.userName.invalid || this.showVerifyEmailSection || this.loginForm.disabled;\r\n }\r\n}\r\n\r\nexport function MustMatch(controlName: string, matchingControlName: string) {\r\n return (formGroup: FormGroup) => {\r\n const control = formGroup.controls[controlName];\r\n const matchingControl = formGroup.controls[matchingControlName];\r\n\r\n if (matchingControl.errors && !matchingControl.errors.mustMatch) {\r\n // return if another validator has already found an error on the matchingControl\r\n return;\r\n }\r\n // set error on matchingControl if validation fails\r\n if (control.value !== matchingControl.value) {\r\n matchingControl.setErrors({ mustMatch: true });\r\n } else {\r\n matchingControl.setErrors(null);\r\n }\r\n };\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\n\r\nimport { GroupPortalApiService } from \"../../../core/services/group-portal-api.service\";\r\nimport { AdministratorResponse } from \"../../../models/Administrator/administrator-response.model\";\r\nimport { AdministratorRequest } from \"../../../models/Administrator/administrator-request.model\";\r\nimport { ApiPaths } from '../../../shared/utils/ApiPaths';\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class AdministratorService {\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n postAdministratorAccount(adminRequest: AdministratorRequest): Observable<AdministratorResponse> {\r\n const apiUrl = ApiPaths.adminAccount_post;\r\n return this.groupPortalApiService.post<AdministratorResponse>(apiUrl, adminRequest);\r\n }\r\n\r\n putAdministratorAccount(recordLocator: string, id: number, adminRequest: AdministratorRequest): Observable<AdministratorResponse> {\r\n const apiUrl = ApiPaths.adminAccount_put.replace(\"{recordLocator}\", recordLocator).replace(\"{id}\", id.toString());\r\n return this.groupPortalApiService.put<AdministratorResponse>(apiUrl, adminRequest);\r\n }\r\n\r\n getAdministrator(recordLocator: string): Observable<AdministratorResponse> {\r\n const apiUrl = ApiPaths.adminAccount_get.replace(\"{recordLocator}\", recordLocator);\r\n return this.groupPortalApiService.get<AdministratorResponse>(apiUrl);\r\n }\r\n}\r\n","<div class=\"container\" *ngIf=\"billingInfoForm\">\r\n <section class=\"content\" id=\"learn-more\">\r\n <app-progress-bar-steps [CurrentStep]=\"registrationStep.BillingInformation\"></app-progress-bar-steps>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <h3 class=\"panel-title edgeBrowser-Heading\">Billing Information</h3>\r\n <hr class=\"hr-left align-left\" />\r\n <p>If billing is handled by another individual, please change the information to reflect the correct individual.\r\n </p>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <app-contact-information [contactForm]=\"billingInfoForm\" [parentForm]=\"registrationStep.BillingInformation\">\r\n </app-contact-information>\r\n </div>\r\n <div class=\"col-sm-6\">\r\n <h5>Billing Address same as Mailing Address?</h5>\r\n <div [formGroup]=\"billingOptionForm\">\r\n <div class=\"radio\">\r\n <label>\r\n <input type=\"radio\" value=\"1\" formControlName=\"sameBillingAddress\" />Yes</label>\r\n </div>\r\n <div class=\"radio\">\r\n <label>\r\n <input type=\"radio\" value=\"0\" formControlName=\"sameBillingAddress\" />No</label>\r\n </div>\r\n </div>\r\n <hr class=\"hr-normal\" />\r\n <div *ngIf=\"sameBillingAddress == '1'\">\r\n <p>\r\n {{billingInfoForm.value.address1}}<br>\r\n {{billingInfoForm.value.address2}}<br>\r\n {{billingInfoForm.value.city}},\r\n {{billingInfoForm.value.stateCode}}\r\n {{billingInfoForm.value.zipCode}}\r\n </p>\r\n </div>\r\n <div class=\"desc\" *ngIf=\"sameBillingAddress == '0'\">\r\n <app-address [states]=\"states\" [AddressForm]=\"billingInfoForm\"\r\n [parentForm]=\"registrationStep.BillingInformation\" [isDisabled]=false></app-address>\r\n </div>\r\n </div>\r\n </div>\r\n <hr class=\"hr-normal\" />\r\n <app-navigation-buttons [CurrentStep]=\"registrationStep.BillingInformation\"\r\n [isDisabled]=\"!billingInfoForm.valid\" (NextEvent)=\"SaveBillingInformation()\"></app-navigation-buttons>\r\n </div>\r\n </div>\r\n </section>\r\n</div>\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { FormBuilder, FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport { Observable } from \"rxjs\";\r\nimport { Title } from '@angular/platform-browser';\r\n\r\nimport { FieldValidationPattern } from \"../../../core/utils/field-validations\";\r\nimport { RegistrationStep } from \"../registration-step.enum\";\r\nimport { StateInfo } from \"../../../models/state-info\";\r\nimport { AppState } from \"../../../core/app-state\";\r\nimport { CommonGatewayService } from \"../../../services/common-gateway.service\";\r\nimport { BillinginformationService } from \"../../../components/get-started/billing-information/billinginformation.service\";\r\nimport { BillingInformationRequest } from \"../../../models/BillingInformation/billinginformation-request.model\";\r\nimport { BillingInformationResponse } from \"../../../models/BillingInformation/billinginformation-response.model\";\r\n\r\n@Component({\r\n selector: \"app-billing-information\",\r\n templateUrl: \"./billing-information.component.html\",\r\n styleUrls: [\"./billing-information.component.less\"]\r\n})\r\nexport class BillingInformationComponent implements OnInit {\r\n sameBillingAddress: string = \"1\";\r\n billingInfoForm: FormGroup;\r\n billingOptionForm: FormGroup;\r\n states: StateInfo[];\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private route: Router,\r\n private appState: AppState,\r\n private commonGatewayService: CommonGatewayService,\r\n private _billinginformationService: BillinginformationService,\r\n private titleService: Title\r\n ) { \r\n titleService.setTitle('Billing Information | Careington Direct');\r\n }\r\n\r\n ngOnInit() {\r\n this.validateProgress();\r\n }\r\n\r\n validateProgress() {\r\n if (!this.appState.RecordLocator) {\r\n this.route.navigate([\"/application\"]);\r\n } else if (!this.appState.PrimaryContact) {\r\n this.route.navigate([\"/application/contact\"]);\r\n } else {\r\n this.getBillingOptions();\r\n this.buildForm();\r\n this.loadStates();\r\n this.getBillingInformation();\r\n }\r\n }\r\n\r\n buildForm(): void {\r\n let email: string = \"\";\r\n if (this.appState.BillingInformation == null && this.appState.Administrator != null) {\r\n email = this.appState.Administrator.userName;\r\n }\r\n this.billingInfoForm = this.formBuilder.group({\r\n firstName: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n lastName: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n phoneNumber: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.phoneformat)]),\r\n faxNumber: new FormControl(\"\", [Validators.pattern(FieldValidationPattern.phoneformat)]),\r\n emailAddress: new FormControl(email, [\r\n Validators.required,\r\n Validators.pattern(FieldValidationPattern.EmailValidationPattern)\r\n ]),\r\n address1: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n address2: new FormControl(\"\"),\r\n city: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n stateCode: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n zipCode: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.numerals), Validators.minLength(5)\r\n ])\r\n });\r\n // We have created a seperate billingOptionForm because, we are resetting billingInfoForm in UpdateAddress function\r\n // We have subscribe method on value change of sameBillingAddress property\r\n // So while resetting billingInfoForm, we will get circular ref error.\r\n this.billingOptionForm = this.formBuilder.group({\r\n sameBillingAddress: new FormControl(this.sameBillingAddress),\r\n });\r\n this.billingOptionForm.controls.sameBillingAddress.valueChanges.subscribe(value => {\r\n this.UpdateAddress(value);\r\n })\r\n }\r\n\r\n UpdateAddress(sameBilling: string): void {\r\n this.sameBillingAddress = sameBilling;\r\n if (sameBilling == \"0\") {\r\n let fName = this.billingInfoForm.value.firstName;\r\n let lName = this.billingInfoForm.value.lastName;\r\n let phone = this.billingInfoForm.value.phoneNumber;\r\n let email = this.billingInfoForm.value.emailAddress;\r\n let fax = this.billingInfoForm.value.faxNumber;\r\n\r\n this.billingInfoForm.reset({\r\n firstName: fName,\r\n lastName: lName,\r\n phoneNumber: phone,\r\n emailAddress: email,\r\n faxNumber: fax,\r\n address1: \"\",\r\n address2: \"\",\r\n city: \"\",\r\n stateCode: \"\",\r\n zipCode: \"\"\r\n });\r\n }\r\n else {\r\n this.billingInfoForm.patchValue(this.appState.Company);\r\n }\r\n }\r\n\r\n private loadStates(): void {\r\n if (this.appState.States) {\r\n this.states = this.appState.States;\r\n return;\r\n }\r\n\r\n this.commonGatewayService.getStates().subscribe(\r\n states => {\r\n this.states = <StateInfo[]>states;\r\n this.appState.States = this.states;\r\n }\r\n );\r\n }\r\n\r\n getBillingInformation(): void {\r\n if (this.appState.BillingInformation) {\r\n this.billingInfoForm.patchValue(this.appState.BillingInformation);\r\n } else {\r\n this.billingInfoForm.patchValue(this.appState.Company);\r\n }\r\n }\r\n\r\n getBillingOptions(): void {\r\n if (this.appState.BillingInformation) {\r\n this.compareBillingAndMailingAddress();\r\n } else {\r\n this.sameBillingAddress = \"1\";\r\n }\r\n }\r\n\r\n compareBillingAndMailingAddress() {\r\n if (this.appState.Company.address1 == this.appState.BillingInformation.address1\r\n && this.appState.Company.address2 == this.appState.BillingInformation.address2\r\n && this.appState.Company.city == this.appState.BillingInformation.city\r\n && this.appState.Company.stateCode == this.appState.BillingInformation.stateCode\r\n && this.appState.Company.zipCode == this.appState.BillingInformation.zipCode\r\n ) {\r\n this.sameBillingAddress = \"1\";\r\n } else {\r\n this.sameBillingAddress = \"0\";\r\n }\r\n }\r\n\r\n canCreate(): boolean {\r\n if (this.appState.BillingInformation) return false;\r\n return true;\r\n }\r\n\r\n SaveBillingInformation() {\r\n let billingInfoRequest: BillingInformationRequest = <BillingInformationRequest>this.billingInfoForm.getRawValue();\r\n billingInfoRequest.phoneNumber = billingInfoRequest.phoneNumber.replace(/\\D/g, '');\r\n billingInfoRequest.faxNumber = billingInfoRequest.faxNumber.replace(/\\D/g, '');\r\n\r\n this.upsertService(billingInfoRequest).subscribe(\r\n (billingInfoResponse: BillingInformationResponse) => {\r\n this.appState.BillingInformation = billingInfoResponse;\r\n this.route.navigate([\"/application/broker\"]);\r\n }\r\n );\r\n }\r\n\r\n upsertService(\r\n billinginfo: BillingInformationRequest\r\n ): Observable<BillingInformationResponse> {\r\n if (this.canCreate()) {\r\n return this._billinginformationService.SaveBillingInfo(\r\n this.appState.RecordLocator,\r\n billinginfo\r\n );\r\n }\r\n billinginfo.recordVersion = this.appState.BillingInformation.recordVersion;\r\n return this._billinginformationService.updateBillingInformation(\r\n this.appState.RecordLocator,\r\n this.appState.BillingInformation.id,\r\n billinginfo\r\n );\r\n }\r\n\r\n get registrationStep() {\r\n return RegistrationStep;\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\n\r\nimport { GroupPortalApiService } from \"../../../core/services/group-portal-api.service\";\r\nimport { BillingInformationResponse } from \"../../../models/BillingInformation/billinginformation-response.model\";\r\nimport { BillingInformationRequest } from \"../../../models/BillingInformation/billinginformation-request.model\";\r\nimport { ApiPaths } from '../../../shared/utils/ApiPaths';\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class BillinginformationService {\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n getBillingInformation(recordLocator: string): Observable<BillingInformationResponse> {\r\n const apiUrl = ApiPaths.billing_get.replace(\"{recordLocator}\", recordLocator);\r\n return this.groupPortalApiService.get<BillingInformationResponse>(apiUrl,{throwError: true});\r\n }\r\n\r\n SaveBillingInfo(recordLocator: string, billingInformation: BillingInformationRequest): Observable<BillingInformationResponse> {\r\n const apiUrl = ApiPaths.billing_post.replace(\"{recordLocator}\", recordLocator);\r\n return this.groupPortalApiService.post<BillingInformationResponse>(apiUrl, billingInformation);\r\n }\r\n\r\n updateBillingInformation(recordLocator: string, billingInfoId: number, billingInformation: BillingInformationRequest): Observable<BillingInformationResponse> {\r\n const apiUrl = ApiPaths.billing_put.replace(\"{recordLocator}\", recordLocator).replace(\"{id}\", billingInfoId.toString());\r\n return this.groupPortalApiService.put<BillingInformationResponse>(apiUrl, billingInformation);\r\n }\r\n}\r\n","<div [formGroup]=\"brokerDetailsForm\">\r\n <h3>Is your broker a registered Careington agent?</h3>\r\n <hr class=\"hr-normal\" />\r\n <div class=\"form-group\">\r\n <label>Broker First Name:<span class=\"req\">*</span></label>\r\n <input type=\"text\" class=\"form-control\" placeholder=\"Broker First Name\" formControlName=\"firstName\"\r\n maxlength=\"32\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"brokerDetailsForm.controls.firstName.invalid &&(\r\n brokerDetailsForm.controls.firstName.touched || brokerDetailsForm.controls.firstName.dirty)\r\n \">\r\n <div *ngIf=\"brokerDetailsForm.controls.firstName.errors\">\r\n Broker First Name is required\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <label>Broker Last Name:<span class=\"req\">*</span></label>\r\n <input type=\"text\" class=\"form-control\" placeholder=\"Broker Last Name\" formControlName=\"lastName\" maxlength=\"32\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"brokerDetailsForm.controls.lastName.invalid &&(\r\n brokerDetailsForm.controls.lastName.touched ||\r\n brokerDetailsForm.controls.lastName.dirty)\">\r\n <div *ngIf=\"brokerDetailsForm.controls.lastName.errors\">\r\n Broker Last Name is required\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <label>Broker Email Address:<span class=\"req\">*</span></label>\r\n <input type=\"email\" class=\"form-control\" placeholder=\"broker@broker.com\" formControlName=\"emailAddress\"\r\n maxlength=\"320\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"brokerDetailsForm.controls.emailAddress.invalid &&(\r\n brokerDetailsForm.controls.emailAddress.touched ||\r\n brokerDetailsForm.controls.emailAddress.dirty)\r\n \">\r\n <div *ngIf=\"brokerDetailsForm.controls.emailAddress.hasError('required') &&\r\n !brokerDetailsForm.controls.emailAddress.valid\">\r\n Email address is required\r\n </div>\r\n <div *ngIf=\"brokerDetailsForm.controls.emailAddress.hasError('pattern')\">\r\n Email is not valid\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <label>Broker Phone Number:</label>\r\n <input type=\"tel\" class=\"form-control\" placeholder=\"(123) 123-1234\" formControlName=\"phoneNumber\"\r\n [textMask]=\"{mask: USphoneMask}\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"brokerDetailsForm.controls.phoneNumber.invalid &&(\r\n brokerDetailsForm.controls.phoneNumber.touched ||\r\n brokerDetailsForm.controls.phoneNumber.dirty)\r\n \">\r\n <div *ngIf=\"brokerDetailsForm.controls.phoneNumber.hasError('pattern')\">\r\n Phone Number is not valid\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <label>Broker/Agent Code:</label>\r\n <input type=\"text\" class=\"form-control\" placeholder=\"Broker/Agent Code\" formControlName=\"agentCode\"\r\n maxlength=\"10\" />\r\n </div>\r\n</div>\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\nimport { FieldValidationPattern } from \"../../../core/utils/field-validations\";\r\n\r\n@Component({\r\n selector: 'app-broker-details',\r\n templateUrl: './broker-details.component.html',\r\n styleUrls: ['./broker-details.component.less']\r\n})\r\nexport class BrokerDetailsComponent implements OnInit {\r\n @Input() brokerDetailsForm: FormGroup;\r\n USphoneMask = FieldValidationPattern.USphoneFormat;\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\n\r\nimport { GroupPortalApiService } from \"../../../core/services/group-portal-api.service\";\r\nimport { BrokerResponse } from \"../../../models/Broker/broker-response\";\r\nimport { BrokerRequest } from \"../../../models/Broker/broker-request\";\r\nimport { ApiPaths } from '../../../shared/utils/ApiPaths';\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class BrokerInformationService {\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n getBrokerInfo(recordLocator: string): Observable<BrokerResponse> {\r\n const apiUrl = ApiPaths.broker_get.replace(\"{recordLocator}\", recordLocator);\r\n return this.groupPortalApiService.get<BrokerResponse>(apiUrl,{throwError: true});\r\n }\r\n\r\n createBroker(recordLocator: string, brokerRequest: BrokerRequest): Observable<BrokerResponse> {\r\n const apiUrl = ApiPaths.broker_post.replace(\"{recordLocator}\", recordLocator);\r\n return this.groupPortalApiService.post<BrokerResponse>(apiUrl, brokerRequest);\r\n }\r\n\r\n updateBroker(recordLocator: string, brokerId: number, brokerRequest: BrokerRequest): Observable<BrokerResponse> {\r\n const apiUrl = ApiPaths.broker_put.replace(\"{id}\", brokerId.toString()).replace(\"{recordLocator}\", recordLocator);\r\n return this.groupPortalApiService.put<BrokerResponse>(apiUrl, brokerRequest);\r\n }\r\n\r\n deleteBroker(recordLocator: string): Observable<number> {\r\n const apiUrl = ApiPaths.broker_delete.replace(\"{recordLocator}\", recordLocator);\r\n return this.groupPortalApiService.delete<number>(apiUrl);\r\n }\r\n}\r\n","<div class=\"container\" *ngIf=\"brokerForm\">\r\n <section class=\"content\" id=\"learn-more\">\r\n <app-progress-bar-steps [CurrentStep]=\"registrationStep.BrokerInformation\"></app-progress-bar-steps>\r\n <div [formGroup]=\"brokerForm\" name=\"brokerform\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <h3 class=\"panel-title edgeBrowser-Heading\">Are you working with a broker?</h3>\r\n <hr class=\"hr-left align-left\" />\r\n <div class=\"row\">\r\n <div class=\"col-sm-4\">\r\n <div class=\"radio\">\r\n <label>\r\n <input type=\"radio\" name=\"colorRadio\" value=\"0\" [checked]=\"true\" [(ngModel)]=\"withBroker\"\r\n [ngModelOptions]=\"{ standalone: true }\" />No, I am not working with a broker.</label>\r\n </div>\r\n <div class=\"radio\">\r\n <label>\r\n <input type=\"radio\" name=\"colorRadio\" value=\"1\" [(ngModel)]=\"withBroker\"\r\n [ngModelOptions]=\"{ standalone: true }\" />Yes, I am working with a broker.</label>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-8\">\r\n <div class=\"broker-box box\" *ngIf=\"withBroker == '1'\">\r\n <app-broker-details [brokerDetailsForm]=\"brokerForm\"></app-broker-details>\r\n </div>\r\n </div>\r\n </div>\r\n <hr class=\"hr-normal\" />\r\n <app-navigation-buttons [CurrentStep]=\"registrationStep.BrokerInformation\"\r\n [isDisabled]=\"!brokerForm.valid && withBroker == '1'\" (NextEvent)=\"saveBrokerInfo()\">\r\n </app-navigation-buttons>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n</div>\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { FormBuilder, FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport { Router } from \"@angular/router\";\r\nimport { Observable } from \"rxjs\";\r\nimport { Title } from '@angular/platform-browser';\r\n\r\nimport { FieldValidationPattern } from \"../../../core/utils/field-validations\";\r\nimport { BrokerInformationService } from \"../../../components/get-started/broker-information/broker-information.service\";\r\nimport { ContractService } from \"../contract/contract.service\";\r\nimport { BrokerResponse } from \"../../../models/Broker/broker-response\";\r\nimport { BrokerRequest } from \"../../../models/Broker/broker-request\";\r\nimport { AppState } from \"../../../core/app-state\";\r\nimport { RegistrationStep } from \"../registration-step.enum\";\r\nimport { StorageService } from '../../../core/services/storage.service';\r\nimport { CompanyResponse } from '../../../models/Company/company-response';\r\nimport { DocusigResponse } from \"src/app/models/Docusign/docusign-response\";\r\nimport { SignerDetails } from \"src/app/models/Docusign/docusign-request\";\r\n\r\n@Component({\r\n selector: \"app-broker\",\r\n templateUrl: \"./broker.component.html\",\r\n styleUrls: [\"./broker.component.less\"]\r\n})\r\nexport class BrokerComponent implements OnInit {\r\n withBroker: string = \"0\";\r\n brokerForm: FormGroup;\r\n brokerResponse: BrokerResponse;\r\n companyInfo: CompanyResponse;\r\n docusignUrl: string;\r\n signerDetails : SignerDetails={};\r\n private childWindow:Window | null= null;\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private brokerInfoService: BrokerInformationService,\r\n private router: Router,\r\n private appState: AppState,\r\n private storage: StorageService,\r\n private titleService: Title,\r\n private contractService:ContractService\r\n ) { titleService.setTitle('Are you working with a broker? | Careington Direct');}\r\n\r\n ngOnInit() {\r\n this.validateProgress();\r\n }\r\n\r\n validateProgress() {\r\n if (!this.appState.RecordLocator) {\r\n this.router.navigate([\"/application\"]);\r\n } else if (!this.appState.BillingInformation) {\r\n this.router.navigate([\"/application/billing\"]);\r\n } else {\r\n this.buildForm();\r\n this.getData();\r\n }\r\n }\r\n\r\n buildForm() {\r\n this.brokerForm = this.formBuilder.group({\r\n firstName: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n lastName: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n phoneNumber: new FormControl(\"\", [Validators.pattern(FieldValidationPattern.phoneformat)]),\r\n agentCode: new FormControl(\"\"),\r\n emailAddress: new FormControl(\"\", [\r\n Validators.required,\r\n Validators.pattern(FieldValidationPattern.EmailValidationPattern)\r\n ])\r\n });\r\n }\r\n\r\n getData() {\r\n if (this.appState.Broker) {\r\n this.withBroker = \"1\";\r\n this.brokerForm.patchValue(this.appState.Broker);\r\n }\r\n }\r\n\r\n canCreate(): boolean {\r\n return this.appState.Broker ? false : true;\r\n }\r\n\r\n saveBrokerInfo() {\r\n\r\n\r\n this.appState.ChoosePlans;\r\n \r\n if (this.withBroker == \"1\") {\r\n let brokerRequest: BrokerRequest = <BrokerRequest>(\r\n this.brokerForm.getRawValue()\r\n );\r\n if (brokerRequest.phoneNumber == \"\") {\r\n brokerRequest.phoneNumber = null;\r\n } else {\r\n brokerRequest.phoneNumber = brokerRequest.phoneNumber.replace(/\\D/g, '');\r\n }\r\n this.upsertService(brokerRequest).subscribe(\r\n (brokerResponse: BrokerResponse) => {\r\n this.appState.Broker = brokerResponse;\r\n //this.router.navigate([\"/application/contract\"]);\r\n this.redirectToDocusign();\r\n }\r\n );\r\n } else {\r\n if (this.appState.Broker) {\r\n this.brokerInfoService.deleteBroker(\r\n this.appState.RecordLocator\r\n ).subscribe((resp) => {\r\n this.appState.ClearGetStartedBroker();\r\n this.redirectToDocusign();\r\n //this.router.navigate([\"/application/contract\"]);\r\n });\r\n }\r\n this.redirectToDocusign();\r\n }\r\n }\r\n\r\n redirectToDocusign(){\r\n this.companyInfo = this.appState.Company;\r\n \r\n const codes = this.appState.ChoosePlans.selectedPlans\r\n .map(num => {\r\n // Ensure that both are numbers for the comparison\r\n const bundle = this.appState.Bundles.find(bundle => parseInt(bundle.id) === num);\r\n return bundle ? bundle.bundleCode : undefined; // Explicitly handle undefined case\r\n })\r\n .filter(bundleCode => bundleCode !== undefined) // Filter out undefined values\r\n .join(','); // Join the codes with commas\r\n this.signerDetails.firstName=this.appState.PrimaryContact.firstName;\r\n this.signerDetails.lastName=this.appState.PrimaryContact.lastName;\r\n this.signerDetails.companyName=this.appState.Company.name;\r\n this.signerDetails.email=this.appState.PrimaryContact.emailAddress;\r\n this.signerDetails.planInfo=codes;\r\n this.signerDetails.recordLocator=this.appState.RecordLocator;\r\n this.contractService.getDocusignUrl(this.signerDetails).subscribe(\r\n (docusign: DocusigResponse) => {\r\n window.open(docusign.url, '_blank');\r\n window.addEventListener('message',this.handleWindow);\r\n });\r\n }\r\n\r\n disableMainWindow() {\r\n document.body.style.pointerEvents = 'none'; // Disable clicks\r\n document.body.style.opacity = '0.5'; // Dim the UI\r\n window.addEventListener('focus', this.preventFocus);\r\n }\r\n\r\n preventFocus = () => {\r\n if (this.childWindow && !this.childWindow.closed) {\r\n this.childWindow.focus();\r\n window.blur(); // Send user back to child window\r\n } else {\r\n this.enableMainWindow();\r\n }\r\n };\r\n\r\n enableMainWindow() {\r\n document.body.style.pointerEvents = 'auto';\r\n document.body.style.opacity = '1';\r\n window.removeEventListener('focus', this.preventFocus);\r\n }\r\n\r\n\r\n private handleWindow=(event:MessageEvent)=>{\r\n //verify the message is from the same origin\r\n if(event.origin!==window.location.origin)return;\r\n if(event.data==='DOCUSIGNSUBMIT'){\r\n //redirect to login page\r\n this.router.navigate(['/admin/login']);\r\n //close the child window if possible\r\n if(this.childWindow && !this.childWindow.closed){\r\n this.childWindow.close();\r\n }\r\n this.cleanup();\r\n }\r\n }\r\n\r\n private cleanup(){\r\n window.removeEventListener('message',this.handleWindow);\r\n this.childWindow=null;\r\n }\r\n\r\n upsertService(broker: BrokerRequest): Observable<BrokerResponse> {\r\n if (this.canCreate()) {\r\n return this.brokerInfoService.createBroker(\r\n this.appState.RecordLocator,\r\n broker\r\n );\r\n }\r\n broker.recordVersion = this.appState.Broker.recordVersion;\r\n return this.brokerInfoService.updateBroker(\r\n this.appState.RecordLocator,\r\n this.appState.Broker.id,\r\n broker\r\n );\r\n }\r\n\r\n get registrationStep() {\r\n return RegistrationStep;\r\n }\r\n}\r\n","<section class=\"content\" id=\"learn-more\">\r\n <div class=\"container\">\r\n <app-progress-bar-steps [CurrentStep]=\"registrationStep.ChoosePlans\"></app-progress-bar-steps>\r\n <div style=\"display: block; clear: both;\"></div>\r\n <div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <h3 class=\"panel-title edgeBrowser-Heading\">Choose Your Plan</h3>\r\n <hr class=\"hr-left align-left\" />\r\n <p>Plans for newly entered employees will start at the first of {{currentMonth}}. <a href=\"#\" data-toggle=\"modal\" (click)=\"openModal(template)\">Click here</a> for details on monthly billing.\r\n </p>\r\n \r\n <hr class=\"hr-clear-sm\" />\r\n <p class=\"small\">\r\n <em>These plans are not available in Vermont & Washington.</em>\r\n </p>\r\n <div class=\"row\">\r\n <div class=\"col-sm-4\" *ngFor=\"let bundle of bundles\">\r\n <app-plan [bundle]=\"bundle\" [isSelected]=\"IsSelectedPlan(bundle)\" (planClick)=\"PlanSelect($event)\">\r\n </app-plan>\r\n </div>\r\n </div>\r\n <hr class=\"hr-normal\" />\r\n <app-navigation-buttons [CurrentStep]=\"registrationStep.ChoosePlans\" [isDisabled]=\"IsNextDisabled()\"\r\n (NextEvent)=\"SaveChoosePlan()\"></app-navigation-buttons>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</section>\r\n\r\n<ng-template #template>\r\n <div class=\"modal-header\">\r\n <h4 class=\"modal-title pull-left\">A Quick Reference Guide to Invoicing</h4>\r\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\r\n <span aria-hidden=\"true\">×</span>\r\n </button>\r\n </div>\r\n <div class=\"modal-body\">\r\n <ul>\r\n <li>Invoices are generated on the last business day of the month for the current month.</li>\r\n <li>The invoice is based off of the active eligibility in our system with an effective date of the 1<sup>st</sup> of the current month and prior.</li>\r\n <li>In order for an invoice to be reflective of the most recent eligibility file, it must be received a minimum of 3 business days prior to the last business day of the month. It is recommended to schedule your final file of the month to be received by Careington by the 25<sup>th</sup> of each month in order to ensure invoices reflect current eligibility.</li>\r\n <li>As you are billed on the last business day of the month for the current month, any member added with a prior month's effective date will appear on the invoice both in the \"all products\" count for the invoiced month and as a \"retro-active add\" for the month in which the member was added.</li>\r\n <li>Should a member be passed in a file with an effective date of any prior months, the system will retroactively bill for the member up to 3 months back, appearing as a \"retro-active add.\"</li>\r\n <li>Careington's billing system accommodates only \"first-of-the-month\" effective dates.</li>\r\n <li>The system bills based on membership effective dates. The following policies detail how an invoice is impacted by an eligibility file which does not contain an effective date and/or by a file that contains an effective date that is not a \"first-of-the-month\":\r\n <ul>\r\n <li>Any member sent with an effective date of the 1-15<sup>th</sup> receives an effective date of the 1<sup>st</sup> of the month noted in the file.</li>\r\n <li>Any member sent with an effective date of the 16-31<sup>st</sup> will receive an effective date of the 1<sup>st</sup> of the upcoming month based on the date noted in the file.</li>\r\n <li>Any member added to our system on the 1-15<sup>th</sup> without an effective date will receive an effective date of the 1<sup>st</sup> of the current month.</li>\r\n <li>Any member added to our system on the 16-31<sup>st</sup> without an affective date will receive an effective date of the 1<sup>st</sup> of the upcoming month.</li>\r\n </ul>\r\n </li>\r\n <li>Files containing terminations must be received a minimum of 3 business days prior to the last business day of the month in order to be reflected on the current month invoice.</li>\r\n <li>Termination dates must be the \"first-of-the-month.\" Please be aware of the following policies with regard to termination dates when members are cancelled by omission or by a file that contains a termination date that is not a \"first-of-the-month\" date. Those rules are as follows:\r\n <ul>\r\n <li>Terminations dated for the I-15<sup>th</sup> will be effective the 1<sup>st</sup> of the current month noted in the file.</li>\r\n <li>Terminations dated for 16-31<sup>st</sup> will be effective the 1<sup>st</sup> of the following month noted in the file.</li>\r\n <li>Terminations done by omission use the 1-15<sup>th</sup> logic as noted above based off the date the file was loaded to our system.</li>\r\n </ul>\r\n </li>\r\n </ul>\r\n</div>\r\n</ng-template>\r\n","import { Component, OnInit, Input } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { TemplateRef } from \"@angular/core\";\r\nimport { BsModalService, BsModalRef } from \"ngx-bootstrap/modal\";\r\nimport { forkJoin } from 'rxjs';\r\nimport { FormBuilder, FormGroup, Validators, FormControl } from \"@angular/forms\";\r\nimport { Meta, Title } from '@angular/platform-browser';\r\n\r\nimport { Months } from \"../../../shared/utils/Months\";\r\nimport { Bundle } from \"../../../models/GroupPlan/Bundle\";\r\nimport { CommonGatewayService } from \"../../../services/common-gateway.service\";\r\nimport { RegistrationStep } from \"../registration-step.enum\";\r\nimport { AppState } from \"../../../core/app-state\";\r\nimport { ApplicationPlanResponse } from \"../../../models/ApplicationPlan/application-plan-response\";\r\nimport { ChoosePlanService } from \"./choose-plan.service\";\r\nimport { Application } from '../../../models/Application/Application';\r\n\r\n@Component({\r\n selector: \"app-choose-plan\",\r\n templateUrl: \"./choose-plan.component.html\",\r\n styleUrls: [\"./choose-plan.component.less\"]\r\n})\r\nexport class ChoosePlanComponent implements OnInit {\r\n modalRef: BsModalRef;\r\n currentMonth: string;\r\n @Input() CurrentStep: RegistrationStep;\r\n bundles: Bundle[];\r\n selectedPlans: number[] = [];\r\n application: Application;\r\n applicationPlan: ApplicationPlanResponse;\r\n\r\n constructor(\r\n private route: Router,\r\n private appState: AppState,\r\n private commonGatewayService: CommonGatewayService,\r\n private modalService: BsModalService,\r\n private choosePlanService: ChoosePlanService,\r\n private formBuilder: FormBuilder,\r\n private metaService: Meta, private titleService: Title\r\n ) { \r\n this.titleService.setTitle('Choose Your Plan | Careington Direct');\r\n this.metaService.updateTag({name:\"description\", content:\"Select the plan that’s right for you or your employees.\"});\r\n }\r\n\r\n ngOnInit() {\r\n const month = new Date();\r\n this.currentMonth = Months[month.getMonth()];\r\n this.LoadPlans();\r\n this.LoadSelectedPlans();\r\n }\r\n\r\n \r\n\r\n openModal(template: TemplateRef<any>) {\r\n this.modalRef = this.modalService.show(template, {\r\n class: \"modal-dialog modal-lg\"\r\n });\r\n }\r\n\r\n LoadPlans() {\r\n if (this.appState.Bundles) {\r\n this.bundles = this.appState.Bundles;\r\n } else {\r\n this.GetPlans();\r\n }\r\n }\r\n\r\n GetPlans() {\r\n this.commonGatewayService.GetGroupPlans().subscribe(\r\n (response: Bundle[]) => {\r\n this.bundles = response;\r\n this.appState.Bundles = response;\r\n }\r\n );\r\n }\r\n\r\n LoadSelectedPlans() {\r\n if (this.appState.ChoosePlans) {\r\n this.selectedPlans = this.appState.ChoosePlans.selectedPlans;\r\n }\r\n }\r\n\r\n IsSelectedPlan(bundle: Bundle) {\r\n const isFound = this.selectedPlans.find(id => id == +bundle.id);\r\n return isFound === undefined ? false : true;\r\n }\r\n\r\n PlanSelect(planDetails) {\r\n const planId = planDetails[0];\r\n const isSelected = planDetails[1];\r\n const index = this.selectedPlans.indexOf(planId);\r\n if (index > -1) {\r\n if (isSelected === false) {\r\n // If plan is unchecked then we should remove from the list\r\n this.selectedPlans.splice(index, 1);\r\n }\r\n } else {\r\n if (isSelected === true) {\r\n // If plan is checked then we should add it to the list\r\n this.selectedPlans.push(planId);\r\n }\r\n }\r\n }\r\n\r\n IsNextDisabled(): boolean {\r\n if (this.selectedPlans.length <= 0) { \r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n SaveChoosePlan() {\r\n this.appState.ChoosePlans = { selectedPlans: this.selectedPlans };\r\n if (this.appState.Administrator == null) {\r\n this.route.navigate([\"./application/admin\"]);\r\n } else { \r\n this.choosePlanService\r\n .SaveChoosePlan(\r\n this.appState.RecordLocator,\r\n this.appState.ChoosePlans.selectedPlans\r\n )\r\n .subscribe(responseList => {\r\n this.loadChoosePlan(responseList);\r\n });\r\n }\r\n }\r\n private loadApplication(application: Application) {\r\n this.application = application;\r\n }\r\n private loadChoosePlan(applicationPlan: ApplicationPlanResponse) {\r\n this.applicationPlan = applicationPlan;\r\n this.route.navigate([\"./application/admin\"]);\r\n }\r\n\r\n get registrationStep() {\r\n return RegistrationStep;\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\n\r\nimport { GroupPortalApiService } from \"../../../core/services/group-portal-api.service\";\r\nimport { ApplicationPlanResponse } from \"../../../models/ApplicationPlan/application-plan-response\";\r\nimport { ApiPaths } from '../../../shared/utils/ApiPaths';\r\nimport { Application } from 'src/app/models/Application/Application';\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class ChoosePlanService {\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n getChoosenPlans(recordLocator: string): Observable<ApplicationPlanResponse[]> {\r\n const apiUrl = ApiPaths.choosePlan_get.replace(\"{recordLocator}\", recordLocator);\r\n return this.groupPortalApiService.get<ApplicationPlanResponse[]>(apiUrl);\r\n }\r\n\r\n SaveChoosePlan(recordLocator: string, plans: number[]): Observable<ApplicationPlanResponse> {\r\n const apiUrl = ApiPaths.choosePlan_post.replace(\"{recordLocator}\", recordLocator);\r\n return this.groupPortalApiService.post<ApplicationPlanResponse>(apiUrl, plans);\r\n }\r\n\r\n}\r\n","<div class=\"container\" *ngIf=\"companyInfoForm\">\r\n <section class=\"content\" id=\"learn-more\">\r\n <app-progress-bar-steps [CurrentStep]=\"registrationStep.CompanyInformation\"></app-progress-bar-steps>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <h3 class=\"panel-title edgeBrowser-Heading\">Company Information</h3>\r\n <hr class=\"hr-left align-left\" />\r\n <div [formGroup]=\"companyInfoForm\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-group\">\r\n <label>Company Name<span class=\"req\"></span>:<span class=\"req\">*</span></label>\r\n <input type=\"text\" formControlName=\"name\" class=\"form-control\" placeholder=\"Company Name\"\r\n maxlength=\"64\" />\r\n <div *ngIf=\"\r\n companyInfoForm.controls.name.invalid &&\r\n (companyInfoForm.controls.name.dirty ||\r\n companyInfoForm.controls.name.touched)\r\n \" class=\"alert alert-danger\">\r\n <div *ngIf=\"companyInfoForm.controls.name.errors\">\r\n Company Name is required.\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <app-address [states]=\"states\" [AddressForm]=\"companyInfoForm\"\r\n [parentForm]=\"registrationStep.CompanyInformation\" [isDisabled]=false>\r\n </app-address>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-group\">\r\n <label>Employer ID / Tax Payer ID Number (optional):</label>\r\n <input type=\"text\" formControlName=\"taxID\" class=\"form-control\"\r\n placeholder=\"Employer ID / Tax Payer ID Number\" maxlength=\"9\" numericOnly />\r\n </div>\r\n </div>\r\n </div>\r\n <hr class=\"hr-normal\" />\r\n <app-navigation-buttons [CurrentStep]=\"registrationStep.CompanyInformation\"\r\n [isDisabled]=\"!companyInfoForm.valid\" (NextEvent)=\"SaveCompany()\"></app-navigation-buttons>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </section>\r\n</div>\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { FormBuilder, FormGroup, Validators, FormControl } from \"@angular/forms\";\r\nimport { Router } from \"@angular/router\";\r\nimport { Observable } from \"rxjs\";\r\nimport { Title } from '@angular/platform-browser';\r\nimport { TitleCasePipe } from '@angular/common';\r\n\r\nimport { FieldValidationPattern } from \"../../../core/utils/field-validations\";\r\nimport { StateInfo } from \"../../../models/state-info\";\r\nimport { CompanyResponse } from \"../../../models/Company/company-response\";\r\nimport { CompanyRequest } from \"../../../models/Company/company-request\";\r\nimport { CompanyInformationService } from \"../../../components/get-started/company-information/company-information.service\";\r\nimport { AppState } from \"../../../core/app-state\";\r\nimport { CommonGatewayService } from \"../../../services/common-gateway.service\";\r\nimport { RegistrationStep } from \"../registration-step.enum\";\r\n\r\n\r\n@Component({\r\n selector: \"app-company-information\",\r\n templateUrl: \"./company-information.component.html\",\r\n styleUrls: [\"./company-information.component.less\"]\r\n})\r\nexport class CompanyInformationComponent implements OnInit {\r\n companyInfoForm: FormGroup;\r\n states: StateInfo[];\r\n companyResponse: CompanyResponse;\r\n \r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private commonGatewayService: CommonGatewayService,\r\n private companyInfoService: CompanyInformationService,\r\n private route: Router,\r\n private appState: AppState,\r\n private titleService:Title,\r\n private titleCase: TitleCasePipe\r\n ) { \r\n this.titleService.setTitle('Company Information | Careington Direct');\r\n }\r\n\r\n ngOnInit() {\r\n this.validateProgress();\r\n }\r\n\r\n validateProgress() {\r\n if (!this.appState.RecordLocator) {\r\n this.route.navigate([\"/application\"]);\r\n } else if (!this.appState.Administrator) {\r\n this.route.navigate([\"/application/admin\"]);\r\n } else {\r\n this.buildForm();\r\n this.getData();\r\n }\r\n }\r\n\r\n getData(): void {\r\n if (this.appState.Company) {\r\n this.companyInfoForm.patchValue(this.appState.Company);\r\n }\r\n\r\n this.loadStates();\r\n }\r\n\r\n buildForm(): void {\r\n this.companyInfoForm = this.formBuilder.group({\r\n name: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n address1: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n address2: new FormControl(\"\"),\r\n city: new FormControl(\"\", [\r\n Validators.required,\r\n Validators.maxLength(50),\r\n Validators.pattern(FieldValidationPattern.noSpace)\r\n ]),\r\n stateCode: new FormControl(\"\", [Validators.required]),\r\n zipCode: new FormControl(\"\", [\r\n Validators.required,\r\n Validators.pattern(FieldValidationPattern.numerals),\r\n Validators.minLength(5)\r\n ]),\r\n taxID: new FormControl(\"\")\r\n });\r\n }\r\n\r\n private loadStates(): void { \r\n if (this.appState.States) {\r\n this.states = this.appState.States;\r\n return;\r\n }\r\n\r\n this.commonGatewayService.getStates().subscribe(\r\n states => {\r\n this.states = <StateInfo[]>states;\r\n this.appState.States = this.states;\r\n }\r\n );\r\n }\r\n\r\n canCreate(): boolean {\r\n if (this.appState.Company) return false;\r\n return true;\r\n }\r\n\r\n SaveCompany() {\r\n let companyRequest: CompanyRequest = <CompanyRequest>(\r\n this.companyInfoForm.getRawValue()\r\n );\r\n let stateFilter :StateInfo[] = this.states.filter(a => a.stateCode == companyRequest.stateCode);\r\n companyRequest.stateCode = stateFilter[0].stateCode;\r\n companyRequest.stateName = this.titleCase.transform(stateFilter[0].stateName);\r\n \r\n this.upsertService(companyRequest).subscribe(\r\n (companyResponse: CompanyResponse) => {\r\n this.appState.Company = companyResponse;\r\n this.route.navigate([\"/application/contact\"]);\r\n }\r\n );\r\n }\r\n\r\n upsertService(company: CompanyRequest): Observable<CompanyResponse> {\r\n if (this.canCreate()) {\r\n return this.companyInfoService.createCompany(\r\n this.appState.RecordLocator,\r\n company\r\n );\r\n }\r\n return this.companyInfoService.updateCompany(\r\n this.appState.RecordLocator,\r\n this.appState.Company.id,\r\n company\r\n );\r\n }\r\n\r\n get registrationStep() {\r\n return RegistrationStep;\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\n\r\nimport { GroupPortalApiService } from \"../../../core/services/group-portal-api.service\";\r\nimport { CompanyResponse } from \"../../../models/Company/company-response\";\r\nimport { CompanyRequest } from \"../../../models/Company/company-request\";\r\nimport { ApiPaths } from '../../../shared/utils/ApiPaths';\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class CompanyInformationService {\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n getCompanyInfo(recordLocator: string): Observable<CompanyResponse> {\r\n const apiUrl = ApiPaths.company_get.replace(\"{recordLocator}\", recordLocator);\r\n return this.groupPortalApiService.get<CompanyResponse>(apiUrl, {throwError: true});\r\n }\r\n\r\n createCompany(recordLocator: string, company: CompanyRequest): Observable<CompanyResponse> {\r\n const apiUrl = ApiPaths.company_post.replace(\"{recordLocator}\", recordLocator);\r\n return this.groupPortalApiService.post<CompanyResponse>(apiUrl, company);\r\n }\r\n\r\n updateCompany(recordLocator: string, companyId: number, company: CompanyRequest): Observable<CompanyResponse> {\r\n const apiUrl = ApiPaths.company_put.replace(\"{recordLocator}\", recordLocator).replace(\"{id}\", companyId.toString());\r\n return this.groupPortalApiService.put<CompanyResponse>(apiUrl, company);\r\n }\r\n}\r\n","<div [formGroup]=\"contactForm\" *ngIf=\"parentForm == registrationStep.PrimaryContact\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-group\">\r\n <label>First Name:<span class=\"req\">*</span></label>\r\n <input type=\"text\" class=\"form-control\" formControlName=\"firstName\" placeholder=\"First Name\" maxlength=\"31\"\r\n tabindex=\"1\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"contactForm.controls.firstName.invalid &&(\r\n contactForm.controls.firstName.touched ||\r\n contactForm.controls.firstName.dirty)\r\n \">\r\n <div *ngIf=\"contactForm.controls.firstName.errors\">\r\n First Name is required\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-group\">\r\n <label>Phone Number:<span class=\"req\">*</span></label>\r\n <input type=\"tel\" class=\"form-control\" formControlName=\"phoneNumber\" [textMask]=\"{mask: USphoneMask}\"\r\n placeholder=\"(123) 123-1234\" tabindex=\"3\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"contactForm.controls.phoneNumber.invalid &&(\r\n contactForm.controls.phoneNumber.touched ||\r\n contactForm.controls.phoneNumber.dirty)\r\n \">\r\n <div *ngIf=\"contactForm.controls.phoneNumber.hasError('required')\">\r\n Phone Number is required\r\n </div>\r\n <div *ngIf=\"contactForm.controls.phoneNumber.hasError('pattern')\">\r\n Phone Number is not valid\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-group\">\r\n <label>Last Name:<span class=\"req\">*</span></label>\r\n <input type=\"text\" class=\"form-control\" formControlName=\"lastName\" placeholder=\"Last Name\" maxlength=\"31\"\r\n tabindex=\"2\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"contactForm.controls.lastName.invalid &&(\r\n contactForm.controls.lastName.touched ||\r\n contactForm.controls.lastName.dirty)\r\n \">\r\n <div *ngIf=\"contactForm.controls.lastName.errors\">\r\n Last Name is required\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-group\">\r\n <label>Email Address:<span class=\"req\">*</span></label>\r\n <input type=\"email\" class=\"form-control\" formControlName=\"emailAddress\" placeholder=\"Email Address\"\r\n maxlength=\"320\" tabindex=\"4\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"contactForm.controls.emailAddress.invalid &&(\r\n contactForm.controls.emailAddress.touched ||\r\n contactForm.controls.emailAddress.dirty)\r\n \">\r\n <div *ngIf=\"\r\n contactForm.controls.emailAddress.hasError('required') &&\r\n !contactForm.controls.emailAddress.valid\r\n \">\r\n Email address is required\r\n </div>\r\n <div *ngIf=\"contactForm.controls.emailAddress.hasError('pattern')\">\r\n Email is not valid\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n</div>\r\n<div [formGroup]=\"contactForm\" *ngIf=\"parentForm == registrationStep.BillingInformation\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"row\">\r\n <div class=\"form-group\">\r\n <label>First Name:<span class=\"req\">*</span></label>\r\n <input type=\"text\" class=\"form-control\" formControlName=\"firstName\" placeholder=\"First Name\" maxlength=\"31\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"contactForm.controls.firstName.invalid && (\r\n contactForm.controls.firstName.touched ||\r\n contactForm.controls.firstName.dirty)\r\n \">\r\n <div *ngIf=\"contactForm.controls.firstName.errors\">\r\n First Name is required\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <label>Last Name:<span class=\"req\">*</span></label>\r\n <input type=\"text\" class=\"form-control\" formControlName=\"lastName\" placeholder=\"Last Name\" maxlength=\"31\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"contactForm.controls.lastName.invalid &&(\r\n contactForm.controls.lastName.touched ||\r\n contactForm.controls.lastName.dirty)\r\n \">\r\n <div *ngIf=\"contactForm.controls.lastName.errors\">\r\n Last Name is required\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"form-group\">\r\n <label>Phone Number:<span class=\"req\">*</span></label>\r\n <input type=\"tel\" class=\"form-control\" formControlName=\"phoneNumber\" [textMask]=\"{mask: USphoneMask}\"\r\n placeholder=\"(123) 123-1234\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"contactForm.controls.phoneNumber.invalid &&(\r\n contactForm.controls.phoneNumber.touched ||\r\n contactForm.controls.phoneNumber.dirty)\r\n \">\r\n <div *ngIf=\"contactForm.controls.phoneNumber.hasError('required')\">\r\n Phone Number is required\r\n </div>\r\n <div *ngIf=\"contactForm.controls.phoneNumber.hasError('pattern')\">\r\n Phone Number is not valid\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <label>Email Address:<span class=\"req\">*</span></label>\r\n <input type=\"email\" class=\"form-control\" formControlName=\"emailAddress\" placeholder=\"Email Address\"\r\n maxlength=\"320\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"contactForm.controls.emailAddress.invalid &&(\r\n contactForm.controls.emailAddress.touched ||\r\n contactForm.controls.emailAddress.dirty)\r\n \">\r\n <div *ngIf=\"\r\n contactForm.controls.emailAddress.hasError('required') &&\r\n !contactForm.controls.emailAddress.valid\r\n \">\r\n Email address is required\r\n </div>\r\n <div *ngIf=\"contactForm.controls.emailAddress.hasError('pattern')\">\r\n Email is not valid\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <label>Fax Number:</label>\r\n <input type=\"tel\" class=\"form-control\" formControlName=\"faxNumber\" [textMask]=\"{mask: USphoneMask}\"\r\n placeholder=\"(123) 123-1234\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"contactForm.controls.faxNumber.invalid &&(\r\n contactForm.controls.faxNumber.touched ||\r\n contactForm.controls.faxNumber.dirty)\r\n \">\r\n <div *ngIf=\"contactForm.controls.faxNumber.hasError('pattern')\">\r\n Fax Number is not valid\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Component, OnInit, Input } from \"@angular/core\";\r\nimport { FormGroup } from \"@angular/forms\";\r\n\r\nimport { RegistrationStep } from \"../registration-step.enum\";\r\nimport { FieldValidationPattern } from \"../../../core/utils/field-validations\";\r\n@Component({\r\n selector: \"app-contact-information\",\r\n templateUrl: \"./contact-information.component.html\",\r\n styleUrls: [\"./contact-information.component.less\"]\r\n})\r\nexport class ContactInformationComponent implements OnInit {\r\n @Input() contactForm: FormGroup;\r\n @Input() parentForm: RegistrationStep;\r\n\r\n USphoneMask = FieldValidationPattern.USphoneFormat;\r\n constructor() { }\r\n\r\n ngOnInit() { }\r\n\r\n get registrationStep() {\r\n return RegistrationStep;\r\n }\r\n}\r\n","<h2 class=\"red\">Benefits Plan</h2>\r\n<h3>SCHEDULE 1<br>\r\n Benefits Plan Summary, Fee and Billing Contact</h3>\r\n<p>For DialCare, Utilization rates will be evaluated and pricing will be adjusted quarterly. <strong>Should utilization\r\n exceed 36% annualized in any quarter, pricing shall be adjusted at the start of the next quarter at a rate of $ .15\r\n per household per Month for each 1% over</strong>. Annualized Utilization is the number of consults per month\r\n divided by the number of primary members per Month multiplied by twelve. To evaluate utilization, the annualized\r\n utilization percentage will be averaged for each of the three months in the quarter. Monthly calculations will begin\r\n in the first full month during which Members have access to DialCare.</p>\r\n\r\n<p *ngFor=\"let bundle of bundles\">\r\n <strong>{{bundle.bundleCode}}:</strong> {{bundle.bundleLanguage}}</p>\r\n<h3>Fee</h3>\r\n<p>Client shall pay Careington the following fees per month for each Member. Fees based off minimum initial enrollment\r\n of 3 members.</p>\r\n<table class=\"table table-bordered table-condensed table-striped text-center table-dk-head\">\r\n <thead>\r\n <tr>\r\n <th class=\"text-center\">PRODUCTS</th>\r\n <th class=\"text-center\">MEMBER ONLY</th>\r\n <th class=\"text-center\">MEMBER + ONE</th>\r\n <th class=\"text-center\">MEMBER + FAMILY</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let rate of MemberRates\">\r\n <td>{{rate.bundlecode}}</td>\r\n <td>{{(rate.memberonly !=0)?('$'+(rate.memberonly | number : '1.2-2')):\"\"}}</td>\r\n <td>{{(rate.memberDept != 0)?('$'+(rate.memberDept | number : '1.2-2')):\"\"}}</td>\r\n <td>{{(rate.memberFamily != 0)?('$'+(rate.memberFamily | number : '1.2-2')):\"\"}}</td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n","import { Component, OnInit, Input, OnChanges } from '@angular/core';\r\nimport { Bundle } from '../../../../models/GroupPlan/Bundle';\r\nimport { AnyAaaaRecord } from 'dns';\r\nimport { Rate } from 'src/app/models/GroupPlan/Rates';\r\n@Component({\r\n selector: 'app-benefits-plan',\r\n templateUrl: './benefits-plan.component.html',\r\n styleUrls: ['./benefits-plan.component.less']\r\n})\r\nexport class BenefitsPlanComponent implements OnInit,OnChanges {\r\n @Input() bundles: Bundle[];\r\n MemberRates=new Array<Rate>();\r\n ratedata=new Rate();\r\n constructor() {\r\n\r\n }\r\n\r\n ngOnInit() { \r\n console.log(\"bundles:: \"+this.bundles);\r\n this.ngOnChanges();\r\n }\r\n\r\n ngOnChanges(){\r\n console.log(\"bundles:: \"+this.bundles);\r\n if(this.bundles !=undefined){\r\n this.getbandles(this.bundles);\r\n }\r\n }\r\n\r\ngetbandles(bandles:Bundle[]){\r\n bandles.forEach(element => {\r\n this.ratedata.bundlecode = element.bundleCode;\r\n element.bundleRates.forEach(rate => { \r\n if(rate.coverage == 'M'){\r\n this.ratedata.memberonly = (rate.rate !=null) ? rate.rate : 0;\r\n }\r\n if(rate.coverage == 'MD'){\r\n this.ratedata.memberDept = (rate.rate !=null) ? rate.rate : 0;\r\n }\r\n if(rate.coverage == 'MF'){\r\n this.ratedata.memberFamily = (rate.rate !=null) ? rate.rate : 0;\r\n }\r\n\r\n this.ratedata.memberonly = this.ratedata.memberonly == undefined ? 0 : this.ratedata.memberonly;\r\n this.ratedata.memberDept = this.ratedata.memberDept == undefined ? 0 : this.ratedata.memberDept;\r\n this.ratedata.memberFamily = this.ratedata.memberFamily == undefined ? 0 : this.ratedata.memberFamily;\r\n\r\n });\r\n this.MemberRates.push({...this.ratedata});\r\n this.ratedata.memberonly=0;\r\n this.ratedata.memberDept=0;\r\n this.ratedata.memberFamily=0;\r\n });\r\n \r\n }\r\n}\r\n\r\n","<h3 class=\"red\">Client's Billing Contact</h3>\r\n<div class=\"row\">\r\n <div [formGroup]=\"contractForm\">\r\n <div formGroupName=\"billingForm\">\r\n <div class=\"col-md-6\">\r\n <div class=\"form-horizontal\">\r\n <div class=\"form-group\">\r\n <label class=\"col-md-4 control-label\">Contact Name:</label>\r\n <div class=\"col-md-8\">\r\n <textarea rows=\"2\" formControlName=\"contactName\" class=\"form-control\" maxLength=\"65\"\r\n databilling></textarea>\r\n </div>\r\n </div>\r\n </div>\r\n <app-contract-address [identifier]=\"identifier\" [addressForm]=\"contractForm['controls'].billingForm\">\r\n </app-contract-address>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <div class=\"form-horizontal\">\r\n <div class=\"form-group\">\r\n <label class=\"col-md-4 control-label\">Phone:</label>\r\n <div class=\"col-md-8\">\r\n <input type=\"text\" formControlName=\"phoneNumber\" class=\"form-control\" [textMask]=\"{mask: USphoneMask}\"\r\n maxlength=\"10\" dataphone>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-horizontal\">\r\n <div class=\"form-group\">\r\n <label class=\"col-md-4 control-label\">Fax:</label>\r\n <div class=\"col-md-8\">\r\n <input type=\"text\" formControlName=\"faxNumber\" class=\"form-control\" [textMask]=\"{mask: USphoneMask}\"\r\n maxlength=\"10\" datafax>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-horizontal\">\r\n <div class=\"form-group\">\r\n <label class=\"col-md-4 control-label\">Email:</label>\r\n <div class=\"col-md-8\">\r\n <input type=\"email\" formControlName=\"emailAddress\" class=\"form-control\" maxlength=\"64\" dataemail>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-horizontal\">\r\n <div class=\"form-group\">\r\n <label class=\"col-md-4 control-label\">Employer ID / Tax Payer ID Number:</label>\r\n <div class=\"col-md-8\">\r\n <input type=\"text\" formControlName=\"taxId\" class=\"form-control\" maxlength=\"20\" dataempid>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<p><a href=\"#\" data-toggle=\"modal\" (click)=\"openModal(template)\">Click here</a> for details on monthly billing.</p>\r\n\r\n<ng-template #template>\r\n <div class=\"modal-header\">\r\n <h4 class=\"modal-title pull-left\">A Quick Reference Guide to Invoicing</h4>\r\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\r\n <span aria-hidden=\"true\">×</span>\r\n </button>\r\n </div>\r\n <div class=\"modal-body\">\r\n <ul>\r\n <li>Invoices are generated on the last business day of the month for the current month.</li>\r\n <li>The invoice is based off of the active eligibility in our system with an effective date of the 1<sup>st</sup> of the current month and prior.</li>\r\n <li>In order for an invoice to be reflective of the most recent eligibility file, it must be received a minimum of 3 business days prior to the last business day of the month. It is recommended to schedule your final file of the month to be received by Careington by the 25<sup>th</sup> of each month in order to ensure invoices reflect current eligibility.</li>\r\n <li>As you are billed on the last business day of the month for the current month, any member added with a prior month's effective date will appear on the invoice both in the \"all products\" count for the invoiced month and as a \"retro-active add\" for the month in which the member was added.</li>\r\n <li>Should a member be passed in a file with an effective date of any prior months, the system will retroactively bill for the member up to 3 months back, appearing as a \"retro-active add.\"</li>\r\n <li>Careington's billing system accommodates only \"first-of-the-month\" effective dates.</li>\r\n <li>The system bills based on membership effective dates. The following policies detail how an invoice is impacted by an eligibility file which does not contain an effective date and/or by a file that contains an effective date that is not a \"first-of-the-month\":\r\n <ul>\r\n <li>Any member sent with an effective date of the 1-15<sup>th</sup> receives an effective date of the 1<sup>st</sup> of the month noted in the file.</li>\r\n <li>Any member sent with an effective date of the 16-31<sup>st</sup> will receive an effective date of the 1<sup>st</sup> of the upcoming month based on the date noted in the file.</li>\r\n <li>Any member added to our system on the 1-15<sup>th</sup> without an effective date will receive an effective date of the 1<sup>st</sup> of the current month.</li>\r\n <li>Any member added to our system on the 16-31<sup>st</sup> without an affective date will receive an effective date of the 1<sup>st</sup> of the upcoming month.</li>\r\n </ul>\r\n </li>\r\n <li>Files containing terminations must be received a minimum of 3 business days prior to the last business day of the month in order to be reflected on the current month invoice.</li>\r\n <li>Termination dates must be the \"first-of-the-month.\" Please be aware of the following policies with regard to termination dates when members are cancelled by omission or by a file that contains a termination date that is not a \"first-of-the-month\" date. Those rules are as follows:\r\n <ul>\r\n <li>Terminations dated for the I-15<sup>th</sup> will be effective the 1<sup>st</sup> of the current month noted in the file.</li>\r\n <li>Terminations dated for 16-31<sup>st</sup> will be effective the 1<sup>st</sup> of the following month noted in the file.</li>\r\n <li>Terminations done by omission use the 1-15<sup>th</sup> logic as noted above based off the date the file was loaded to our system.</li>\r\n </ul>\r\n </li>\r\n </ul>\r\n</div>\r\n</ng-template>\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { TemplateRef } from \"@angular/core\";\r\nimport { BsModalService, BsModalRef } from \"ngx-bootstrap/modal\";\r\n\r\nimport { Constants } from '../../../../core/utils/constants';\r\nimport { FieldValidationPattern } from '../../../../core/utils/field-validations';\r\n\r\n@Component({\r\n selector: 'app-billing-contact',\r\n templateUrl: './billing-contact.component.html',\r\n styleUrls: ['./billing-contact.component.less']\r\n})\r\nexport class BillingContactComponent implements OnInit {\r\n @Input() contractForm: FormGroup;\r\n USphoneMask = FieldValidationPattern.USphoneFormat;\r\n identifier: string;\r\n modalRef: BsModalRef;\r\n\r\n constructor(private modalService: BsModalService) { }\r\n\r\n ngOnInit() {\r\n this.identifier = Constants.billing;\r\n }\r\n\r\n openModal(template: TemplateRef<any>) {\r\n this.modalRef = this.modalService.show(template, {\r\n class: \"modal-dialog modal-lg\"\r\n });\r\n }\r\n}\r\n","<h3 class=\"red\">Careington International Corporation</h3>\r\n<h4>Address for Notice:</h4>\r\n<div [formGroup]=\"contractForm\">\r\n <div formGroupName=\"careingtonWitnessForm\">\r\n <app-contract-address [identifier]=\"identifier\" [addressForm]=\"contractForm['controls'].careingtonWitnessForm\"></app-contract-address>\r\n </div>\r\n</div>\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\nimport { Constants } from '../../../../core/utils/constants';\r\n\r\n@Component({\r\n selector: 'app-careington-witness',\r\n templateUrl: './careington-witness.component.html',\r\n styleUrls: ['./careington-witness.component.less']\r\n})\r\nexport class CareingtonWitnessComponent implements OnInit {\r\n @Input() contractForm: FormGroup;\r\n identifier: string;\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n this.identifier = Constants.careington;\r\n }\r\n}","<h3 class=\"red\">IN WITNESS WHEREOF, undersigned have executed this Agreement as of the date first written above.\r\n</h3>\r\n<div [formGroup]=\"contractForm\">\r\n <div formGroupName=\"clientWitnessForm\">\r\n <div class=\"form-horizontal\">\r\n <div class=\"form-group\">\r\n <label class=\"col-md-4 control-label\">Title:</label>\r\n <div class=\"col-md-8\">\r\n <input type=\"text\" formControlName=\"title\" class=\"form-control\" maxlength=\"64\" datacontacttitle>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-horizontal\">\r\n <div class=\"form-group\">\r\n <label class=\"col-md-4 control-label\">First Name:</label>\r\n <div class=\"col-md-8\">\r\n <input type=\"text\" formControlName=\"firstName\" class=\"form-control\" maxlength=\"64\" datacontactfirstname>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-horizontal\">\r\n <div class=\"form-group\">\r\n <label class=\"col-md-4 control-label\">Last Name:</label>\r\n <div class=\"col-md-8\">\r\n <input type=\"text\" formControlName=\"lastName\" class=\"form-control\" maxlength=\"10\" datacontactlastname>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-horizontal\">\r\n <div class=\"form-group\">\r\n <label class=\"col-md-4 control-label\">Date:</label>\r\n <div class=\"col-md-8\">\r\n <input type=\"text\" class=\"form-control\" value=\"{{today | date:'MM/dd/yyyy'}}\" disabled=\"\" datadate>\r\n </div>\r\n </div>\r\n </div>\r\n <h4>Address for Notice:</h4>\r\n <div class=\"form-horizontal\">\r\n <div class=\"form-group\">\r\n <label class=\"col-md-4 control-label\">Company Name:</label>\r\n <div class=\"col-md-8\">\r\n <textarea formControlName=\"name\" rows=\"2\" class=\"form-control\" maxlength=\"64\" datacompanyname></textarea>\r\n </div>\r\n </div>\r\n </div>\r\n <app-contract-address [identifier]=\"identifier\" [addressForm]=\"contractForm['controls'].clientWitnessForm\">\r\n </app-contract-address>\r\n </div>\r\n</div>\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\nimport { Constants } from '../../../../core/utils/constants';\r\n\r\n@Component({\r\n selector: 'app-client-witness',\r\n templateUrl: './client-witness.component.html',\r\n styleUrls: ['./client-witness.component.less']\r\n})\r\nexport class ClientWitnessComponent implements OnInit {\r\n @Input() contractForm: FormGroup ;\r\n\r\n today: number;\r\n identifier: string;\r\n constructor(private titleService: Title) { titleService.setTitle('Member Agreement | Careington Direct');}\r\n\r\n ngOnInit() {\r\n this.today = Date.now();\r\n this.identifier = Constants.witness;\r\n }\r\n}","<div [formGroup]=\"addressForm\">\r\n <div class=\"form-horizontal\">\r\n <div class=\"form-group\">\r\n <label class=\"col-md-4 control-label\">Address:</label>\r\n <div class=\"col-md-8\">\r\n <input type=\"text\" formControlName=\"address1\" class=\"form-control\" maxlength=\"70\" [attr.dataaddress1]=\"identifier\">\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-horizontal\">\r\n <div class=\"form-group\">\r\n <label class=\"col-md-4 control-label\">Address 2:</label>\r\n <div class=\"col-md-8\">\r\n <input type=\"text\" formControlName=\"address2\" class=\"form-control\" maxlength=\"50\" [attr.dataaddress2]=\"identifier\">\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-horizontal\">\r\n <div class=\"form-group\">\r\n <label class=\"col-md-4 control-label\">City:</label>\r\n <div class=\"col-md-8\">\r\n <input type=\"text\" formControlName=\"city\" class=\"form-control\" maxlength=\"50\" [attr.datacity]=\"identifier\">\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-horizontal\">\r\n <div class=\"form-group\">\r\n <label class=\"col-md-4 control-label\">State:</label>\r\n <div class=\"col-md-8\">\r\n <input type=\"text\" formControlName=\"stateCode\" class=\"form-control\" maxlength=\"50\" [attr.datastate]=\"identifier\">\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-horizontal\">\r\n <div class=\"form-group\">\r\n <label class=\"col-md-4 control-label\">ZIP:</label>\r\n <div class=\"col-md-8\">\r\n <input type=\"text\" formControlName=\"zipCode\" class=\"form-control\" maxlength=\"5\" [attr.datazipcode]=\"identifier\">\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-contract-address',\r\n templateUrl: './contract-address.component.html',\r\n styleUrls: ['./contract-address.component.less']\r\n})\r\nexport class ContractAddressComponent implements OnInit {\r\n @Input() addressForm: FormGroup ;\r\n @Input() identifier: string;\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","<section class=\"content\" id=\"learn-more\">\r\n <div class=\"container\">\r\n <p><a [routerLink]=\"['/application/broker']\" class=\"btn btn-primary btn-lg\">GO BACK</a></p>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"panel panel-primary admin-panel\">\r\n <div class=\"panel-heading\">\r\n <h3 class=\"h4\">Employer Agreement <i class=\"fas fa-file-contract pull-right\" aria-hidden=\"true\"></i></h3>\r\n </div>\r\n <div class=\"panel-body\" *ngIf=\"contractForm\">\r\n <div [formGroup]=\"contractForm\">\r\n <p><a class=\"anchorCursor\" (click)=\"downloadEmployerSponsorAgreement()\">Download</a> your Careington\r\n Employer Sponsor Agreement PDF file.</p>\r\n <hr class=\"hr-normal\">\r\n <app-recitals [companyName]=\"companyInfo?.name\" [stateName]=\"companyInfo?.stateName\"></app-recitals>\r\n <hr class=\"hr-normal\">\r\n <app-witness [contractForm]=\"contractForm\"></app-witness>\r\n <hr class=\"hr-normal\">\r\n <app-benefits-plan [bundles]=\"bundles\"></app-benefits-plan>\r\n <hr class=\"hr-normal\">\r\n <app-billing-contact [contractForm]=\"contractForm\"></app-billing-contact>\r\n <hr class=\"hr-normal\">\r\n <app-your-contract [contractForm]=\"contractForm\" [phoneNumber]=\"phoneNumber\"\r\n [companyName]=\"companyInfo.name\"></app-your-contract>\r\n <hr class=\"hr-normal\">\r\n <app-signature [contractForm]=\"contractForm\" (saveSponsorAgreement)=\"saveContract()\"></app-signature>\r\n <hr class=\"hr-normal\">\r\n </div>\r\n <small>CIC Employer Sponsor Agreement<br>\r\n 12.12.18</small>\r\n <hr class=\"hr-clear\">\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</section>\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { forkJoin } from 'rxjs';\r\nimport { Router } from '@angular/router';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\nimport { CompanyResponse } from '../../../models/Company/company-response';\r\nimport { AppState } from '../../../core/app-state';\r\nimport { CareingtonInfoService } from '../../../services/careington-info.service';\r\nimport { CareingtonCommunicationDetails } from '../../../models/Contract/careington-communication-details';\r\nimport { Bundle } from '../../../models/GroupPlan/Bundle';\r\nimport { CommonGatewayService } from '../../../services/common-gateway.service';\r\nimport { FieldValidationPattern } from '../../../core/utils/field-validations';\r\nimport { ContractService } from './contract.service';\r\nimport { SponsorAgreementResponse } from '../../../models/SponsorAgreement/sponsor-agreement-response';\r\nimport { Application } from '../../../models/Application/Application';\r\nimport { Constants } from '../../../core/utils/constants';\r\nimport { LoaderService } from '../../../core/services/loader.service';\r\nimport { HttpStatusCodes } from '../../../shared/utils/http-status-codes';\r\nimport { NotificationService } from '../../../core/services/notification.service';\r\n\r\n@Component({\r\n selector: 'app-contract',\r\n templateUrl: './contract.component.html',\r\n styleUrls: ['./contract.component.less']\r\n})\r\nexport class ContractComponent implements OnInit {\r\n companyInfo: CompanyResponse;\r\n contractForm: FormGroup;\r\n bundles: Bundle[];\r\n bundleIds: number[];\r\n phoneNumber: string;\r\n billingConstant: string;\r\n careingtonConstant: string;\r\n witnessConstant: string;\r\n\r\n constructor(private formBuilder: FormBuilder,\r\n private careingtonInfoService: CareingtonInfoService,\r\n private commonGatewayService: CommonGatewayService,\r\n private contractService: ContractService,\r\n private loaderService: LoaderService,\r\n private appState: AppState,\r\n private route: Router,\r\n private notificationService: NotificationService,\r\n private titleService: Title\r\n ) { \r\n titleService.setTitle('Member Agreement | Careington Direct');\r\n }\r\n\r\n ngOnInit() {\r\n this.validateProgress();\r\n this.billingConstant = Constants.billing;\r\n this.careingtonConstant = Constants.careington;\r\n this.witnessConstant = Constants.witness;\r\n }\r\n\r\n validateProgress() {\r\n if (!this.appState.RecordLocator) {\r\n this.route.navigate([\"/application\"]);\r\n } else if (!this.appState.Broker && !this.appState.BillingInformation) {\r\n this.route.navigate([\"/application/broker\"]);\r\n } else {\r\n this.buildForm();\r\n this.getBundleIds();\r\n this.loadPrimaryContact();\r\n this.loadBillingInfo();\r\n this.loadCompanyDetails();\r\n this.getData();\r\n }\r\n }\r\n\r\n getBundleIds() {\r\n this.bundleIds = this.appState.ChoosePlans.selectedPlans;\r\n }\r\n\r\n loadBillingInfo() {\r\n //Populate billing details in Client's billing contact section.\r\n this.contractForm.controls.billingForm.patchValue(this.appState.BillingInformation);\r\n this.contractForm['controls'].billingForm['controls'].contactName\r\n .setValue(this.appState.BillingInformation.firstName + ' ' + this.appState.BillingInformation.lastName);\r\n\r\n //Populate taxId from company info.\r\n this.contractForm['controls'].billingForm['controls'].taxId\r\n .setValue(this.appState.Company.taxID);\r\n }\r\n\r\n loadPrimaryContact() {\r\n //Populate primary contact details in Client Witness sections.\r\n this.contractForm['controls'].clientWitnessForm['controls'].title.setValue(this.appState.PrimaryContact.title);\r\n this.contractForm['controls'].clientWitnessForm['controls'].firstName.setValue(this.appState.PrimaryContact.firstName);\r\n this.contractForm['controls'].clientWitnessForm['controls'].lastName.setValue(this.appState.PrimaryContact.lastName);\r\n }\r\n\r\n loadCompanyDetails() {\r\n //Populate company details in Recitals and Client Witness sections.\r\n this.companyInfo = this.appState.Company;\r\n this.contractForm.controls.clientWitnessForm.patchValue(this.companyInfo);\r\n }\r\n\r\n getData() {\r\n forkJoin(\r\n this.commonGatewayService.getChoosenPlansByIds(this.bundleIds),\r\n this.careingtonInfoService.getCareingtonCommunicationDetails()\r\n ).subscribe(responseList => {\r\n this.loadChoosenPlanDetails(responseList[0]);\r\n this.loadCareingtonCommunicationDetails(responseList[1]);\r\n })\r\n }\r\n\r\n loadCareingtonCommunicationDetails(result: CareingtonCommunicationDetails) {\r\n this.appState.CareingtonCommunicationDetails = result;\r\n //Populate Careington details in Careington witness section.\r\n this.contractForm.controls.careingtonWitnessForm.patchValue(this.appState.CareingtonCommunicationDetails.address);\r\n //Populate Careington phone number in your contact section.\r\n this.phoneNumber = this.appState.CareingtonCommunicationDetails.phoneNumber;\r\n }\r\n\r\n loadChoosenPlanDetails(bundles: Bundle[]) {\r\n //Populate choosen plan details in Benefits plan section.\r\n this.bundles = bundles;\r\n }\r\n\r\n saveContract() {\r\n\r\n const firstName = this.contractForm.controls.signatureForm.get(\"firstName\").value;\r\n const lastName = this.contractForm.controls.signatureForm.get(\"lastName\").value;\r\n\r\n const contractAgreeCheck = this.contractForm.controls.yourContractForm.get(\"contractAgreeCheck\").value;\r\n const dataauthorizetosigncheck = this.contractForm.controls.yourContractForm.get(\"authorizeToSignCheck\").value;\r\n\r\n this.contractForm.markAllAsTouched();\r\n if (this.contractForm.controls.signatureForm.invalid || this.contractForm.controls.yourContractForm.invalid) {\r\n return;\r\n }\r\n\r\n let contractRequest = { \r\n \"firstName\": firstName, \r\n \"lastName\": lastName, \r\n \"contractAgreeCheck\": contractAgreeCheck,\r\n \"dataauthorizetosigncheck\":dataauthorizetosigncheck\r\n };\r\n //added a message when the loading icon is displayed\r\n this.loaderService.setMessage.next('<p>We are now finalizing your contract.</p><p>Please do not refresh or shut down your browser.</p>');\r\n\r\n this.contractService.saveContract(this.appState.RecordLocator, contractRequest)\r\n .subscribe(\r\n (response: SponsorAgreementResponse) => {\r\n this.loaderService.setMessage.next('');\r\n this.appState.ClearGetStartedData();\r\n this.route.navigate([\"../admin/login\"]);\r\n }, error => {\r\n this.loaderService.setMessage.next('');\r\n this.handleError(error);\r\n }\r\n )\r\n }\r\n\r\n handleError(error: HttpErrorResponse): void {\r\n let errorList: string = \"\";\r\n\r\n if (error.status == HttpStatusCodes.UNAUTHORIZED) {\r\n this.route.navigate(['/admin/login']);\r\n }\r\n\r\n if (error.status == HttpStatusCodes.UNPROCESSABLE_ENTITY && error.error.errors != null) {\r\n for (const key in error.error.errors) {\r\n error.error.errors[key].forEach(errorValue => {\r\n errorList = errorList.concat(errorValue, \"\\n\");\r\n });\r\n }\r\n }\r\n else if (error.status != HttpStatusCodes.UNAUTHORIZED) {\r\n errorList = \"Something went wrong, please try again after some time or reach out to helpdesk.\";\r\n this.notificationService.Error(errorList, true);\r\n return;\r\n }\r\n\r\n if (errorList) {\r\n this.notificationService.Error(errorList, true);\r\n }\r\n }\r\n\r\n downloadEmployerSponsorAgreement() {\r\n const firstName = this.contractForm.controls.signatureForm.get(\"firstName\").value;\r\n const lastName = this.contractForm.controls.signatureForm.get(\"lastName\").value;\r\n const contractAgreeCheck = this.contractForm.controls.yourContractForm.get(\"contractAgreeCheck\").value;\r\n const dataauthorizetosigncheck = this.contractForm.controls.yourContractForm.get(\"authorizeToSignCheck\").value;\r\n\r\n let contractRequest = { \r\n \"firstName\": firstName, \r\n \"lastName\": lastName, \r\n \"contractAgreeCheck\": contractAgreeCheck,\r\n \"dataauthorizetosigncheck\":dataauthorizetosigncheck\r\n };\r\n this.contractService.downloadContract(this.appState.RecordLocator, contractRequest).subscribe(\r\n (response: SponsorAgreementResponse) => {\r\n const binary = atob(response.pdfContent);\r\n const array = [];\r\n for (let i = 0; i < binary.length; i++) {\r\n array.push(binary.charCodeAt(i));\r\n }\r\n const blob = new Blob([new Uint8Array(array)], {\r\n type: 'application/pdf'\r\n });\r\n\r\n // IE gives error while downloding a pdf. So for IE we are implementing SaveOrOpenBlob\r\n if (window.navigator && (window.navigator as any).msSaveOrOpenBlob) {\r\n (window.navigator as any).msSaveOrOpenBlob(blob, \"SponsorAgreement_\"+ this.appState.RecordLocator +\".pdf\");\r\n }\r\n else {\r\n const fileURL = URL.createObjectURL(blob);\r\n window.open(fileURL, '_blank');\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n });\r\n }\r\n\r\n buildForm() {\r\n this.contractForm = this.formBuilder.group({\r\n clientWitnessForm: this.formBuilder.group({\r\n title: new FormControl({ value: '', disabled: true }),\r\n firstName: new FormControl({ value: '', disabled: true }),\r\n lastName: new FormControl({ value: '', disabled: true }),\r\n name: new FormControl({ value: '', disabled: true }),\r\n address1: new FormControl({ value: '', disabled: true }),\r\n address2: new FormControl({ value: '', disabled: true }),\r\n city: new FormControl({ value: '', disabled: true }),\r\n stateCode: new FormControl({ value: '', disabled: true }),\r\n zipCode: new FormControl({ value: '', disabled: true })\r\n }),\r\n careingtonWitnessForm: this.formBuilder.group({\r\n address1: new FormControl({ value: '', disabled: true }),\r\n address2: new FormControl({ value: '', disabled: true }),\r\n city: new FormControl({ value: '', disabled: true }),\r\n stateCode: new FormControl({ value: '', disabled: true }),\r\n zipCode: new FormControl({ value: '', disabled: true })\r\n }),\r\n billingForm: this.formBuilder.group({\r\n contactName: new FormControl({ value: '', disabled: true }),\r\n address1: new FormControl({ value: '', disabled: true }),\r\n address2: new FormControl({ value: '', disabled: true }),\r\n city: new FormControl({ value: '', disabled: true }),\r\n stateCode: new FormControl({ value: '', disabled: true }),\r\n zipCode: new FormControl({ value: '', disabled: true }),\r\n phoneNumber: new FormControl({ value: '', disabled: true }),\r\n faxNumber: new FormControl({ value: '', disabled: true }),\r\n emailAddress: new FormControl({ value: '', disabled: true }),\r\n taxId: new FormControl({ value: '', disabled: true })\r\n }),\r\n signatureForm: this.formBuilder.group({\r\n firstName: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n lastName: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)])\r\n }),\r\n yourContractForm: this.formBuilder.group({\r\n contractAgreeCheck: new FormControl(false, [Validators.required]),\r\n authorizeToSignCheck: new FormControl(false, [Validators.required])\r\n })\r\n });\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\n\r\nimport { GroupPortalApiService } from '../../../core/services/group-portal-api.service';\r\nimport { SponsorAgreementResponse } from '../../../models/SponsorAgreement/sponsor-agreement-response';\r\nimport { SponsorAgreementRequest } from '../../../models/SponsorAgreement/sponsor-agreement-request';\r\nimport { DocusigResponse } from \"src/app/models/Docusign/docusign-response\";\r\nimport { SignerDetails } from \"src/app/models/Docusign/docusign-request\";\r\nimport { Application } from '../../../models/Application/Application';\r\nimport { ApiPaths } from '../../../shared/utils/ApiPaths';\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class ContractService {\r\n constructor(private http: GroupPortalApiService) { }\r\n\r\n saveContract(recordLocator: string, sponsoragreement: SponsorAgreementRequest\r\n ): Observable<SponsorAgreementResponse> {\r\n const apiUrl = ApiPaths.contract_save_post.replace(\"{recordLocator}\", recordLocator);\r\n return this.http.post<SponsorAgreementResponse>(apiUrl, sponsoragreement, {throwError : true});\r\n }\r\n\r\n downloadContract(recordLocator: string, sponsoragreement: SponsorAgreementRequest): Observable<SponsorAgreementResponse> {\r\n \r\n const apiUrl = ApiPaths.contractdraft_view_post.replace(\"{recordLocator}\", recordLocator);\r\n return this.http.post<SponsorAgreementResponse>(apiUrl, sponsoragreement);\r\n }\r\n\r\n getDocusignUrl(signer:SignerDetails):Observable<DocusigResponse>{\r\n const apiUrl = ApiPaths.contractdocusigner_post;\r\n return this.http.post<DocusigResponse>(apiUrl, signer);\r\n }\r\n}\r\n","<p>THIS EMPLOYER SPONSOR AGREEMENT (this \"Agreement\") is made this <span\r\n class=\"filled\">{{today | date: 'd'}}{{(today | date: 'd') | dateSuffix}}</span> day of <span\r\n class=\"filled\">{{today | date: 'MMMM'}}</span>, <span class=\"filled\">{{today | date: 'yyyy'}}</span> by and\r\nbetween <span class=\"filled\">{{companyName}}</span> a <span class=\"filled\">{{stateName | titlecase}}</span> corporation\r\n(\"Client\"), and CAREINGTON INTERNATIONAL CORPORATION, a Texas corporation (\"Careington\").</p>\r\n<h2 class=\"red\">Recitals</h2>\r\n<p>WHEREAS, Careington and Client desire to enter into a relationship whereby Careington will provide healthcare or\r\n other products or services to Client's employees and dependents who are eligible to receive such products or services\r\n (\"Members\") on the terms and conditions provided herein;</p>\r\n<p>NOW, THEREFORE, in consideration of the premises and the mutual covenants set forth in this Agreement, Client and\r\n Careington hereby agree as follows:</p>\r\n<ol>\r\n <li><strong class=\"text-underline\">Obligations of Careington.</strong> Careington shall provide Client with the\r\n Benefits Plan described on Schedule 1. Careington shall be responsible for the costs for the production and\r\n distribution of marketing and membership materials for the Benefits Plan. Careington shall provide Members with\r\n membership materials for the Benefits Plan. Membership materials shall include an identification card identifying\r\n that such Member is a participant in the Benefits Plan in addition to a toll-free telephone number for use by\r\n Members for inquiries regarding the benefits associated with the Benefits Plan.</li>\r\n <li><strong class=\"text-underline\">Obligations of Client.</strong> Client shall offer the Benefits Plan to employees\r\n either at no charge or at the charge described on Schedule 1. Client shall not use any materials describing the\r\n Benefits Plan without Careington's prior written approval. If Members are responsible for paying for the Benefits\r\n Plan, Client shall collect Benefit Plan fees from the Members. Client shall provide Careington a monthly updated\r\n list of current Members showing such Members' names, telephone numbers and mailing addresses. Client shall comply\r\n with all laws, rules and regulations.</li>\r\n <li><strong class=\"text-underline\">Fee.</strong> Careington shall invoice Client monthly. For each active Member,\r\n Client agrees to pay Careington the monthly fee set forth on Schedule 1. Client shall pay Careington all amounts due\r\n on a monthly basis within fifteen (15) days following the end of each month. Client's contact for billing purposes\r\n is set forth on Schedule 1.</li>\r\n <li><strong class=\"text-underline\">Confidentiality.</strong>\r\n <ol type=\"a\">\r\n <li>In performing its obligations pursuant to this Agreement, each party may haveaccess to and receive disclosure\r\n from the other of certain proprietary and confidential information, including, but not limited to, financial\r\n records, technological developments, marketing strategies, Member lists, employee lists, and other information\r\n considered by the disclosing party to be confidential and proprietary (herein collectively referred to as\r\n \"Confidential Information\"). For purposes of this Section, the financial terms of this Agreement are\r\n Confidential Information of each party. Confidential Information does not include: (i) information learned from\r\n a third party entitled to disclose it and who is not in violation of a contractual, legal or fiduciary\r\n obligation to either party, (ii) information which is or becomes known publicly through no fault of either party\r\n or, (iii) information already known by either party prior to disclosure from the other party, as shown by the\r\n receiving party's records.</li>\r\n <li>Each party shall receive Confidential Information in confidence, shall use it solely for the purpose of and as\r\n necessary to fulfill its obligations under this Agreement and shall not reveal it to any third party, other than\r\n a corporate affiliate, without the express written consent of the other party. Each party shall take appropriate\r\n measures to prevent its agents, employees and officers and directors from using or disclosing any Confidential\r\n Information, except as is expressly permitted under this Agreement.</li>\r\n <li>All documents supplied to one party (the \"Disclosing Party\") to the other (the \"Recipient Party\"), if any,\r\n pursuant to the provisions of this Agreement, including all copies or reproductions thereof, shall be returned\r\n to the Disclosing Party at the Disclosing Party's request. Both parties agree that none of the documents\r\n provided by a Disclosing Party will be reproduced except for the sole purpose of performing its analysis. Both\r\n parties agree that upon completion of its analysis, all copies of material containing Confidential Information\r\n will be returned to the Disclosing Party, except as otherwise agreed between both parties in writing.</li>\r\n <li>In the event that the Recipient Party or anyone to whom the Recipient Party transmits the Confidential\r\n Information becomes legally compelled to disclose the Confidential Information, the Recipient Party shall\r\n provide the Disclosing Party with prompt written notice thereof so that the Disclosing Party may seek a\r\n protective order or other appropriate remedy. The Recipient Party shall cooperate with the Disclosing Party in\r\n its efforts to obtain such remedies, but the Recipient Party shall not be required to undertake litigation or\r\n legal proceedings in its name. In the event that the Recipient Party is legally obligated to disclose any\r\n Confidential Information, the Recipient Party shall furnish only the portion of the Confidential Information\r\n that is legally required and will exercise its reasonable best efforts to assure that confidential treatment\r\n will be accorded the Confidential Information.</li>\r\n <li>The provisions of this Section shall survive termination of this Agreement.</li>\r\n </ol>\r\n </li>\r\n <li><strong class=\"text-underline\">Independent Relationship.</strong> No provision of this Agreement is intended to\r\n create nor shall be deemed or construed to create any relationship between Client and Careington other than that of\r\n independent entities contracting with each other hereunder solely for the purpose of effecting the provisions of\r\n this Agreement. The parties hereto are not and shall not be deemed for any purpose to be agents, joint venturers or\r\n partners. Neither party is authorized to act as agent for the other, to take any action or make any representation\r\n in the name of the other, or to represent that it has the power or authority to do so. Neither of the parties to\r\n this Agreement nor any of their respective officers, directors, or employees shall hold themselves out as the\r\n employee, partner, officer, director or agent of the other party and shall not be deemed or construed to be an\r\n employee, partner, officer, director or agent of the other party. Neither Careington nor Client is authorized to\r\n represent the other for any purpose whatsoever without the prior written agreement of that party.</li>\r\n <li><strong class=\"text-underline\">Term.</strong>\r\n <ol type=\"a\">\r\n <li>This Agreement shall be effective as of the day and year first written above and shall continue for an initial\r\n term of one (1) year (the \"Initial Term\"), unless sooner terminated pursuant to the terms stated below. Upon the\r\n expiration of the Initial Term, this Agreement shall automatically renew for subsequent periods of one (1) year\r\n each, unless a written notice to the contrary is provided by Client at least ninety (90) days prior to the\r\n expiration of the then existing term.</li>\r\n <li>Careington may terminate this Agreement without cause upon not less than sixty (60) days prior written notice\r\n to Client.</li>\r\n <li>Either party may terminate this Agreement upon thirty (30) days prior written notice to the other in the event\r\n of a material breach of this Agreement that remains uncured thirty (30) days after such notice. If either party\r\n repeats a material breach, the Agreement may be terminated immediately.</li>\r\n </ol>\r\n </li>\r\n <li><strong class=\"text-underline\">Advertising Reference; Tradenames.</strong> No advertising, promotional, or other\r\n materials using the name, address, telephone number, description, facilities and/or services of Careington or Client\r\n shall be released without either Careington or Client's prior written consent, as applicable. Neither party hereto\r\n obtains by virtue of this Agreement any rights in nor shall it use any trademark, service mark, logo, or other\r\n proprietary designation or intellectual property of any type in which the other party or any of its affiliates has\r\n an ownership or licensee interest.</li>\r\n <li><strong class=\"text-underline\">Limitation on Damages.</strong> Neither party nor any of its affiliates shall be\r\n liable to the other for any indirect, special, incidental or consequential damages, including, but not limited to,\r\n lost profits, arising out of or related to this Agreement, its performance hereunder or its breach, even if it is\r\n advised of the possibility of any such damages.</li>\r\n <li><strong class=\"text-underline\">Notices.</strong> Any notice to be given pursuant to the terms of this Agreement\r\n shall be in writing and shall be deemed delivered upon personal delivery against written receipt or when mailed by\r\n certified mail with return receipt requested and postage prepaid to the receiving party at such party's address set\r\n forth on the signature page of this Agreement, which address for notice may be changed by either party by written\r\n notice under this Agreement.</li>\r\n <li><strong class=\"text-underline\">Miscellaneous.</strong> Except as otherwise provided in this Agreement, no\r\n amendment shall become effective unless and until it is reduced to writing and signed by Careington and Client.\r\n Neither party shall assign any of its rights or obligations under this Agreement without the prior written consent\r\n of the other party. This Agreement shall be governed in all respects by the laws of the State of Texas. The waiver\r\n by either party of any breach of any provision in this Agreement shall not be construed as a waiver of any\r\n subsequent breach. Further, failure to exercise any right hereunder shall not operate as a waiver of such right and\r\n all rights and remedies provided for herein are cumulative. This Agreement may be executed in separate identical\r\n counterparts, each of which when taken together shall constitute one and the same instrument.</li>\r\n</ol>\r\n","import { Component, OnInit, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-recitals',\r\n templateUrl: './recitals.component.html',\r\n styleUrls: ['./recitals.component.less']\r\n})\r\nexport class RecitalsComponent implements OnInit {\r\n today: number;\r\n @Input() companyName: string;\r\n @Input() stateName: string; \r\n constructor() { }\r\n\r\n ngOnInit() {\r\n this.today = Date.now();\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\n\r\nimport { GroupPortalApiService } from \"../../../core/services/group-portal-api.service\";\r\nimport { ApplicationPlanResponse } from \"../../../models/ApplicationPlan/application-plan-response\";\r\nimport { ApiPaths } from '../../../shared/utils/ApiPaths';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SecurePlanService {\r\n\r\n withCredentials: boolean = true;\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n getChoosenPlans(): Observable<ApplicationPlanResponse[]> {\r\n const apiUrl = ApiPaths.choosePlan_secureGet;\r\n return this.groupPortalApiService.get<ApplicationPlanResponse[]>(apiUrl, { withCredentials: this.withCredentials });\r\n }\r\n\r\n}\r\n","<h4>Your signature below:</h4>\r\n<p>I acknowledge that by completing the fields below I give my electronic signature.</p>\r\n<div [formGroup]=\"contractForm\">\r\n <div formGroupName=\"signatureForm\">\r\n <div class=\"row\">\r\n <div class=\"col-xs-6 col-sm-6 col-md-8 col-lg-8\">\r\n <div class=\"form-group\">\r\n <label>First Name:</label>\r\n <input formControlName=\"firstName\" type=\"text\" class=\"form-control\" placeholder=\"First Name\" datafirstname\r\n maxlength=\"31\">\r\n <div class=\"Validation-msg\" *ngIf=\"contractForm['controls'].signatureForm['controls'].firstName.touched ||\r\n contractForm['controls'].signatureForm['controls'].firstName.dirty\">\r\n <div *ngIf=\"contractForm['controls'].signatureForm['controls'].firstName.errors\">\r\n First Name is required\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <label>Last Name:</label>\r\n <input formControlName=\"lastName\" type=\"text\" class=\"form-control\" placeholder=\"Last Name\" datalastname\r\n maxlength=\"31\">\r\n <div class=\"Validation-msg\" *ngIf=\"contractForm['controls'].signatureForm['controls'].lastName.touched ||\r\n contractForm['controls'].signatureForm['controls'].lastName.dirty\">\r\n <div *ngIf=\"contractForm['controls'].signatureForm['controls'].lastName.errors\">\r\n Last Name is required\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <p><button (click)=\"saveContract()\" class=\"btn btn-primary spinner\">SIGN\r\n DOCUMENT</button> <i class=\"fas fa-spinner hide fa-spin\" aria-hidden=\"true\"></i></p>\r\n </div>\r\n</div>\r\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-signature',\r\n templateUrl: './signature.component.html',\r\n styleUrls: ['./signature.component.less']\r\n})\r\nexport class SignatureComponent implements OnInit {\r\n @Input() contractForm: FormGroup;\r\n @Output() saveSponsorAgreement = new EventEmitter<string>();\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n saveContract() {\r\n this.saveSponsorAgreement.emit();\r\n }\r\n}\r\n","<div [formGroup]=\"contractForm\" class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <app-client-witness [contractForm]=\"contractForm\"></app-client-witness>\r\n </div>\r\n <div class=\"col-sm-6\">\r\n <app-careington-witness [contractForm]=\"contractForm\"></app-careington-witness>\r\n </div>\r\n</div>\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-witness',\r\n templateUrl: './witness.component.html',\r\n styleUrls: ['./witness.component.less']\r\n})\r\nexport class WitnessComponent implements OnInit {\r\n @Input() contractForm: FormGroup;\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n \r\n }\r\n}\r\n","<h3>Your Contract</h3>\r\n<p>Sign the form below to complete the agreement.</p>\r\n<p>If there are any edits or errors within this contract, please contact us at\r\n <a class=\"phone\" href={{buildPhoneUrl()}}>{{phoneNumber}}</a>.\r\n</p>\r\n<div [formGroup]=\"contractForm\">\r\n <div class=\"form-group\" formGroupName=\"yourContractForm\">\r\n <div class=\"checkbox\">\r\n <label>\r\n <input formControlName=\"contractAgreeCheck\" type=\"checkbox\" required datacontractagreecheck> I agree to the\r\n terms of this contract.\r\n <div class=\"Validation-msg\"\r\n *ngIf=\"contractForm['controls'].yourContractForm['controls'].contractAgreeCheck.touched ||\r\n contractForm['controls'].yourContractForm['controls'].contractAgreeCheck.dirty\">\r\n <div *ngIf=\"contractForm['controls'].yourContractForm['controls'].contractAgreeCheck.hasError('required')\">\r\n Please agree to terms of contract.\r\n </div>\r\n </div>\r\n </label>\r\n </div>\r\n <div class=\"checkbox\">\r\n <label>\r\n <input formControlName=\"authorizeToSignCheck\" type=\"checkbox\" required dataauthorizetosigncheck> I am authorized\r\n to sign this contract on behalf\r\n of {{companyName}}.\r\n <div class=\"Validation-msg\"\r\n *ngIf=\"contractForm['controls'].yourContractForm['controls'].authorizeToSignCheck.touched ||\r\n contractForm['controls'].yourContractForm['controls'].authorizeToSignCheck.dirty\">\r\n <div *ngIf=\"contractForm['controls'].yourContractForm['controls'].authorizeToSignCheck.hasError('required')\">\r\n Please confirm that you are authorized to sign the contract.\r\n </div>\r\n </div>\r\n </label>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-your-contract',\r\n templateUrl: './your-contract.component.html',\r\n styleUrls: ['./your-contract.component.less']\r\n})\r\nexport class YourContractComponent implements OnInit {\r\n @Input() contractForm: FormGroup;\r\n @Input() phoneNumber: string;\r\n @Input() companyName: string;\r\n constructor() { }\r\n\r\n ngOnInit() { }\r\n\r\n buildPhoneUrl() {\r\n return (\"tel:+1\" + this.phoneNumber);\r\n }\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { Routes, RouterModule } from \"@angular/router\";\r\n\r\nimport { GetStartedComponent } from \"./get-started.component\";\r\nimport { ChoosePlanComponent } from \"./choose-plan/choose-plan.component\";\r\nimport { AdministratorAccountComponent } from \"./administrator-account/administrator-account.component\";\r\nimport { PrimaryContactComponent } from \"./primary-contact/primary-contact.component\";\r\nimport { BillingInformationComponent } from \"./billing-information/billing-information.component\";\r\nimport { BrokerComponent } from \"./broker-information/broker.component\";\r\nimport { CompanyInformationComponent } from \"./company-information/company-information.component\";\r\nimport { ContractComponent } from './contract/contract.component';\r\nimport { UserStateComponent } from './user-state/user-state.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: \"\",\r\n component: GetStartedComponent,\r\n children: [\r\n {\r\n path: \"\",\r\n component: ChoosePlanComponent,\r\n data: { breadCrumb: \"Get Started\" },\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"user-state/:id\",\r\n component: UserStateComponent,\r\n data: { breadCrumb: \"Get Started\" },\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"admin\",\r\n component: AdministratorAccountComponent,\r\n data: { breadCrumb: \"Get Started\" },\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"contact\",\r\n component: PrimaryContactComponent,\r\n data: { breadCrumb: \"Get Started\" },\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"billing\",\r\n component: BillingInformationComponent,\r\n data: { breadCrumb: \"Get Started\" },\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"broker\",\r\n data: { breadCrumb: \"Get Started\" },\r\n component: BrokerComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"company\",\r\n data: { breadCrumb: \"Get Started\" },\r\n component: CompanyInformationComponent,\r\n pathMatch: \"full\"\r\n },\r\n {\r\n path: \"contract\",\r\n data: { breadCrumb: \"Get Started\", bannerHeading: \"CAREINGTON EMPLOYER SPONSOR AGREEMENT\" },\r\n component: ContractComponent,\r\n pathMatch: \"full\"\r\n },\r\n ]\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class GetStartedRoutingModule { }\r\n","<div class=\"top_space\"></div>\r\n<app-banner [context]=\"bannerContext\"></app-banner>\r\n<app-bread-crumb>\r\n <em class=\"pull-right\">( <span class=\"req\">*</span> ) Required fields.</em>\r\n</app-bread-crumb>\r\n<router-outlet></router-outlet>\r\n","import { Component, OnInit } from \"@angular/core\";\r\n\r\nimport { BannerContext } from \"../../models/banner-context\";\r\n\r\n@Component({\r\n selector: \"app-get-started\",\r\n templateUrl: \"./get-started.component.html\",\r\n styleUrls: [\"./get-started.component.less\"]\r\n})\r\nexport class GetStartedComponent implements OnInit {\r\n bannerContext: BannerContext;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\r\nimport { CommonModule, TitleCasePipe } from \"@angular/common\";\r\nimport { PopoverModule } from \"ngx-bootstrap/popover\";\r\n\r\nimport { GetStartedRoutingModule } from \"./get-started-routing.module\";\r\nimport { AdministratorAccountComponent } from \"./administrator-account/administrator-account.component\";\r\nimport { ChoosePlanComponent } from \"./choose-plan/choose-plan.component\";\r\nimport { PrimaryContactComponent } from \"./primary-contact/primary-contact.component\";\r\nimport { ProgressBarStepItemComponent } from \"./progress-bar-step-item/progress-bar-step-item.component\";\r\nimport { ProgressBarStepsComponent } from \"./progress-bar-steps/progress-bar-steps.component\";\r\nimport { GetStartedComponent } from \"./get-started.component\";\r\nimport { BillingInformationComponent } from \"./billing-information/billing-information.component\";\r\nimport { BrokerComponent } from \"./broker-information/broker.component\";\r\nimport { SharedModule } from \"../../shared.module\";\r\nimport { PlanComponent } from \"./plan/plan.component\";\r\nimport { PipesModule } from \"../../pipes/pipes.module\";\r\nimport { CompanyInformationComponent } from \"./company-information/company-information.component\";\r\nimport { NavigationButtonsComponent } from \"./navigation-buttons/navigation-buttons.component\";\r\nimport { CoreModule } from \"../../core/core.module\";\r\nimport { ContactInformationComponent } from \"./contact-information/contact-information.component\";\r\nimport { BrokerDetailsComponent } from \"./broker-details/broker-details.component\";\r\nimport { ContractComponent } from './contract/contract.component';\r\nimport { RecitalsComponent } from './contract/recitals/recitals.component';\r\nimport { WitnessComponent } from './contract/witness/witness.component';\r\nimport { BenefitsPlanComponent } from './contract/benefits-plan/benefits-plan.component';\r\nimport { BillingContactComponent } from './contract/billing-contact/billing-contact.component';\r\nimport { YourContractComponent } from './contract/your-contract/your-contract.component';\r\nimport { SignatureComponent } from './contract/signature/signature.component';\r\nimport { ClientWitnessComponent } from './contract/client-witness/client-witness.component';\r\nimport { CareingtonWitnessComponent } from './contract/careington-witness/careington-witness.component';\r\nimport { ContractAddressComponent } from './contract/contract-address/contract-address.component';\r\nimport { VerifyEmailComponent } from './verify-email/verify-email.component';\r\nimport { UserStateComponent } from './user-state/user-state.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n GetStartedComponent,\r\n AdministratorAccountComponent,\r\n ChoosePlanComponent,\r\n PrimaryContactComponent,\r\n BillingInformationComponent,\r\n ProgressBarStepsComponent,\r\n ProgressBarStepItemComponent,\r\n BrokerDetailsComponent,\r\n NavigationButtonsComponent,\r\n CompanyInformationComponent,\r\n PlanComponent,\r\n BrokerComponent,\r\n NavigationButtonsComponent,\r\n CompanyInformationComponent,\r\n ContactInformationComponent,\r\n ContractComponent,\r\n RecitalsComponent,\r\n WitnessComponent,\r\n BenefitsPlanComponent,\r\n BillingContactComponent,\r\n YourContractComponent,\r\n SignatureComponent,\r\n ClientWitnessComponent,\r\n CareingtonWitnessComponent,\r\n ContractAddressComponent,\r\n VerifyEmailComponent,\r\n UserStateComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n GetStartedRoutingModule,\r\n SharedModule,\r\n CoreModule,\r\n PipesModule,\r\n [PopoverModule.forRoot()]\r\n ],\r\n providers: [TitleCasePipe]\r\n})\r\nexport class GetStartedModule { }\r\n","<div class=\"text-right\">\r\n <p>\r\n <button class=\"btn btn-default btn-lg amt\" (click)=\"backClick(CurrentStep)\" routerLinkActive=\"router-link-active\"\r\n *ngIf=\"CurrentStep != registrationStep.ChoosePlans\">\r\n BACK\r\n </button>\r\n <button class=\"btn btn-primary btn-lg amt\" (click)=\"nextClick()\" routerLinkActive=\"router-link-active\"\r\n [disabled]=\"isDisabled\">\r\n {{\r\n CurrentStep == registrationStep.BrokerInformation ? \"Review & Sign Contract\" : \"NEXT\"\r\n }}\r\n </button>\r\n </p>\r\n</div>\r\n","import { Component, OnInit, Input, Output } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { EventEmitter } from \"@angular/core\";\r\n\r\nimport { RegistrationStep } from \"../registration-step.enum\";\r\n\r\n@Component({\r\n selector: \"app-navigation-buttons\",\r\n templateUrl: \"./navigation-buttons.component.html\",\r\n styleUrls: [\"./navigation-buttons.component.less\"],\r\n outputs: [\"NextEvent\"]\r\n})\r\nexport class NavigationButtonsComponent implements OnInit {\r\n @Input() CurrentStep: RegistrationStep;\r\n @Input() isDisabled: boolean;\r\n public NextEvent: EventEmitter<any> = new EventEmitter();\r\n\r\n constructor(private router: Router) { }\r\n\r\n ngOnInit() { }\r\n\r\n nextClick() {\r\n this.NextEvent.emit(\"\");\r\n }\r\n\r\n get registrationStep() {\r\n return RegistrationStep;\r\n }\r\n\r\n backClick(CurrentStep) {\r\n if (CurrentStep == RegistrationStep.AdministratorAccount) {\r\n this.router.navigate([\"/application\"]);\r\n } else if (CurrentStep == RegistrationStep.CompanyInformation) {\r\n this.router.navigate([\"/application/admin\"]);\r\n } else if (CurrentStep == RegistrationStep.PrimaryContact) {\r\n this.router.navigate([\"/application/company\"]);\r\n } else if (CurrentStep == RegistrationStep.BillingInformation) {\r\n this.router.navigate([\"/application/contact\"]);\r\n } else if (CurrentStep == RegistrationStep.BrokerInformation) {\r\n this.router.navigate([\"/application/billing\"]);\r\n }\r\n }\r\n}\r\n","<div class=\"checkbox plan-sel\">\r\n <label><input type=\"checkbox\" [checked]=\"isSelected\" (click)=\"GroupPlanClick($event)\" />\r\n <h5>{{ bundle.bundleName }}</h5>\r\n </label><br>\r\n <p *ngIf=\"hidePlan else coveragetype\">\r\n <strong class=\"red\"> <tr *ngFor=\"let price of bundle.bundleRates | sortBundleRate\">\r\n <td>{{ price.coverage | coverageType }}:</td> \r\n <td> ${{ price.rate | number : '1.2-2' }} per month</td>\r\n </tr>\r\n </strong><br>\r\n <small>\r\n <a (click)=\"DisplayPlanDetails()\" class=\"anchorCursor\">Learn More</a> |\r\n <a popover=\"{{ bundle | products }}\" placement=\"bottom\" [outsideClick]=\"true\" class=\"anchorCursor\">Products\r\n Included</a>\r\n </small>\r\n </p>\r\n <ng-template #coveragetype >\r\n <p>\r\n <strong class=\"red\">Plan starts at: ${{ bundle | lowPrice }} \r\n </strong><br />\r\n <small><a [popover]=\"pricingOptionsContent\" placement=\"bottom\" [outsideClick]=\"true\"\r\n class=\"anchorCursor\">Pricing Options</a>\r\n | <a (click)=\"DisplayPlanDetails()\" class=\"anchorCursor\">Learn More</a> |\r\n <a popover=\"{{ bundle | products }}\" placement=\"bottom\" [outsideClick]=\"true\" class=\"anchorCursor\">Products\r\n Included</a>\r\n </small></p>\r\n </ng-template>\r\n <ng-template #pricingOptionsContent><div [innerHtml]=\"bundle | pricingOptions\"></div></ng-template>\r\n</div>\r\n\r\n","import { Component, OnInit, Input, Output, EventEmitter } from \"@angular/core\";\r\nimport { Router } from '@angular/router';\r\n\r\nimport { Bundle } from \"../../../models/GroupPlan/Bundle\";\r\n\r\n@Component({\r\n selector: \"app-plan\",\r\n templateUrl: \"./plan.component.html\",\r\n styleUrls: [\"./plan.component.less\"]\r\n})\r\nexport class PlanComponent implements OnInit {\r\n @Input() bundle: Bundle;\r\n @Input() isSelected = false;\r\n @Output() planClick: EventEmitter<any> = new EventEmitter();\r\n bundleRates:string[];\r\n hidePlan:boolean=false;\r\n\r\n constructor(private router: Router) { }\r\n\r\n ngOnInit() { \r\n if((this.bundle.bundleName == \"Careington Virtual Vet Plan\") || (this.bundle.bundleName == \"Careington Telehealth Plan\"))\r\n {\r\n this.hidePlan=true;\r\n }\r\n \r\n this.bundle.bundleRates=this.bundle.bundleRates\r\n }\r\n\r\n GroupPlanClick(event) {\r\n this.planClick.emit([this.bundle.id, event.target.checked]);\r\n }\r\n\r\n DisplayPlanDetails() {\r\n this.router.navigate([\"/plan-details/\" + this.bundle.bundleCode.trim()]);\r\n }\r\n}","<div class=\"container\" *ngIf=\"contactForm\">\r\n <section class=\"content\" id=\"learn-more\">\r\n <app-progress-bar-steps [CurrentStep]=\"4\"></app-progress-bar-steps>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <h3 class=\"panel-title edgeBrowser-Heading\">Primary Contact</h3>\r\n <hr class=\"hr-left align-left\" />\r\n <p>This user will be able to add and remove employees, handle billing and more.</p>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-group\" [formGroup]=\"contactForm\">\r\n <label>Title:<span class=\"req\">*</span></label>\r\n <input type=\"text\" class=\"form-control\" placeholder=\"CEO, CFO, etc.\" tabindex=\"1\" formControlName=\"title\"\r\n maxlength=\"64\">\r\n <div class=\"alert alert-danger\" *ngIf=\"contactForm.controls.title.invalid &&(\r\n contactForm.controls.firstName.touched || contactForm.controls.title.dirty)\">\r\n <div *ngIf=\"contactForm.controls.title.errors\">\r\n Title is required\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <app-contact-information [contactForm]=\"contactForm\" [parentForm]=\"registrationStep.PrimaryContact\">\r\n </app-contact-information>\r\n <hr class=\"hr-normal\" />\r\n <app-navigation-buttons [CurrentStep]=\"registrationStep.PrimaryContact\" [isDisabled]=\"!contactForm.valid\"\r\n (NextEvent)=\"SavePrimaryContact()\"></app-navigation-buttons>\r\n </div>\r\n </div>\r\n \r\n </section>\r\n</div>\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { FormBuilder, FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport { Router } from \"@angular/router\";\r\nimport { Observable } from \"rxjs\";\r\nimport { Title } from '@angular/platform-browser';\r\n\r\nimport { FieldValidationPattern } from \"../../../core/utils/field-validations\";\r\nimport { PrimaryContactService } from \"../../../components/get-started/primary-contact/primary-contact.service\";\r\nimport { AppState } from \"../../../core/app-state\";\r\nimport { PrimaryContactRequest } from \"../../../models/PrimaryContact/primary-contact-request\";\r\nimport { PrimaryContactResponse } from \"../../../models/PrimaryContact/primary-contact-response\";\r\nimport { RegistrationStep } from \"../registration-step.enum\";\r\n\r\n@Component({\r\n selector: \"app-primary-contact\",\r\n templateUrl: \"./primary-contact.component.html\",\r\n styleUrls: [\"./primary-contact.component.less\"]\r\n})\r\nexport class PrimaryContactComponent implements OnInit {\r\n contactForm: FormGroup;\r\n primaryContact: PrimaryContactRequest;\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private route: Router,\r\n private primaryContactService: PrimaryContactService,\r\n private appState: AppState,\r\n private titleService: Title\r\n ) {\r\n titleService.setTitle('Primary Contact | Careington Direct');\r\n }\r\n\r\n ngOnInit() {\r\n this.validateProgress();\r\n }\r\n\r\n validateProgress() {\r\n if (!this.appState.RecordLocator) {\r\n this.route.navigate([\"/application\"]);\r\n } else if (!this.appState.Company) {\r\n this.route.navigate([\"/application/company\"]);\r\n } else {\r\n this.CreateContactForm();\r\n this.LoadPrimaryContact();\r\n }\r\n }\r\n\r\n CreateContactForm(): void {\r\n let email: string = \"\";\r\n if (this.appState.PrimaryContact == null && this.appState.Administrator != null) {\r\n email = this.appState.Administrator.userName;\r\n }\r\n\r\n this.contactForm = this.formBuilder.group({\r\n title: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n firstName: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n lastName: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.noSpace)]),\r\n phoneNumber: new FormControl(\"\", [Validators.required, Validators.pattern(FieldValidationPattern.phoneformat)]),\r\n emailAddress: new FormControl(email, [Validators.required,\r\n Validators.pattern(FieldValidationPattern.EmailValidationPattern)\r\n ])\r\n });\r\n }\r\n\r\n LoadPrimaryContact(): void {\r\n if (this.appState.PrimaryContact) {\r\n this.contactForm.patchValue(this.appState.PrimaryContact);\r\n }\r\n }\r\n\r\n SavePrimaryContact() {\r\n this.primaryContact = this.contactForm.getRawValue();\r\n this.primaryContact.phoneNumber = this.primaryContact.phoneNumber.replace(/\\D/g, '');\r\n this.upsertService(this.primaryContact).subscribe(\r\n (response: PrimaryContactResponse) => {\r\n this.appState.PrimaryContact = response;\r\n this.route.navigate([\"./application/billing\"]);\r\n }\r\n );\r\n }\r\n\r\n upsertService(\r\n primaryContact: PrimaryContactRequest\r\n ): Observable<PrimaryContactResponse> {\r\n if (this.canCreate()) {\r\n return this.primaryContactService.CreatePrimaryContact(\r\n this.appState.RecordLocator,\r\n primaryContact\r\n );\r\n }\r\n primaryContact.recordVersion = this.appState.PrimaryContact.recordVersion;\r\n return this.primaryContactService.UpdatePrimaryContact(\r\n this.appState.RecordLocator,\r\n this.appState.PrimaryContact.id,\r\n primaryContact\r\n );\r\n }\r\n\r\n canCreate(): boolean {\r\n if (this.appState.PrimaryContact) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n get registrationStep() {\r\n return RegistrationStep;\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\n\r\nimport { PrimaryContactResponse } from \"../../../models/PrimaryContact/primary-contact-response\";\r\nimport { PrimaryContactRequest } from \"../../../models/PrimaryContact/primary-contact-request\";\r\nimport { GroupPortalApiService } from \"../../../core/services/group-portal-api.service\";\r\nimport { ApiPaths } from '../../../shared/utils/ApiPaths';\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class PrimaryContactService {\r\n constructor(private _http: GroupPortalApiService) { }\r\n\r\n GetPrimaryContact(recordLocator: string): Observable<PrimaryContactResponse> {\r\n const apiUrl = ApiPaths.primary_get.replace(\"{recordLocator}\", recordLocator);\r\n return this._http.get<PrimaryContactResponse>(apiUrl, {throwError: true});\r\n }\r\n\r\n CreatePrimaryContact(recordLocator: string, primaryContact: PrimaryContactRequest): Observable<PrimaryContactResponse> {\r\n const apiUrl = ApiPaths.primary_post.replace(\"{recordLocator}\", recordLocator);\r\n return this._http.post<PrimaryContactResponse>(apiUrl, primaryContact);\r\n }\r\n\r\n UpdatePrimaryContact(recordLocator: string, primaryContactId: number, primaryContact: PrimaryContactRequest): Observable<PrimaryContactResponse> {\r\n const apiUrl = ApiPaths.primary_put.replace(\"{recordLocator}\", recordLocator).replace(\"{id}\", primaryContactId.toString());\r\n return this._http.put<PrimaryContactResponse>(apiUrl, primaryContact);\r\n }\r\n}\r\n","<div style=\"padding-bottom: 0 !important;\" [ngClass]=\"{'seven-xs-1':true, 'active': IsActive(), 'current':IsCurrent()}\">\r\n <a *ngIf=\"IsActive()\" [routerLink]=\"[RouteName]\">\r\n <ng-container *ngTemplateOutlet=\"iconTemplate\"></ng-container>\r\n </a>\r\n <div *ngIf=\"!IsActive()\">\r\n <ng-container *ngTemplateOutlet=\"iconTemplate\"></ng-container>\r\n </div> \r\n</div>\r\n\r\n<ng-template #iconTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>","import { Component, OnInit, Input } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\n\r\nimport { RegistrationStep } from \"../registration-step.enum\";\r\n\r\n@Component({\r\n selector: \"progress-bar-step-item\",\r\n templateUrl: \"./progress-bar-step-item.component.html\",\r\n styleUrls: [\"./progress-bar-step-item.component.less\"]\r\n})\r\nexport class ProgressBarStepItemComponent implements OnInit {\r\n @Input() CurrentStep: RegistrationStep;\r\n @Input() Step: RegistrationStep;\r\n @Input() RouteName: string;\r\n\r\n constructor(private router: Router) {}\r\n\r\n ngOnInit() {}\r\n\r\n IsActive() {\r\n return (this.Step < this.CurrentStep || this.Step == RegistrationStep.ChoosePlans);\r\n }\r\n\r\n IsCurrent() {\r\n return (this.Step == this.CurrentStep && this.Step != RegistrationStep.ChoosePlans);\r\n }\r\n}\r\n","<div class=\"row text-center app-progress\">\r\n <div *ngFor=\"let step of stepList\">\r\n <progress-bar-step-item\r\n [CurrentStep]=\"CurrentStep\"\r\n [Step]=\"step.stepPage\"\r\n RouteName=\"{{ step.RouteName }}\"\r\n >\r\n <i class=\"far font_32\" ngClass=\"{{ step.icon }}\" aria-hidden=\"true\"></i>\r\n <p class=\"step_style\">{{ step.Heading }}</p>\r\n </progress-bar-step-item>\r\n </div>\r\n</div>\r\n","import { Component, OnInit, Input } from \"@angular/core\";\r\n\r\nimport { RegistrationStep } from \"../registration-step.enum\";\r\n\r\n@Component({\r\n selector: \"app-progress-bar-steps\",\r\n templateUrl: \"./progress-bar-steps.component.html\",\r\n styleUrls: [\"./progress-bar-steps.component.less\"]\r\n})\r\nexport class ProgressBarStepsComponent implements OnInit {\r\n @Input() CurrentStep: RegistrationStep;\r\n stepList: any[];\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n this.stepList = [\r\n {\r\n stepPage: RegistrationStep.ChoosePlans,\r\n RouteName: \"/application\",\r\n Heading: \"Choose Your Plan\",\r\n icon: \"fa-ballot-check\"\r\n },\r\n {\r\n stepPage: RegistrationStep.AdministratorAccount,\r\n RouteName: \"/application/admin\",\r\n Heading: \"Administrator Account\",\r\n icon: \"fa-user-circle\"\r\n },\r\n {\r\n stepPage: RegistrationStep.CompanyInformation,\r\n RouteName: \"/application/company\",\r\n Heading: \"Company Information\",\r\n icon: \"fa-building\"\r\n },\r\n {\r\n stepPage: RegistrationStep.PrimaryContact,\r\n RouteName: \"/application/contact\",\r\n Heading: \"Primary Contact\",\r\n icon: \"fa-id-card\"\r\n },\r\n {\r\n stepPage: RegistrationStep.BillingInformation,\r\n RouteName: \"/application/billing\",\r\n Heading: \"Billing Information\",\r\n icon: \"fa-file-invoice-dollar\"\r\n },\r\n {\r\n stepPage: RegistrationStep.BrokerInformation,\r\n RouteName: \"/application/broker\",\r\n Heading: \"Broker Information\",\r\n icon: \"fa-handshake\"\r\n }\r\n ];\r\n }\r\n}\r\n","export enum RegistrationStep {\r\n ChoosePlans = 1,\r\n AdministratorAccount = 2,\r\n CompanyInformation = 3,\r\n PrimaryContact = 4,\r\n BillingInformation = 5,\r\n BrokerInformation = 6\r\n}\r\n","<section class=\"content\" id=\"learn-more\">\r\n <div class=\"container\">\r\n <app-progress-bar-steps [CurrentStep]=\"registrationStep.ChoosePlans\"></app-progress-bar-steps>\r\n </div>\r\n</section>\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\n\r\nimport { RegistrationStep } from '../registration-step.enum';\r\nimport { AdministratorService } from '../administrator-account/administrator.service';\r\nimport { AppState } from 'src/app/core/app-state';\r\nimport { ChoosePlanService } from '../choose-plan/choose-plan.service';\r\nimport { CommonGatewayService } from 'src/app/services/common-gateway.service';\r\nimport { CompanyInformationService } from '../company-information/company-information.service';\r\nimport { PrimaryContactService } from '../primary-contact/primary-contact.service';\r\nimport { BillinginformationService } from '../billing-information/billinginformation.service';\r\nimport { BrokerInformationService } from '../broker-information/broker-information.service';\r\nimport { HttpStatusCodes } from '../../../shared/utils/http-status-codes';\r\n\r\n@Component({\r\n selector: 'app-user-state',\r\n templateUrl: './user-state.component.html',\r\n styleUrls: ['./user-state.component.less']\r\n})\r\nexport class UserStateComponent implements OnInit {\r\n recordLocator: string;\r\n bundleIds: number[];\r\n\r\n constructor(private administratorService: AdministratorService,\r\n private choosenPlanService: ChoosePlanService,\r\n private commonGatewayService: CommonGatewayService,\r\n private companyInfoService: CompanyInformationService,\r\n private primaryContactService: PrimaryContactService,\r\n private billingInfoService: BillinginformationService,\r\n private brokerService: BrokerInformationService,\r\n private router: Router,\r\n private activatedRoute: ActivatedRoute,\r\n private appState: AppState) { }\r\n\r\n ngOnInit() {\r\n this.recordLocator = this.activatedRoute.snapshot.paramMap.get(\"id\");\r\n this.appState.RecordLocator = this.recordLocator;\r\n this.getData();\r\n }\r\n\r\n getData() {\r\n this.getAllPlans();\r\n this.getAdministrator();\r\n }\r\n\r\n getAllPlans() {\r\n this.commonGatewayService.GetGroupPlans().subscribe(\r\n (response) => {\r\n this.appState.Bundles = response;\r\n });\r\n }\r\n\r\n getAdministrator() {\r\n this.administratorService.getAdministrator(this.recordLocator)\r\n .subscribe(response => {\r\n if (response.application.isAgreementSigned)\r\n this.router.navigate(['admin/login']);\r\n else {\r\n this.appState.Administrator = response;\r\n this.getSelectedPlans();\r\n }\r\n });\r\n }\r\n\r\n getCompany() {\r\n this.companyInfoService.getCompanyInfo(this.recordLocator)\r\n .subscribe(response => {\r\n this.appState.Company = response;\r\n this.getPrimaryContact();\r\n },\r\n (error: HttpErrorResponse) => {\r\n if (error.status == HttpStatusCodes.NOT_FOUND)\r\n this.router.navigate(['application/company']);\r\n });\r\n }\r\n\r\n getPrimaryContact() {\r\n this.primaryContactService.GetPrimaryContact(this.recordLocator)\r\n .subscribe(response => {\r\n this.appState.PrimaryContact = response;\r\n this.getBilling();\r\n },\r\n (error: HttpErrorResponse) => {\r\n if (error.status == HttpStatusCodes.NOT_FOUND)\r\n this.router.navigate(['application/contact']);\r\n });\r\n }\r\n\r\n getBilling() {\r\n this.billingInfoService.getBillingInformation(this.recordLocator)\r\n .subscribe(response => {\r\n this.appState.BillingInformation = response;\r\n this.getBroker();\r\n },\r\n (error: HttpErrorResponse) => {\r\n if (error.status == HttpStatusCodes.NOT_FOUND)\r\n this.router.navigate(['application/billing']);\r\n });\r\n }\r\n\r\n getBroker() {\r\n this.brokerService.getBrokerInfo(this.recordLocator)\r\n .subscribe(response => {\r\n this.appState.Broker = response;\r\n this.router.navigate(['application/broker']);\r\n },\r\n (error: HttpErrorResponse) => {\r\n if (error.status == HttpStatusCodes.NOT_FOUND)\r\n this.router.navigate(['application/broker']);\r\n });\r\n }\r\n\r\n getSelectedPlans() {\r\n this.choosenPlanService.getChoosenPlans(this.recordLocator)\r\n .subscribe(applicationPlans => {\r\n this.bundleIds = [];\r\n applicationPlans.forEach(applicationPlan => {\r\n this.bundleIds.push(+applicationPlan.bundleId);\r\n }); \r\n this.appState.ChoosePlans = { selectedPlans: this.bundleIds }; \r\n this.getCompany();\r\n });\r\n }\r\n\r\n get registrationStep() {\r\n return RegistrationStep;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpParams } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\n\r\nimport { GroupPortalApiService } from '../../../core/services/group-portal-api.service';\r\nimport { ApiPaths } from '../../../shared/utils/ApiPaths';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EmailVerificationService {\r\n\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n verifyEmailAndSendVerificationCode(emailAddress: string): Observable<boolean> {\r\n let params = new HttpParams()\r\n .set('emailAddress', encodeURIComponent(emailAddress));\r\n\r\n return this.groupPortalApiService.post<boolean>(\r\n ApiPaths.emailVerification_post, undefined, { params, throwError: true });\r\n }\r\n\r\n validateVerificationCode(emailAddress: string, verificationCode: number) {\r\n const withCredentials: boolean = true;\r\n\r\n let params = new HttpParams()\r\n .set('emailAddress', encodeURIComponent(emailAddress))\r\n .set('verificationCode', verificationCode.toString());\r\n\r\n return this.groupPortalApiService.get<boolean>(\r\n ApiPaths.emailVerification_get, { params, withCredentials: withCredentials, throwError: true });\r\n }\r\n\r\n}\r\n","<div class=\"collapse in amt\" [formGroup]=\"verifyEmailForm\">\r\n <div class=\"well\">\r\n <ng-template #popTemplate>\r\n <div style=\"top: 25px; left: 282.453px; display: block;\">\r\n <div class=\"arrow\" style=\"top: 50%;\"></div>\r\n <h3 class=\"popover-title\">\r\n <div class=\"row\">\r\n <div class=\"col-xs-10\">I did not receive my verification code!</div>\r\n <div class=\"col-xs-2 text-right\"><button (click)=\"pop.hide()\" class=\"close\" data-dismiss=\"alert\">×</button>\r\n </div>\r\n </div>\r\n </h3>\r\n <div class=\"popover-content\">\r\n <ul class=\"small-padding\">\r\n <li>Please check your spam/junk mail folder for an email from Careington Direct.</li>\r\n <li>You can go back to the Administrator Account section to verify your email address was\r\n added correctly.</li>\r\n <li>Contact us at: <a href=\"tel: {{phoneNumber}}\" class=\"phone\">{{phoneNumber}}</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n </ng-template>\r\n <p>For your protection, we've sent a 6-digit verification code to your email address at\r\n {{verifyEmailForm.controls.userName.value}}.\r\n <a [popover]=\"popTemplate\" style=\"cursor:pointer\" placement=\"right\" #pop=\"bs-popover\">\r\n <i class=\"fas fa-question-circle\" aria-hidden=\"true\"></i>\r\n </a>\r\n </p>\r\n <label>Enter your code:<span class=\"req\">*</span></label>\r\n <div class=\"form-inline\">\r\n <div class=\"form-group\">\r\n <input type=\"text\" formControlName=\"verificationCode\" class=\"form-control amt\"\r\n placeholder=\"Enter the 6-digit code\" appNumericOnly maxlength=\"6\">\r\n <button class=\"btn btn-primary amt\" (click)=\"validateCode()\"\r\n [disabled]=\"verifyEmailForm.controls.verificationCode.invalid || isValidationSuccess\">DONE</button>\r\n <div *ngIf=\"verifyEmailForm.controls.verificationCode.invalid &&\r\n (verifyEmailForm.controls.verificationCode.dirty ||\r\n verifyEmailForm.controls.verificationCode.touched)\r\n \" class=\"alert alert-danger\">\r\n <div *ngIf=\"verifyEmailForm.controls.verificationCode.hasError('required') &&\r\n !verifyEmailForm.controls.verificationCode.valid\">\r\n Verification code is required\r\n </div>\r\n <div *ngIf=\"verifyEmailForm.controls.verificationCode.hasError('pattern')\">\r\n Verification Code is not valid\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"collapse in amt\" *ngIf=\"isCodeValidated\">\r\n <p class=\"text-success\" *ngIf=\"isValidationSuccess\"><i class=\"fas fa-check-circle\"></i> Your code has been\r\n verified!</p>\r\n <p class=\"text-danger\" *ngIf=\"!isValidationSuccess\"><i class=\"fas fa-times-circle\"></i> Incorrect code!</p>\r\n </div>\r\n <div class=\"form-group amt\">\r\n <p class=\"small anchorCursor\"><a id=\"resendCode\" *ngIf=\"!isValidationSuccess\" (click)=\"resendCode()\">Resend code</a></p>\r\n <p class=\"text-success\" *ngIf=\"resendCodeMessage\">Verification code has been sent.</p>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\nimport { EmailVerificationService } from './email-verification.service';\r\nimport { AppState } from '../../../core/app-state';\r\nimport { CareingtonInfoService } from '../../../services/careington-info.service';\r\nimport { CareingtonCommunicationDetails } from '../../../models/Contract/careington-communication-details';\r\n\r\n@Component({\r\n selector: 'app-verify-email',\r\n templateUrl: './verify-email.component.html',\r\n styleUrls: ['./verify-email.component.less']\r\n})\r\nexport class VerifyEmailComponent implements OnInit {\r\n @Input() verifyEmailForm: FormGroup;\r\n isValidationSuccess: boolean;\r\n isCodeValidated: boolean = false;\r\n resendCodeMessage: boolean = false;\r\n phoneNumber: string;\r\n constructor(private emailVerificationService: EmailVerificationService,\r\n private careingtonInfoService: CareingtonInfoService,\r\n private appState: AppState) { }\r\n\r\n ngOnInit() {\r\n this.loadCareingtonPhoneNumber();\r\n }\r\n\r\n validateCode() {\r\n this.resendCodeMessage = false;\r\n this.emailVerificationService.validateVerificationCode(this.verifyEmailForm.get('userName').value,\r\n this.verifyEmailForm.get('verificationCode').value)\r\n .subscribe(response => {\r\n this.isCodeValidated = true;\r\n this.verifyEmailForm.get('password').enable();\r\n this.verifyEmailForm.get('confirmPassword').enable();\r\n this.isValidationSuccess = true;\r\n this.verifyEmailForm.get('verificationCode').disable();\r\n },\r\n error => {\r\n this.isCodeValidated = true;\r\n this.isValidationSuccess = false;\r\n });\r\n }\r\n\r\n resendCode() {\r\n this.emailVerificationService.verifyEmailAndSendVerificationCode(this.verifyEmailForm.get('userName').value)\r\n .subscribe(response => {\r\n this.resendCodeMessage = true;\r\n });\r\n }\r\n\r\n loadCareingtonPhoneNumber() {\r\n this.careingtonInfoService.getCareingtonCommunicationDetails().subscribe(\r\n result => {\r\n this.appState.CareingtonCommunicationDetails = <CareingtonCommunicationDetails>result;\r\n this.phoneNumber = this.appState.CareingtonCommunicationDetails.phoneNumber;\r\n });\r\n }\r\n}\r\n"," <div class=\"panel panel-dark\">\r\n <table class=\"table table-bordered table-striped table-condensed small\">\r\n <thead>\r\n <tr>\r\n <th colspan=\"2\">{{ bundle.bundleName }}</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr>\r\n <td colspan=\"2\" class=\"button-box text-center\">\r\n <a popover=\"{{ bundle | products }}\" placement=\"bottom\" class=\"anchorCursor\" [outsideClick]=\"true\">Click\r\n here to see products included.</a>\r\n </td>\r\n </tr>\r\n <tr>\r\n <th class=\"button-box\">Pricing Options</th>\r\n <th>Monthly</th>\r\n </tr>\r\n <tr *ngFor=\"let price of bundle.bundleRates | sortBundleRate\">\r\n <td>{{ price.coverage | coverageType }}</td>\r\n <td>${{ price.rate | number : '1.2-2' }}</td>\r\n </tr>\r\n <tr>\r\n <td colspan=\"2\" class=\"button-box\">\r\n <div class=\"btn-group-vertical btn-block\" role=\"group\">\r\n <button class=\"btn btn-primary\" (click)=\"ShowPlanDetails()\">PLAN DETAILS</button>\r\n </div>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n","import { Component, OnInit, Input } from \"@angular/core\";\r\nimport { Router } from '@angular/router';\r\nvar urlJoin = require(\"url-join\");\r\n\r\nimport { Bundle } from \"../../../models/GroupPlan/Bundle\";\r\n\r\n@Component({\r\n selector: \"app-group-plan\",\r\n templateUrl: \"./group-plan.component.html\",\r\n styleUrls: [\"./group-plan.component.less\"]\r\n})\r\nexport class GroupPlanComponent implements OnInit {\r\n @Input() bundle: Bundle;\r\n\r\n constructor(private router: Router) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ShowPlanDetails() {\r\n this.router.navigate([urlJoin(\"./plan-details/\", this.bundle.bundleCode.trim())]);\r\n }\r\n}\r\n","<div class=\"top_space\"></div>\r\n<app-banner [context]=\"bannerContext\"></app-banner>\r\n<app-bread-crumb>\r\n <em class=\"pull-right\">( <span class=\"req\">*</span> ) Required fields.</em>\r\n</app-bread-crumb>\r\n<section class=\"content\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12 text-center\">\r\n <h1>Choose One or More of These Plans</h1>\r\n <hr />\r\n <p>Select any of the money-saving plans below.</p>\r\n </div>\r\n </div>\r\n <hr class=\"hr-normal\" />\r\n <div class=\"row\">\r\n <ng-container *ngFor=\"let bundle of bundles;let i = index\">\r\n <div [ngClass]=\"getClass(bundles,i)\" class=\"col-sm-6 col-md-6 col-lg-4 default-height\">\r\n <app-group-plan [bundle]=\"bundle\"></app-group-plan>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</section>\r\n<app-disclosures contentCode=\"DISC-NW-NOFEE\"></app-disclosures>\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { Meta, Title } from '@angular/platform-browser';\r\n\r\nimport { BannerContext } from \"../../models/banner-context\";\r\nimport { CommonGatewayService } from \"../../services/common-gateway.service\";\r\nimport { Bundle } from \"../../models/GroupPlan/Bundle\";\r\nimport { AppState } from \"../../core/app-state\";\r\n\r\n@Component({\r\n selector: \"app-group-plans\",\r\n templateUrl: \"./group-plans.component.html\",\r\n styleUrls: [\"./group-plans.component.less\"]\r\n})\r\nexport class GroupPlansComponent implements OnInit {\r\n bannerContext: BannerContext;\r\n bundles: Bundle[];\r\n\r\n constructor(\r\n private appState: AppState,\r\n private commonGatewatService: CommonGatewayService,\r\n private metaService: Meta, private titleService: Title\r\n ) {\r\n this.titleService.setTitle('Choose one or more of our plans | Careington Direct');\r\n this.metaService.updateTag({ name: \"description\", content: \"Select any of our money-saving plans.\" });\r\n }\r\n\r\n ngOnInit() {\r\n this.bannerContext = new BannerContext();\r\n this.bannerContext.heading = \"Our Group Plans\";\r\n this.bannerContext.description =\r\n \"These plans are not available in Vermont & Washington.\";\r\n this.LoadPlans();\r\n }\r\n\r\n LoadPlans() {\r\n if (this.appState.Bundles) {\r\n this.bundles = this.appState.Bundles;\r\n } else {\r\n this.GetPlans();\r\n }\r\n }\r\n\r\n GetPlans() {\r\n return this.commonGatewatService.GetGroupPlans().subscribe(\r\n (response: Bundle[]) => {\r\n this.bundles = response;\r\n this.appState.Bundles = response;\r\n }\r\n );\r\n }\r\n\r\n getClass(data, index): string {\r\n if (data.length === 5 || data.length === 8 || data.length === 11 || data.length === 14) {\r\n var lastbut1 = data[data.length - 2]\r\n var Lastbut1Ind = data.findIndex(x => JSON.stringify(x) == JSON.stringify(lastbut1));\r\n if (index == Lastbut1Ind) {\r\n return \"col-lg-offset-2\"\r\n }\r\n }\r\n if (data.length === 4 || data.length === 7 || data.length === 10 || data.length === 13) {\r\n var last = data[data.length - 1]\r\n var LastInd = data.findIndex(x => JSON.stringify(x) == JSON.stringify(last));\r\n if (index == LastInd) {\r\n return \"col-lg-offset-4\"\r\n }\r\n }\r\n return \"\";\r\n }\r\n}\r\n","<nav class=\"navbar navbar-inverse navbar-fixed-top\">\r\n <div class=\"container\">\r\n <div class=\"navbar-header\">\r\n <button type=\"button\" class=\"navbar-toggle collapsed\" data-toggle=\"collapse\"\r\n data-target=\"#bs-example-navbar-collapse-1\" aria-expanded=\"false\">\r\n <span class=\"sr-only\">Toggle navigation</span>\r\n <span class=\"icon-bar\"></span>\r\n <span class=\"icon-bar\"></span>\r\n <span class=\"icon-bar\"></span>\r\n </button>\r\n <a class=\"navbar-brand\" [routerLink]=\"'/'\"><img src=\"../../assets/img/ci-direct-logo-wht.png\"\r\n alt=\"Careington International Corporation\" /></a>\r\n </div>\r\n <div class=\"collapse navbar-collapse\" id=\"bs-example-navbar-collapse-1\">\r\n <ul class=\"nav navbar-nav\">\r\n <li routerLinkActive=\"active\">\r\n <a class=\"anchorCursor\" title=\"Group Plans\" [routerLink]=\"['/group-plans']\">GROUP PLANS</a>\r\n </li>\r\n <li routerLinkActive=\"active\">\r\n <a class=\"anchorCursor\" [routerLink]=\"'/application'\">GET STARTED</a>\r\n </li>\r\n </ul>\r\n <ul class=\"nav navbar-nav navbar-right\">\r\n <li routerLinkActive=\"active\">\r\n <a class=\"anchorCursor\" href=\"tel:{{ phoneNumber }}\"><strong>{{ phoneNumber }}</strong></a>\r\n </li>\r\n <li routerLinkActive=\"active\">\r\n <a class=\"anchorCursor\" [routerLink]=\"'/contact-us'\"><i class=\"fas fa-envelope\"><span class=\"sr-only\">Contact\r\n by\r\n Email</span></i></a>\r\n </li>\r\n <li class=\"dropdown\">\r\n <a href=\"#\" class=\"dropdown-toggle anchorCursor\" data-toggle=\"dropdown\" role=\"button\" aria-haspopup=\"true\"\r\n aria-expanded=\"false\"><i class=\"fas fa-question\"><span class=\"sr-only\">Help</span></i></a>\r\n <ul class=\"dropdown-menu\">\r\n <li><a class=\"anchorCursor\" [routerLink]=\"['/faqs-dental-plans']\">Careington Plan FAQs</a></li>\r\n <li><a class=\"anchorCursor\" [routerLink]=\"['/faqs-telemedicine']\">Telemedicine FAQs</a></li>\r\n <li><a class=\"anchorCursor\" [routerLink]=\"['/how-to-use']\">How to Use a Careington Plan</a></li>\r\n </ul>\r\n </li>\r\n <li routerLinkActive=\"active\">\r\n <a [routerLink]=\"['/admin/login']\"><i class=\"fas fa-user-circle\"><span class=\"sr-only\">Admin\r\n Login</span></i></a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n</nav>\r\n","import { Component, OnInit, Input } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"app-header\",\r\n templateUrl: \"./header.component.html\",\r\n styleUrls: [\"./header.component.less\"]\r\n})\r\nexport class HeaderComponent implements OnInit {\r\n @Input() phoneNumber = \"\";\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {}\r\n}\r\n","<header class=\"home scroll-section\" id=\"header-home\" inViewport [inViewportOptions]=\"{ threshold: [.75] }\"\r\n (inViewportAction)=\"onIntersection('Top', $event)\">\r\n <div class=\"header-cont\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12 text-center\">\r\n\t\t\t\t\t<span class=\"scroll-title\">Back to Top</span>\r\n\t\t \t<h1>Help your employees save money on health care.</h1>\r\n <h2>Solutions for you and your employees are just a click away.</h2>\r\n <p class=\"lead\"><strong>Give your employees access to better benefits now.</strong></p>\r\n\t\t\t\t\t<p><a [routerLink]=\"'/application'\" class=\"btn btn-lg btn-primary\">GET STARTED</a></p>\r\n <p>Are you looking to purchase a Careington plan for yourself? <a href=\"https://www1.careington.com/members/prospective\" class=\"btn btn-sm btn-primary\">CLICK HERE</a></p>\r\n\t\t\t\t</div>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n<section class=\"content scroll-section\" id=\"learn-more\" inViewport [inViewportOptions]=\"{ threshold: [.75] }\"\r\n (inViewportAction)=\"onIntersection('LearnMore', $event)\">\r\n <div class=\"container-fluid\">\r\n <div class=\"row text-center\">\r\n <div class=\"col-md-8 col-lg-5 col-lg-offset-2\">\r\n \t<h2 class=\"h1\">Get Better Benefits for Your Employees Through Careington Direct.</h2>\r\n <p class=\"scroll-title\">Careington Direct Can Help!</p>\r\n <hr>\r\n <p class=\"lead\">It's easy to sign up for Careington Direct's health care savings programs.</p>\r\n <p class=\"lead\">Our most popular non-insured products, including dental, vision and telemedicine, are uniquely designed to fill gaps in benefit packages. Click on the buttons below to get started or learn more about our plans.</p>\r\n <p><a [routerLink]=\"'group-plans'\" class=\"btn btn-lg btn-default\">GROUP PLANS</a> <a\r\n [routerLink]=\"'application'\" class=\"btn btn-lg btn-primary\">GET STARTED</a></p>\r\n </div>\r\n <div class=\"col-md-4 col-lg-3\">\r\n <h3 class=\"h4\">Watch this short video to learn more about how easy it is to access better, more affordable benefits for you and your employees from CareingtonDirect:</h3>\r\n <div class=\"embed-responsive embed-responsive-16by9\">\r\n <iframe class=\"embed-responsive-item\" src=\"https://www.youtube.com/embed/6mdwr6L0ZTA\"\r\n title=\"CareingtonDirect Video\" frameborder=\"0\"\r\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\r\n allowfullscreen></iframe>\r\n </div>\r\n\t\t\t</div>\r\n </div>\r\n </div>\r\n</section>\r\n<section class=\"content bread\" id=\"who\">\r\n\t<div class=\"container\">\r\n\t\t<div class=\"row\">\r\n\t\t\t<div class=\"col-sm-12 text-center\">\r\n\t\t\t\t<h2 class=\"h1\">Who is Careington?</h2>\r\n\t\t\t\t<p class=\"scroll-title\">Who is Careington?</p>\r\n <hr>\r\n\t\t\t\t<p class=\"lead\">Careington International Corporation is a leading provider of health, wellness and lifestyle programs. Careington has an extraordinary suite of discount products and services designed to provide unparalleled network provider access, significant savings and unsurpassed value to any client or customer.</p>\r\n\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t<div class=\"col-xs-4\">\r\n\t\t\t\t\t\t<p class=\"h3\"><i class=\"fas fa-tooth text-primary fa-2x\"></i></p>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"col-xs-4\">\r\n\t\t\t\t\t\t<p class=\"h3\"><i class=\"fas fa-eye text-primary fa-2x\"></i></p>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"col-xs-4\">\r\n\t\t\t\t\t\t<p class=\"h3\"><i class=\"fas fa-phone-plus text-primary fa-2x\"></i></p>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n <hr>\r\n <h3>Learn more about Careington and our innovative employer and broker benefit solutions here:</h3>\r\n <div class=\"row\">\r\n <div class=\"col-md-6 col-md-offset-3\">\r\n <div class=\"embed-responsive embed-responsive-16by9\">\r\n <iframe class=\"embed-responsive-item\" src=\"https://www.youtube.com/embed/y458ymRTLzQ?si=R1ZyBC_zh859OFJV\"\r\n title=\"Welcome to Careington Video\" frameborder=\"0\"\r\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\r\n allowfullscreen></iframe>\r\n </div>\r\n </div>\r\n </div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</section>\r\n<section class=\"content scroll-section content-red\" id=\"who\" inViewport [inViewportOptions]=\"{ threshold: [.75] }\"\r\n (inViewportAction)=\"onIntersection('who', $event)\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12 text-center\">\r\n \t<h2 class=\"h1\">Careington's clients include:</h2>\r\n <p class=\"scroll-title\"> Careington:</p>\r\n <hr>\r\n <div class=\"row home-icons\">\r\n <div class=\"col-sm-6 col-md-6 col-lg-4\">\r\n <h3><i class=\"far fa-building fa-2x\"><span class=\"sr-only\">Employers, Unions & Organizations</span></i></h3>\r\n <h4><strong>Employers, Unions<br>\r\n & Organizations</strong></h4>\r\n <p>Enhance the value of your benefits while offering employees a new way to save on dental and other health and lifestyle services.</p>\r\n </div>\r\n <div class=\"col-sm-6 col-md-6 col-lg-4\">\r\n <h3><i class=\"far fa-handshake fa-2x\"><span class=\"sr-only\">Associations & Affinity Groups</span></i></h3>\r\n <h4><strong>Associations &<br>\r\n Affinity Groups</strong></h4>\r\n <p>Help your members save money on health, wellness and lifestyle expenses, improving the value of your association or affinity group.</p>\r\n </div>\r\n <div class=\"col-sm-6 col-md-6 col-lg-4\">\r\n <h3><i class=\"fas fa-user-md fa-2x\"><span class=\"sr-only\">Carriers & Third Party Administrators</span></i></h3>\r\n <h4><strong>Carriers & Third<br>\r\n Party Administrators</strong></h4>\r\n <p>Expand and enhance your current product offerings with Careington's PPO dental networks and access plan solutions for a competitive advantage.</p>\r\n </div>\r\n </div>\r\n <p><a href=\"https://www1.careington.com/businesses/?utm_source=link&utm_medium=website&utm_campaign=CIDirectHomeBtnLink\" target=\"_blank\" class=\"btn btn-lg btn-default\">LEARN MORE ABOUT CAREINGTON</a></p>\r\n </div>\r\n </div>\r\n </div>\r\n</section>\r\n<app-disclosures contentCode=\"DISC-NW-NOFEE\"></app-disclosures>\r\n<div id=\"scroll-indicator-bullets\">\r\n <ul class=\"\">\r\n <li [ngClass]=\"backToTopClass\" (mouseover)=\"backToTopClass='show-title'\" (mouseout)=\"backToTopClass=''\"\r\n (click)=\"setIndicator('Top')\">\r\n <a pageScroll [pageScrollDuration]=\"300\" href=\"#header-home\" class=\"bullet-item-link\"\r\n [ngClass]=\"{'active': selectedIndicator == 'Top'}\">\r\n <span class=\"bullet-nav-title\">Back to Top</span><i class=\"circle\"></i></a></li>\r\n\r\n <li [ngClass]=\"learnMoreHelpClass\" (mouseover)=\"learnMoreHelpClass='show-title'\"\r\n (mouseout)=\"learnMoreHelpClass=''\" (click)=\"setIndicator('LearnMore')\">\r\n <a pageScroll [pageScrollDuration]=\"300\" href=\"#learn-more\" class=\"bullet-item-link\"\r\n [ngClass]=\"{'active': selectedIndicator == 'LearnMore'}\">\r\n <span class=\"bullet-nav-title\">Careington Direct Can\r\n Help!</span><i class=\"circle\"></i></a></li>\r\n\r\n <li [ngClass]=\"whoCanHelpClass\" (mouseover)=\"whoCanHelpClass='show-title'\" (mouseout)=\"whoCanHelpClass=''\"\r\n (click)=\"setIndicator('who')\">\r\n <a pageScroll [pageScrollDuration]=\"300\" href=\"#who\" class=\"bullet-item-link\"\r\n [ngClass]=\"{'active': selectedIndicator == 'who'}\">\r\n <span class=\"bullet-nav-title\">Careington:</span><i class=\"circle\"></i></a></li>\r\n </ul>\r\n</div>","import { Component, OnInit } from '@angular/core';\r\nimport { InViewportMetadata } from 'ng-in-viewport';\r\nimport { Meta, Title } from '@angular/platform-browser';\r\n\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.component.html',\r\n styleUrls: ['./home.component.less']\r\n})\r\nexport class HomeComponent implements OnInit {\r\n backToTopClass: string;\r\n learnMoreHelpClass: string;\r\n whoCanHelpClass: string;\r\n selectedIndicator: string;\r\n\r\n constructor(private metaService: Meta, private titleService: Title) { \r\n this.titleService.setTitle('Help your employees save money on health care | Careington Direct');\r\n this.metaService.updateTag({name:\"description\", content:\"Get better benefits for your employees through Careington Direct. It's easy to sign up for Careington Direct's health care savings programs.\"});\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n setIndicator(identifier: string) {\r\n this.selectedIndicator = identifier;\r\n }\r\n\r\n onIntersection(identifier: string, $event) {\r\n const { [InViewportMetadata]: { entry }, target } = $event;\r\n const ratio = entry.intersectionRatio;\r\n\r\n if (ratio > 0.75) {\r\n this.setIndicator(identifier);\r\n }\r\n }\r\n}\r\n","<app-banner [context]=\"bannerContext\"></app-banner>\r\n<section class=\"bread\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <ul class=\"breadcrumb small\">\r\n <li><a [routerLink]=\"''\">Home</a></li>\r\n <li><a [routerLink]=\"['/faqs-dental-plans']\">Careington Plan FAQs</a></li>\r\n <li><a [routerLink]=\"['/faqs-telemedicine']\">Telemedicine FAQs</a></li>\r\n <li class=\"active\">How to Use a Careington Plan</li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</section>\r\n<section class=\"content\">\r\n <div class=\"container\">\r\n <app-how-to-use></app-how-to-use>\r\n </div>\r\n</section>\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Meta, Title } from '@angular/platform-browser';\r\n\r\nimport { BannerContext } from '../../models/banner-context';\r\n\r\n@Component({\r\n selector: 'app-how-to-use-layout',\r\n templateUrl: './how-to-use-layout.component.html',\r\n styleUrls: ['./how-to-use-layout.component.less']\r\n})\r\nexport class HowToUseLayoutComponent implements OnInit {\r\n\r\n bannerContext: BannerContext;\r\n\r\n constructor(private metaService: Meta, private titleService: Title) {\r\n this.titleService.setTitle('How to Use a Careington Plan | Careington Direct');\r\n this.metaService.updateTag({ name: \"description\", content: \"Using a discount plan is as easy as 1-2-3.\" });\r\n }\r\n\r\n ngOnInit() {\r\n this.bannerContext = new BannerContext();\r\n this.bannerContext.heading = \"HOW TO USE\";\r\n this.bannerContext.subHeading = \"a Careington Plan\";\r\n }\r\n\r\n}\r\n","<div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <h2>How to Access Your Dental and Vision Discounts</h2>\r\n <p>Once a member has joined the plan and received their membership kit, they can simply follow these directions and\r\n start using their membership card immediately! (Some discounts will have specific directions on how to use.\r\n Members should review their membership kits for details.)</p>\r\n <blockquote>\r\n <h3>Step 1</h3>\r\n <p>Members should keep their membership cards with them at all times to easily present them at provider locations.\r\n They must present their membership card at the time of service to receive a discount. If they lose their\r\n membership card, they can log into the <a href=\"https://member.careington.com\">Member Portal</a> to request a\r\n new membership card, as well as view their plan information, find a provider and more.</p>\r\n </blockquote>\r\n <blockquote>\r\n <h3>Step 2</h3>\r\n <p>To locate and verify participating providers in their area, members can simply call Member Services at <a\r\n href=\"tel:18002900523\" class=\"phone\">(800) 290-0523</a> or log into the <a\r\n href=\"https://member.careington.com\" target=\"_blank\">Careington Member Portal</a> and use the Provider Search\r\n Tool. When calling to schedule an appointment, a member should refer to their membership card for proper network\r\n identification.</p>\r\n </blockquote>\r\n <blockquote>\r\n <h3>Step 3</h3>\r\n <p>The member is responsible for paying the provider the entire discounted fee at the time the service is\r\n provided.</p>\r\n </blockquote>\r\n <p>If a member has any questions about how to use their plan, they can call Member Services toll-free at <a\r\n href=\"tel:18002900523\" class=\"phone\">(800) 290-0523</a>, any time between 7 a.m. and 7 p.m. CT, for prompt and\r\n friendly assistance.</p>\r\n <hr class=\"hr-normal\">\r\n <h2>How to Access Telemedicine</h2>\r\n <blockquote>\r\n <h3>Step 1</h3>\r\n <p>Members can visit <a href=\"https://member.dialcare.com/membereligibility\"\r\n target=\"_blank\">member.dialcare.com/membereligibility</a> or call <a href=\"18553352255\" class=\"phone\">(855)\r\n 335-2255</a> to create and register their account.</p>\r\n </blockquote>\r\n <blockquote>\r\n <h3>Step 2</h3>\r\n <p>A member will fill out their medical history. Any dependents over 18 will have their own medical profile and be\r\n required to fill out their own medical history. The member's medical history is required before they can consult\r\n with a doctor.</p>\r\n </blockquote>\r\n <blockquote>\r\n <h3>Step 3</h3>\r\n <p>Members can request a video or telephonic consult either online, over the phone or through the mobile app.</p>\r\n </blockquote>\r\n </div>\r\n</div>\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-how-to-use',\r\n templateUrl: './how-to-use.component.html',\r\n styleUrls: ['./how-to-use.component.less']\r\n})\r\nexport class HowToUseComponent implements OnInit {\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","<app-header *ngIf=\"communicationDetails\" [phoneNumber]=\"communicationDetails.phoneNumber\"></app-header>\r\n<router-outlet></router-outlet>\r\n<app-footer *ngIf=\"communicationDetails\" [communicationDetails]=\"communicationDetails\"></app-footer>\r\n","import { Component, OnInit } from \"@angular/core\";\r\n\r\nimport { CareingtonInfoService } from \"../../services/careington-info.service\";\r\nimport { AppState } from \"../../core/app-state\";\r\nimport { CareingtonCommunicationDetails } from \"../../models/Contract/careington-communication-details\";\r\n\r\n@Component({\r\n selector: \"app-layout\",\r\n templateUrl: \"./layout.component.html\",\r\n styleUrls: [\"./layout.component.less\"]\r\n})\r\nexport class LayoutComponent implements OnInit {\r\n communicationDetails: CareingtonCommunicationDetails;\r\n\r\n constructor(\r\n private appState: AppState,\r\n private careingtonInfoService: CareingtonInfoService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.loadCareingtonCommunicationDetails();\r\n }\r\n\r\n private loadCareingtonCommunicationDetails(): void {\r\n\r\n this.careingtonInfoService.getCareingtonCommunicationDetails().subscribe(\r\n result => {\r\n this.appState.CareingtonCommunicationDetails = <\r\n CareingtonCommunicationDetails\r\n >result;\r\n this.communicationDetails = this.appState.CareingtonCommunicationDetails;\r\n }\r\n );\r\n }\r\n}\r\n","<app-banner [context]=\"bannerContext\"></app-banner>\r\n<app-bread-crumb></app-bread-crumb>\r\n<section class=\"content\">\r\n <div class=\"container\">\r\n <div [formGroup]=\"loginForm\" name=\"loginform\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <h2>\r\n Log in to your account to view or create your employee database.\r\n </h2>\r\n <hr class=\"hr-left align-left\" />\r\n <p>If you have just signed up, please check your email for your login information.</p>\r\n <div class=\"row\">\r\n <div class=\"col-sm-4\">\r\n <div class=\"form-group\">\r\n <label class=\"sr-only\">Email Address</label>\r\n <input type=\"email\" class=\"form-control\" placeholder=\"email@website.com\" formControlName=\"userName\"\r\n maxlength=\"320\" />\r\n <div class=\"alert alert-danger\" *ngIf=\" loginForm.controls.userName.invalid &&(\r\n loginForm.controls.userName.touched ||\r\n loginForm.controls.userName.dirty)\r\n \">\r\n <div *ngIf=\"loginForm.controls.userName.hasError('required')\">\r\n Email is required\r\n </div>\r\n <div *ngIf=\"loginForm.controls.userName.hasError('pattern')\">\r\n Email is not valid\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <label class=\"sr-only\">Password</label>\r\n <input type=\"password\" class=\"form-control\" placeholder=\"********\" formControlName=\"password\"\r\n maxlength=\"50\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"loginForm.controls.password.invalid &&(\r\n loginForm.controls.password.touched ||\r\n loginForm.controls.password.dirty)\r\n \">\r\n <div *ngIf=\"loginForm.controls.password.hasError('required')\">\r\n Password is required\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"checkbox\">\r\n <label><input type=\"checkbox\" formControlName=\"keepMeLoggedIn\" />\r\n Keep me logged in.</label>\r\n </div>\r\n </div>\r\n </div>\r\n <p>\r\n <button class=\"btn btn-success\" (click)=\"ValidateLogin()\" [disabled]=\"!loginForm.valid\">\r\n <i class=\"glyphicon glyphicon-ok\"></i> LOGIN\r\n </button>\r\n </p>\r\n <p class=\"small\">\r\n <a class=\"anchorCursor\" [routerLink]=\"['/forgot-password']\"><em>Forgot Password</em></a>\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</section>\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { FormBuilder, FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport { Router } from \"@angular/router\";\r\nimport { Title } from '@angular/platform-browser';\r\nimport { BannerContext } from \"../../models/banner-context\";\r\nimport { FieldValidationPattern } from \"../../core/utils/field-validations\";\r\nimport { LoginService } from \"./login.service\";\r\nimport { LoginRequest } from \"../../models/Login/login-request\";\r\nimport { LoginResponse } from \"../../models/Login/login-response\";\r\nimport { AppState } from \"../../core/app-state\";\r\nimport { NotificationService } from 'src/app/core/services/notification.service';\r\n\r\n@Component({\r\n selector: \"app-login\",\r\n templateUrl: \"./login.component.html\",\r\n styleUrls: [\"./login.component.less\"]\r\n})\r\nexport class LoginComponent implements OnInit {\r\n bannerContext: BannerContext;\r\n loginForm: FormGroup;\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private route: Router,\r\n private appState: AppState,\r\n private loginService: LoginService,\r\n private notificationService: NotificationService,\r\n private titleService: Title\r\n ) {\r\n titleService.setTitle('Login | Careington Direct');\r\n this.bannerContext = new BannerContext();\r\n this.bannerContext.heading = \"ADMINISTRATOR LOGIN\";\r\n }\r\n\r\n ngOnInit() {\r\n this.loginForm = this.formBuilder.group({\r\n userName: new FormControl(\"\", [\r\n Validators.required,\r\n Validators.pattern(FieldValidationPattern.EmailValidationPattern)\r\n ]),\r\n password: new FormControl(\"\", [Validators.required]),\r\n keepMeLoggedIn: new FormControl(false)\r\n });\r\n }\r\n\r\n ValidateLogin() {\r\n let loginRequest: LoginRequest = <LoginRequest>this.loginForm.getRawValue();\r\n\r\n this.loginService.ValidateLogin(loginRequest).subscribe(\r\n (response: LoginResponse) => {\r\n console.log(\"response.userName\",response.userName);\r\n this.appState.LoggedInUser = response.userName;\r\n this.appState.RecordLocator=response.recordLocator;\r\n localStorage.setItem(\"recordLocator\",response.recordLocator);\r\n this.route.navigate([\"/admin\"]);\r\n }\r\n );\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\n\r\nimport { GroupPortalApiService } from \"../../core/services/group-portal-api.service\";\r\nimport { LoginResponse } from \"../../models/Login/login-response\";\r\nimport { ApiPaths } from '../../shared/utils/ApiPaths';\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class LoginService {\r\n constructor(private http: GroupPortalApiService) { }\r\n\r\n ValidateLogin(loginData): Observable<LoginResponse> {\r\n const withCredentials: boolean = true;\r\n const apiUrl = ApiPaths.login_post;\r\n return this.http.post<LoginResponse>(apiUrl, loginData, {withCredentials: withCredentials});\r\n }\r\n}\r\n","<app-banner [context]=\"bannerContext\"></app-banner>\r\n<section class=\"bread\" *ngIf=\"bundle\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <ul class=\"breadcrumb small\">\r\n <li><a [routerLink]=\"''\">Home</a></li>\r\n <li><a [routerLink]=\"'/group-plans'\">Group Plans</a></li>\r\n <li class=\"active\">{{bundle.bundleCode}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</section>\r\n<section class=\"content\" *ngIf=\"bundle\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <app-product-language [contentCode]=\"planCode\"></app-product-language>\r\n <hr class=\"hr-normal\">\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-8\">\r\n <h3>Click a button below for product information.</h3>\r\n <a *ngFor=\"let plan of bundle.bundlePlans\" href=\"#\" class=\"btn btn-lg btn-info amt\" data-toggle=\"modal\"\r\n (click)=\"openModal(template, plan.id)\">{{plan.planName.toUpperCase()}}</a>\r\n </div>\r\n <div class=\"col-sm-4\">\r\n <h3>Pricing Options</h3>\r\n <table class=\"table table-bordered table-striped table-condensed table-pricing\">\r\n <tbody>\r\n <tr>\r\n <th>Pricing Options</th>\r\n <th class=\"text-center\">Monthly</th>\r\n </tr>\r\n <tr *ngFor=\"let price of bundle.bundleRates | sortBundleRate\">\r\n <td>{{ price.coverage | coverageType }}</td>\r\n <td class=\"text-center\">${{ price.rate | number : '1.2-2' }}</td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n <p><a [routerLink]=\"'/application'\" class=\"btn btn-lg btn-block btn-primary\">GET STARTED</a></p>\r\n <p *ngIf=\"bundle.bundleCode.toUpperCase().trim() !== 'CIDCTMED2'\" ><a (click)=\"DisplayProviderSearch()\" class=\"btn btn-lg btn-block btn-info\">FIND A PROVIDER</a></p>\r\n </div>\r\n </div>\r\n </div>\r\n</section>\r\n<app-disclosures [contentCode]=\"discloserValue\"></app-disclosures>\r\n<ng-template #template>\r\n <div class=\"modal-header\">\r\n <h4 class=\"modal-title pull-left\">{{headfirst | uppercase}}</h4> \r\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\r\n <span aria-hidden=\"true\">×</span>\r\n </button>\r\n </div>\r\n <div class=\"modal-body\">\r\n <app-product-language [contentCode]=\"selectedPlan.genericPlan.code\"></app-product-language>\r\n </div>\r\n <br>\r\n <br>\r\n <br>\r\n <br>\r\n <br>\r\n <br>\r\n <br> \r\n <div class=\"modal-footer\">\r\n <a (click)=\"closeModal(template)\" class=\"btn btn-primary\">GET STARTED</a>\r\n </div>\r\n <br>\r\n <br>\r\n</ng-template>\r\n","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { Route } from '@angular/compiler/src/core';\r\nimport { BsModalRef, BsModalService } from 'ngx-bootstrap';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Meta, Title } from '@angular/platform-browser';\r\n\r\nimport { BannerContext } from '../../models/banner-context';\r\nimport { AppState } from '../../core/app-state';\r\nimport { Bundle } from '../../models/GroupPlan/Bundle';\r\nimport { BundlePlan } from '../../models/GroupPlan/BundlePlan';\r\nimport { CommonGatewayService } from '../../services/common-gateway.service';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Content } from 'src/app/models/Core/content';\r\n\r\n@Component({\r\n selector: 'app-plan-details',\r\n templateUrl: './plan-details.component.html',\r\n styleUrls: ['./plan-details.component.less']\r\n})\r\nexport class PlanDetailsComponent implements OnInit {\r\n\r\n modalRef: BsModalRef;\r\n bannerContext: BannerContext;\r\n planCode: string;\r\n bundle: Bundle;\r\n selectedPlan: BundlePlan;\r\n discloserValue:string='DISC-NW-NOFEE';\r\n htmlContent: string;\r\n headfirst:string;\r\n\r\n constructor(private route: ActivatedRoute,\r\n private router: Router,\r\n private appState: AppState,\r\n private modalService: BsModalService,\r\n private commonGatewatService: CommonGatewayService,\r\n private metaService: Meta,\r\n private titleService: Title,\r\n private http: HttpClient,\r\n ) {\r\n this.planCode = this.route.snapshot.paramMap.get(\"id\");\r\n if(this.planCode == \"CIDCTMED2\")\r\n { this.discloserValue='DISC-DC'; }\r\n \r\n if (this.planCode == \"CIDV14PD\") {\r\n this.titleService.setTitle('This plan offers savings on dental and vision care | Careington Direct');\r\n this.metaService.updateTag({ name: \"description\", content: \"Members of our Dental & Vision Discount Plan save big on their dental and vision needs.\" });\r\n } else if (this.planCode == \"CIDVT14PD\") {\r\n this.titleService.setTitle('Members save on dental and vision care and get 24/7 doctor access | Careington Direct');\r\n this.metaService.updateTag({ name: \"description\", content: \"Members get free, unlimited, 24/7 virtual access to licensed doctors in addition to receiving significant savings on dental and vision care and more.\" });\r\n } else if (this.planCode == \"CITLHHA16P\") {\r\n this.titleService.setTitle('Members receive 24/7 doctor access and many more health care service | Careington Direct');\r\n this.metaService.updateTag({ name: \"description\", content: \"The plan offers 24/7 free and unlimited virtual access to doctors and nurses, prescription discounts, a medical advocacy service and more.\" });\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.bannerContext = new BannerContext();\r\n this.bannerContext.heading = \"CAREINGTON\";\r\n this.bannerContext.description = \"This plan is not available in Vermont & Washington.\";\r\n this.GetPlanDetails();\r\n }\r\n\r\n GetPlanDetails() {\r\n if (!this.appState.Bundles) {\r\n this.GetPlans();\r\n } else {\r\n let plans = this.appState.Bundles;\r\n if (plans != null) {\r\n this.bundle = plans.find(e => e.bundleCode.trim() == this.planCode.trim());\r\n this.bannerContext.subHeading = this.bundle != null ? this.bundle.bundleName : \"\";\r\n } else {\r\n this.bundle = null;\r\n }\r\n }\r\n }\r\n\r\n GetPlans() {\r\n return this.commonGatewatService.GetGroupPlans().subscribe(\r\n (response: Bundle[]) => {\r\n this.appState.Bundles = response;\r\n this.GetPlanDetails();\r\n }\r\n );\r\n }\r\n\r\n openModal(template: TemplateRef<any>, planId: number) {\r\n this.selectedPlan = this.bundle.bundlePlans.find(x => x.id == planId);\r\n console.log(JSON.stringify(this.selectedPlan));\r\n this.getContent(this.selectedPlan.genericPlan.code);\r\n this.modalRef = this.modalService.show(template, {\r\n class: \"modal-dialog modal-lg\"\r\n });\r\n }\r\n\r\n closeModal(template: TemplateRef<any>) {\r\n this.modalRef.hide();\r\n this.router.navigate([\"./application\"]);\r\n }\r\n DisplayProviderSearch() {\r\n //window.open('/provider-search/'+ this.bundle.bundleCode.trim(),'_blank')\r\n this.router.navigate([\"provider-search/\" + this.bundle.bundleCode.trim()]);\r\n }\r\n getContent(contentCode : any) {\r\n const query = `{\r\n marketingComponent (where: {alias:{alias:\"${contentCode}\"} })\r\n {\r\n alias{\r\n alias\r\n }\r\n marketingComponentType\r\n htmlBody{\r\n html\r\n }\r\n markdownBody{\r\n markdown\r\n }\r\n }\r\n }`\r\n const headers = new HttpHeaders()\r\n .set(\"Content-Type\", \"application/json\")\r\n .set(\"Accept\", \"application/json\");\r\n \r\n this.http\r\n .post(this.appState.AppConfig.CmsUrl, JSON.stringify({ query }), { headers: headers })\r\n .subscribe(\r\n (response: Content) => {\r\n if (response && response.data && response.data.marketingComponent && response.data.marketingComponent[0]) {\r\n this.htmlContent = response.data.marketingComponent[0].htmlBody.html;\r\n } else {\r\n this.htmlContent = ''; // Handle error case or fallback\r\n }\r\n this.setFirstH2Content();\r\n\r\n }\r\n )\r\n }\r\n setFirstH2Content() {\r\n // Check if htmlContent is available\r\n if (this.htmlContent) {\r\n // Create a temporary div element to hold the HTML string\r\n const div = document.createElement('div');\r\n div.innerHTML = this.htmlContent; // Assign the HTML string to div.innerHTML\r\n \r\n // Query for the first <h2> element within the div\r\n const firstH2 = div.querySelector('h2');\r\n \r\n // If a <h2> tag is found, extract and store its text content\r\n if (firstH2) {\r\n this.headfirst = firstH2.textContent || ''; // Save the text content of the first <h2>\r\n }\r\n }\r\n }\r\n}\r\n","<app-banner [context]=\"bannerContext\"></app-banner>\r\n\r\n<section class=\"content\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <p>Effective Date: 1/1/2020</p>\r\n <p>Careington International Corporation and its subsidiaries and affiliates (collectively \"Careington,\" \"we,\"\r\n \"us,\" \"our\") work hard to build and maintain a relationship of trust with you. This Privacy Policy (the\r\n \"Privacy Policy\") governs our collection, use, and disclosure of your Personal Information (as defined below)\r\n in connection with your use of our website(s), microsite(s), mobile website(s), and mobile applications\r\n (collectively, \"Sites\"), and information we collect from you or third parties through any other means to\r\n provide our services or perform other business activities (collectively, \"Services\").</p>\r\n <p>This Privacy Policy explains what information we collect about you, how we use or disclose that information,\r\n how to exercise any rights you may have with respect to your Personal Information (defined below), and the\r\n safeguards we have in place to reduce the risk of unauthorized access and use.</p>\r\n <p>Please carefully read this Privacy Policy before using our Sites and/or Services. By Accessing or using our\r\n Sites and/or Services you agree to our use of your information consistent with this Privacy Policy, subject to\r\n your rights described below.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>TABLE OF CONTENTS</h3>\r\n <p><a pageScroll [pageScrollDuration]=\"0\" href=\"#about\">About this Privacy Policy</a><br>\r\n <a pageScroll [pageScrollDuration]=\"0\" href=\"#infoCollect\">Information We Collect</a><br>\r\n <a pageScroll [pageScrollDuration]=\"0\" href=\"#howCollect\">How We Collect Information</a><br>\r\n <a pageScroll [pageScrollDuration]=\"0\" href=\"#cookies\">Cookies and Interest-Based Advertising</a><br>\r\n <a pageScroll [pageScrollDuration]=\"0\" href=\"#thirdParty\">Third Parties that Collect Information on Our\r\n Sites</a><br>\r\n <a pageScroll [pageScrollDuration]=\"0\" href=\"#useAndShare\">How We Use and Share Information</a><br>\r\n <a pageScroll [pageScrollDuration]=\"0\" href=\"#children\">Children's Privacy</a><br>\r\n <a pageScroll [pageScrollDuration]=\"0\" href=\"#privacyPractices\">Privacy Practices Related to Job\r\n Applicants</a><br>\r\n <a pageScroll [pageScrollDuration]=\"0\" href=\"#additional\">Additional California Consumer Rights</a><br>\r\n <a pageScroll [pageScrollDuration]=\"0\" href=\"#contactPr\">Contact Us</a></p>\r\n <hr class=\"hr-normal\">\r\n <h3 id=\"about\">ABOUT THIS PRIVACY POLICY</h3>\r\n <p><strong>Privacy Policy Changes</strong></p>\r\n <p>This Privacy Policy is subject to change. We encourage you to review this Privacy Policy frequently for any\r\n revisions or amendments.</p>\r\n <p><em>Unless otherwise stated, changes will be effective immediately upon posting.</em> You will be deemed to\r\n have been made aware of and have accepted the changes by your continued use of our Sites or Services. If we\r\n determine that a change to this Privacy Policy will result in using your Personal Information acquired before\r\n the change in a materially new way, we will provide you notice before using your Personal Information in the\r\n new way.</p>\r\n <p><strong>Conflict Between This Policy and Local Laws and Regulations</strong></p>\r\n <p>When federal, state, and local laws and regulations require a higher level of protection for your Personal\r\n Information, they take precedence over this Privacy Policy. In addition, the specific requirements of this\r\n Privacy Policy will apply unless disallowed by local laws and regulations.</p>\r\n <hr class=\"hr-normal\">\r\n <h3 id=\"infoCollect\">INFORMATION WE COLLECT</h3>\r\n <p><strong>Personal Information</strong></p>\r\n <p>We may collect information that personally identifies, relates to, describes, or is capable of being\r\n associated with you (\"Personal Information\"), including:</p>\r\n <ul>\r\n <li><em>Personal identifiers and contact information </em>such as name, social security number, driver's\r\n license number, mailing address, service address, email addresses, phone numbers, fax numbers, account\r\n password, signatures;</li>\r\n <li><em>Sensitive personal identifiers</em> such as gender, age, ethnicity, country of origin, religion;</li>\r\n <li><em>Other demographic information</em> such as marital status, the number and ages of children, what\r\n language(s) you speak;</li>\r\n <li><em>Banking/financial information</em> such as credit/debit card numbers and expiration date, checking\r\n account and routing numbers, check or credit/debit card images;</li>\r\n <li><em>Commercial information</em> such as your account information and status, member benefits, purchase\r\n history, health insurance information;</li>\r\n <li><em>Internet & network information</em> such as browsing/search history, IP address, data collected by\r\n cookies and similar technologies;</li>\r\n <li><em>Geolocation data</em> such as geographic location indicators from websites or mobile devices;</li>\r\n <li><em>Audio/visual information</em> such as call recordings, chat transcripts;</li>\r\n <li><em>Professional/employment information</em> such as employer; and</li>\r\n <li><em>Inferences drawn from other Personal Information or data </em>that relate to your preferences,\r\n interests, characteristics, etc.</li>\r\n </ul>\r\n <p>The types of Personal Information we collect about you may vary based on how you use our Sites and/or\r\n Services, and your relationship with us.</p>\r\n <p><strong>Business Information</strong></p>\r\n <p>We also collect information about businesses and their representatives that engage with us such as EIN, TIN,\r\n address, phone number, email address, bank account information (collectively, \"Business Information\"). This\r\n information is generally not considered Personal Information because it relates to a business or a business\r\n contact.</p>\r\n <p><strong>Usage Data and Sites Activity</strong></p>\r\n <p>We automatically collect information in connection with the actions you take on our Sites (\"Usage Data\"). For\r\n example, each time you use our Sites, we automatically collect the type of web browser you use, the type of\r\n device you use, your operating system, your Internet Service Provider, the pages you view, referring and exit\r\n pages, the date and time of your visit, and the number of clicks to, from, and within our Sites, and the\r\n duration of your visits to our Sites. If this information is capable of being associated with you, directly or\r\n indirectly, we treat it as Personal Information. If this information is not capable of being individually\r\n associated with you, we treat it as Usage Data.</p>\r\n <p><strong>Communication Recordings</strong></p>\r\n <p>We may record calls and retain the content of text messages or other written/electronic communications\r\n between you and us. By communicating with us, you consent to our recording and retention of communications.\r\n </p>\r\n <hr class=\"hr-normal\">\r\n <h3 id=\"howCollect\">HOW WE COLLECT INFORMATION</h3>\r\n <p><strong>Voluntary Disclosure</strong></p>\r\n <p>We may ask you to provide us with Personal Information when you communicate with us online or offline,\r\n including events, surveys, and marketing or promotional programs. You are not required to provide us your\r\n Personal Information; however, if you choose not to provide the requested information, you may not be able to\r\n use some or all of the features of the Site or Services or we may not be able to fulfill your requested\r\n interaction.</p>\r\n <p><strong>Third-Party Data Sources</strong></p>\r\n <p>We may collect Personal Information from third-party data sources such as data brokers, consumer reporting\r\n agencies, marketing partners, analytics firms, dental plans, discount plans, dental or healthcare providers,\r\n insurers, and government agencies.</p>\r\n <p id=\"cookies\"><strong>Cookies and Other Automated Tools</strong></p>\r\n <p>We use cookies (a small text file placed on your computer to identify your computer and browser) and other\r\n automated tools such as tracking pixels to improve the experience of the site and Services, such as saving\r\n your preferences from visit to visit to present you with a customized version of the Website. Many web\r\n browsers are initially set up to accept cookies. You can reset your web browser to refuse all cookies or to\r\n indicate when a cookie is being sent. Instructions for how to manage cookies in popular browsers are available\r\n at: Internet Explorer, Firefox, Chrome, Safari (iOS), Safari (Mac), and Opera. However, certain features of\r\n our Sites may not work if you delete or disable cookies.</p>\r\n <p><strong>We use the following types of cookies:</strong></p>\r\n <ul>\r\n <li><em>Session Cookies</em>: Session cookies keep track of you or your information as you move from page to\r\n page within our Sites and are typically deleted once you close your browser.</li>\r\n <li><em>Persistent Cookies</em>: Persistent cookies reside on your system and allow us to customize your\r\n experience if you leave and later return to our Sites. For example, persistent cookies may allow us to\r\n remember your preferences.</li>\r\n <li><em>Advertising Cookies</em>: Advertising cookies are used to learn more about you and advertise\r\n products/services that might interest you.</li>\r\n <li><em>Analytics Cookies</em>: Analytics cookies help us understand how our Sites are working and who is\r\n visiting our Sites. Google Analytics is one tool we use, and you can learn more by reviewing Google's\r\n Privacy Policy.</li>\r\n </ul>\r\n <p>We employ software technology that enables us to track certain aspects of a user's visit to our Sites. This\r\n technology helps us better manage content on our Sites by informing us what content is effective, how\r\n consumers engage with our Sites, and how consumers arrive at and/or depart from our Sites. The software\r\n typically uses two methods to track user activity: (1) \"tracking pixels\" and (2) \"clear gifs.\" Tracking pixels\r\n are pieces of executable code that are embedded in a web page that track usage activity including which pages\r\n are viewed, when they are viewed, and how long the pages are viewed. Clear gifs are tiny graphics with unique\r\n identifiers which are embedded in web pages and email messages that track whether a user views a web page or\r\n email message. User activity information may be associated with additional information about a user's session\r\n and Personal Information, if provided by the user.</p>\r\n <p>If you arrive at our Sites by \"clicking through\" from another website, then certain information about you\r\n that you provided to that other website, such as the terms you searched that led you to our Sites, may be\r\n transmitted to us and we may use it. You should review the Privacy Policy of any website from which you\r\n reached our Sites to determine what information the operator collects and how it uses such information. We may\r\n retain information about you provided to us by other websites and will use it in accordance with this Privacy\r\n Policy. Such information may be associated with other Usage Data or Personal Information.</p>\r\n <p><strong>Interest-Based Advertising</strong></p>\r\n <p>We may work with third-party advertisers, search providers, and ad networks (\"Advertisers\") to learn more\r\n about you and show you ads or other content that we believe would be relevant to you. Advertisers may collect\r\n and use information about your use of our Sites or Services as well as other websites and services. These\r\n companies may use cookies and other online tracking technologies to collect and use your information. We\r\n and/or Advertisers may also append other data to the data collected by Advertisers to create an interest\r\n profile of individual users. Our Privacy Policy does not cover any use of information that an Advertiser may\r\n collect from you. Advertisements may be shown via our Sites or on third-party websites. If you do not want to\r\n receive interest-based advertising, please visit the <a href=\"https://optout.aboutads.info/?c=2&lang=EN\"\r\n target=\"_blank\">Digital Advertising Alliance (DAA) Consumer Choice Page.</a>\r\n The DAA website allows you to opt-out of one or more interest-based advertising networks. Opt-outs are device\r\n and browser specific; therefore, you will need to set your opt-out preferences for each device and browser.\r\n Deleting browser cookies can remove your opt-out preferences; however, the DAA offers browser extensions that\r\n help preserve the opt-out preferences you set on the DAA's Consumer Choice Page. Please note that opt-outs\r\n only apply to interest-based advertising. You may still receive other types of online advertising.</p>\r\n <p><strong>Information from Advertisements</strong></p>\r\n <p>If you arrive at our Sites via an advertisement (<em>e.g.</em>, banner ad), we may collect information\r\n regarding the advertisement with which you interacted and your interactions (<em>e.g.</em>, item clicked, date\r\n and time).</p>\r\n <p><strong>Social Media Widgets</strong></p>\r\n <p>The Sites may include social media features, such as the Facebook, YouTube, Pinterest, LinkedIn, Instagram,\r\n and Twitter widgets. These features may collect information about your IP address and the pages you visit on\r\n our site as well as other Personal Information. A cookie may be set to ensure that a feature properly\r\n functions. Your interactions with features are governed by the privacy policies of the companies that provide\r\n them.</p>\r\n <p><strong>Mobile App</strong></p>\r\n <p>When you use our Mobile App, we may collect your geolocation data and other information. This is so that we\r\n can provide you with a list of participating providers nearest to you. We do not share geolocation data with\r\n any third parties. If you do not want to use the App's geolocation feature, you can turn off the location\r\n services for the App by changing the permissions on your mobile device. If you wish to stop all collection of\r\n information by the App, you can uninstall it. If you wish for us to permanently delete your geolocation data,\r\n you can contact us at <a href=\"mailto:info@careington.com\">info@careington.com</a>.</p>\r\n <hr class=\"hr-normal\">\r\n <h3 id=\"thirdParty\">THIRD PARTIES THAT COLLECT INFORMATION ON OUR SITES</h3>\r\n <p>Third parties, including Advertisers, collect Personal Information and/or Usage Data from users of our Sites\r\n using automatic information collection tools such as cookies and tracking pixels. These third parties'\r\n collection, use, and disclosure of Personal Information and/or Usage Data is governed by their data policies.\r\n </p>\r\n <hr class=\"hr-normal\">\r\n <h3 id=\"useAndShare\">HOW WE USE AND SHARE INFORMATION</h3>\r\n <p><strong>Generally</strong></p>\r\n <p>We may use Personal Information for business purposes, such as to:</p>\r\n <ul>\r\n <li><em>Account creation, fulfillment, servicing and customer support</em>: to process applications, create\r\n customer accounts, allow customers to create online accounts and profiles, provide goods or services, keep\r\n customers informed about the status of their services, respond to questions and addressing customers\r\n concerns, deliver updates, upgrades and product improvement information;</li>\r\n <li><em>Marketing and market research</em>: to send communications and offers for our or third parties'\r\n products and services, including offers based on consumers' interests, personal and business characteristics\r\n and location; perform analytics for market and consumer research, trend analysis, financial analysis, and\r\n anonymization of personal information;</li>\r\n <li><em>Surveys, promotional events, contests</em>: to administer surveys, polls, sweepstakes, contests,\r\n loyalty programs and other promotional events and contests;</li>\r\n <li><em>Other company communications</em>: to provide consumers with information that may be of interest such\r\n as company newsletters, announcements, reminders and technical service bulletins;</li>\r\n <li><em>Website use and analytics</em>: to provide you with access to and use of our Sites and Services;\r\n analyze consumers' use of our websites, including the use of third-party web analytics services, which may\r\n utilize automated technologies to collect data (such as email and IP addresses);</li>\r\n <li><em>Eligibility and pricing</em>: to determine if consumers are eligible for certain products, services or\r\n offers and the pricing related to such offers;</li>\r\n <li><em>Product research</em>: to conduct research and analysis for maintaining, protecting, and developing\r\n services, increase and maintain the safety of our products and services, and prevent misuse;</li>\r\n <li><em>Business operations</em>: to evaluate, develop, and improve business operations, products and services\r\n offered; business administration and other normal business activities;</li>\r\n <li><em>Compliance</em>: to comply with applicable legal requirements, industry standards, contractual\r\n obligations, our policies, and take actions that we deem necessary to preserve and enforce our rights and\r\n the rights of others; and</li>\r\n <li><em>Information security and fraud prevention</em>: to operate information security and anti-fraud\r\n programs.</li>\r\n </ul>\r\n <p><strong>Reviews and Testimonials</strong></p>\r\n <p>If you provide a review or testimonial, we may post it publicly on our Sites or in other advertising\r\n material. By providing a testimonial, you give us permission to use it in any manner and for any purpose,\r\n including in marketing and advertising communications.</p>\r\n <p><strong>Service Providers</strong></p>\r\n <p>We may provide your Personal Information to other businesses (\"Service Providers\") to provide services to us\r\n or on our behalf. Categories of service providers we use include:</p>\r\n <ul>\r\n <li><em>Fulfillment and account servicing vendors</em>, which help us provide products, services and\r\n information to you, service your account or benefits, and perform payment processing services;</li>\r\n <li><em>Payment processors</em>, which help us to accept and process the payments for our products/services to\r\n you;</li>\r\n <li><em>Marketing and communications vendors</em>, which help us market our products/services to you, conduct\r\n promotions, surveys and other outreach campaigns;</li>\r\n <li><em>Research and development vendors</em>, which help us develop and improve our products and services;\r\n </li>\r\n <li><em>Data and business analytics vendors</em>, which help us collect, analyze and improve the accuracy of\r\n our data (including Personal Information);</li>\r\n <li><em>IT and network administration vendors</em>, which provide services such as data storage and\r\n management, website hosting, and data security;</li>\r\n <li><em>Professional service firms</em>, which provide accounting, legal and other professional services; and\r\n </li>\r\n <li><em>General service providers</em>, which help us with day-to-day business operations such as office\r\n support services, courier services, facilities management, and document destruction.</li>\r\n </ul>\r\n <p>Each Service Provider is expected to use reasonable security measures appropriate to the nature of the\r\n information involved to protect your Personal Information from unauthorized access, use, or disclosure.\r\n Service Providers are prohibited from using Personal Information that we provide to them other than as\r\n specified by us.</p>\r\n <p><strong>Third-Party Sharing</strong></p>\r\n <p>We may share or sell your Personal Information with other companies who do not provide services to us (\"Third\r\n Parties\"), such as insurance companies, healthcare providers, benefit providers, marketing partners.\r\n Categories of Personal Information that we sell may include personal identifiers and contact information,\r\n demographic information, commercial information, internet and network information and inferences drawn from\r\n other Personal Information.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>SECURITY</h3>\r\n <p>We recognize the importance of safeguarding the confidentiality of Personal Information from loss, misuse, or\r\n alteration. Accordingly, we employ commercially reasonable administrative, technical, and physical safeguards\r\n to protect Personal Information from unauthorized access, disclosure, and use. Even with these safeguards, no\r\n data transmission over the Internet or other network can be guaranteed 100% secure. As a result, while we\r\n strive to protect information transmitted on or through our Sites or Services, you do so at your own risk.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>COMPLIANCE WITH LAWS AND LAW ENFORCEMENT</h3>\r\n <p>We cooperate with government and law enforcement officials and private parties to enforce and comply with the\r\n law. We may disclose Personal Information and any other information about you to government or law enforcement\r\n officials or private parties if, in our discretion, we believe it is necessary or appropriate to: respond to\r\n legal requests (including court orders, investigative demands and subpoenas); protect the safety, property, or\r\n rights of ourselves, consumers, or any other third party; prevent or stop any illegal, unethical, or legally\r\n actionable activity; or comply with laws.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>LINKS</h3>\r\n <p>The Sites may contain links to third party websites including social media platforms. Please be aware that if\r\n you access these links, you will be leaving our site. We encourage users to read the privacy policies of those\r\n sites, as we are not responsible for their content, links, or privacy procedures.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>OTHER TRANSFERS</h3>\r\n <p>We may share Personal Information and Usage Data with businesses controlling, controlled by, or under common\r\n control with us. If we are merged, acquired or sold, or in the event of a transfer of some or all of our\r\n assets, we may disclose or transfer Personal Information and Usage Data in connection with such transaction.\r\n </p>\r\n <hr class=\"hr-normal\">\r\n <h3 id=\"children\">CHILDREN'S PRIVACY</h3>\r\n <p>The Sites and Services are not intended for children under the age of 16 and we do not knowingly collect\r\n Personal Information from children under the age of 16. If we become aware that we have inadvertently received\r\n Personal Information from a child under the age of 16, we will delete such information from our records.</p>\r\n <hr class=\"hr-normal\">\r\n <h3 id=\"privacyPractices\">PRIVACY PRACTICES RELATED TO JOB APPLICANTS</h3>\r\n <p>If you apply for employment or sign-up to become a broker, we may collect:</p>\r\n <ul>\r\n <li><em>Personal identifiers and contact information</em> such as name, address, social security number,\r\n driver's license number, alien registration number, passport number;</li>\r\n <li><em>Educational information</em> such as educational institutions attended, degrees received, college\r\n transcripts;</li>\r\n <li><em>Professional/employment information</em> such as resumes, CVs, positions held, tenure, references,\r\n skill assessments;</li>\r\n <li><em>Internet & network information</em>browsing/search history, data collected by cookies;</li>\r\n <li><em>Characteristics of protected classifications</em> such as age, race, disabilities, citizenship;</li>\r\n <li><em>Medical information </em>such as drug test results;</li>\r\n <li><em>Geolocation information </em>from mobile applications;</li>\r\n <li><em>Inferences drawn from the above categories of Personal Information</em>that relate to your\r\n characteristics, behavior, attitudes, intelligence, abilities and aptitudes, including criminal background\r\n information and driving history.</li>\r\n </ul>\r\n <p>We may use this information to evaluate candidates for employment; conduct background checks and drug\r\n screening; check references; communicate with you and respond to your requests or application; enable your use\r\n of the Sites; maintain company security; facilitate company policies; comply with legal and contractual\r\n obligations; and otherwise operate our business.</p>\r\n <hr class=\"hr-normal\">\r\n <h3 id=\"additional\">ADDITIONAL CALIFORNIA CONSUMER RIGHTS</h3>\r\n <p>If you are a resident of California, you have additional rights to access and control your Personal\r\n Information, including a right to request that we disclose the Personal Information we collect, use, disclose,\r\n and sell, under the California Consumer Privacy Act (CCPA).</p>\r\n <p><strong>Right to Know</strong></p>\r\n <p>You have the right to request twice per 12-month period that we provide you (i) the categories or specific\r\n pieces of Personal Information we collected about you; (ii) the categories of sources from which your Personal\r\n Information was collected; (iii) the business or commercial purpose for which we collected your Personal\r\n Information; (iv) the categories of Third Parties with whom we shared your Personal Information; and (v) the\r\n categories of Third Parties to whom we sold your Personal Information. We are not permitted to provide access\r\n to specific pieces of Personal Information if the Personal Information is sensitive or creates a high risk of\r\n potential harm from disclosure to an unauthorized person such as financial information, social security\r\n numbers, and driver's license numbers. To protect your Personal Information, you must provide required\r\n information and/or documentation to verify your identity. We will process verified requests within 45 days,\r\n subject to any applicable exceptions and extensions permitted by law.</p>\r\n <p><strong>Right to Deletion</strong></p>\r\n <p>You have the right to request that we delete any Personal Information we have collected about you. Please\r\n understand that we are not required to honor a deletion request if a legal exemption applies such as if we\r\n need the information to complete a requested or reasonably anticipated transaction, prevent security incidents\r\n or fraud, enable internal uses that are reasonably aligned with your expectations, or comply with legal\r\n obligations. To prevent unauthorized individuals from making deletion requests, you must provide required\r\n information and/or documentation to verify your identity.</p>\r\n <p><strong>Right to Opt-Out from the Sale of Personal Information</strong></p>\r\n <p>As a California resident, you have the right to direct us not to sell your Personal Information to Third\r\n Parties. We will process verified requests within 15 days, subject to any applicable exceptions and extensions\r\n permitted by law.</p>\r\n <p>The DAA also allows you to use its CCPA opt-out tool to request for your browser to opt-out of the sale of\r\n Personal Information by some or all participants of its CCPA opt-out program.</p>\r\n <p><strong>Non-Discrimination Notice</strong></p>\r\n <p>We will not discriminate against any consumer for exercising their privacy rights under law or this Privacy\r\n Policy.</p>\r\n <p><strong>California \"Do Not Track\" Disclosure</strong></p>\r\n <p>Do Not Track is a web browser privacy preference that causes the web browser to broadcast a signal to\r\n websites requesting that a user's activity not be tracked. Currently, our Sites and Services do not respond to\r\n \"do not track\" signals. You may, however, opt-out of interest-based advertising using the DAA website linked\r\n above or make a browser-specific CCPA opt-out request using the CCPA opt-out tool linked <a\r\n href=\"https://www.privacyrights.info/\" target=\"_blank\">here</a>.</p>\r\n <p><strong>Submitting a Request</strong></p>\r\n <p>If you are a California resident and would like to exercise your rights, you may submit a request though our\r\n online <a\r\n href=\"https://www1.careington.com/help/ccpa-contact.aspx?utm_source=website&utm_medium=footerlink&utm_campaign=CareingtonDirectLink\"\r\n target=\"_blank\">California Consumer Privacy Act Request Form</a> or calling us at <a href=\"tel:18004410380\"\r\n class=\"phone\">(800) 441-0380</a>.</p>\r\n <p><strong>Authorized Agent</strong></p>\r\n <p>If you are an authorized agent submitting a request for another California resident, you must provide a copy\r\n of a lawful power of attorney or written authorization from the Consumer (along with proof of your identity).\r\n You may provide this documentation via email at <a href=\"mailto:info@careington.com\">info@careington.com</a>\r\n after submitting the request. We may contact you or the Consumer on whose behalf you claim to act to verify\r\n your authorization.</p>\r\n <hr class=\"hr-normal\">\r\n <h3 id=\"contactPr\">CONTACT US</h3>\r\n <p>If you have any questions about our Sites, Services, or this Privacy Policy, please email us at <a\r\n href=\"mailto:info@careington.com\">info@careington.com</a>, call us at <a href=\"tel:18004410380\"\r\n class=\"phone\">(800) 441-0380</a>, or send us a letter to the following address:</p>\r\n <p>Careington International Corporation<br>\r\n www.careington.com<br>\r\n 7400 Gaylord Parkway<br>\r\n Frisco, TX 75034<br>\r\n <a href=\"tel:18004410380\" class=\"phone\">(800) 441-0380</a><br>\r\n <a href=\"mailto:info@careington.com\">info@careington.com</a></p>\r\n </div>\r\n </div>\r\n </div>\r\n</section>\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\nimport { BannerContext } from '../../models/banner-context';\r\n\r\n@Component({\r\n selector: 'app-privacy-policy',\r\n templateUrl: './privacy-policy.component.html',\r\n styleUrls: ['./privacy-policy.component.less']\r\n})\r\nexport class PrivacyPolicyComponent implements OnInit {\r\n\r\n bannerContext: BannerContext;\r\n\r\n constructor(private titleService: Title) {\r\n titleService.setTitle('Privacy Policy | Careington Direct');\r\n this.bannerContext = new BannerContext();\r\n this.bannerContext.heading = \"PRIVACY POLICY\";\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","<app-banner [context]=\"bannerContext\"></app-banner>\r\n<app-bread-crumb></app-bread-crumb>\r\n<section class=\"content\" id=\"learn-more\">\r\n <div class=\"container\">\r\n <h3 class=\"panel-title\">Create Your New Password</h3> \r\n <hr class=\"hr-left align-left\" *ngIf=\"!showError\" />\r\n <div [formGroup]=\"ResetPwdForm\" name=\"ResetPwdForm\" *ngIf=\"!showError\">\r\n <hr class=\"hr-normal\" />\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-group\">\r\n <label>New Password<span class=\"req\">*</span></label>\r\n <input type=\"password\" formControlName=\"password\" class=\"form-control input-sm\" \r\n (keyup)=\"ValidatePwd($event)\" maxlength=\"50\" />\r\n </div>\r\n <div class=\"form-group\">\r\n <label>Re-enter Password:<span class=\"req\">*</span></label>\r\n <input type=\"password\" formControlName=\"confirmPassword\" class=\"form-control input-sm\" />\r\n <div class=\"alert alert-danger\" *ngIf=\"ResetPwdForm.controls.confirmPassword.invalid &&\r\n (ResetPwdForm.controls.confirmPassword.touched ||\r\n ResetPwdForm.controls.confirmPassword.dirty)\r\n \">\r\n <div *ngIf=\"ResetPwdForm.controls.confirmPassword.hasError('required')\">\r\n Confirm Password is required\r\n </div>\r\n <div\r\n *ngIf=\"ResetPwdForm.controls.confirmPassword.hasError('pattern') || ResetPwdForm.controls.confirmPassword.hasError('mustMatch')\">\r\n Password and Confirm Password must match\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-6\">\r\n <h4>Password Requirements</h4>\r\n <p>\r\n <i class=\"fas \"\r\n [ngClass]=\"{'fa-times-circle red': !isPwdLengthValid, 'fa-check-circle green': isPwdLengthValid }\"></i>\r\n At least 8 characters\r\n </p>\r\n <p>\r\n <i class=\"fas \"\r\n [ngClass]=\"{'fa-times-circle red': !isPwdUpperValid, 'fa-check-circle green': isPwdUpperValid }\"></i>\r\n One upppercase letter\r\n </p>\r\n <p>\r\n <i class=\"fas \"\r\n [ngClass]=\"{'fa-times-circle red': !isPwdLowerValid, 'fa-check-circle green': isPwdLowerValid }\"></i>\r\n One lowercase letter\r\n </p>\r\n <p>\r\n <i class=\"fas \"\r\n [ngClass]=\"{'fa-times-circle red': !isPwdNumberValid, 'fa-check-circle green': isPwdNumberValid }\"></i>\r\n One number\r\n </p>\r\n <p>\r\n <i class=\"fas \"\r\n [ngClass]=\"{'fa-times-circle red': !isPwdSpecialCharValid, 'fa-check-circle green': isPwdSpecialCharValid }\"></i>\r\n One special character\r\n </p>\r\n </div>\r\n </div>\r\n <hr class=\"hr-normal\" />\r\n <button [disabled]=\"!canMoveNext()\" (click)=\"SavePassword()\" class=\"btn btn-success\">Save</button>\r\n </div>\r\n </div>\r\n</section>\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute } from \"@angular/router\";\r\nimport { FormBuilder, FormControl, FormGroup, Validators } from \"@angular/forms\";\r\nimport { Title } from '@angular/platform-browser';\r\n\r\nimport { BannerContext } from \"../../models/banner-context\";\r\nimport { FieldValidationPattern } from \"../../core/utils/field-validations\";\r\nimport { ResetPasswordService } from \"../../components/reset-password/reset-password.service\";\r\nimport { ResetPasswordRequest } from '../../models/ForgotPassword/reset-password-request';\r\nimport { NotificationService } from '../../core/services/notification.service';\r\n\r\n@Component({\r\n selector: 'app-reset-password',\r\n templateUrl: './reset-password.component.html',\r\n styleUrls: ['./reset-password.component.less']\r\n})\r\nexport class ResetPasswordComponent implements OnInit {\r\n\r\n ResetPwdForm: FormGroup;\r\n isPwdLowerValid: boolean = false;\r\n isPwdUpperValid: boolean = false;\r\n isPwdSpecialCharValid: boolean = false;\r\n isPwdNumberValid: boolean = false;\r\n isPwdLengthValid: boolean = false;\r\n id: string = null;\r\n showError: boolean = false;\r\n bannerContext: BannerContext;\r\n errorMsg: string = '';\r\n\r\n\r\n constructor(private formBuilder: FormBuilder,\r\n private route: Router,\r\n private activatedRoute: ActivatedRoute,\r\n private resetPasswordService: ResetPasswordService,\r\n private notificationService: NotificationService,\r\n private titleService: Title\r\n ) {\r\n titleService.setTitle('Password Reset | Careington Direct');\r\n this.bannerContext = new BannerContext();\r\n this.bannerContext.heading = \"ADMINISTRATOR LOGIN\";\r\n }\r\n\r\n ngOnInit() {\r\n this.buildForm();\r\n this.id = this.activatedRoute.snapshot.paramMap.get(\"id\");\r\n this.resetPasswordService.validateResetPasswordId(this.id).subscribe(\r\n result => {\r\n this.ResetPwdForm.enable();\r\n });\r\n }\r\n\r\n buildForm() {\r\n this.ResetPwdForm = this.formBuilder.group(\r\n {\r\n password: new FormControl({ value: '', disabled: true }, [\r\n Validators.required,\r\n Validators.pattern(FieldValidationPattern.PasswordPattern)\r\n ]),\r\n confirmPassword: new FormControl({ value: '', disabled: true }, [\r\n Validators.required,\r\n Validators.pattern(FieldValidationPattern.PasswordPattern)\r\n ])\r\n },\r\n {\r\n validator: MustMatch(\"password\", \"confirmPassword\")\r\n }\r\n );\r\n }\r\n\r\n canMoveNext(): Boolean {\r\n return this.ResetPwdForm.valid;\r\n }\r\n\r\n ValidatePwd(event: any) {\r\n var lowerCaseLetters = /[a-z]/g;\r\n var pwdKeyValue = event.target.value;\r\n if (pwdKeyValue.match(lowerCaseLetters)) {\r\n this.isPwdLowerValid = true;\r\n } else {\r\n this.isPwdLowerValid = false;\r\n }\r\n // Validate capital letters\r\n var upperCaseLetters = /[A-Z]/g;\r\n if (pwdKeyValue.match(upperCaseLetters)) {\r\n this.isPwdUpperValid = true;\r\n } else {\r\n this.isPwdUpperValid = false;\r\n }\r\n\r\n // Validate special charector\r\n var specialChars = /([!,%,&,@,#,$,^,*,?,_,~])/g;\r\n if (pwdKeyValue.match(specialChars)) {\r\n this.isPwdSpecialCharValid = true;\r\n } else {\r\n this.isPwdSpecialCharValid = false;\r\n }\r\n\r\n // Validate numbers\r\n var numbers = /[0-9]/g;\r\n if (pwdKeyValue.match(numbers)) {\r\n this.isPwdNumberValid = true;\r\n } else {\r\n this.isPwdNumberValid = false;\r\n }\r\n\r\n // Validate length\r\n if (pwdKeyValue.length >= 8) {\r\n this.isPwdLengthValid = true;\r\n } else {\r\n this.isPwdLengthValid = false;\r\n }\r\n }\r\n\r\n SavePassword() {\r\n let resetPasswordRequest: ResetPasswordRequest = {\r\n forgotPasswordId: this.id,\r\n password: this.ResetPwdForm.getRawValue().password\r\n };\r\n\r\n this.resetPasswordService.resetPassword(resetPasswordRequest).subscribe(\r\n (response) => {\r\n this.notificationService.Success(\r\n \"Your password has been changed successfully. Please re-login.\");\r\n this.route.navigate([\"/admin/login\"]);\r\n }\r\n );\r\n }\r\n}\r\n\r\nexport function MustMatch(controlName: string, matchingControlName: string) {\r\n return (formGroup: FormGroup) => {\r\n const control = formGroup.controls[controlName];\r\n const matchingControl = formGroup.controls[matchingControlName];\r\n\r\n if (matchingControl.errors && !matchingControl.errors.mustMatch) {\r\n // return if another validator has already found an error on the matchingControl\r\n return;\r\n }\r\n // set error on matchingControl if validation fails\r\n if (control.value !== matchingControl.value) {\r\n matchingControl.setErrors({ mustMatch: true });\r\n } else {\r\n matchingControl.setErrors(null);\r\n }\r\n };\r\n}\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, of } from \"rxjs\";\r\n\r\nimport { GroupPortalApiService } from \"../../core/services/group-portal-api.service\";\r\nimport { ApiPaths } from '../../shared/utils/ApiPaths';\r\nimport { ResetPasswordRequest } from '../../models/ForgotPassword/reset-password-request';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ResetPasswordService {\r\n\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n validateResetPasswordId(\r\n id: string\r\n ): Observable<boolean> {\r\n const apiPaths = ApiPaths.forgotPassword_get.replace(\"{recordLocator}\", id);\r\n return this.groupPortalApiService.get<boolean>(apiPaths);\r\n }\r\n\r\n resetPassword(resetPasswordRequest: ResetPasswordRequest): Observable<any> {\r\n return this.groupPortalApiService.put<any>(ApiPaths.forgotPassword_put, resetPasswordRequest);\r\n }\r\n\r\n}\r\n","<app-banner [context]=\"bannerContext\"></app-banner>\r\n<section class=\"content\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <p><a [routerLink]=\"['']\">Home</a></p>\r\n <p><a [routerLink]=\"'/contact-us'\">Contact by Email</a></p>\r\n <p><a [routerLink]=\"'/faqs-dental-plans'\">Careington Plan FAQs</a></p>\r\n <p><a [routerLink]=\"'/faqs-telemedicine'\">Telemedicine FAQs</a></p>\r\n <p><a [routerLink]=\"'/how-to-use'\">How to Use a Careington Plan</a></p>\r\n <p><a [routerLink]=\"'/admin/login'\">Admin Login</a></p>\r\n </div>\r\n <div class=\"col-sm-6\">\r\n <p><a [routerLink]=\"'/application'\">Get Started</a></p>\r\n <p><a [routerLink]=\"'/group-plans'\">Group Plans</a></p>\r\n <p *ngFor=\"let bundle of bundles\">\r\n <a [routerLink]=\"'/plan-details/' + bundle.bundleCode.trim()\">{{bundle.bundleName}}</a>\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n</section>\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\nimport { BannerContext } from '../../models/banner-context';\r\nimport { CommonGatewayService } from \"../../services/common-gateway.service\";\r\nimport { Bundle } from \"../../models/GroupPlan/Bundle\";\r\nimport { AppState } from \"../../core/app-state\";\r\n\r\n@Component({\r\n selector: 'app-site-map',\r\n templateUrl: './site-map.component.html',\r\n styleUrls: ['./site-map.component.less']\r\n})\r\nexport class SiteMapComponent implements OnInit {\r\n\r\n bannerContext: BannerContext = new BannerContext();\r\n bundles: Bundle[];\r\n\r\n constructor(private appState: AppState, private commonGatewatService: CommonGatewayService, private titleService: Title) {\r\n titleService.setTitle('Site Map | Careington Direct');\r\n }\r\n\r\n ngOnInit() {\r\n this.bannerContext.heading = \"SITE MAP\";\r\n\r\n this.LoadPlans();\r\n }\r\n\r\n LoadPlans() {\r\n if (this.appState.Bundles) {\r\n this.bundles = this.appState.Bundles;\r\n } else {\r\n this.GetPlans();\r\n }\r\n }\r\n\r\n GetPlans() {\r\n return this.commonGatewatService.GetGroupPlans().subscribe(\r\n (response: Bundle[]) => {\r\n this.bundles = response;\r\n this.appState.Bundles = response;\r\n }\r\n );\r\n }\r\n}\r\n","<app-banner [context]=\"bannerContext\"></app-banner>\r\n<section class=\"bread\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <ul class=\"breadcrumb small\">\r\n <li><a [routerLink]=\"''\">Home</a></li>\r\n <li><a [routerLink]=\"['/faqs-dental-plans']\">Careington Plan FAQs</a></li>\r\n <li class=\"active\">Telemedicine FAQs</li>\r\n <li><a [routerLink]=\"['/how-to-use']\">How to Use a Careington Plan</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</section>\r\n<section class=\"content\">\r\n <div class=\"container\">\r\n <app-telemedicine-faqs></app-telemedicine-faqs>\r\n </div>\r\n</section>\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Title, Meta } from '@angular/platform-browser';\r\n\r\nimport { BannerContext } from '../../models/banner-context';\r\n\r\n@Component({\r\n selector: 'app-telemedicine-faqs-layout',\r\n templateUrl: './telemedicine-faqs-layout.component.html',\r\n styleUrls: ['./telemedicine-faqs-layout.component.less']\r\n})\r\nexport class TelemedicineFaqsLayoutComponent implements OnInit {\r\n\r\n bannerContext: BannerContext;\r\n\r\n constructor(private metaService: Meta, private titleService:Title) { \r\n this.titleService.setTitle('Frequently Asked Questions: Telemedicine | Careington Direct');\r\n this.metaService.updateTag({name:\"description\", content:\"Here are some answers to our most commonly asked questions.\"});\r\n }\r\n\r\n ngOnInit() {\r\n this.bannerContext = new BannerContext();\r\n this.bannerContext.heading = \"FREQUENTLY ASKED QUESTIONS\";\r\n this.bannerContext.subHeading = \"Telemedicine\";\r\n }\r\n\r\n}\r\n","<div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <h3>Do members talk to \"real doctors?\"</h3>\r\n <p>Yes. Telemedicine members only talk to actual doctors who are U.S. board-certified internists, state-licensed\r\n family practitioners and pediatricians licensed to practice medicine in the U.S. and living in the U.S. When\r\n members request a consult, they will be connected with a doctor licensed in their state.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>What are some of the common conditions telemedicine treats?</h3>\r\n <p>Common conditions include sinus problems, respiratory infections, allergies, urinary tract infections, cold and\r\n flu symptoms and many other non-emergency illnesses.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>Can telemedicine handle emergency situations?</h3>\r\n <p>Telemedicine is designed to handle non-emergency medical problems. Members should NOT use it if they are\r\n experiencing a medical emergency.</p>\r\n <hr class=\"hr-normal\">\r\n <h3>Can members use telemedicine when they travel away from home?</h3>\r\n <p>Yes, members can use telemedicine from anywhere they have a phone.*</p>\r\n <p><small><em>*DialCare Telemedicine is only available in the U.S.</em></small></p>\r\n </div>\r\n</div>\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-telemedicine-faqs',\r\n templateUrl: './telemedicine-faqs.component.html',\r\n styleUrls: ['./telemedicine-faqs.component.less']\r\n})\r\nexport class TelemedicineFaqsComponent implements OnInit {\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","<app-banner [context]=\"bannerContext\"></app-banner>\r\n\r\n<section class=\"content\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <p><strong><u>Obligations of Careington:</u></strong> Careington shall provide Client with the Benefits Plan selected by Client. Careington shall be responsible for the costs for the production and distribution of marketing and membership materials for the Benefits Plan. Careington shall provide Members with membership materials for the Benefits Plan. Membership materials shall include an identification card identifying that such Member is a participant in the Benefits Plan in addition to a toll-free telephone number for use by Members for inquiries regarding the benefits associated with the Benefits Plan.</p>\r\n <p><strong><u>Obligations of Client:</u></strong> Client shall offer the Benefits Plan to employees either at no charge or at the charge described on this website at the time of registration. Client shall not use any materials describing the Benefits Plan without Careington's prior written approval. If Members are responsible for paying for the Benefits Plan, Client shall collect Benefit Plan fees from the Members. Client shall provide Careington a monthly updated list of current Members showing such Members' names, telephone numbers and mailing addresses. Client shall comply with all laws, rules and regulations.</p>\r\n <p><strong><u>Fee:</u></strong> Careington shall invoice Client monthly. For each active Member, Client agrees to pay Careington the monthly fee set forth on this website at the time of registration. Client shall pay Careington all amounts due on a monthly basis within fifteen (15) days following the end of each month. Client's contact for billing purposes will be provided at the time of registration.</p>\r\n <p><strong><u>Confidentiality:</u></strong> In performing its obligations pursuant to this Agreement, each party may have access to and receive disclosure from the other of certain proprietary and confidential information, including, but not limited to, financial records, technological developments, marketing strategies, Member lists, employee lists, and other information considered by the disclosing party to be confidential and proprietary (herein collectively referred to as \"Confidential Information\"). For purposes of this Section, the financial terms of this Agreement are Confidential Information of each party. Confidential Information does not include: (i) information learned from a third party entitled to disclose it and who is not in violation of a contractual, legal or fiduciary obligation to either party, (ii) information which is or becomes known publicly through no fault of either party or, (iii) information already known by either party prior to disclosure from the other party, as shown by the receiving party's records. Each party shall receive Confidential Information in confidence, shall use it solely for the purpose of and as necessary to fulfill its obligations under this Agreement and shall not reveal it to any third party, other than a corporate affiliate, without the express written consent of the other party. Each party shall take appropriate measures to prevent its agents, employees and officers and directors from using or disclosing any Confidential Information, except as is expressly permitted under this Agreement. All documents supplied to one party (the \"Disclosing Party\") to the other (the \"Recipient Party\"), if any, pursuant to the provisions of this Agreement, including all copies or reproductions thereof, shall be returned to the Disclosing Party at the Disclosing Party's request. Both parties agree that none of the documents provided by a Disclosing Party will be reproduced except for the sole purpose of performing its analysis. Both parties agree that upon completion of its analysis, all copies of material containing Confidential Information will be returned to the Disclosing Party, except as otherwise agreed between both parties in writing. In the event that the Recipient Party or anyone to whom the Recipient Party transmits the Confidential Information becomes legally compelled to disclose the Confidential Information, the Recipient Party shall provide the Disclosing Party with prompt written notice thereof so that the Disclosing Party may seek a protective order or other appropriate remedy. The Recipient Party shall cooperate with the Disclosing Party in its efforts to obtain such remedies, but the Recipient Party shall not be required to undertake litigation or legal proceedings in its name. In the event that the Recipient Party is legally obligated to disclose any Confidential Information, the Recipient Party shall furnish only the portion of the Confidential Information that is legally required and will exercise its reasonable best efforts to assure that confidential treatment will be accorded the Confidential Information. The provisions of this Section shall survive termination of this Agreement.</p>\r\n <p><strong><u>Independent Relationship:</u></strong> No provision of this Agreement is intended to create nor shall be deemed or construed to create any relationship between Client and Careington other than that of independent entities contracting with each other hereunder solely for the purpose of effecting the provisions of this Agreement. The parties hereto are not and shall not be deemed for any purpose to be agents, joint venturers or partners. Neither party is authorized to act as agent for the other, to take any action or make any representation in the name of the other, or to represent that it has the power or authority to do so. Neither of the parties to this Agreement nor any of their respective officers, directors, or employees shall hold themselves out as the employee, partner, officer, director or agent of the other party and shall not be deemed or construed to be an employee, partner, officer, director or agent of the other party. Neither Careington nor Client is authorized to represent the other for any purpose whatsoever without the prior written agreement of that party.</p>\r\n <p><strong><u>Term:</u></strong> This Agreement shall be effective as of the day and year first written above and shall continue for an initial term of one (1) year (the \"Initial Term\"), unless sooner terminated pursuant to the terms stated below. Upon the expiration of the Initial Term, this Agreement shall automatically renew for subsequent periods of one (1) year each, unless a written notice to the contrary is provided by Client at least ninety (90) days prior to the expiration of the then existing term. Careington may terminate this Agreement without cause upon not less than sixty (60) days prior written notice to Client. Either party may terminate this Agreement upon thirty (30) days prior written notice to the other in the event of a material breach of this Agreement that remains uncured thirty (30) days after such notice. If either party repeats a material breach, the Agreement may be terminated immediately.</p>\r\n <p><strong><u>Advertising Reference; Tradenames:</u></strong> No advertising, promotional, or other materials using the name, address, telephone number, description, facilities and/or services of Careington or Client shall be released\r\n without either Careington or Client's prior written consent, as applicable. Neither party hereto obtains by virtue of this Agreement any rights in nor shall it use any trademark, service mark, logo, or other proprietary designation or intellectual property of any type in which the other party or any of its affiliates has an ownership or licensee interest.</p>\r\n <p><strong><u>Limitation on Damages:</u></strong> Neither party nor any of its affiliates shall be liable to the other for any indirect, special, incidental or consequential damages, including, but not limited to, lost profits, arising out of or related to this Agreement, its performance hereunder or its breach, even if it is advised of the possibility of any such damages.</p>\r\n <p><strong><u>Notices:</u></strong> Any notice to be given pursuant to the terms of this Agreement shall be in writing and shall be deemed delivered upon personal delivery against written receipt or when mailed by certified mail with\r\n return receipt requested and postage prepaid to the receiving party at such party's address set forth on the signature page of this Agreement, which address for notice may be changed by either party by written notice under this Agreement.</p>\r\n <p><strong><u>Miscellaneous:</u></strong> Except as otherwise provided in this Agreement, no amendment shall become effective unless and until it is reduced to writing and signed by Careington and Client. Neither party shall assign any of its rights or obligations under this Agreement without the prior written consent of the other party. This Agreement shall be governed in all respects by the laws of the State of Texas. The waiver by either party of any breach of any provision in this Agreement shall not be construed as a waiver of any subsequent breach. Further, failure to exercise any right hereunder shall not operate as a waiver of such right and all rights and remedies provided for herein are cumulative. This Agreement may be executed in separate identical counterparts, each of which when taken together shall constitute one and the same instrument.</p>\r\n </div>\r\n </div>\r\n </div>\r\n</section>","import { Component, OnInit } from '@angular/core';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\nimport { BannerContext } from '../../models/banner-context';\r\n\r\n@Component({\r\n selector: 'app-term-and-conditions',\r\n templateUrl: './term-and-conditions.component.html',\r\n styleUrls: ['./term-and-conditions.component.less']\r\n})\r\nexport class TermAndConditionsComponent implements OnInit {\r\n\r\n bannerContext: BannerContext;\r\n\r\n constructor(private titleService: Title) {\r\n titleService.setTitle('Terms and Conditions | Careington Direct');\r\n this.bannerContext = new BannerContext();\r\n this.bannerContext.heading = \"TERMS & CONDITIONS\";\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","<div class=\"top_space\"></div>\r\n<section class=\"content\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n \r\n </div>\r\n </div>\r\n </div>\r\n</section>\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { AppState } from 'src/app/core/app-state';\r\nimport { CompanyResponse } from 'src/app/models/Company/company-response';\r\nimport { Router } from \"@angular/router\";\r\n\r\n@Component({\r\n selector: 'app-thank-you',\r\n templateUrl: './thank-you.component.html',\r\n styleUrls: ['./thank-you.component.less']\r\n})\r\nexport class ThankYouComponent implements OnInit {\r\n companyInfo: CompanyResponse;\r\n hideLayout:boolean=false;\r\n constructor(private appState:AppState,private router: Router) { }\r\n \r\n ngOnInit() {\r\n // this.hideLayout=true;\r\n // this.companyInfo = this.appState.Company;\r\n // if(window.opener){\r\n // console.log(\"DOCUSIGNSUBMIT\");\r\n window.opener.postMessage('DOCUSIGNSUBMIT',window.location.origin)\r\n this.router.navigate(['/admin/login']);\r\n // }\r\n }\r\n}\r\n","import { Injectable, Injector } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { throwError } from 'rxjs';\r\n\r\nimport { environment } from 'src/environments/environment';\r\nimport { IAppConfig } from './app-config';\r\nimport { AppState } from './app-state';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AppInitializer { \r\n constructor(private http: HttpClient,\r\n private appState: AppState) { }\r\n\r\n load(): Promise<boolean> {\r\n const jsonFile = `assets/config/config.${environment.name}.json`;\r\n return new Promise<boolean>((resolve, reject) => {\r\n this.http.get(jsonFile).pipe(\r\n catchError(error => {\r\n resolve(false);\r\n return throwError(error);\r\n })\r\n )\r\n .subscribe((appConfig: IAppConfig) => {\r\n this.appState.AppConfig = appConfig;\r\n resolve(true);\r\n });\r\n });\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\n\r\nimport { IAppConfig } from \"./app-config\";\r\nimport { AdministratorResponse } from \"../models/Administrator/administrator-response.model\";\r\nimport { StorageService } from \"./services/storage.service\";\r\nimport { UsageLog } from \"./services/log.service\";\r\nimport { CompanyResponse } from \"../models/Company/company-response\";\r\nimport { StateInfo } from \"../models/state-info\";\r\nimport { BrokerResponse } from \"../models/Broker/broker-response\";\r\nimport { PrimaryContactResponse } from \"../models/PrimaryContact/primary-contact-response\";\r\nimport { CareingtonCommunicationDetails } from \"../models/Contract/careington-communication-details\";\r\nimport { Bundle } from \"../models/GroupPlan/Bundle\";\r\nimport { BillingInformationResponse } from \"../models/BillingInformation/billinginformation-response.model\";\r\nimport { BundlePlan } from '../models/GroupPlan/BundlePlan';\r\nimport { ChoosePlan } from '../models/ChoosePlan/ChoosePlan';\r\n\r\n@Injectable({ providedIn: \"root\" })\r\nexport class AppState {\r\n constructor(private storage: StorageService) { }\r\n\r\n get AppConfig(): IAppConfig {\r\n return <IAppConfig>JSON.parse(this.storage.Get(\"app_config\"));\r\n }\r\n set AppConfig(value: IAppConfig) {\r\n this.storage.Set(\"app_config\", JSON.stringify(value));\r\n }\r\n\r\n get Administrator(): AdministratorResponse {\r\n return <AdministratorResponse>JSON.parse(this.storage.Get(\"administrator\"));\r\n }\r\n set Administrator(value: AdministratorResponse) {\r\n this.storage.Set(\"administrator\", JSON.stringify(value));\r\n }\r\n\r\n get Company(): CompanyResponse {\r\n return <CompanyResponse>JSON.parse(this.storage.Get(\"company\"));\r\n }\r\n set Company(value: CompanyResponse) {\r\n this.storage.Set(\"company\", JSON.stringify(value));\r\n }\r\n\r\n get Broker(): BrokerResponse {\r\n return <BrokerResponse>JSON.parse(this.storage.Get(\"broker\"));\r\n }\r\n set Broker(value: BrokerResponse) {\r\n this.storage.Set(\"broker\", JSON.stringify(value));\r\n }\r\n\r\n get RecordLocator(): string {\r\n return this.storage.Get(\"record_locator\");\r\n }\r\n set RecordLocator(value: string) {\r\n localStorage.setItem('recordLocator',value);\r\n console.log('set record locator',value);\r\n this.storage.Set(\"record_locator\", value);\r\n }\r\n\r\n get UsageLogs(): Array<UsageLog> {\r\n return <Array<UsageLog>>JSON.parse(this.storage.Get(\"usage_logs\"));\r\n }\r\n set UsageLogs(value: Array<UsageLog>) {\r\n this.storage.Set(\"usage_logs\", JSON.stringify(value));\r\n }\r\n\r\n get States(): Array<StateInfo> {\r\n return <Array<StateInfo>>JSON.parse(this.storage.Get(\"states\"));\r\n }\r\n set States(value: Array<StateInfo>) {\r\n this.storage.Set(\"states\", JSON.stringify(value));\r\n }\r\n\r\n get BillingInformation(): BillingInformationResponse {\r\n return <BillingInformationResponse>(\r\n JSON.parse(this.storage.Get(\"billing_Info\"))\r\n );\r\n }\r\n set BillingInformation(value: BillingInformationResponse) {\r\n this.storage.Set(\"billing_Info\", JSON.stringify(value));\r\n }\r\n\r\n get PrimaryContact(): PrimaryContactResponse {\r\n return <PrimaryContactResponse>(\r\n JSON.parse(this.storage.Get(\"primary_contact\"))\r\n );\r\n }\r\n set PrimaryContact(value: PrimaryContactResponse) {\r\n this.storage.Set(\"primary_contact\", JSON.stringify(value));\r\n }\r\n\r\n get Bundles(): Bundle[] {\r\n return <Bundle[]>JSON.parse(this.storage.Get(\"group-plans\"));\r\n }\r\n set Bundles(value: Bundle[]) {\r\n this.storage.Set(\"group-plans\", JSON.stringify(value));\r\n }\r\n\r\n get ChoosePlans(): ChoosePlan {\r\n return <ChoosePlan>JSON.parse(this.storage.Get(\"choose-plan\"));\r\n }\r\n set ChoosePlans(value: ChoosePlan) {\r\n this.storage.Set(\"choose-plan\", JSON.stringify(value));\r\n }\r\n\r\n get CareingtonCommunicationDetails(): CareingtonCommunicationDetails {\r\n return <CareingtonCommunicationDetails>(\r\n JSON.parse(this.storage.Get(\"careington_communication\"))\r\n );\r\n }\r\n set CareingtonCommunicationDetails(value: CareingtonCommunicationDetails) {\r\n this.storage.Set(\"careington_communication\", JSON.stringify(value));\r\n }\r\n\r\n get IsAgreementSigned(): boolean {\r\n return <boolean>JSON.parse(this.storage.Get(\"is_agreement_signed\"));\r\n }\r\n set IsAgreementSigned(value: boolean) {\r\n this.storage.Set(\"is_agreement_signed\", JSON.stringify(value));\r\n }\r\n\r\n get LoggedInUser(): string {\r\n return <string>JSON.parse(this.storage.Get(\"logged_in_user\"));\r\n }\r\n set LoggedInUser(value: string) {\r\n this.storage.Set(\"logged_in_user\", JSON.stringify(value));\r\n }\r\n\r\n ClearGetStartedData(): void {\r\n this.storage.Remove(\"choose-plan\");\r\n this.storage.Remove(\"administrator\");\r\n this.storage.Remove(\"company\");\r\n this.storage.Remove(\"primary_contact\");\r\n this.storage.Remove(\"billing_Info\");\r\n this.storage.Remove(\"broker\");\r\n this.storage.Remove(\"record_locator\");\r\n }\r\n\r\n ClearGetStartedBroker(): void {\r\n this.storage.Remove(\"broker\");\r\n }\r\n\r\n ClearLoggedInUserInfo(): void {\r\n this.storage.Remove(\"logged_in_user\");\r\n }\r\n\r\n}\r\n"," <div class=\"loadWrapper\" *ngIf=\"isLoading\"> \r\n <div class=\"loader\"> \r\n <div class=\"modal fade in\" id=\"processing\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"myModalLabel\" aria-describedby=\"myModalLabel\" style=\"display: block; padding-right: 21px;\">\r\n <div class=\"modal-dialog processing\" role=\"document\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-body text-center\">\r\n <p><i class=\"fas fa-spinner fa-3x fa-spin\"></i></p>\r\n <div [innerHtml]=\"message\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div> \r\n</div>\r\n \r\n \r\n \r\n","import { Component, OnInit, OnDestroy, ChangeDetectorRef } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { LoaderService } from '../../services/loader.service';\r\n\r\n@Component({\r\n selector: 'app-loader',\r\n templateUrl: './loader.component.html',\r\n styleUrls: ['./loader.component.less']\r\n})\r\nexport class LoaderComponent implements OnInit, OnDestroy {\r\n message: string = '';\r\n isLoading: boolean = false; // Keep it as a boolean for the loading state\r\n private messageSubscription: Subscription;\r\n private loadingSubscription: Subscription;\r\n\r\n constructor(private loaderService: LoaderService, private cdr: ChangeDetectorRef) {}\r\n\r\n ngOnInit(): void {\r\n // Subscribe to message changes from the loader service\r\n this.messageSubscription = this.loaderService.setMessage.subscribe((msg: string) => {\r\n this.message = msg;\r\n this.cdr.detectChanges();\r\n });\r\n\r\n // Subscribe to the loading state from the loader service\r\n this.loadingSubscription = this.loaderService.isLoading.subscribe((loading: boolean) => {\r\n this.isLoading = loading;\r\n this.cdr.detectChanges(); \r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n // Unsubscribe from the observables to avoid memory leaks\r\n if (this.messageSubscription) {\r\n this.messageSubscription.unsubscribe();\r\n }\r\n\r\n if (this.loadingSubscription) {\r\n this.loadingSubscription.unsubscribe();\r\n }\r\n }\r\n}","<div *ngIf=\"htmlContent\">\r\n <div [innerHTML]=htmlContent?.data.marketingComponent[0].htmlBody.html></div>\r\n</div>","import { Component, OnInit, Input, ViewEncapsulation } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\n\r\nimport { AppState } from '../../app-state';\r\nimport { Content } from 'src/app/models/Core/content';\r\n\r\n@Component({\r\n selector: 'app-product-language',\r\n templateUrl: './product-language.component.html',\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class ProductLanguageComponent implements OnInit {\r\n\r\n @Input() contentCode: string ;\r\n htmlContent: Content;\r\n constructor(private http: HttpClient,\r\n private appState: AppState) { }\r\n\r\n ngOnInit(): void {\r\n this.getContent();\r\n }\r\n\r\n getContent() {\r\n const query = `{\r\n marketingComponent (where: {alias:{alias:\"${this.contentCode}\"} })\r\n {\r\n alias{\r\n alias\r\n }\r\n marketingComponentType\r\n htmlBody{\r\n html\r\n }\r\n markdownBody{\r\n markdown\r\n }\r\n }\r\n }`\r\n const headers = new HttpHeaders()\r\n .set(\"Content-Type\", \"application/json\")\r\n .set(\"Accept\", \"application/json\");\r\n\r\n this.http\r\n .post(this.appState.AppConfig.CmsUrl, JSON.stringify({ query }), { headers: headers })\r\n .subscribe(\r\n (response: Content) => {\r\n this.htmlContent = response;\r\n }\r\n )\r\n }\r\n}","import { NgModule, APP_INITIALIZER, ErrorHandler } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\n\r\nimport { AppInitializer } from './app-initializer';\r\nimport { RetryInterceptor } from './interceptors/retry.interceptor';\r\nimport { GlobalErrorHandler } from './global-error-handler';\r\nimport { LoaderComponent } from './components/loader/loader.component';\r\nimport { LoaderInterceptor } from './interceptors/loader.interceptor';\r\nimport { NoCacheInterceptor } from './interceptors/no-cache-interceptor';\r\nimport { AuthInterceptor } from './interceptors/auth.interceptor';\r\nimport { ProductLanguageComponent } from './components/product-language/product-language.component';\r\n\r\nexport function intializeLocalConfig(appConfig: AppInitializer) {\r\n return (): Promise<boolean> => { return appConfig.load(); }\r\n}\r\n\r\n@NgModule({\r\n declarations: [LoaderComponent, ProductLanguageComponent],\r\n imports: [\r\n CommonModule,\r\n ToastrModule.forRoot(\r\n {\r\n timeOut: 3000,\r\n preventDuplicates: true\r\n }\r\n ),\r\n HttpClientModule,\r\n ],\r\n exports: [LoaderComponent, ProductLanguageComponent],\r\n providers: [\r\n { provide: APP_INITIALIZER, useFactory: intializeLocalConfig, deps: [AppInitializer], multi: true },\r\n { provide: HTTP_INTERCEPTORS, useClass: LoaderInterceptor, multi: true },\r\n { provide: HTTP_INTERCEPTORS, useClass: RetryInterceptor, multi: true },\r\n { provide: HTTP_INTERCEPTORS, useClass: NoCacheInterceptor, multi: true },\r\n { provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true },\r\n { provide: ErrorHandler, useClass: GlobalErrorHandler }\r\n ]\r\n})\r\nexport class CoreModule { }\r\n","import { Injectable, ErrorHandler, Injector } from \"@angular/core\";\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\n\r\nimport { NotificationService } from './services/notification.service';\r\nimport { LogService } from './services/log.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class GlobalErrorHandler implements ErrorHandler {\r\n\r\n constructor(private notify: NotificationService,\r\n private logService: LogService,\r\n private injector: Injector) { }\r\n\r\n //todo: send the error message to api if the error type is not HttpErrorResponse.\r\n handleError(error: any): void {\r\n\r\n //since the error handler is created before the providers (in this case 'NotificationService' & 'LogService'),\r\n //this block is added to get the dependency injection (NotificationService & LogService) with the help of 'injector'\r\n const injectedServices = this.injector.get(GlobalErrorHandler);\r\n if (!this.notify) {\r\n this.notify = injectedServices[\"notify\"];\r\n }\r\n if (!this.logService) {\r\n this.logService = injectedServices[\"logService\"];\r\n }\r\n\r\n //basic code\r\n if (error instanceof Error) {\r\n //pass onActiveTick property to true as error handler will run outside Angular's zone.\r\n this.notify.Error(error.message, true);\r\n }\r\n else if (error instanceof HttpErrorResponse) {\r\n this.notify.Error(error.message, true);\r\n }\r\n else if (typeof error == \"string\") {\r\n this.notify.Error(error, true);\r\n }\r\n\r\n this.logService.LogError(error);\r\n }\r\n\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';import { Router } from '@angular/router';\r\n\r\n@Injectable()\r\n\r\nexport class AuthInterceptor implements HttpInterceptor{\r\n intercept(req: HttpRequest<any>, next: HttpHandler):import(\"rxjs\").Observable<import(\"@angular/common/http\").HttpEvent<any>> {\r\n const recordLocator=localStorage.getItem('recordLocator')\r\n if(recordLocator){\r\n const cloned=req.clone({\r\n setHeaders:{\r\n 'x-record-locator':recordLocator\r\n }\r\n });\r\n return next.handle(cloned)\r\n }\r\n return next.handle(req)\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpInterceptor } from '@angular/common/http';\r\nimport { finalize } from 'rxjs/operators';\r\n\r\nimport { LoaderService } from '../services/loader.service';\r\n\r\n@Injectable()\r\nexport class LoaderInterceptor implements HttpInterceptor{\r\n constructor(private loaderService: LoaderService){}\r\n intercept(req: import(\"@angular/common/http\").HttpRequest<any>, next: import(\"@angular/common/http\").HttpHandler): import(\"rxjs\").Observable<import(\"@angular/common/http\").HttpEvent<any>> {\r\n \r\n const url = req.urlWithParams || req.url; \r\n // Get a dynamic message based on the request\r\n const loadingMessage = this.getLoadingMessage(url);\r\n // Show loader immediately\r\n this.loaderService.show(loadingMessage);\r\n\r\n // Use finalize to ensure loader is hidden when the request is completed\r\n return next.handle(req).pipe(\r\n finalize(() => {\r\n // Hide the loader after the request is finished (success or failure)\r\n if (url.includes('docusigner')) {\r\n // Wait for 30 seconds before hiding the loader for DocuSign messages\r\n setTimeout(() => {\r\n this.loaderService.hide();\r\n }, 30000); // 30 seconds delay for DocuSign messages\r\n } else {\r\n // Hide immediately for other messages\r\n this.loaderService.hide();\r\n }\r\n })\r\n );\r\n }\r\n\r\n // A method to generate a dynamic message based on the request or other logic\r\n private getLoadingMessage(req: string): string {\r\n if (req.includes('docusigner')) {\r\n return 'you will be redirected to a new tab to sign your contract via DocuSign. <br /> Do not hit the back button or exit this screen during the process.';\r\n }\r\n else{\r\n return '';\r\n }\r\n }\r\n\r\n}\r\n","import { HttpHandler, HttpProgressEvent, HttpInterceptor, HttpSentEvent, HttpHeaderResponse, HttpUserEvent, HttpRequest, HttpResponse } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\n\r\nexport class NoCacheInterceptor implements HttpInterceptor {\r\n\r\n // This interceptor is to solve cache issue which are facing in IE.\r\n // IE is not triggering same api call again, which we require in admin to featch data\r\n // todo: in future if we need to implement api cache, then we need to find a alternative way for this issue\r\n intercept(req: HttpRequest<any>, next: HttpHandler):\r\n Observable<HttpSentEvent | HttpHeaderResponse | HttpProgressEvent | HttpResponse<any> | HttpUserEvent<any>> {\r\n const nextReq = req.clone({\r\n headers: req.headers.set('Cache-Control', 'no-cache')\r\n // .set('Pragma', 'no-cache')\r\n // .set('Expires', 'Sat, 01 Jan 2000 00:00:00 GMT')\r\n //Removed If-Modified-Since header since it is blocking json files to download. Ex: .json => config.{environment}.json\r\n });\r\n const apiKey = req.headers.get('x-api-key');\r\n console.log('x-api-key header:', apiKey);\r\n\r\n return next.handle(nextReq);\r\n }\r\n}\r\n","import { HttpInterceptor } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\n\r\nimport { delayedRetry } from '../operators/delayed-retry.operator';\r\n\r\n@Injectable()\r\nexport class RetryInterceptor implements HttpInterceptor {\r\n intercept(req: import(\"@angular/common/http\").HttpRequest<any>, next: import(\"@angular/common/http\").HttpHandler): import(\"rxjs\").Observable<import(\"@angular/common/http\").HttpEvent<any>> {\r\n\r\n return next.handle(req).pipe(delayedRetry(1000));\r\n }\r\n\r\n}\r\n","import { Observable, of, throwError } from 'rxjs';\r\nimport { delay, retryWhen, mergeMap } from 'rxjs/operators';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\n\r\nconst DEFAULT_MAX_RETRIES = 3;\r\nconst EXTENDED_DELAY = 1000;\r\n\r\nexport function delayedRetry(delay_milliseconds: number, maxRetry = DEFAULT_MAX_RETRIES, extended_delay_milliseconds = EXTENDED_DELAY) {\r\n let retries = maxRetry;\r\n\r\n return (src: Observable<any>) => src.pipe(\r\n retryWhen((errors: Observable<any>) => errors.pipe(\r\n mergeMap(error => {\r\n if (error instanceof HttpErrorResponse){\r\n if (error.status == 0 && retries-- > 0){\r\n const extended_delay_time = delay_milliseconds + (maxRetry - retries) * extended_delay_milliseconds;\r\n return of(error).pipe(delay(extended_delay_time));\r\n }\r\n }\r\n return throwError(error);\r\n })\r\n ))\r\n );\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { NotificationService } from './notification.service';\r\nimport { InternalApiService } from './internal-api.service';\r\nimport { AppState } from '../app-state';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ApiGatewayService extends InternalApiService {\r\n\r\n constructor(protected http: HttpClient, private appState: AppState, protected notificationService: NotificationService, protected router: Router) {\r\n super(http, notificationService, router)\r\n this.apiKey = appState.AppConfig.ApiKey;\r\n this.baseUrl = appState.AppConfig.CareingtonApiBaseUrl;\r\n }\r\n\r\n get<T>(route: string, options?: {\r\n body?: 'body';\r\n params?: HttpParams;\r\n withCredentials?: boolean;\r\n }): Observable<T> {\r\n return this.httpGet<T>(route, options);\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient, HttpParams } from \"@angular/common/http\";\r\nimport { Observable } from \"rxjs\";\r\nimport { Router } from '@angular/router';\r\n\r\nimport { AppState } from \"../app-state\";\r\nimport { NotificationService } from './notification.service';\r\nimport { InternalApiService } from './internal-api.service';\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class GroupPortalApiService extends InternalApiService {\r\n constructor(protected http: HttpClient, private appState: AppState, protected notificationService: NotificationService, protected router: Router) {\r\n super(http, notificationService, router)\r\n this.apiKey = appState.AppConfig.ApiKey;\r\n this.baseUrl = appState.AppConfig.GroupPortalApiBaseUrl;\r\n }\r\n\r\n get<T>(route: string, options?: {\r\n body?: 'body';\r\n params?: HttpParams;\r\n withCredentials?: boolean;\r\n throwError?: boolean;\r\n }): Observable<T> {\r\n return this.httpGet<T>(route, options);\r\n }\r\n\r\n post<T>(route: string, body: any, options?: {\r\n params?: HttpParams;\r\n withCredentials?: boolean;\r\n throwError?: boolean;\r\n }): Observable<T> {\r\n return this.httpPost<T>(route, body, options);\r\n }\r\n\r\n put<T>(route: string, body: any, withCredentials: boolean = false): Observable<T> {\r\n return this.httpPut<T>(route, body, withCredentials);\r\n }\r\n\r\n delete<T>(route: string, options?: {\r\n body?: 'body';\r\n params?: HttpParams;\r\n withCredentials?: boolean;\r\n }): Observable<T> {\r\n return this.httpDelete<T>(route, options);\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpHeaders, HttpClient, HttpErrorResponse, HttpParams } from \"@angular/common/http\";\r\nimport { Observable, throwError } from \"rxjs\";\r\nimport { catchError } from 'rxjs/operators';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { NotificationService } from './notification.service';\r\nimport { HttpStatusCodes } from '../../shared/utils/http-status-codes';\r\n\r\nvar urlJoin = require(\"url-join\");\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class InternalApiService {\r\n protected apiKey: string;\r\n protected baseUrl: string;\r\n constructor(protected http: HttpClient, protected notificationService: NotificationService, protected router: Router) { }\r\n\r\n get headers(): HttpHeaders {\r\n return new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"X-API-KEY\": this.apiKey\r\n });\r\n }\r\n\r\n addHeader(key: string, value: string): void {\r\n this.headers.set(key, value);\r\n }\r\n\r\n httpGet<T>(url: string, options: {\r\n body?: any;\r\n params?: HttpParams;\r\n withCredentials?: boolean;\r\n throwError?: boolean;\r\n } = {}): Observable<T> {\r\n\r\n let httpOptions = {\r\n headers: this.headers,\r\n body: options.body,\r\n params: options.params,\r\n withCredentials: options.withCredentials\r\n };\r\n console.log(\"set headers\",this.headers);\r\n url = urlJoin(this.baseUrl, url);\r\n return this.http.get<T>(url, httpOptions)\r\n .pipe(\r\n catchError(err => {\r\n return this.handleError(err, options.throwError);\r\n })\r\n );\r\n }\r\n\r\n httpPost<T>(url: string, body: any, options: {\r\n params?: HttpParams;\r\n withCredentials?: boolean;\r\n throwError?: boolean;\r\n } = {}): Observable<T> {\r\n let httpOptions = {\r\n headers: this.headers,\r\n params: options.params,\r\n withCredentials: options.withCredentials\r\n };\r\n\r\n url = urlJoin(this.baseUrl, url);\r\n return this.http.post<T>(url, body, httpOptions)\r\n .pipe(\r\n catchError(err => {\r\n return this.handleError(err, options.throwError);\r\n })\r\n );\r\n }\r\n\r\n httpPut<T>(url: string, body: any, withCredentials: boolean = false): Observable<T> {\r\n let httpOptions = {\r\n headers: this.headers,\r\n withCredentials: withCredentials\r\n };\r\n\r\n url = urlJoin(this.baseUrl, url);\r\n return this.http.put<T>(url, body, httpOptions)\r\n .pipe(\r\n catchError(err => {\r\n return this.handleError(err);\r\n })\r\n );\r\n }\r\n\r\n httpDelete<T>(url: string, options: {\r\n body?: any;\r\n params?: HttpParams;\r\n withCredentials?: boolean;\r\n } = {}): Observable<T> {\r\n\r\n let httpOptions = {\r\n headers: this.headers,\r\n body: options.body,\r\n params: options.params,\r\n withCredentials: options.withCredentials\r\n };\r\n\r\n url = urlJoin(this.baseUrl, url);\r\n return this.http.delete<T>(url, httpOptions)\r\n .pipe(\r\n catchError(err => {\r\n return this.handleError(err);\r\n })\r\n );\r\n }\r\n\r\n handleError(error: HttpErrorResponse, throwErrorFlag: boolean = false): Observable<any> {\r\n console.log(\"Internal -api - service\",error);\r\n if (throwErrorFlag)\r\n return throwError(error);\r\n let errorList: string = \"\";\r\n if (error.status == HttpStatusCodes.UNAUTHORIZED) {\r\n this.router.navigate(['/admin/login']);\r\n return;\r\n }\r\n\r\n if (error.status == HttpStatusCodes.UNPROCESSABLE_ENTITY && error.error.errors != null) {\r\n for (const key in error.error.errors) {\r\n error.error.errors[key].forEach(errorValue => {\r\n errorList = errorList.concat(errorValue, \"\\n\");\r\n });\r\n }\r\n }\r\n else if (error.status == HttpStatusCodes.NOT_FOUND) {\r\n errorList = \"Record does not exist!\";\r\n }\r\n else if (error.status != HttpStatusCodes.NOT_FOUND) {\r\n errorList = \"Something went wrong, please try again after some time or reach out to helpdesk.\";\r\n this.notificationService.Error(errorList, true);\r\n return;\r\n }\r\n\r\n if (errorList) {\r\n this.notificationService.Error(errorList, true);\r\n return;\r\n } else {\r\n return throwError(error);\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LoaderService {\r\n counter: number = 0;\r\n isLoading = new Subject<boolean>();\r\n setMessage = new Subject<string>();\r\n isContinuousLoading = new Subject<boolean>();\r\n\r\n show(message:string) {\r\n this.counter++;\r\n this.setMessage.next(message);\r\n if(message && message!=null){\r\n this.isContinuousLoading.next(true);\r\n }\r\n else{\r\n this.isContinuousLoading.next(false);\r\n }\r\n this.isLoading.next(true);\r\n }\r\n\r\n hide() {\r\n this.counter--;\r\n if (this.counter === 0) {\r\n this.isLoading.next(false);\r\n this.isContinuousLoading.next(false);\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\nimport { AppState } from '../app-state';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LogService {\r\n constructor(private appState: AppState) { }\r\n\r\n public LogError(error: any) {\r\n //todo: stringify and send error to the api\r\n console.error(error);\r\n }\r\n\r\n public LogUsage(content: any) {\r\n var usageLog = UsageLog.SetUsageLog(content);\r\n let existingLogs = this.appState.UsageLogs;\r\n\r\n if (existingLogs && existingLogs.length >= 3) {\r\n this.SendLogUsage(existingLogs);\r\n existingLogs = [];\r\n }\r\n existingLogs.push(usageLog);\r\n this.appState.UsageLogs = existingLogs;\r\n }\r\n\r\n public SendLogUsage(usageLogs: UsageLog[]): void {\r\n //todo: send the records to api\r\n }\r\n}\r\n\r\nexport class UsageLog {\r\n public EntryDate: Date = new Date();\r\n public Content: any;\r\n\r\n static SetUsageLog(content: any): UsageLog {\r\n let log = new UsageLog();\r\n log.EntryDate = new Date();\r\n log.Content = JSON.stringify(content);\r\n return log;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NotificationService {\r\n\r\n constructor(private toastr: ToastrService) { }\r\n \r\n Success(message: string){\r\n this.toastr.success(message);\r\n }\r\n\r\n Error(message: string, activeTick?: boolean){\r\n this.toastr.error(message, undefined, {onActivateTick: activeTick});\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class StorageService {\r\n Get(key: string): string {\r\n return sessionStorage.getItem(key);\r\n }\r\n\r\n Set(key: string, value: string): void {\r\n sessionStorage.setItem(key, value);\r\n }\r\n\r\n Remove(key: string) {\r\n return sessionStorage.removeItem(key);\r\n }\r\n\r\n Reset() {\r\n sessionStorage.clear();\r\n }\r\n\r\n}","export const Constants={\r\n billing: \"BILLING\",\r\n careington: \"CAREINGTON\",\r\n witness: \"WITNESS\"\r\n}","export const FieldValidationPattern = {\r\n PasswordPattern: /^(?=.{8,}$)(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!,%,&,@,#,$,^,*,?,_,~]).*$/,\r\n EmailValidationPattern: /^\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$/,\r\n Email: /^(([^<>()[\\]\\\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/,\r\n DOBValidationPattern: /^(?:(0[1-9]|1[012])[\\- \\/.](0[1-9]|[12][0-9]|3[01])[\\- \\/.](19|20)[0-9]{2})$/,\r\n AddressValidationPattern: /^[^<>{}$%\\/|]*$/,\r\n phoneformat: /^[+]?(1\\-|1\\s|1|\\d{3}\\-|\\d{3}\\s|)?((\\(\\d{3}\\))|\\d{3})(\\-|\\s)?(\\d{3})(\\-|\\s)?(\\d{4})$/,\r\n DecimalValidationPattern: /^[0-9]+(\\.[0-9]{1,2})?$/,\r\n CityValidationPattern: /^[a-zA-Z\\'\\s]+$/,\r\n weigthptn: /^((?!(0))(^[0-9]{1,3})+(\\.[0-9]{1,2})?)?$/,\r\n nameptn: /^[a-zA-Z-.*%,' ]+$/,\r\n numerals: /^[0-9]+$/,\r\n USphoneFormat: ['(', /\\d/, /\\d/, /\\d/, ')', ' ', /\\d/, /\\d/, /\\d/, '-', /\\d/, /\\d/, /\\d/, /\\d/],\r\n feetval: /^[0-9]$/,\r\n noSpace: /^.*[^ ].*/,\r\n};\r\n","import { Directive, ElementRef, HostListener, Input } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[numericOnly]'\r\n})\r\nexport class NumericOnlyDirective {\r\n\r\n regexStr = '^[0-9]*$';\r\n\r\n constructor(private el: ElementRef) { }\r\n\r\n @HostListener('keypress', ['$event']) onKeyPress(event) {\r\n return new RegExp(this.regexStr).test(event.key);\r\n }\r\n\r\n @HostListener('paste', ['$event']) blockPaste(event: KeyboardEvent) {\r\n this.validateFields(event);\r\n }\r\n\r\n validateFields(event) {\r\n setTimeout(() => {\r\n this.el.nativeElement.value = this.el.nativeElement.value.replace(/[^0-9]/g, '').replace(/\\s/g, '');\r\n event.preventDefault();\r\n }, 100);\r\n }\r\n}\r\n","export class UploadEmployeeFile{\r\n FileName:string;\r\n FileStream: string;\r\n}","import { GenericPlan } from './GenericPlan';\r\nexport class Rate{\r\n bundlecode:string;\r\n memberonly:Number;\r\n memberDept:Number;\r\n memberFamily:Number;\r\n }","export class BannerContext {\r\n heading: string;\r\n subHeading: string;\r\n description: string;\r\n constructor() {\r\n this.heading = \"\";\r\n this.subHeading = \"\";\r\n this.description = \"\";\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from \"@angular/core\";\r\n\r\n@Pipe({\r\n name: \"coverageType\"\r\n})\r\nexport class CoverageTypePipe implements PipeTransform {\r\n\r\n transform(value: string): string {\r\n value = value.trim().toUpperCase();\r\n if (value == \"M\") {\r\n return \"Member Only\";\r\n } else if (value == \"MD\" || value == \"MC\" || value == \"MS\") {\r\n return \"Member + 1\";\r\n } else if (value == \"MF\") {\r\n return \"Member + Family\";\r\n }\r\n return \"None\";\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'dateSuffix'\r\n})\r\nexport class DateSuffixPipe implements PipeTransform {\r\n\r\n transform(value: string): string {\r\n let suffix = 'th',\r\n day = value;\r\n\r\n if (day === '1' || day === '21' || day === '31') {\r\n suffix = 'st'\r\n } else if (day === '2' || day === '22') {\r\n suffix = 'nd';\r\n } else if (day === '3' || day === '23') {\r\n suffix = 'rd';\r\n }\r\n\r\n return suffix;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'genderAbbreviation'\r\n})\r\nexport class GenderAbbreviationPipe implements PipeTransform {\r\n transform(value: string): string {\r\n if (!value) {\r\n return \"\";\r\n }\r\n value = value.trim().toUpperCase();\r\n if (value == \"M\") {\r\n return \"Male\";\r\n } else if (value == \"F\") {\r\n return \"Female\";\r\n }\r\n return \"None\";\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from \"@angular/core\";\r\n\r\nimport { Bundle } from \"../models/GroupPlan/Bundle\";\r\n\r\n@Pipe({\r\n name: \"lowPrice\"\r\n})\r\nexport class LowPricePipe implements PipeTransform {\r\n transform(bundle: Bundle): number {\r\n let lowValue;\r\n for (const bundleRate of bundle.bundleRates) {\r\n if (lowValue === undefined || lowValue > bundleRate.rate) {\r\n lowValue = bundleRate.rate;\r\n }\r\n }\r\n return lowValue;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'maritalStatus'\r\n})\r\nexport class MaritalStatusPipe implements PipeTransform {\r\n\r\n transform(value: string): string {\r\n if (!value) {\r\n return \"\";\r\n }\r\n value = value.trim().toUpperCase();\r\n if (value == \"D\") {\r\n return \"DIVORCED\";\r\n } else if (value == \"M\") {\r\n return \"MARRIED\";\r\n } else if (value == \"S\") {\r\n return \"SINGLE\";\r\n } else if (value == \"W\") {\r\n return \"WIDOWED\";\r\n }\r\n return \"None\";\r\n }\r\n}\r\n\r\n\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'phoneNumber'\r\n})\r\nexport class PhoneNumberPipe implements PipeTransform {\r\n\r\n transform(phoneNumber: string): string {\r\n if (!phoneNumber) {\r\n return \"\";\r\n }\r\n if (phoneNumber.length != 10)\r\n return phoneNumber;\r\n\r\n //Converts phone number in (123) 456-7890 format.\r\n return ('(' + phoneNumber.slice(0, 3) + ') ' + phoneNumber.slice(3, 6) + '-' + phoneNumber.slice(6));\r\n }\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\n\r\nimport { CoverageTypePipe } from \"./coverage-type.pipe\";\r\nimport { ProductsPipe } from \"./products.pipe\";\r\nimport { PricingOptionsPipe } from \"./pricing-options.pipe\";\r\nimport { LowPricePipe } from \"./low-price.pipe\";\r\nimport { DateSuffixPipe } from './date-suffix.pipe';\r\nimport { SortBundleRatePipe } from './sort-bundle-rate.pipe';\r\nimport { PhoneNumberPipe } from './phone-number.pipe';\r\nimport { GenderAbbreviationPipe } from './gender-abbreviation.pipe';\r\nimport { MaritalStatusPipe } from './marital-status.pipe';\r\nimport { RelationshipAbbreviationPipe } from './relationship-abbreviation.pipe';\r\n\r\n@NgModule({\r\n declarations: [\r\n CoverageTypePipe,\r\n ProductsPipe,\r\n PricingOptionsPipe,\r\n LowPricePipe,\r\n DateSuffixPipe,\r\n SortBundleRatePipe,\r\n PhoneNumberPipe,\r\n GenderAbbreviationPipe,\r\n MaritalStatusPipe,\r\n RelationshipAbbreviationPipe\r\n ],\r\n exports: [\r\n CoverageTypePipe,\r\n ProductsPipe,\r\n PricingOptionsPipe,\r\n LowPricePipe,\r\n DateSuffixPipe,\r\n SortBundleRatePipe,\r\n PhoneNumberPipe,\r\n GenderAbbreviationPipe,\r\n MaritalStatusPipe,\r\n RelationshipAbbreviationPipe\r\n ]\r\n})\r\nexport class PipesModule { }\r\n","import { Pipe, PipeTransform } from \"@angular/core\";\r\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\r\n\r\nimport { Bundle } from \"../models/GroupPlan/Bundle\";\r\nimport { CoverageTypePipe } from \"./coverage-type.pipe\";\r\nimport { SortBundleRatePipe } from './sort-bundle-rate.pipe';\r\n\r\n@Pipe({\r\n name: \"pricingOptions\"\r\n})\r\nexport class PricingOptionsPipe implements PipeTransform {\r\n constructor(private sanitizer: DomSanitizer){}\r\n\r\n transform(bundle: Bundle): SafeHtml {\r\n let priceOptions = \"\";\r\n const coverageType = new CoverageTypePipe();\r\n const sortBundles = new SortBundleRatePipe();\r\n const bundleRales = sortBundles.transform(bundle.bundleRates);\r\n\r\n for (const bundleRate of bundleRales) {\r\n if (priceOptions == \"\") {\r\n priceOptions += coverageType.transform(bundleRate.coverage) + \": $\" + bundleRate.rate;\r\n } else {\r\n priceOptions += \"<br/>\" + coverageType.transform(bundleRate.coverage) + \": $\" + bundleRate.rate;\r\n }\r\n }\r\n return this.sanitizer.bypassSecurityTrustHtml(priceOptions);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from \"@angular/core\";\r\n\r\nimport { Bundle } from \"../models/GroupPlan/Bundle\";\r\n\r\n@Pipe({\r\n name: \"products\"\r\n})\r\nexport class ProductsPipe implements PipeTransform {\r\n transform(bundle: Bundle): string {\r\n let planStr = \"\";\r\n for (const bundlePlan of bundle.bundlePlans) {\r\n if (planStr == \"\") {\r\n planStr += bundlePlan.planName;\r\n } else {\r\n planStr += \", \" + bundlePlan.planName;\r\n }\r\n }\r\n return planStr;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'relationshipAbbreviation'\r\n})\r\nexport class RelationshipAbbreviationPipe implements PipeTransform {\r\n\r\n transform(value: string): string {\r\n if (value && value.trim()) {\r\n value = value.trim().toUpperCase();\r\n if (value == \"C\") {\r\n return \"Child\";\r\n } else if (value == \"D\") {\r\n return \"Dependent\"; \r\n }else if (value == \"O\") {\r\n return \"Others\"; \r\n }else if (value == \"P\") {\r\n return \"Domestic Partner\"; \r\n }else if (value == \"S\") {\r\n return \"Spouse\"; \r\n }\r\n return \"None\";\r\n }\r\n}\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { BundleRate } from '../models/GroupPlan/BundleRate';\r\nimport { Bundle } from '../models/GroupPlan/Bundle';\r\n\r\n@Pipe({\r\n name: 'sortBundleRate'\r\n})\r\nexport class SortBundleRatePipe implements PipeTransform {\r\n\r\n transform(bundleRates: BundleRate[]): BundleRate[] {\r\n \r\n let sortedBundleRates : BundleRate[] = [];\r\n\r\n let bundleRate : BundleRate;\r\n bundleRate = bundleRates.find(br => br.coverage==\"M\");\r\n if(bundleRate)\r\n {\r\n sortedBundleRates.push(bundleRate);\r\n }\r\n bundleRate = bundleRates.find(br => br.coverage==\"MD\");\r\n if(bundleRate)\r\n {\r\n sortedBundleRates.push(bundleRate);\r\n }\r\n bundleRate = bundleRates.find(br => br.coverage==\"MF\");\r\n if(bundleRate)\r\n {\r\n sortedBundleRates.push(bundleRate);\r\n }\r\n return sortedBundleRates ;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, Router, UrlTree } from '@angular/router';\r\nimport { Observable, of } from 'rxjs';\r\nimport { map, catchError } from 'rxjs/operators';\r\n\r\nimport { AuthService } from './auth.service';\r\nimport { AppState } from '../../core/app-state';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthGuardService implements CanActivate {\r\n\r\n constructor(private authService: AuthService,\r\n private router: Router,\r\n private appState: AppState) { }\r\n\r\n canActivate(): Observable<boolean | UrlTree> | UrlTree | boolean {\r\n return this.authService.isAuthenticated().pipe(\r\n map(result => {\r\n this.appState.IsAgreementSigned = result;\r\n return true;\r\n }),\r\n catchError((error) => {\r\n console.log(\"isAuthError: \",error)\r\n return of(this.router.createUrlTree(['/admin/login']));\r\n }),\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\n\r\nimport { GroupPortalApiService } from '../../core/services/group-portal-api.service';\r\nimport { ApiPaths } from '../../shared/utils/ApiPaths';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthService {\r\n constructor(private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n isAuthenticated(): Observable<boolean> {\r\n let withCredentials = true;\r\n return this.groupPortalApiService.get<boolean>(ApiPaths.authenticated_get, { withCredentials: withCredentials });\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { GroupPortalApiService } from \"../core/services/group-portal-api.service\";\r\nimport { Observable, of } from \"rxjs\";\r\nimport { CareingtonCommunicationDetails } from \"../models/Contract/careington-communication-details\";\r\nimport { AppState } from \"../core/app-state\";\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class CareingtonInfoService {\r\n\r\n constructor(private appState: AppState, private groupPortalApiService: GroupPortalApiService) { }\r\n\r\n getCareingtonCommunicationDetails(): Observable<\r\n CareingtonCommunicationDetails\r\n > {\r\n if (this.appState.CareingtonCommunicationDetails) {\r\n return of(this.appState.CareingtonCommunicationDetails);\r\n } else {\r\n return this.groupPortalApiService.get<CareingtonCommunicationDetails>(\r\n \"/api/careingtoncommunicationdetails\"\r\n );\r\n }\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpParams } from '@angular/common/http';\r\nimport { Observable, of } from \"rxjs\";\r\n\r\nimport { ApiGatewayService } from \"../core/services/api-gateway.service\";\r\nimport { StateInfo } from \"../models/state-info\";\r\nimport { Bundle } from \"../models/GroupPlan/Bundle\";\r\nimport { ApiPaths } from '../shared/utils/ApiPaths';\r\nimport { AppState } from '../core/app-state';\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class CommonGatewayService {\r\n constructor(private apiGatewayService: ApiGatewayService, private appState: AppState) { }\r\n\r\n getStates(): Observable<StateInfo[]> {\r\n if (this.appState.States) {\r\n return of(this.appState.States);\r\n } else {\r\n const apiUrl = ApiPaths.states_get;\r\n return this.apiGatewayService.get<StateInfo[]>(apiUrl);\r\n }\r\n }\r\n\r\n GetGroupPlans(): Observable<Bundle[]> {\r\n if (this.appState.Bundles) {\r\n return of(this.appState.Bundles);\r\n } else {\r\n const apiUrl = ApiPaths.planBundles_get;\r\n return this.apiGatewayService.get<Bundle[]>(apiUrl);\r\n }\r\n }\r\n\r\n getChoosenPlansByIds(bundleIds: number[]): Observable<Bundle[]> {\r\n let params = new HttpParams();\r\n bundleIds.forEach((bundleId) => {\r\n params = params.append('bundleIds', bundleId.toString());\r\n });\r\n\r\n const apiUrl = ApiPaths.contract_get;\r\n return this.apiGatewayService.get<Bundle[]>(apiUrl, { params });\r\n }\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { CommonModule } from \"@angular/common\";\r\nimport { RouterModule } from \"@angular/router\";\r\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\r\nimport { TextMaskModule } from 'angular2-text-mask';\r\n\r\nimport { AddressComponent } from \"./components/address/address.component\";\r\nimport { BannerComponent } from \"./components/banner/banner.component\";\r\nimport { BreadCrumbComponent } from \"./components/bread-crumb/bread-crumb.component\";\r\nimport { InputComponent } from './shared/controls/cic-input.component';\r\nimport { NameAllowedCharsDirective } from './directives/name-allowed-chars.directive';\r\nimport { DiscountFaqsComponent } from './components/discount-faqs/discount-faqs.component';\r\nimport { TelemedicineFaqsComponent } from './components/telemedicine-faqs/telemedicine-faqs.component';\r\nimport { HowToUseComponent } from './components/how-to-use/how-to-use.component';\r\nimport { GeneralFaqsComponent } from './components/general-faqs/general-faqs.component';\r\nimport { AddressAllowedCharsDirective } from './directives/address-allowed-chars.directive';\r\nimport { CityAllowedCharsDirective } from './directives/city-allowed-chars.directive';\r\nimport { NumericOnlyDirective } from './directives/numeric-only.directive';\r\n\r\n@NgModule({\r\n declarations: [BannerComponent, BreadCrumbComponent, AddressComponent, InputComponent, NameAllowedCharsDirective, DiscountFaqsComponent, TelemedicineFaqsComponent, HowToUseComponent, GeneralFaqsComponent, AddressAllowedCharsDirective, CityAllowedCharsDirective, NumericOnlyDirective],\r\n imports: [CommonModule, RouterModule, FormsModule, ReactiveFormsModule, TextMaskModule],\r\n exports: [BannerComponent, BreadCrumbComponent, AddressComponent, InputComponent, TextMaskModule, NameAllowedCharsDirective, DiscountFaqsComponent, TelemedicineFaqsComponent, HowToUseComponent, GeneralFaqsComponent, AddressAllowedCharsDirective, CityAllowedCharsDirective, NumericOnlyDirective]\r\n})\r\nexport class SharedModule { }\r\n","export enum ApiPaths {\r\n states_get = \"/api/address/states\",\r\n planBundles_get = \"plan-bundles?applicationName=Group Portal\",\r\n login_post = \"api/administrator/login\",\r\n logout_post = \"api/administrator/logout\",\r\n choosePlan_post = \"api/applications/{recordLocator}/application-plans\",\r\n choosePlan_secureGet = \"/admin/application-plans\",\r\n choosePlan_get = \"api/applications/{recordLocator}/application-plans\",\r\n adminAccount_get = \"api/applications/{recordLocator}/administrator\",\r\n adminAccount_post = \"api/applications\",\r\n adminAccount_put = \"api/applications/{recordLocator}/administrator/{id}\",\r\n billing_get = \"api/applications/{recordLocator}/billing-info\",\r\n billing_post = \"api/applications/{recordLocator}/billing-info\",\r\n billing_put = \"api/applications/{recordLocator}/billing-info/{id}\",\r\n billing_secureGet = \"admin/billing\",\r\n billing_securePut = \"admin/billing?billingInfoId={id}\",\r\n broker_get = \"api/applications/{recordLocator}/broker-info\",\r\n broker_post = \"api/applications/{recordLocator}/broker-info\",\r\n broker_put = \"api/applications/{recordLocator}/broker-info/{id}\",\r\n broker_secureGet = \"admin/broker\",\r\n broker_securePut = \"admin/broker?brokerId={id}\",\r\n broker_securePost = \"admin/broker\",\r\n broker_delete = \"api/applications/{recordLocator}/broker-info\",\r\n company_get = \"api/applications/{recordLocator}/company-info\",\r\n company_post = \"api/applications/{recordLocator}/company-info\",\r\n company_put = \"api/applications/{recordLocator}/company-info/{id}\",\r\n company_secureGet = \"admin/company\",\r\n company_securePut = \"admin/company?companyId={id}\",\r\n primary_get = \"api/applications/{recordLocator}/primary-contact\",\r\n primary_post = \"api/applications/{recordLocator}/primary-contact\",\r\n primary_put = \"api/applications/{recordLocator}/primary-contact/{id}\",\r\n primary_secureGet = \"admin/primary\",\r\n primary_securePut = \"admin/primary?primaryContactId={id}\",\r\n contract_get = \"api/plan-bundles/Id\",\r\n authenticated_get = \"api/isauthenticated\",\r\n contract_save_post = \"api/applications/{recordLocator}/contract\",\r\n contractdraft_view_post = \"api/applications/{recordLocator}/contract/view-draft\",\r\n contract_secureGet = \"api/contract\",\r\n contractdocusigner_post = \"/api/applications/contract/docusigner\",\r\n forgotPassword_put = \"api/administrator/resetpassword?forgorPasswordId={recordLocator}\",\r\n forgotPassword_get = \"api/administrator/resetpassword?resetPasswordId={recordLocator}\",\r\n forgotPassword_post = \"api/administrator/forgotpassword?email={email}\",\r\n changePassword_put = \"admin/ChangePassword?oldPassword={oldPassword}&newPassword={newPassword}\",\r\n employeeList_get = \"admin/members\",\r\n employeeListCount_get = \"admin/members/count\",\r\n emailVerification_post = \"api/applications/email/verification\",\r\n emailVerification_get = \"api/applications/email/verification\",\r\n contactus_securepost = \"/admin/contact-us\",\r\n upload_excel_post = \"admin/employees/upload\"\r\n}\r\n","export const Months: string[] = [\r\n \"January\",\r\n \"February\",\r\n \"March\",\r\n \"April\",\r\n \"May\",\r\n \"June\",\r\n \"July\",\r\n \"August\",\r\n \"September\",\r\n \"October\",\r\n \"November\",\r\n \"December\"\r\n];\r\n","export enum HttpStatusCodes {\r\n UNAUTHORIZED = 401,\r\n UNPROCESSABLE_ENTITY = 422,\r\n NOT_FOUND = 404\r\n}\r\n","export const defaultEnvironment = {\r\n name: 'prod',\r\n production: true,\r\n careSmartSearchModule:\"https://cdn.solutionssimplified.com/scripts/care-smart-search.js\",\r\n careSmartSearchNoModule:\"https://cdn.solutionssimplified.com/scripts/care-smart-search-es5.js\"\r\n\r\n // name: 'dev',\r\n // production: false,\r\n // careSmartSearchModule:\"https://cdn-ss.ci-sandbox.com/scripts/care-smart-search.js\",\r\n // careSmartSearchNoModule:\"https://cdn-ss.ci-sandbox.com/scripts/care-smart-search-es5.js\"\r\n}","import { defaultEnvironment } from './environment.default';\r\n\r\n// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n ...defaultEnvironment\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n"],"sourceRoot":"webpack:///"}