{"version":3,"sources":["webpack:///$_lazy_route_resources|lazy|groupOptions: {}|namespace object","webpack:///src/app/app.component.ts","webpack:///src/app/app.component.html","webpack:///src/app/app.module.ts","webpack:///src/app/constants.ts","webpack:///src/app/loader-interceptor.service.ts","webpack:///src/app/loader.service.ts","webpack:///src/app/main/Confirmation/Confirmation.component.html","webpack:///src/app/main/Confirmation/Confirmation.component.ts","webpack:///src/app/main/Confirmation/Confirmation.module.ts","webpack:///src/app/main/Shipping/Shipping.component.html","webpack:///src/app/main/Shipping/Shipping.component.ts","webpack:///src/app/main/Shipping/Shipping.module.ts","webpack:///src/app/main/Shipping/modals/Countrychange/Countrychange.component.ts","webpack:///src/app/main/Shipping/modals/Countrychange/Countrychange.component.html","webpack:///src/app/main/Subscriptions/Subscribe.component.html","webpack:///src/app/main/Subscriptions/Subscribe.component.ts","webpack:///src/app/main/Subscriptions/Subscribe.module.ts","webpack:///src/app/main/Todays-order/Todays-order.component.html","webpack:///src/app/main/Todays-order/Todays-order.component.ts","webpack:///src/app/main/Todays-order/Todays-order.module.ts","webpack:///src/app/main/checkout/checkout.component.html","webpack:///src/app/main/checkout/checkout.component.ts","webpack:///src/app/main/checkout/checkout.module.ts","webpack:///src/app/main/my-loader/my-loader.component.ts","webpack:///src/app/main/my-loader/my-loader.component.html","webpack:///src/app/main/pages.module.ts","webpack:///src/app/main/pipe/pipe.module.ts","webpack:///src/app/main/pipe/search-pipe.ts","webpack:///src/app/main/stepper/stepper.component.html","webpack:///src/app/main/stepper/stepper.component.ts","webpack:///src/app/main/stepper/stepper.module.ts","webpack:///src/app/main/summary-cart/summary-cart.component.html","webpack:///src/app/main/summary-cart/summary-cart.component.ts","webpack:///src/app/main/summary-cart/summary-cart.module.ts","webpack:///src/app/nottranslate.service.ts","webpack:///src/app/shared/CalculateRetailSmartOrder.service.ts","webpack:///src/app/shared/LifestyleSubscription/LifestyleSubscription.component.html","webpack:///src/app/shared/LifestyleSubscription/LifestyleSubscription.component.ts","webpack:///src/app/shared/LifestyleSubscription/LifestyleSubscription.module.ts","webpack:///src/app/shared/Orders-Sub-Item/Orders-Sub-Item.component.html","webpack:///src/app/shared/Orders-Sub-Item/Orders-Sub-Item.component.ts","webpack:///src/app/shared/Product-info/Product-info.component.ts","webpack:///src/app/shared/Product-info/Product-info.component.html","webpack:///src/app/shared/auth.service.ts","webpack:///src/app/shared/calculateAutoOrder.service.ts","webpack:///src/app/shared/calculateRetailInitialOrder.service.ts","webpack:///src/app/shared/calculateRetailOrder.service.ts","webpack:///src/app/shared/enrollSession.service.ts","webpack:///src/app/shared/getDiscountedItems.service.ts","webpack:///src/app/shared/getRegex.service.ts","webpack:///src/app/shared/rest.service.ts","webpack:///src/app/shared/sharedMethod.service.ts","webpack:///src/app/shared/stepper.service.ts","webpack:///src/app/shared/subscribe-dialog/subscribe-dialog.component.ts","webpack:///src/app/shared/subscribe-dialog/subscribe-dialog.component.html","webpack:///src/app/shared/subscribe-dialog/subscribe-dialog.module.ts","webpack:///src/environments/environment.ts","webpack:///src/hmr.ts","webpack:///src/main.ts","webpack:///node_modules/moment/locale|sync|/^/.*$"],"names":["webpackEmptyAsyncContext","req","Promise","resolve","then","e","Error","code","keys","id","module","exports","AppComponent","document","_translateService","_platform","ref","_enrollSession","ANDROID","IOS","body","classList","add","_unsubscribeAll","Subject","setInterval","sessionStorage","setItem","JSON","stringify","data","submitApplicationData","editTransformationPack","markForCheck","onResize","screenWidth","window","innerWidth","mobileView","mediumScreen","localStorage","next","complete","key","event","scroll","top","left","behavior","DOCUMENT","onActivate","appRoutes","path","component","TodaysOrderComponent","redirectTo","pathMatch","MyMissingTranslationHandler","nts","params","interpolateParams","AppModule","LoaderService","provide","HTTP_INTERCEPTORS","useClass","LoaderInterceptor","multi","BrowserModule","BrowserAnimationsModule","HttpClientModule","FlexLayoutModule","CalendarModule","DateAdapter","useFactory","adapterFactory","RouterModule","enableTracing","TranslateModule","loader","TranslateLoader","HttpLoaderFactory","deps","HttpClient","missingTranslationHandler","MissingTranslationHandler","NotTranslatedService","MatMomentDateModule","MatButtonModule","MatIconModule","MatExpansionModule","MatDialogModule","PagesModule","FilterPipeModule","ToastrModule","MyLoaderComponent","http","TranslateHttpLoader","BASE_URL","location","hostname","search","API_URL","objectToParams","object","clean","obj","propName","undefined","Object","map","subObjectToParams","encodeURIComponent","join","childKey","loaderService","requests","i","indexOf","splice","isLoading","length","push","Observable","observer","subscription","handle","subscribe","HttpResponse","removeRequest","err","error","unsubscribe","BehaviorSubject","ConfirmationComponent","router","zoom","options","mapTypeId","zoomControl","scrollwheel","disableDoubleClickZoom","maxZoom","minZoom","markers","num","RetailOrderSummary","paymentTypeData","cardNumber","cardNum","toString","slice","geocoder","google","maps","Geocoder","address1","shippingFormData","address2","city","City","zipcode","ZipCode","state","State","country","CountryCode","address","that","geocode","results","status","GeocoderStatus","OK","latitude","geometry","lat","longitude","lng","center","setTimeout","position","animation","Animation","BOUNCE","navigate","zoomIn","zoomOut","routes","ConfirmationModule","MatFormFieldModule","MatMenuModule","MatTableModule","MatTabsModule","NgpSortModule","MatStepperModule","NgxChartsModule","CommonModule","SummaryCartModule","GoogleMapsModule","dayHeaderClicked","trimValidator","control","value","startsWith","ShippingComponent","_formBuilder","_RgetRegexService","_restService","_calculateRetailInitialOrder","_calculateRetailSmartOrder","_matDialog","_calculateAutoOrder","_toastr","routPath","countriesListAll","countriesList","USOnlyAutoOrderItems","USOnlyOrderItems","USOnlyAddonOrderItems","stateList","CalculateInitialOrderPrice","invalidzip1","currentYear","Date","getFullYear","viewDate","smartOrderDate","addMonths","view","CalendarView","refresh","activeDayIsOpen","prevBtnDisabled","nextBtnDisabled","checked","minDate","subMonths","maxDate","disableDaysOfMonth","selectedStateValue","isAnyItemInCart","Enrollpack","InitialOrders","AddOnOrders","eligibleForRetailDeliveryFees","InitialOrderDetails","Tax","siteType","getItem","warning","RetailEnroll","CurrencyCode","AgreeTerms","CardType","customerInfoForm","createCustomerInfoForm","shippingForm","createShippingForm","shippingMethodForm","createShippingMethodForm","SubscriptionProcessType","parse","customerInfoData","valueChanges","selectedValue","OldState","OldCountryCode","ShippingMethod","shippingType","calculate","customerInfo","patchValue","FirstName","LastName","Email","ConfirmEmail","Phone","Password","ConfirmPassword","smsOptIn","emailOptIn","keepUpdate","shippingInfo","firstName","lastName","shippingMethodInfo","shippingMethodFormData","ShippingMethods","ShipMethodID","shipInfo","get","setValue","getCountryList","ColoradoRetailDeliveryFees","price","description","quantity","image","group","Validators","validator","MatchPassword","MatchEmail","PasswordControl","controls","ConfirmPasswordControl","setErrors","passwordLength","required","passwordMismatch","EmailControl","ConfirmEmailControl","EmailMismatch","getStatesRequest","TempCountryCode","GetCountryRegions","result","countriesField","item","countryCodeField","countryChange","ex","console","log","countryCode","index","IsUSOnly","ParentId","ItemCode","SmartOrders","popupLoad","getStates","type","parseInt","regionsField","stateListOnBilling","regionCodeField","stateChange","billAdd","BillState","stateCode","removeMarketSpecificItems","checkCalculateOrder","removeInitOrder","Quantity","parentId","Boolean","removeSmartOrder","removeAddonOrder","CalculateInitialOrderPrices","calculateOrder","checkShipMethod","items","CustomDetails","ParentItemCode","PriceEach","shipMethodId","isExist","Value","CartQuantity","arrIndex","InitialOrdersSubTotal","InitialOrdersQVTotal","Price","BV","TotalItemLength","filterInitialOrders","InitialOrdersSubItems","check","CheckRegisterType","AddOnOrdersSubTotal","AddOnOrdersQVTotal","filterAddOnOrders","AddOnOrdersSubItems","filterResult","SmartOrderSubItems","SmartOrdersSubTotal","SmartOrderBVTotal","isBeautyWellness","CommissionDDConfirmation1","FileUploaded","modaltype","countrycode","action","componentName","CountrychangeComponent","dialogRef","open","width","panelClass","afterClosed","ChangeCountryCloseAction","ChangeCountryStateCloseAction","modalaction","getRawValue","regxExp","getRegex","filter","RegExp","test","target","date","month","getMonth","getTime","getDate","forEach","day","dateIsValid","cssClass","_selectedDay","format","year","currmonth","arrdays","dateinmonth","daysInMonth","current","enabledDatesArr","y","j","dat","element","_d","isSameOrBefore","dateOrViewChanged","monthIsValid","endOfPeriod","subPeriod","startOfPeriod","addPeriod","changeDate","maxMonth","isSameDay","AutoShipStartDate","period","startOfDay","startOfMonth","endOfDay","week","endOfWeek","endOfMonth","amount","addDays","addWeeks","subDays","subWeeks","emailData","mailrequest","IsEmailRegistered","reset","Location","LocationStrategy","PathLocationStrategy","EmailRegistered","regexValidateZip1","ShippingModule","MatInputModule","ReactiveFormsModule","FormsModule","MatRadioModule","StepperModule","matDialogRef","close","Action","$event","stopImmediatePropagation","stopPropagation","SubscribeComponent","_sharedMethodService","productList","topPicks","alternates","freeProducts","smarOrderallProductList","getAllProduct","getSmartOrderAllProduct","request","getProducts","res","TopPick","Alternate","FreeProducts","Items","CategoryID","Message","productInfoComponent","onSearch","KitMembers","OrderSubItemComponent","ContinueRetailOrder","SubscribeModule","PipesModule","_location","_activateRoute","EnhanceTranformation","panelOpenState","customertype","IsShowCart","page","InitOrder","EligibleForFreeUpgrade","IsNonprofit","usePrimaryCard","primaryCreditCardField","EnrollmentType","IsUpGrade","snapshot","queryParamMap","Volume109","url","href","webalias","queryParams","site","scrollTo","GetCustomerSite","Data","webAlias","webCategoryId","listData","uniqueproductListData","tag","array","findIndex","t","Description","allProductList","onSearchEnhance","ultlifestylePoup","itemCode","LifestyleSubscriptionComponent","maxWidth","height","disableClose","TodaysOrderModule","MatTooltipModule","LifestyleSubscriptionModule","CheckoutComponent","_route","currentMonth","monthList","yearList","sameAddressStatus","submissionInProgress","SmartOrderDate","referredForm","createReferredForm","paymentTypeForm","createPaymentTypeForm","billingAddressForm","createBillingAddressForm","ExpirationYear","ExpirationMonth","referralCode","nameOnCard","expMonth","expYear","securityCode","sameAddress","dataShipping","ShippingDescription","billingAddressData","referredFormData","pipe","takeUntil","addValidators","removeValidators","billingAddressInfo","paymentTypeInfo","CreditDebitCard","referredInfo","getCustomerSite","invalid","CustomerId","checkoutwithlimited","ReferredByGiftCard","ReferredBy","BusinessName","EINNumber","CommissionSSN","OrderProductDetalis","SubTotal","priceType","Total","SponsorId","EnrollerId","CommissionNameOnAccount","CommissionAccNo","CommissionRoutingNo","CommissionBankName","BillAddress","payAbleTo","ReceiveText","ReceiveEmail","SmartOrderProductDetalis","AutoOrderRequest","Payment","BillingAddress","SubmitApplication","orderDetails","OrderID","FunUploadDocument","Result","errorsField","customerIDField","webAliasField","CustomerWebAlias","ValidGiftCardCode","firstNameField","lastNameField","isValidwebalias","success","file","FormData","byteString","atob","FileData","split","ab","ArrayBuffer","ia","Uint8Array","charCodeAt","FileName","substring","lastIndexOf","bb","Blob","append","CustomerID","XMLHttpRequest","onreadystatechange","readyState","requestWebServiceUrl","setRequestHeader","send","CheckoutModule","v","loading","SearchPipe","term","some","hasOwnProperty","StepperComponent","steps","stepper_title","stepper_back","stepper_images","current_stepper_title","SummaryCartComponent","_calculateRetailOrderService","submitApplication","EventEmitter","finalShippingMethod","cartSubtotal","cartSubTotal","parseFloat","RetailPrice","currentRouterPath","checkSubTotal","SubscribeDialogComponent","response","emit","validateAllFormFields","orderType","EditTransformPack","formGroup","field","FormControl","markAsTouched","onlySelf","SubscribeDialogModule","CalculateRetailSmartOrderService","_calculateRetailOrder","shippingId","promise","reject","SmartOrderDetails","responseSmart","BusinessVolumeTotal","CV","CommissionableVolumeTotal","TaxTotal","ShippingTotal","SmartOrderProductDetail","authService","userLoginDialog","userInfo","loginDetails","MAT_DIALOG_DATA","MatCheckboxModule","MatDatepickerModule","MatToolbarModule","_data","DynamikKitItem","DynamikItems","dialogTitle","kitMemberItemsField","kitItem","find","x","itemCodeField","selectedCartItem","product","selectedItems","isRestricted","filterItem","RestrictQty","subOrderItem","entries","kitmember","isItemRestrcited","subitem","itemObj3","BusinessVolume","TinyPicture","SmallPicture","LongDetail","LongDetail2","LongDetail3","LongDetail4","Other1Price","itemObj","descriptionField","singleItem","itemObj2","newValue","onClick","InserDynamicKitItemNew","AuthService","_router","token","access_token","getToken","removeItem","CalculateAutoOrderService","IsCallCalculateOrder","ParentItemLength","SmartOrderItems","customerDetail","AllshipMethods","ItemLength","hideLoader","itemDetail","ShipMethodId","ShippingCity","Zip","Country","IsProfessional","OrderType","calculateSmartOrderOrder","Warnings","ShipMethods","CustomShipMethods","_url","Post","CalculateRetailInitialOrderService","calculateRetailOrder","RetailOrderProductDetail","CalculateRetailOrderService","_getDiscountedItemsService","ArrayList","callback","getProfessionalItems","discitem","ConcatArray","concat","disCountItem","getDiscount","qty","newArrayList","PriceType","calculateRetailOrderData","discountedItem","PriceTotal","ShippingPrice","TinyImage","SmallImage","BusinesVolume","CommissionableVolume","TaxablePrice","Taxable","method","Order_descriptionField","Shipping_descriptionField","Order_shipMethodIDField","orderdItemsData","calcItem","DescriptionField","PriceTotalField","statusField","EnrollSessionService","form","formControl","clearValidators","updateValueAndValidity","setValidators","replace","GetDiscountedItemsService","_http","route","discountItem","RgetRegexService","regex","RestService","resultUrl","httpOptions","headers","HttpHeaders","requestParameterData","put","tap","timeout","post","Get","Requesturl","SharedMethodService","_getDiscountedItems","_stepperService","_activatedRouter","ifReload","navigationInfo","init","enrollOrder","info","initialOrder","subTotal","SmartOrder","addonOrder","enrollOrderIndex","initialOrderIndex","StepperService","stepper","removeClass","addClass","nextAll","prevAll","hasClass","SubscriptionStatus","onSubscribe","environment","production","hmr","hmrBootstrap","bootstrap","ngModule","hot","accept","mod","dispose","appRef","injector","ApplicationRef","elements","components","c","nativeElement","makeVisible","createNewHosts","destroy","enableProdMode","platformBrowser","bootstrapModule","webpackContext","webpackContextResolve","__webpack_require__","o","webpackContextKeys"],"mappings":"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","file":"main-es5.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;\nwebpackEmptyAsyncContext.id = 98255;\nmodule.exports = webpackEmptyAsyncContext;","import { Component, Inject, OnDestroy, OnInit, ChangeDetectionStrategy, ChangeDetectorRef, HostListener } from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { Platform } from '@angular/cdk/platform';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { _ROUTER_CONFIG } from '@ngrx/router-store/src/router_store_module';\r\nimport * as _ from 'underscore';\r\nimport * as moment from 'moment';\r\nimport { EnrollSessionService } from './shared/enrollSession.service';\r\n\r\n\r\n@Component({\r\n selector: 'app',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class AppComponent implements OnInit, OnDestroy {\r\n fuseConfig: any;\r\n templateUrl: any;\r\n screenWidth: any;\r\n mobileView: any;\r\n mediumScreen: any;\r\n // Private\r\n private _unsubscribeAll: Subject;\r\n\r\n /**\r\n * Constructor\r\n *\r\n * @param {DOCUMENT} document\r\n * @param {FuseConfigService} _fuseConfigService\r\n * @param {FuseNavigationService} _fuseNavigationService\r\n * @param {FuseSidebarService} _fuseSidebarService\r\n * @param {FuseTranslationLoaderService} _fuseTranslationLoaderService\r\n * @param {Platform} _platform\r\n * @param {TranslateService} _translateService\r\n */\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n // private _fuseConfigService: FuseConfigService,\r\n // private _fuseNavigationService: FuseNavigationService,\r\n // private _fuseSidebarService: FuseSidebarService,\r\n private _translateService: TranslateService,\r\n private _platform: Platform,\r\n private ref: ChangeDetectorRef,\r\n public _enrollSession: EnrollSessionService\r\n ) {\r\n // this._translateService.setDefaultLang('en');\r\n // the lang to use, if the lang isn't available, it will use the current loader to get them\r\n // this._translateService.use('en');\r\n\r\n if (this._platform.ANDROID || this._platform.IOS) {\r\n this.document.body.classList.add('is-mobile');\r\n }\r\n\r\n // Set the private defaults\r\n this._unsubscribeAll = new Subject();\r\n\r\n setInterval(() => {\r\n sessionStorage.setItem('EnrollSession', JSON.stringify(this._enrollSession.data));\r\n sessionStorage.setItem('submitApplicationData', JSON.stringify(this._enrollSession.submitApplicationData));\r\n sessionStorage.setItem('EnrollSession', JSON.stringify(this._enrollSession.data));\r\n sessionStorage.setItem('editTransformationPack', this._enrollSession.editTransformationPack); \r\n // require view to be updated\r\n this.ref.markForCheck();\r\n \r\n }, 1000);\r\n\r\n \r\n\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n this.onResize();\r\n // Subscribe to config changes\r\n // this._fuseConfigService.config\r\n // .pipe(takeUntil(this._unsubscribeAll))\r\n // .subscribe((config) => {\r\n\r\n // this.fuseConfig = config;\r\n\r\n // // Boxed\r\n // if (this.fuseConfig.layout.width === 'boxed') {\r\n // this.document.body.classList.add('boxed');\r\n // }\r\n // else {\r\n // this.document.body.classList.remove('boxed');\r\n // }\r\n\r\n // // Color theme - Use normal for loop for IE11 compatibility\r\n // for (const row of this.document.body.classList) {\r\n // const className = row;\r\n\r\n // if (className.startsWith('theme-')) {\r\n // this.document.body.classList.remove(className);\r\n // }\r\n // }\r\n\r\n // this.document.body.classList.add(this.fuseConfig.colorTheme);\r\n // }); \r\n // this.$watch('EnrollSession', function (new_value, old_value) {\r\n // if (new_value !== old_value) {\r\n // sessionStorage.setItem('EnrollSession', JSON.stringify(this.EnrollSession));\r\n // }\r\n // }, true);\r\n\r\n // logCurrent = function(): any {\r\n // $log.debug(this.EnrollSession);\r\n // };\r\n } \r\n @HostListener('window:resize', ['$event'])\r\n onResize(): void {\r\n this.screenWidth = window.innerWidth;\r\n if (this.screenWidth < 550) {\r\n this.mobileView = true;\r\n }\r\n else {\r\n this.mobileView = false;\r\n }\r\n if (this.screenWidth < 1100) {\r\n this.mediumScreen = true;\r\n }\r\n else {\r\n this.mediumScreen = false;\r\n }\r\n localStorage.setItem('mobileView', this.mobileView)\r\n // sessionStorage.setItem('mobileView', this.mobileView)\r\n this._enrollSession.mobileView = this.mobileView;\r\n sessionStorage.setItem('MobileView', JSON.stringify(this._enrollSession.mobileView));\r\n this._enrollSession.mediumScreen = this.mediumScreen;\r\n sessionStorage.setItem('mediumScreen', JSON.stringify(this._enrollSession.mediumScreen));\r\n } \r\n\r\n /**\r\n * On destroy\r\n */\r\n ngOnDestroy(): void {\r\n // Unsubscribe from all subscriptions\r\n this._unsubscribeAll.next();\r\n this._unsubscribeAll.complete();\r\n }\r\n\r\n // -----------------------------------------------------------------------------------------------------\r\n // @ Public methods\r\n // -----------------------------------------------------------------------------------------------------\r\n\r\n /**\r\n * Toggle sidebar open\r\n *\r\n * @param key\r\n */\r\n toggleSidebarOpen(key): void {\r\n // this._fuseSidebarService.getSidebar(key).toggleOpen();\r\n }\r\n onActivate(event) {\r\n // window.scroll(0,0);\r\n \r\n window.scroll({ \r\n top: 0, \r\n left: 0, \r\n behavior: 'smooth' \r\n });\r\n \r\n //or document.body.scrollTop = 0;\r\n //or document.querySelector('body').scrollTo(0,0)\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { NgModule, Injectable } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS, HttpClient } from '@angular/common/http';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { MatMomentDateModule } from '@angular/material-moment-adapter';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { InMemoryWebApiModule } from 'angular-in-memory-web-api';\r\nimport { MissingTranslationHandler, MissingTranslationHandlerParams, TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { FilterPipeModule } from 'ngx-filter-pipe';\r\n\r\n// import 'hammerjs';\r\nimport * as _ from 'underscore';\r\nimport { AppComponent } from 'app/app.component';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\n// import { LayoutModule } from 'app/layout/layout.module';\r\n\r\nimport { ToastrModule } from 'ngx-toastr';\r\n\r\nimport {PagesModule} from 'app/main/pages.module';\r\nimport { MatExpansionModule } from '@angular/material/expansion';\r\nimport { CalendarModule, DateAdapter } from 'angular-calendar';\r\nimport { adapterFactory } from 'angular-calendar/date-adapters/date-fns';\r\nimport { NotTranslatedService } from './nottranslate.service';\r\nimport { LoaderService } from './loader.service';\r\nimport { LoaderInterceptor } from './loader-interceptor.service';\r\nimport { MyLoaderComponent } from './main/my-loader/my-loader.component';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { TodaysOrderComponent } from './main/Todays-order/Todays-order.component';\r\nconst appRoutes: Routes = [\r\n {\r\n path: 'TodaysOrder',\r\n component: TodaysOrderComponent\r\n },\r\n {\r\n path : '',\r\n redirectTo: '/TodaysOrder',\r\n pathMatch: 'full',\r\n },\r\n {\r\n path : '**',\r\n redirectTo: '/TodaysOrder',\r\n pathMatch: 'full',\r\n }\r\n];\r\n@Injectable()\r\nexport class MyMissingTranslationHandler implements MissingTranslationHandler {\r\n handle(params: MissingTranslationHandlerParams): any {\r\n if (params.interpolateParams) {\r\n return params.interpolateParams['Default'] || params.key;\r\n }\r\n return params.key;\r\n }\r\n\r\n constructor(private nts: NotTranslatedService) { }\r\n}\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n MyLoaderComponent\r\n ],\r\n imports : [\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n HttpClientModule,\r\n FlexLayoutModule,\r\n CalendarModule.forRoot({\r\n provide: DateAdapter,\r\n useFactory: adapterFactory,\r\n }),\r\n RouterModule.forRoot(appRoutes, {\r\n enableTracing: false\r\n }),\r\n\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: HttpLoaderFactory,\r\n deps: [HttpClient]\r\n },\r\n missingTranslationHandler: {\r\n provide: MissingTranslationHandler,\r\n useClass: MyMissingTranslationHandler,\r\n deps: [NotTranslatedService]\r\n }\r\n }),\r\n // InMemoryWebApiModule.forRoot(FakeDbService, {\r\n // delay : 0,\r\n // passThruUnknownUrl: true\r\n // }),\r\n\r\n // Material moment date module\r\n MatMomentDateModule,\r\n\r\n // Material\r\n MatButtonModule,\r\n MatIconModule,\r\n MatExpansionModule,\r\n MatDialogModule,\r\n // Fuse modules\r\n // FuseModule.forRoot(fuseConfig),\r\n // FuseProgressBarModule,\r\n // FuseSharedModule,\r\n // FuseSidebarModule,\r\n\r\n // App modules\r\n PagesModule,\r\n // LayoutModule,\r\n FilterPipeModule,\r\n // MatDialogModule,\r\n // toaster\r\n ToastrModule.forRoot()\r\n ],\r\n bootstrap : [\r\n AppComponent\r\n ],\r\n providers: [\r\n LoaderService,\r\n { provide: HTTP_INTERCEPTORS, useClass: LoaderInterceptor, multi: true },\r\n ]\r\n})\r\nexport class AppModule\r\n{\r\n}\r\n\r\nexport function HttpLoaderFactory(http: HttpClient): TranslateHttpLoader {\r\n return new TranslateHttpLoader(http);\r\n}\r\n","// export const BASE_URL = \"https://purium-api-dev.wsicloud.com\";\r\nexport const BASE_URL = (location.hostname.search('wsicloud.net') > -1 || location.hostname.search('localhost') > -1) ? 'https://purium-api-dev.wsicloud.com' : 'https://api.puriumenrollment.com';\r\nexport const API_URL = `${BASE_URL}/api`;\r\n\r\nexport function objectToParams(object): string {\r\n function clean(obj): void {\r\n for (const propName in obj) {\r\n if (obj[propName] === null || obj[propName] === undefined) {\r\n delete obj[propName];\r\n }\r\n }\r\n }\r\n clean(object);\r\n return Object.keys(object).map((key) => (typeof (object[key]) === 'object') ?\r\n subObjectToParams(encodeURIComponent(key), object[key]) :\r\n `${encodeURIComponent(key)}=${encodeURIComponent(object[key])}`\r\n ).join('&');\r\n}\r\n\r\nfunction subObjectToParams(key, object): string {\r\n return Object.keys(object).map((childKey) => (typeof (object[childKey]) === 'object') ?\r\n subObjectToParams(`${key}[${encodeURIComponent(childKey)}]`, object[childKey]) :\r\n `${key}[${encodeURIComponent(childKey)}]=${encodeURIComponent(object[childKey])}`\r\n ).join('&');\r\n}\r\n","// loader-interceptor.service.ts\r\nimport { Injectable } from '@angular/core';\r\nimport {\r\n HttpResponse,\r\n HttpRequest,\r\n HttpHandler,\r\n HttpEvent,\r\n HttpInterceptor\r\n} from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { LoaderService } from './loader.service';\r\n\r\n@Injectable()\r\nexport class LoaderInterceptor implements HttpInterceptor {\r\n private requests: HttpRequest[] = [];\r\n\r\n constructor(private loaderService: LoaderService) { }\r\n\r\n removeRequest(req: HttpRequest): void {\r\n const i = this.requests.indexOf(req);\r\n if (i >= 0) {\r\n this.requests.splice(i, 1);\r\n }\r\n this.loaderService.isLoading.next(this.requests.length > 0);\r\n }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n\r\n this.requests.push(req);\r\n\r\n this.loaderService.isLoading.next(true);\r\n return Observable.create(observer => {\r\n const subscription = next.handle(req)\r\n .subscribe(\r\n event => {\r\n if (event instanceof HttpResponse) {\r\n this.removeRequest(req);\r\n observer.next(event);\r\n }\r\n },\r\n err => {\r\n // alert('error' + err);\r\n this.removeRequest(req);\r\n observer.error(err);\r\n },\r\n () => {\r\n this.removeRequest(req);\r\n observer.complete();\r\n });\r\n // remove request from queue when cancelled\r\n return () => {\r\n this.removeRequest(req);\r\n subscription.unsubscribe();\r\n };\r\n });\r\n }\r\n}\r\n","// loader.service.ts\r\nimport { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LoaderService {\r\n\r\n public isLoading = new BehaviorSubject(false);\r\n constructor() { }\r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\"\"\r\n
\r\n
\"\"
\r\n
\r\n
Order # {{_enrollSession.submitApplicationData.OrderID ? _enrollSession.submitApplicationData.OrderID : ''}}
\r\n
Customer # {{_enrollSession.submitApplicationData.CustomerID ? _enrollSession.submitApplicationData.CustomerID : ''}}
\r\n
\r\n
\r\n

Congratulations On Your Transformation!

\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
Your order is confirmed!
\r\n
A confirmation email has been sent to {{_enrollSession.data.RetailOrderSummary.customerInfoData.Email}}
\r\n
\r\n
\r\n
\r\n
Customer Information
\r\n
\r\n
\r\n
Shipping address
\r\n
{{_enrollSession.data.RetailOrderSummary.shippingFormData.address1}} {{_enrollSession.data.RetailOrderSummary.shippingFormData.address2}},
\r\n {{_enrollSession.data.RetailOrderSummary.shippingFormData.City}}, {{_enrollSession.data.RetailOrderSummary.shippingFormData.State}}
\r\n {{_enrollSession.data.RetailOrderSummary.shippingFormData.CountryCode}}, {{_enrollSession.data.RetailOrderSummary.shippingFormData.ZipCode}}
\r\n
\r\n
\r\n
Billing address
\r\n
{{_enrollSession.data.RetailOrderSummary.billingAddressData.address1}} {{_enrollSession.data.RetailOrderSummary.billingAddressData.address2}},
\r\n {{_enrollSession.data.RetailOrderSummary.billingAddressData.City}}, {{_enrollSession.data.RetailOrderSummary.billingAddressData.State}}
\r\n {{_enrollSession.data.RetailOrderSummary.billingAddressData.CountryCode}}, {{_enrollSession.data.RetailOrderSummary.billingAddressData.ZipCode}}
\r\n
\r\n
\r\n
Shipping method
\r\n
{{_enrollSession.data.RetailEnroll.ShippingDescription}}
\r\n
\r\n
\r\n
Payment method
\r\n
Visa ending with {{cardNum}}
\r\n
\r\n
\r\n
\r\n Click here to see success others have had!\r\n
\r\n
\r\n
\r\n \r\n
\r\n
","import { Component, OnInit, ViewEncapsulation, AfterViewInit } from '@angular/core';\r\nimport * as _ from 'lodash';\r\nimport { EnrollSessionService } from 'app/shared/enrollSession.service';\r\nimport { Router } from '@angular/router';\r\n@Component({\r\n selector: 'app-confirmation',\r\n templateUrl: './Confirmation.component.html',\r\n styleUrls: ['./Confirmation.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class ConfirmationComponent implements OnInit {\r\n cardNum: any;\r\n zoom = 14;\r\n center: google.maps.LatLngLiteral;\r\n options: google.maps.MapOptions = {\r\n mapTypeId: 'roadmap',\r\n zoomControl: false,\r\n scrollwheel: false,\r\n disableDoubleClickZoom: true,\r\n maxZoom: 50,\r\n minZoom: 4,\r\n };\r\n markers:any[] = [];\r\n latitude:any;\r\n longitude:any;\r\n constructor(\r\n public _enrollSession: EnrollSessionService,\r\n public router: Router\r\n ) { \r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this._enrollSession.editTransformationPack = '';\r\n let num = this._enrollSession.data.RetailOrderSummary.paymentTypeData.cardNumber;\r\n this.cardNum = num.toString().slice(-4);\r\n var geocoder = new google.maps.Geocoder();\r\n var address1 = this._enrollSession.data.RetailOrderSummary.shippingFormData.address1;\r\n var address2 = this._enrollSession.data.RetailOrderSummary.shippingFormData.address2 ? this._enrollSession.data.RetailOrderSummary.shippingFormData.address2 : '';\r\n var city = this._enrollSession.data.RetailOrderSummary.shippingFormData.City;\r\n var zipcode = this._enrollSession.data.RetailOrderSummary.shippingFormData.ZipCode;\r\n var state = this._enrollSession.data.RetailOrderSummary.shippingFormData.State;\r\n var country = this._enrollSession.data.RetailOrderSummary.shippingFormData.CountryCode;\r\n var address = address1+' '+address2+', '+city+', '+state+' '+zipcode+' '+country;\r\n var that = this;\r\n geocoder.geocode( { 'address': address}, function(results, status) {\r\n if (status == google.maps.GeocoderStatus.OK) {\r\n that.latitude = results[0].geometry.location.lat();\r\n that.longitude = results[0].geometry.location.lng();\r\n that.center = {\r\n lat: that.latitude,\r\n lng: that.longitude,\r\n }\r\n \r\n } \r\n });\r\n \r\n setTimeout(() => {\r\n this.markers.push({\r\n position: {\r\n lat: that.latitude,\r\n lng: that.longitude,\r\n },\r\n options: { animation: google.maps.Animation.BOUNCE },\r\n });\r\n }, 3000);\r\n \r\n \r\n }\r\n zoomIn() {\r\n if (this.zoom < this.options.maxZoom) this.zoom++\r\n }\r\n\r\n zoomOut() {\r\n if (this.zoom > this.options.minZoom) this.zoom--\r\n }\r\n \r\n ngOnDestroy(): void\r\n {\r\n this._enrollSession.data = {};\r\n this._enrollSession.submitApplicationData = {};\r\n this._enrollSession.editTransformationPack = '';\r\n this.router.navigate(['/', 'TodaysOrder']);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { MatStepperModule } from '@angular/material/stepper';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { NgxChartsModule } from '@swimlane/ngx-charts';\r\nimport { NgpSortModule } from 'ngp-sort-pipe';\r\nimport { CalendarModule as AngularCalendarModule, DateAdapter } from 'angular-calendar';\r\nimport { adapterFactory } from 'angular-calendar/date-adapters/date-fns';\r\nimport * as _ from 'underscore';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ConfirmationComponent } from './Confirmation.component';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { SummaryCartModule } from '../summary-cart/summary-cart.module';\r\nimport { GoogleMapsModule } from '@angular/google-maps';\r\nconst routes: Routes = [\r\n {\r\n path: 'Confirmation',\r\n component: ConfirmationComponent\r\n }\r\n];\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n ConfirmationComponent,\r\n ],\r\n imports: [\r\n RouterModule.forChild(routes),\r\n AngularCalendarModule.forRoot({\r\n provide: DateAdapter,\r\n useFactory: adapterFactory\r\n }),\r\n MatButtonModule,\r\n MatFormFieldModule,\r\n MatIconModule,\r\n MatMenuModule,\r\n MatTableModule,\r\n MatTabsModule,\r\n NgpSortModule,\r\n MatStepperModule,\r\n NgxChartsModule,\r\n CommonModule,\r\n TranslateModule,\r\n SummaryCartModule,\r\n GoogleMapsModule\r\n ]\r\n})\r\nexport class ConfirmationModule { }\r\n","
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n 0\">\r\n
\r\n

Choose a Process Type

\r\n
\r\n
\r\n \r\n ALWAYS SHIP\r\n \r\n BACKUP ORDER\r\n \r\n \r\n
\r\n
\r\n

If you choose ALWAYS SHIP - your monthly subscription order will Always Ship on your Smart Order date.

\r\n

If you choose BACKUP ORDER - If you place another order before your Smart Order date, your Smart Order will not be processed for that current month. (Your Smart order Subscription will remain Active for future months).

\r\n
\r\n

Choose A Date

\r\n

Smart Orders process the 1st through the 21st of each month and ship 1-4 business days\r\n after the process date.
\r\n \r\n

\r\n
\r\n
\r\n
\r\n \r\n {{ viewDate | calendarDate:(view + 'ViewTitle'):'en' }}\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{_enrollSession.data.smartOrderDate ? _enrollSession.data.smartOrderDate : '--/--/----'}}\r\n
\r\n
\r\n
\r\n
\"\"
\r\n
\r\n
\r\n You have chosen to receive a monthly shipment of products. The shipping and billing information that you\r\n are using for your initial order will be the default method for your Smart Order. You can update this at\r\n any time by logging into your Smart Office.
\r\n Your credit card will only be charged today for today's order. Your credit card will NOT\r\n be charged today for your Monthly Subscription order. Your credit card will only be charged for your\r\n Monthly Subscription Order on the date you choose above.\r\n
\r\n
\r\n
\r\n \r\n

Customer Information

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n This field is required\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n This field is required\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n E-mail\r\n is invalid\r\n This field is required\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n E-mail do not\r\n Match\r\n This field is required\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n This field is required\r\n Phone\r\n Number is invalid\r\n \r\n
\r\n
\r\n \r\n \r\n This field is required\r\n Password length not less than\r\n 6 digit!\r\n \r\n
\r\n
\r\n \r\n \r\n Password do not\r\n Match\r\n This field is required\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n

Shipping Address

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n This field is required\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n This field is required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n This field is required\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n This field is required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n This field is required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n INVALID ZIP\r\n \r\n This field is required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Shipping Method For Today's Order

\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\n\r\nimport { RgetRegexService } from '../../shared/getRegex.service';\r\nimport { FormBuilder, FormGroup, FormControl, ValidatorFn, Validators } from '@angular/forms';\r\nimport { RestService } from '../../shared/rest.service';\r\nimport * as _ from 'lodash';\r\nimport { CalculateRetailInitialOrderService } from 'app/shared/calculateRetailInitialOrder.service';\r\nimport { CalculateRetailSmartOrderService } from 'app/shared/CalculateRetailSmartOrder.service';\r\nimport * as moment from 'moment';\r\nimport { Location, LocationStrategy, PathLocationStrategy } from '@angular/common';\r\nimport { CalculateAutoOrderService } from 'app/shared/calculateAutoOrder.service';\r\nimport { EnrollSessionService } from 'app/shared/enrollSession.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { CountrychangeComponent } from './modals/Countrychange/Countrychange.component';\r\nimport { startOfDay, startOfWeek, addWeeks, subWeeks, startOfMonth, endOfWeek, subMonths, addMonths, endOfDay, subDays, addDays, endOfMonth, isSameDay, isSameMonth, getMonth } from 'date-fns';\r\nimport { CalendarMonthViewDay, CalendarView, DateFormatterParams } from 'angular-calendar';\r\nimport { Subject } from 'rxjs';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Router } from '@angular/router';\r\ntype CalendarPeriod = 'month';\r\n\r\nconst trimValidator: ValidatorFn = (control: FormControl) => {\r\n if (control.value && control.value.startsWith(' ')) {\r\n return {\r\n 'trimError': { value: 'This field is required' }\r\n };\r\n }\r\n};\r\n@Component({\r\n selector: 'Shipping',\r\n providers: [Location, { provide: LocationStrategy, useClass: PathLocationStrategy }],\r\n templateUrl: './Shipping.component.html',\r\n styleUrls: ['./Shipping.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class ShippingComponent implements OnInit {\r\n routPath: any = \"Checkout\";\r\n customerInfoForm: FormGroup;\r\n shippingForm: FormGroup;\r\n shippingMethodForm: FormGroup;\r\n countriesListAll: any[] = [];\r\n countriesList: any[] = [];\r\n USOnlyAutoOrderItems: any[] = [];\r\n USOnlyOrderItems: any[] = [];\r\n USOnlyAddonOrderItems: any[] = [];\r\n stateList: any[] = [];\r\n CalculateInitialOrderPrice: any = {};\r\n billAdd: boolean;\r\n invalidzip1: boolean = false;\r\n currentYear = new Date().getFullYear();\r\n viewDate: any = this._enrollSession.data.smartOrderDate ? this._enrollSession.data.smartOrderDate : addMonths(new Date(), 1);\r\n view: CalendarView = CalendarView.Month;\r\n CalendarView = CalendarView;\r\n refresh: Subject = new Subject();\r\n activeDayIsOpen: boolean = true;\r\n datesDisabled: any;\r\n _selectedDay: any;\r\n AutoShipStartDate: any;\r\n prevBtnDisabled: boolean = false;\r\n LoggedInUserData: any;\r\n nextBtnDisabled: boolean = false;\r\n checked:boolean=true;\r\n minDate: Date = subMonths(new Date(), 0);\r\n maxDate: Date = addMonths(new Date(), 1);\r\n disableDaysOfMonth = [22, 23, 24, 25, 26, 27, 28, 29, 30, 31];\r\n subscribtionStatus: any;\r\n selectedStateValue = \"\"\r\n SubscriptionProcessType:any;\r\n siteType: any;\r\n\r\n // mobileView: any;\r\n constructor(\r\n private _formBuilder: FormBuilder,\r\n public _RgetRegexService: RgetRegexService,\r\n private _restService: RestService,\r\n public _enrollSession: EnrollSessionService,\r\n private _calculateRetailInitialOrder: CalculateRetailInitialOrderService,\r\n private _calculateRetailSmartOrder: CalculateRetailSmartOrderService,\r\n private _matDialog: MatDialog,\r\n public _calculateAutoOrder: CalculateAutoOrderService,\r\n private router : Router,\r\n private _toastr: ToastrService\r\n ) {\r\n this.siteType = sessionStorage.getItem(\"siteType\");\r\n if((this._enrollSession.data.RetailOrderSummary == undefined) || (this._enrollSession.data.RetailOrderSummary && this._enrollSession.data.RetailOrderSummary.Enrollpack.length == 0)&& (this.siteType && this.siteType!=null)){\r\n if(this._enrollSession.data.RetailOrderSummary.Enrollpack.length == 0) {\r\n this._toastr.warning(\"Please select \", 'Warning');\r\n }\r\n this.router.navigate(['/TodaysOrder']);\r\n }\r\n if((this._enrollSession.data.RetailOrderSummary == undefined) || this._enrollSession.data.RetailOrderSummary.InitialOrders==undefined || (this._enrollSession.data.RetailOrderSummary && this._enrollSession.data.RetailOrderSummary.InitialOrders?.length == 0)){\r\n this._toastr.warning(\"Please select an item\", 'Warning');\r\n this.router.navigate(['/TodaysOrder']);\r\n }\r\n this._enrollSession.data.RetailEnroll.CurrencyCode = 'USD';\r\n this._enrollSession.data.RetailEnroll.AgreeTerms = true;\r\n this._enrollSession.data.RetailEnroll.CardType = this._enrollSession.data.RetailEnroll.CardType || 'VISA';\r\n this.CalculateInitialOrderPrice = {};\r\n this.customerInfoForm = this.createCustomerInfoForm();\r\n this.shippingForm = this.createShippingForm();\r\n this.shippingMethodForm = this.createShippingMethodForm();\r\n this.SubscriptionProcessType = JSON.parse(localStorage.getItem('SubscriptionProcessType'))||\"AutoOrderProcessTy1\";\r\n localStorage.setItem(\"SubscriptionProcessType\", JSON.stringify(this.SubscriptionProcessType));\r\n }\r\n ngOnInit(): void {\r\n this._enrollSession.data.RetailOrderSummary.customerInfoData = this._enrollSession.data.RetailOrderSummary.customerInfoData || {};\r\n this.customerInfoForm.valueChanges.subscribe(selectedValue => {\r\n this._enrollSession.data.RetailOrderSummary.customerInfoData = selectedValue;\r\n });\r\n this._enrollSession.data.RetailOrderSummary.shippingFormData = this._enrollSession.data.RetailOrderSummary.shippingFormData || {};\r\n this.shippingForm.valueChanges.subscribe(selectedValue => {\r\n this._enrollSession.data.RetailOrderSummary.shippingFormData = selectedValue;\r\n this._enrollSession.data.RetailOrderSummary.shippingFormData.OldState = this._enrollSession.data.RetailOrderSummary.shippingFormData.State;\r\n this._enrollSession.data.RetailOrderSummary.shippingFormData.OldCountryCode = this._enrollSession.data.RetailOrderSummary.shippingFormData.CountryCode;\r\n });\r\n this.shippingMethodForm.valueChanges.subscribe(selectedValue => {\r\n\r\n this._enrollSession.data.RetailEnroll.ShippingMethod = selectedValue.shippingType;\r\n this._calculateRetailInitialOrder.calculate(this._enrollSession.data.RetailEnroll.ShippingMethod);\r\n this._calculateRetailSmartOrder.calculate(this._enrollSession.data.RetailEnroll.ShippingMethod);\r\n });\r\n \r\n if (this._enrollSession.data.RetailOrderSummary.customerInfoData && Object.keys(this._enrollSession.data.RetailOrderSummary.customerInfoData).length !== 0) {\r\n let customerInfo = this._enrollSession.data.RetailOrderSummary.customerInfoData;\r\n this.customerInfoForm.patchValue({\r\n FirstName: customerInfo.FirstName,\r\n LastName: customerInfo.LastName,\r\n Email: customerInfo.Email,\r\n ConfirmEmail: customerInfo.ConfirmEmail,\r\n Phone: customerInfo.Phone,\r\n Password: customerInfo.Password,\r\n ConfirmPassword: customerInfo.ConfirmPassword,\r\n smsOptIn: customerInfo.smsOptIn,\r\n emailOptIn: customerInfo.emailOptIn,\r\n keepUpdate: customerInfo.keepUpdate\r\n })\r\n }\r\n else {\r\n this.customerInfoForm.patchValue({\r\n keepUpdate: true\r\n })\r\n }\r\n if (this._enrollSession.data.RetailOrderSummary.shippingFormData) {\r\n let shippingInfo = this._enrollSession.data.RetailOrderSummary.shippingFormData;\r\n this.shippingForm.patchValue({\r\n firstName: shippingInfo.firstName,\r\n lastName: shippingInfo.lastName,\r\n address1: shippingInfo.address1,\r\n address2: shippingInfo.address2,\r\n CountryCode: shippingInfo.CountryCode,\r\n ZipCode: shippingInfo.ZipCode,\r\n City: shippingInfo.City,\r\n State: shippingInfo.State\r\n })\r\n }\r\n let shippingMethodInfo = _.isEmpty(this._enrollSession.data.RetailOrderSummary.shippingMethodFormData) ? this._enrollSession.data.ShippingMethods[0].ShipMethodID : this._enrollSession.data.RetailEnroll.ShippingMethod;\r\n let shipInfo = shippingMethodInfo.toString();\r\n this.shippingMethodForm.get('shippingType').setValue(shipInfo);\r\n this.getCountryList();\r\n\r\n if(this.eligibleForRetailDeliveryFees()) {\r\n this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.ColoradoRetailDeliveryFees = {\r\n price : 0.27,\r\n description : 'Retail Delivery Fees',\r\n quantity : 1,\r\n image : 'assets/images/image/retail-delivery-fees.png'\r\n };;\r\n } else {\r\n this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.ColoradoRetailDeliveryFees = {};\r\n }\r\n this.customerInfoForm.get(\"smsOptIn\").setValue(true);\r\n this.customerInfoForm.get(\"emailOptIn\").setValue(true);\r\n\r\n }\r\n createCustomerInfoForm(): FormGroup {\r\n return this._formBuilder.group({\r\n FirstName: ['', [Validators.required]],\r\n LastName: ['', [Validators.required]],\r\n Email: ['', [Validators.required, Validators.email, Validators.pattern(/^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/)]],\r\n ConfirmEmail: ['', [Validators.required, Validators.email, Validators.pattern(/^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/)]],\r\n Phone: ['', [Validators.required,Validators.pattern(/^\\d{3}-?\\d{3}-?\\d{4}$/)]],\r\n Password: ['', [Validators.required]],\r\n ConfirmPassword: ['', [Validators.required]],\r\n smsOptIn: [''],\r\n emailOptIn:[''],\r\n keepUpdate: ['']\r\n },\r\n {\r\n validator: [this.MatchPassword('Password', 'ConfirmPassword'), this.MatchEmail('Email', 'ConfirmEmail')]\r\n }\r\n );\r\n }\r\n createShippingForm(): FormGroup {\r\n return this._formBuilder.group({\r\n firstName: ['', [Validators.required]],\r\n lastName: ['', [Validators.required]],\r\n address1: ['', [Validators.required]],\r\n address2: [''],\r\n CountryCode: ['', Validators.required],\r\n ZipCode: ['', Validators.required],\r\n City: ['', Validators.required],\r\n State: ['', Validators.required]\r\n });\r\n }\r\n createShippingMethodForm(): FormGroup {\r\n return this._formBuilder.group({\r\n shippingType: ['', [Validators.required]],\r\n }); \r\n }\r\n MatchPassword(Password: any, ConfirmPassword: any): any {\r\n return (customerInfoForm: FormGroup) => {\r\n const PasswordControl = customerInfoForm.controls[Password];\r\n const ConfirmPasswordControl = customerInfoForm.controls[ConfirmPassword];\r\n if (!PasswordControl || !ConfirmPasswordControl) {\r\n return null;\r\n }\r\n if (PasswordControl.value && PasswordControl.value.length < 6) {\r\n\r\n return customerInfoForm.controls[Password].setErrors({ passwordLength: true });\r\n }\r\n\r\n if (!ConfirmPasswordControl.value) {\r\n return customerInfoForm.controls[ConfirmPassword].setErrors({ required: true });\r\n }\r\n\r\n if (PasswordControl.value && PasswordControl.value !== ConfirmPasswordControl.value) {\r\n return customerInfoForm.controls[ConfirmPassword].setErrors({ passwordMismatch: true });\r\n }\r\n else {\r\n return customerInfoForm.controls[ConfirmPassword].setErrors(null);\r\n }\r\n };\r\n }\r\n\r\n MatchEmail(Email: any, ConfirmEmail: any): any {\r\n return (customerInfoForm: FormGroup) => {\r\n const EmailControl = customerInfoForm.controls[Email];\r\n const ConfirmEmailControl = customerInfoForm.controls[ConfirmEmail];\r\n if (!EmailControl || !ConfirmEmailControl) {\r\n return null;\r\n }\r\n\r\n if (!ConfirmEmailControl.value) {\r\n return customerInfoForm.controls[ConfirmEmail].setErrors({ required: true });\r\n }\r\n\r\n if (EmailControl.value && EmailControl.value !== ConfirmEmailControl.value) {\r\n return customerInfoForm.controls[ConfirmEmail].setErrors({ EmailMismatch: true });\r\n }\r\n else {\r\n return customerInfoForm.controls[ConfirmEmail].setErrors(null);\r\n }\r\n };\r\n }\r\n\r\n getCountryList(): void {\r\n const getStatesRequest = { CountryCode: 'US' };\r\n this._enrollSession.data.RetailOrderSummary.shippingFormData.TempCountryCode = this._enrollSession.data.RetailOrderSummary.shippingFormData.TempCountryCode || 'US';\r\n this._restService.GetCountryRegions(getStatesRequest)\r\n .subscribe((result: any) => {\r\n try {\r\n this.countriesListAll = result.countriesField;\r\n this.countriesList = _.filter(result.countriesField, (item) => {\r\n return (item.countryCodeField === 'US' || item.countryCodeField === 'CA');\r\n });\r\n this._enrollSession.data.countriesList = this.countriesList ? this.countriesList : '';\r\n this._enrollSession.data.RetailOrderSummary.shippingFormData.CountryCode = this._enrollSession.data.RetailOrderSummary.shippingFormData.CountryCode || result.countriesField[0].countryCodeField;\r\n this.countryChange(this._enrollSession.data.RetailOrderSummary.shippingFormData.CountryCode);\r\n } catch (ex) {\r\n console.log('ex', ex);\r\n\r\n }\r\n }\r\n );\r\n }\r\n\r\n countryChange(countryCode): void {\r\n //if (['US'].indexOf(countryCode) === -1) {\r\n _.each(this._enrollSession.data.RetailOrderSummary.InitialOrders, (item, index) => {\r\n if (item.IsUSOnly === true && (item.ParentId === item.ItemCode || !item.ParentId)) {\r\n this.USOnlyOrderItems.push(item);\r\n }\r\n });\r\n _.each(this._enrollSession.data.RetailOrderSummary.AddOnOrders, (item, index) => {\r\n if (item.IsUSOnly === true && (item.ParentId === item.ItemCode || !item.ParentId)) {\r\n this.USOnlyAddonOrderItems.push(item);\r\n }\r\n });\r\n _.each(this._enrollSession.data.RetailOrderSummary.SmartOrders, (item, index) => {\r\n if (item.IsUSOnly === true && (item.ParentId === item.ItemCode || !item.ParentId)) {\r\n this.USOnlyAutoOrderItems.push(item);\r\n }\r\n });\r\n if (this.USOnlyOrderItems.length > 0 || this.USOnlyAutoOrderItems.length > 0 || this.USOnlyAddonOrderItems.length > 0) {\r\n this.popupLoad('countrychange', countryCode, '', 'countrychange');\r\n }\r\n else {\r\n this.getStates(countryCode, 1);\r\n }\r\n // }\r\n // else {\r\n // this.getStates(countryCode, 1);\r\n // }\r\n }\r\n\r\n getStates(country, type): void {\r\n \r\n if (sessionStorage.getItem('temp')) {\r\n this._enrollSession.data.RetailOrderSummary.shippingFormData.TempCountryCode = sessionStorage.getItem('temp');\r\n \r\n }\r\n const getStatesRequest = { CountryCode: country };\r\n this._restService.GetCountryRegions(getStatesRequest)\r\n .subscribe((result: any) => {\r\n try {\r\n if (parseInt(type, 10) !== 2) {\r\n this.stateList = result.regionsField;\r\n this._enrollSession.data.stateList = this.stateList ? this.stateList : '';\r\n this._enrollSession.data.stateListOnBilling = this._enrollSession.data.stateListOnBilling || result.regionsField;\r\n if (this._enrollSession.data.RetailOrderSummary.shippingFormData.TempCountryCode !== this._enrollSession.data.RetailOrderSummary.shippingFormData.CountryCode) {\r\n this._enrollSession.data.RetailOrderSummary.shippingFormData.State = ['US','CA'].indexOf(country) > -1 ? '' : result.regionsField[0].regionCodeField;\r\n this._enrollSession.data.RetailOrderSummary.shippingFormData.OldState = ['US','CA'].indexOf(country) > -1 ? '' : result.regionsField[0].regionCodeField;\r\n this._enrollSession.data.RetailOrderSummary.shippingFormData.TempCountryCode = this._enrollSession.data.RetailOrderSummary.shippingFormData.CountryCode;\r\n sessionStorage.setItem('temp',this._enrollSession.data.RetailOrderSummary.shippingFormData.TempCountryCode )\r\n this._enrollSession.data.RetailEnroll.ShippingMethod = '';\r\n }\r\n else {\r\n this._enrollSession.data.RetailOrderSummary.shippingFormData.State = this._enrollSession.data.RetailOrderSummary.shippingFormData.State ? this._enrollSession.data.RetailOrderSummary.shippingFormData.State : result.regionsField[0].regionCodeField;\r\n this._enrollSession.data.RetailOrderSummary.shippingFormData.OldState = this._enrollSession.data.RetailOrderSummary.shippingFormData.OldState || result.regionsField[0].regionCodeField;\r\n }\r\n this._enrollSession.data.RetailOrderSummary.shippingFormData.OldCountryCode = this._enrollSession.data.RetailOrderSummary.shippingFormData.CountryCode;\r\n //this.removeMarketSpecificItems();\r\n if (['US','CA'].indexOf(this._enrollSession.data.RetailOrderSummary.shippingFormData.CountryCode) > -1 && ['NE', 'KS'].indexOf(this._enrollSession.data.RetailOrderSummary.shippingFormData.State) > -1) {\r\n this.stateChange(this._enrollSession.data.RetailOrderSummary.shippingFormData.State, 1);\r\n }\r\n }\r\n else {\r\n this._enrollSession.data.stateListOnBilling = result.regionsField;\r\n if (this.billAdd) {\r\n\r\n this._enrollSession.data.RetailOrderSummary.shippingFormData.BillState = ['US','CA'].indexOf(country) > -1 ? '' : result.regionsField[0].regionCodeField;\r\n }\r\n\r\n }\r\n\r\n } catch (ex) {\r\n console.log('ex', ex);\r\n\r\n }\r\n }\r\n );\r\n }\r\n \r\n stateChange(stateCode, type): void {\r\n if (['US','CA'].indexOf(this._enrollSession.data.RetailOrderSummary.shippingFormData.CountryCode) > -1 && ['NE', 'KS'].indexOf(stateCode) > -1) {\r\n _.each(this._enrollSession.data.RetailOrderSummary.InitialOrders, (item, index) => {\r\n if (item.IsUSOnly === true && (item.ParentId === item.ItemCode || !item.ParentId)) {\r\n this.USOnlyOrderItems.push(item);\r\n }\r\n });\r\n _.each(this._enrollSession.data.RetailOrderSummary.AddOnOrders, (item, index) => {\r\n if (item.IsUSOnly === true && (item.ParentId === item.ItemCode || !item.ParentId)) {\r\n this.USOnlyAddonOrderItems.push(item);\r\n }\r\n });\r\n _.each(this._enrollSession.data.RetailOrderSummary.SmartOrders, (item, index) => {\r\n if (item.IsUSOnly === true && (item.ParentId === item.ItemCode || !item.ParentId)) {\r\n this.USOnlyAutoOrderItems.push(item);\r\n }\r\n });\r\n if (this.USOnlyOrderItems.length > 0 || this.USOnlyAutoOrderItems.length > 0 || this.USOnlyAddonOrderItems.length > 0) {\r\n this.popupLoad('countrychange', '', type, 'statechange');\r\n }\r\n else {\r\n if (parseInt(type, 10) !== 2) {\r\n this.removeMarketSpecificItems();\r\n }\r\n this.checkCalculateOrder();\r\n }\r\n }\r\n else {\r\n this.checkCalculateOrder();\r\n }\r\n }\r\n\r\n removeMarketSpecificItems(): void {\r\n if (this.USOnlyOrderItems.length > 0 || this.USOnlyAutoOrderItems.length > 0 || this.USOnlyAddonOrderItems.length > 0) {\r\n _.each(this.USOnlyOrderItems, (item, index) => {\r\n this.removeInitOrder({ Quantity: item.Quantity, parentId: item.ItemCode, true: Boolean });\r\n });\r\n _.each(this.USOnlyAutoOrderItems, (item, index) => {\r\n this.removeSmartOrder({ Quantity: item.Quantity, parentId: item.ItemCode, true: Boolean });\r\n });\r\n _.each(this.USOnlyAddonOrderItems, (item, index) => {\r\n this.removeAddonOrder({ Quantity: item.Quantity, parentId: item.ItemCode, true: Boolean });\r\n });\r\n\r\n if (this.USOnlyOrderItems.length > 0 || this.USOnlyAddonOrderItems.length > 0) {\r\n this._calculateRetailInitialOrder.calculate(this._enrollSession.data.RetailEnroll.ShippingMethod).then((result) => {\r\n this.CalculateInitialOrderPrices(result);\r\n });\r\n }\r\n if (this.USOnlyAutoOrderItems.length > 0) {\r\n this._calculateRetailSmartOrder.calculate(this._enrollSession.data.RetailEnroll.ShippingMethod);\r\n }\r\n this.USOnlyOrderItems = [];\r\n this.USOnlyAutoOrderItems = [];\r\n this.USOnlyAddonOrderItems = [];\r\n }\r\n else {\r\n this.calculateOrder();\r\n }\r\n }\r\n\r\n isAnyItemInCart = () => {\r\n return (this._enrollSession.data.RetailOrderSummary.Enrollpack && this._enrollSession.data.RetailOrderSummary.Enrollpack.length > 0 || this._enrollSession.data.RetailOrderSummary.InitialOrders && this._enrollSession.data.RetailOrderSummary.InitialOrders.length > 0 || this._enrollSession.data.RetailOrderSummary.AddOnOrders && this._enrollSession.data.RetailOrderSummary.AddOnOrders.length > 0)\r\n }\r\n\r\n eligibleForRetailDeliveryFees = () => {\r\n return (this._enrollSession.data.RetailOrderSummary.shippingFormData.State == 'CO' && this.isAnyItemInCart() && this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.Tax > 0);\r\n }\r\n\r\n checkCalculateOrder(): void {\r\n this._enrollSession.data.RetailEnroll = this._enrollSession.data.RetailOrderSummary.shippingFormData;\r\n this._enrollSession.data.RetailOrderSummary.shippingFormData.OldState = _.cloneDeep(this._enrollSession.data.RetailOrderSummary.shippingFormData.State);\r\n this._calculateRetailInitialOrder.calculate(this.shippingMethodForm.value.shippingType).then((result) => {\r\n this.CalculateInitialOrderPrices(result);\r\n this.checkShipMethod(this.shippingMethodForm.value.shippingType);\r\n });\r\n this._calculateRetailSmartOrder.calculate(this.shippingMethodForm.value.shippingType).then((result) => {\r\n //this._calculateRetailSmartOrder.calculate(this._enrollSession.data.RetailEnroll.ShippingMethod);\r\n });\r\n }\r\n CalculateInitialOrderPrices(items): void {\r\n _.each(items.CustomDetails, (item) => {\r\n if (item.ParentItemCode && item.ParentItemCode !== null && item.ParentItemCode !== 'null') {\r\n this.CalculateInitialOrderPrice[item.ItemCode + '_' + item.ParentItemCode] = item.PriceEach;\r\n }\r\n else {\r\n this.CalculateInitialOrderPrice[item.ItemCode] = item.PriceEach;\r\n }\r\n\r\n //adding Retail Delivery Fees for Colorado State\r\n if(item.ItemCode == \"CO_DeliveryFee\" && this.eligibleForRetailDeliveryFees()) {\r\n this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.ColoradoRetailDeliveryFees = {\r\n price : item.PriceEach,\r\n description : 'Retail Delivery Fees',\r\n quantity : item.Quantity,\r\n image : 'assets/images/image/retail-delivery-fees.png'\r\n };\r\n } else {\r\n this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.ColoradoRetailDeliveryFees = {};\r\n }\r\n });\r\n }\r\n\r\n calculateOrder(): void {\r\n this._enrollSession.data.RetailEnroll = this._enrollSession.data.RetailOrderSummary.shippingFormData;\r\n this._calculateRetailInitialOrder.calculate(this.shippingMethodForm.value.shippingType).then((result) => {\r\n this.shippingMethodForm.value.shippingType = this.shippingMethodForm.value.shippingType || this._enrollSession.data.ShippingMethods[0].ShipMethodID;\r\n this.CalculateInitialOrderPrices(result);\r\n this.checkShipMethod(this.shippingMethodForm.value.shippingType);\r\n });\r\n this._calculateRetailSmartOrder.calculate(this.shippingMethodForm.value.shippingType).then((result) => {\r\n });\r\n\r\n }\r\n checkShipMethod(shipMethodId): void {\r\n var isExist = _.filter(this._enrollSession.data.ShippingMethods, function (item) {\r\n return parseInt(item.ShipMethodID, 10) == parseInt(shipMethodId, 10);\r\n });\r\n if (isExist.length == 0) {\r\n this.shippingMethodForm.value.shippingType = this._enrollSession.data.ShippingMethods[0].ShipMethodID;\r\n //this.shippingMethodForm.get('shippingType').setValue(this._enrollSession.data.ShippingMethods[0].ShipMethodID);\r\n }\r\n\r\n\r\n }\r\n removeInitOrder(Value: any): any {\r\n this._enrollSession.data.CartQuantity = this._enrollSession.data.CartQuantity - Value.Quantity;\r\n for (let arrIndex = 0; arrIndex < this._enrollSession.data.RetailOrderSummary.InitialOrders.length; arrIndex++) {\r\n if ((!this._enrollSession.data.RetailOrderSummary.InitialOrders[arrIndex].ParentId ||\r\n this._enrollSession.data.RetailOrderSummary.InitialOrders[arrIndex].ParentId === Value.parentId)\r\n && this._enrollSession.data.RetailOrderSummary.InitialOrders[arrIndex].ItemCode === Value.parentId) {\r\n this._enrollSession.data.RetailOrderSummary.InitialOrders.splice(arrIndex, 1);\r\n }\r\n }\r\n\r\n this._enrollSession.data.InitialOrdersSubTotal = 0;\r\n this._enrollSession.data.InitialOrdersQVTotal = 0;\r\n _.each(this._enrollSession.data.RetailOrderSummary.InitialOrders, (item) => {\r\n this._enrollSession.data.InitialOrdersSubTotal = this._enrollSession.data.InitialOrdersSubTotal + (item.Quantity * item.Price);\r\n this._enrollSession.data.InitialOrdersQVTotal = this._enrollSession.data.InitialOrdersQVTotal + (item.Quantity * item.BV);\r\n\r\n });\r\n\r\n this._enrollSession.data.RetailOrderSummary.InitialOrders = _.filter(this._enrollSession.data.RetailOrderSummary.InitialOrders, (item) => {\r\n\r\n return item.ParentId !== Value.parentId;\r\n });\r\n\r\n this._enrollSession.data.TotalItemLength = _.filter(this._enrollSession.data.RetailOrderSummary.InitialOrders, (item) => {\r\n return !item.ParentId || (parseInt(item.ParentId, 10) === parseInt(item.ItemCode, 10));\r\n });\r\n const filterInitialOrders = _.filter(this._enrollSession.data.RetailOrderSummary.InitialOrders, (item) => {\r\n return item.ParentId !== undefined;\r\n });\r\n this._enrollSession.data.InitialOrdersSubItems = _.groupBy(filterInitialOrders, 'ParentId');\r\n if (!Value.check) {\r\n this.CheckRegisterType();\r\n this._calculateRetailInitialOrder.calculate(this._enrollSession.data.RetailEnroll.ShippingMethod).then((result) => {\r\n this.CalculateInitialOrderPrices(result);\r\n });\r\n }\r\n }\r\n\r\n removeAddonOrder(Value: any): any {\r\n this._enrollSession.data.CartQuantity = this._enrollSession.data.CartQuantity - Value.Quantity;\r\n for (let arrIndex = 0; arrIndex < this._enrollSession.data.RetailOrderSummary.AddOnOrders.length; arrIndex++) {\r\n if ((!this._enrollSession.data.RetailOrderSummary.AddOnOrders[arrIndex].ParentId ||\r\n this._enrollSession.data.RetailOrderSummary.AddOnOrders[arrIndex].ParentId === Value.parentId)\r\n && this._enrollSession.data.RetailOrderSummary.AddOnOrders[arrIndex].ItemCode === Value.parentId) {\r\n this._enrollSession.data.RetailOrderSummary.AddOnOrders.splice(arrIndex, 1);\r\n }\r\n }\r\n\r\n this._enrollSession.data.AddOnOrdersSubTotal = 0;\r\n this._enrollSession.data.AddOnOrdersQVTotal = 0;\r\n _.each(this._enrollSession.data.RetailOrderSummary.AddOnOrders, (item) => {\r\n this._enrollSession.data.AddOnOrdersSubTotal = this._enrollSession.data.AddOnOrdersSubTotal + (item.Quantity * item.Price);\r\n this._enrollSession.data.AddOnOrdersQVTotal = this._enrollSession.data.AddOnOrdersQVTotal + (item.Quantity * item.BV);\r\n\r\n });\r\n\r\n this._enrollSession.data.RetailOrderSummary.AddOnOrders = _.filter(this._enrollSession.data.RetailOrderSummary.AddOnOrders, (item) => {\r\n\r\n return item.ParentId !== Value.parentId;\r\n });\r\n\r\n this._enrollSession.data.TotalItemLength = _.filter(this._enrollSession.data.RetailOrderSummary.AddOnOrders, (item) => {\r\n return !item.ParentId || (parseInt(item.ParentId, 10) === parseInt(item.ItemCode, 10));\r\n });\r\n const filterAddOnOrders = _.filter(this._enrollSession.data.RetailOrderSummary.AddOnOrders, (item) => {\r\n return item.ParentId !== undefined;\r\n });\r\n this._enrollSession.data.AddOnOrdersSubItems = _.groupBy(filterAddOnOrders, 'ParentId');\r\n if (!Value.check) {\r\n this.CheckRegisterType();\r\n this._calculateRetailInitialOrder.calculate(this._enrollSession.data.RetailEnroll.ShippingMethod).then((result) => {\r\n this.CalculateInitialOrderPrices(result);\r\n });\r\n }\r\n }\r\n\r\n removeSmartOrder(Value: any): void {\r\n this._enrollSession.data.CartQuantity = this._enrollSession.data.CartQuantity - Value.Quantity;\r\n for (let arrIndex = 0; arrIndex < this._enrollSession.data.RetailOrderSummary.SmartOrders.length; arrIndex++) {\r\n if ((!this._enrollSession.data.RetailOrderSummary.SmartOrders[arrIndex].ParentId ||\r\n this._enrollSession.data.RetailOrderSummary.SmartOrders[arrIndex].ParentId === Value.parentId)\r\n && this._enrollSession.data.RetailOrderSummary.SmartOrders[arrIndex].ItemCode === Value.parentId) {\r\n this._enrollSession.data.RetailOrderSummary.SmartOrders.splice(arrIndex, 1);\r\n }\r\n }\r\n\r\n this._enrollSession.data.RetailOrderSummary.SmartOrders = _.filter(this._enrollSession.data.RetailOrderSummary.SmartOrders, (item) => {\r\n return item.ParentId !== Value.parentId;\r\n });\r\n const filterResult = _.filter(this._enrollSession.data.RetailOrderSummary.SmartOrders, (item) => {\r\n return item.ParentId !== undefined;\r\n });\r\n this._enrollSession.data.SmartOrderSubItems = _.groupBy(filterResult, 'ParentId');\r\n if (!Value.check) {\r\n this._calculateRetailSmartOrder.calculate(this._enrollSession.data.RetailEnroll.ShippingMethod);\r\n }\r\n this._enrollSession.data.SmartOrdersSubTotal = 0;\r\n this._enrollSession.data.SmartOrderBVTotal = 0;\r\n _.each(this._enrollSession.data.RetailOrderSummary.SmartOrders, (item) => {\r\n this._enrollSession.data.SmartOrdersSubTotal = this._enrollSession.data.SmartOrdersSubTotal + (item.Quantity * item.Price);\r\n this._enrollSession.data.SmartOrderBVTotal = this._enrollSession.data.SmartOrderBVTotal + (item.Quantity * item.BV);\r\n });\r\n }\r\n\r\n CheckRegisterType(): void {\r\n this._enrollSession.data.isBeautyWellness = false;\r\n this._enrollSession.data.RetailEnroll.ShippingMethod = '';\r\n if (this._enrollSession.data.RetailOrderSummary.paymentTypeData.cardNumber === 'NP') {\r\n this._enrollSession.data.RetailOrderSummary.paymentTypeData.cardNumber = '';\r\n\r\n }\r\n if (this._enrollSession.data.RetailEnroll.CommissionDDConfirmation1 !== 'HealthProfessional') {\r\n if (this._enrollSession.data.RetailEnroll.CommissionDDConfirmation1 === 'Nonprofit' ||\r\n this._enrollSession.data.RetailEnroll.CommissionDDConfirmation1 === 'Influencer' ||\r\n this._enrollSession.data.RetailEnroll.CommissionDDConfirmation1 === 'BeautyWellnessProfessional') {\r\n this._enrollSession.data.FileUploaded = this._enrollSession.data.FileUploaded || false;\r\n }\r\n else {\r\n this._enrollSession.data.FileUploaded = false;\r\n }\r\n this._calculateRetailInitialOrder.calculate(this._enrollSession.data.RetailEnroll.ShippingMethod).then((result) => {\r\n this.CalculateInitialOrderPrices(result);\r\n });\r\n }\r\n else if (this._enrollSession.data.RetailEnroll.CommissionDDConfirmation1 === 'HealthProfessional' && this._enrollSession.data.InitialOrdersQVTotal < 500) {\r\n this._enrollSession.data.FileUploaded = false;\r\n this._calculateRetailInitialOrder.calculate(this._enrollSession.data.RetailEnroll.ShippingMethod).then((result) => {\r\n this.CalculateInitialOrderPrices(result);\r\n });\r\n\r\n }\r\n else {\r\n this._enrollSession.data.FileUploaded = false;\r\n this._calculateRetailInitialOrder.calculate(this._enrollSession.data.RetailEnroll.ShippingMethod).then((result) => {\r\n this.CalculateInitialOrderPrices(result);\r\n });\r\n }\r\n\r\n }\r\n\r\n popupLoad(modaltype: any, countrycode: any = '', type: any = 0, action: string = ''): any {\r\n let componentName: any;\r\n if (modaltype === 'countrychange') {\r\n componentName = CountrychangeComponent;\r\n }\r\n const dialogRef = this._matDialog.open(componentName, {\r\n width: '630px',\r\n panelClass: []\r\n });\r\n dialogRef.afterClosed().subscribe(result => {\r\n if (modaltype === 'countrychange') {\r\n if (action === 'countrychange') {\r\n this.ChangeCountryCloseAction(result, countrycode);\r\n }\r\n else if (action === 'statechange') {\r\n this.ChangeCountryStateCloseAction(result, type);\r\n }\r\n }\r\n\r\n });\r\n }\r\n\r\n ChangeCountryCloseAction(modalaction, countrycode): any {\r\n if (modalaction === 'No') {\r\n this.USOnlyOrderItems = [];\r\n this.USOnlyAutoOrderItems = [];\r\n this._enrollSession.data.RetailEnroll.CountryCode = 'US';\r\n if (this._enrollSession.data.RetailEnroll.OldCountryCode !== 'US') {\r\n this.getStates(this._enrollSession.data.RetailEnroll.CountryCode, 1);\r\n }\r\n }\r\n else {\r\n this.getStates(countrycode, 1);\r\n }\r\n }\r\n\r\n ChangeCountryStateCloseAction(modalaction, type): any {\r\n if (modalaction === 'No') {\r\n if (type && parseInt(type, 10) === 1) {\r\n this._enrollSession.data.RetailEnroll.State = this.stateList[0].regionCodeField;\r\n this._enrollSession.data.RetailEnroll.OldState = this.stateList[0].regionCodeField;\r\n }\r\n else {\r\n this._enrollSession.data.RetailEnroll.State = _.cloneDeep(this._enrollSession.data.RetailEnroll.OldState);\r\n }\r\n this.USOnlyOrderItems = [];\r\n this.USOnlyAutoOrderItems = [];\r\n this.USOnlyAddonOrderItems = [];\r\n this.checkCalculateOrder();\r\n }\r\n else {\r\n this.removeMarketSpecificItems();\r\n this.checkCalculateOrder();\r\n }\r\n }\r\n regexValidateZip1(event): void {\r\n const shippingForm = this.shippingForm ? this.shippingForm.getRawValue() : {};\r\n const regxExp = this._RgetRegexService.getRegex(shippingForm.CountryCode);\r\n const filter = new RegExp(regxExp);\r\n if (filter.test(event.target.value)) {\r\n this.invalidzip1 = false;\r\n } else if (event.target.value && (event.target.value.indexOf(' ') !== 0)) {\r\n this.invalidzip1 = true;\r\n }\r\n else {\r\n this.invalidzip1 = false;\r\n }\r\n }\r\n\r\n \r\n\r\n dateIsValid(date: Date): boolean {\r\n return moment().month()+1 == date.getMonth() && date.getTime() > new Date().getTime() && (this.disableDaysOfMonth.indexOf(date.getDate()) == -1) ;\r\n }\r\n\r\n beforeMonthViewRender({ body }: { body: CalendarMonthViewDay[] }): void {\r\n body.forEach(day => {\r\n if (!this.dateIsValid(day.date)) {\r\n // console.log(\"date\",day.date); \r\n day.cssClass = 'disabled-date';\r\n }\r\n const _selectedDay = moment(day.date).format('MM/DD/YYYY') === this._enrollSession.data.smartOrderDate ? day : \"\";\r\n if (_selectedDay) {\r\n _selectedDay.cssClass = 'cal-selected';\r\n }\r\n });\r\n }\r\n\r\n getFirstAndThirdWed(year, month) {\r\n let currmonth = (parseInt(month, 10) + 1);\r\n let arrdays = [];\r\n let dateinmonth = moment().daysInMonth();\r\n while (dateinmonth) {\r\n var current = moment().date(dateinmonth);\r\n arrdays.push(current);\r\n dateinmonth--;\r\n }\r\n\r\n var enabledDatesArr = [];\r\n for (var y = year; y <= 2030; y++) {\r\n for (var j = currmonth; j <= 12; j++) {\r\n //enabledDatesArr.push(moment(j + '/1/' + y).format('MM-DD-YYYY'));\r\n for (var i = 22; i <= 31; i++) {\r\n var dat = j + '/' + i + '/' + y;\r\n enabledDatesArr.push(moment(dat).format('MM-DD-YYYY'));\r\n }\r\n }\r\n }\r\n arrdays.forEach(element => {\r\n if (moment(element._d).isSameOrBefore(moment())) {\r\n enabledDatesArr.push(moment(element._d).format('MM-DD-YYYY'));\r\n }\r\n });\r\n return enabledDatesArr;\r\n }\r\n\r\n changeDate(date: Date): void {\r\n this.viewDate = date;\r\n this.dateOrViewChanged();\r\n }\r\n monthIsValid(date: Date): boolean {\r\n return date >= this.minDate && date <= this.maxDate;\r\n }\r\n dateOrViewChanged(): void {\r\n this.prevBtnDisabled = !this.monthIsValid(\r\n this.endOfPeriod(this.viewDate, this.subPeriod('month', this.viewDate, 1))\r\n );\r\n this.nextBtnDisabled = !this.monthIsValid(\r\n this.startOfPeriod(this.viewDate, this.addPeriod('month', this.viewDate, 1))\r\n );\r\n if (this.viewDate < this.minDate) {\r\n this.changeDate(this.minDate);\r\n } else if (this.viewDate > this.maxDate) {\r\n this.changeDate(this.maxDate);\r\n }\r\n }\r\n increment() {\r\n this.changeDate(this.addPeriod('month', this.viewDate, 1));\r\n }\r\n\r\n decrement() {\r\n this.changeDate(this.subPeriod('month', this.viewDate, 1));\r\n }\r\n\r\n\r\n\r\n dayClicked({ date, }: { date: Date; }): void {\r\n var maxMonth = getMonth(this.maxDate);\r\n if ((getMonth(date) && getMonth(date) <= maxMonth) || (getMonth(date) == 0 && getMonth(date) <= maxMonth)) {\r\n if ((isSameDay(this.viewDate, date) && this.activeDayIsOpen === true)) {\r\n this.activeDayIsOpen = false;\r\n } else {\r\n this.activeDayIsOpen = true;\r\n }\r\n this.viewDate = moment(date).format('MM/DD/YYYY');\r\n this._enrollSession.data.smartOrderDate = this.viewDate;\r\n this.AutoShipStartDate = this.viewDate;\r\n localStorage.setItem(\"AutoShipStartDate\", JSON.stringify(this.AutoShipStartDate));\r\n //this.refresh.next();\r\n }\r\n }\r\n\r\n\r\n startOfPeriod(period: CalendarPeriod, date: Date): Date {\r\n return {\r\n day: startOfDay,\r\n month: startOfMonth,\r\n }['month'](date);\r\n }\r\n\r\n\r\n endOfPeriod(period: CalendarPeriod, date: Date): Date {\r\n return {\r\n day: endOfDay,\r\n week: endOfWeek,\r\n month: endOfMonth,\r\n }['month'](date);\r\n }\r\n\r\n addPeriod(period: CalendarPeriod, date: Date, amount: number): Date {\r\n return {\r\n day: addDays,\r\n week: addWeeks,\r\n month: addMonths,\r\n }['month'](date, amount);\r\n }\r\n\r\n subPeriod(period: CalendarPeriod, date: Date, amount: number): Date {\r\n return {\r\n day: subDays,\r\n week: subWeeks,\r\n month: subMonths,\r\n }['month'](date, amount);\r\n }\r\n EmailRegistered(emailData): void {\r\n if (!this.customerInfoForm.controls.Email['errors'] && !this.customerInfoForm.controls.ConfirmEmail['errors'] && this._enrollSession.data.RetailOrderSummary.customerInfoData.Email) {\r\n const mailrequest = '?email=' + this._enrollSession.data.RetailOrderSummary.customerInfoData.Email;\r\n this._restService.IsEmailRegistered(mailrequest).subscribe((result: any) => {\r\n if(!result) {\r\n this._toastr.error('Email Already Registered', 'Error');\r\n this.customerInfoForm.get(\"Email\").reset();\r\n }\r\n })\r\n }\r\n }\r\n processTypeChange(value)\r\n {\r\n console.log(\"value\", value);\r\n localStorage.setItem(\"SubscriptionProcessType\", JSON.stringify(value));\r\n }\r\n // preventSpaceEnter(event) {\r\n // var charCode = (event.which) ? event.which : event.keyCode;\r\n // if ((charCode == \"\")) {\r\n // return true;\r\n // } else {\r\n // event.preventDefault();\r\n // return false;\r\n // }\r\n // }\r\n}\r\n","import { HttpClientModule } from '@angular/common/http';\r\nimport { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { MatStepperModule } from '@angular/material/stepper';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { NgxChartsModule } from '@swimlane/ngx-charts';\r\nimport { NgpSortModule } from 'ngp-sort-pipe';\r\nimport { CalendarModule as AngularCalendarModule, DateAdapter } from 'angular-calendar';\r\nimport { adapterFactory } from 'angular-calendar/date-adapters/date-fns';\r\nimport * as _ from 'underscore';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ShippingComponent } from './Shipping.component';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { SummaryCartModule } from '../summary-cart/summary-cart.module';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { CountrychangeComponent } from './modals/Countrychange/Countrychange.component';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { StepperModule } from '../stepper/stepper.module';\r\nconst routes: Routes = [\r\n {\r\n path: 'Shipping',\r\n component: ShippingComponent\r\n }\r\n];\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n ShippingComponent,\r\n CountrychangeComponent\r\n ],\r\n imports: [\r\n RouterModule.forChild(routes),\r\n AngularCalendarModule.forRoot({\r\n provide: DateAdapter,\r\n useFactory: adapterFactory\r\n }),\r\n MatButtonModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatIconModule,\r\n MatMenuModule,\r\n MatTableModule,\r\n MatTabsModule,\r\n NgpSortModule,\r\n MatStepperModule,\r\n NgxChartsModule,\r\n CommonModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n MatDialogModule,\r\n HttpClientModule,\r\n SummaryCartModule,\r\n MatRadioModule,\r\n FlexLayoutModule,\r\n StepperModule,\r\n\r\n\r\n ],\r\n exports: [\r\n CountrychangeComponent,\r\n FlexLayoutModule\r\n ],\r\n entryComponents: [\r\n CountrychangeComponent\r\n ],\r\n})\r\nexport class ShippingModule { }\r\n","import { Component, OnInit, Inject, ViewEncapsulation } from '@angular/core';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\nimport * as _ from 'underscore';\r\nimport { EnrollSessionService } from 'app/shared/enrollSession.service';\r\n\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-countrychange',\r\n templateUrl: './Countrychange.component.html',\r\n styleUrls: ['./Countrychange.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\n\r\nexport class CountrychangeComponent implements OnInit {\r\n dialogTitle: string;\r\n action: string;\r\n item: any;\r\n constructor(\r\n private _enrollSession: EnrollSessionService,\r\n public matDialogRef: MatDialogRef\r\n ) {\r\n }\r\n\r\n Action(action: string): any {\r\n this.matDialogRef.close(action); \r\n }\r\n ngOnInit(): void {\r\n }\r\n}\r\n","\r\n\r\n\r\n\t

\r\n\t\tYou currently have item(s) in your cart that are not available for your shipping address. The item(s) will be\r\n\t\tremoved from your cart. Do you want to Proceed to checkout?\r\n\t

\r\n
\r\n\r\n\t\t\r\n\t\t\r\n","
\r\n
\r\n \r\n \r\n
\r\n \r\n

Subscribe & Save

\r\n

Get Long-Term Results & Max Savings with Smart Order

\r\n

What will your nutrition needs be after your first order? Whether it’s fitness goals, weight loss, or fine-tuning your body, we will reward you for making your plan today!

\r\n

How It Works:

\r\n
    \r\n
  1. Choose a product or pack below.
  2. \r\n
  3. Choose a date you would like us to charge your credit card every month.
  4. \r\n
  5. Enjoy superfoods automatically shipped to your  doorstep!
  6. \r\n
\r\n

Smart Order Rewards:

\r\n
    \r\n
  • Earn double (2x) Rewards Points on every order.
  • \r\n
  • Get 200 Bonus Rewards Points today.
  • \r\n
  • Ensure your 25% by ordering every 30 days.
  • \r\n
  • Qualify for a free product in your 4th month with 3 & Then Free Products.
  • \r\n
\r\n

Choose a product or pack below

\r\n

Top Picks

\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{topPick.Description}}\r\n {{topPick.Description}}\r\n
\r\n
\r\n
LOYAL CUSTOMER PRICE : ${{topPick.Price |number : '1.2-2'}} USD
\r\n
RETAIL PRICE : ${{topPick.Other1Price |number : '1.2-2'}} USD
\r\n
{{topPick.ShortDetail3}}
\r\n Subscribe\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{topPick.Description}}\r\n {{topPick.Description}}\r\n
\r\n
\r\n \r\n
LOYAL CUSTOMER PRICE : ${{topPick.Price |number : '1.2-2'}} USD
\r\n
RETAIL PRICE : ${{topPick.Other1Price |number : '1.2-2'}} USD
\r\n
{{topPick.ShortDetail3}}
\r\n Subscribe\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n

Alternatives

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{alternate.Description}}\r\n {{alternate.Description}}\r\n
\r\n
\r\n
LOYAL CUSTOMER PRICE : ${{alternate.Price |number : '1.2-2'}} USD
\r\n
RETAIL PRICE : ${{alternate.Other1Price |number : '1.2-2'}} USD
\r\n
{{alternate.ShortDetail3}}
\r\n Subscribe\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{alternate.Description}}\r\n {{alternate.Description}}\r\n
\r\n
\r\n \r\n
LOYAL CUSTOMER PRICE : ${{alternate.Price |number : '1.2-2'}} USD
\r\n
RETAIL PRICE : ${{alternate.Other1Price |number : '1.2-2'}} USD
\r\n
{{alternate.ShortDetail3}}
\r\n Subscribe\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n

3 & Then Free Products

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{freeProduct.Description}}\r\n {{freeProduct.Description}}\r\n
\r\n
\r\n
LOYAL CUSTOMER PRICE : ${{freeProduct.Price |number : '1.2-2'}} USD
\r\n
RETAIL PRICE : ${{freeProduct.Other1Price |number : '1.2-2'}} USD
\r\n
{{freeProduct.ShortDetail3}}
\r\n Subscribe\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{freeProduct.Description}}\r\n {{freeProduct.Description}}\r\n
\r\n
\r\n
LOYAL CUSTOMER PRICE : ${{freeProduct.Price |number : '1.2-2'}} USD
\r\n
RETAIL PRICE : ${{freeProduct.Other1Price |number : '1.2-2'}} USD
\r\n
{{freeProduct.ShortDetail3}}
\r\n Subscribe\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n

All Purium Products

\r\n
\r\n
\r\n \r\n search\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n
\r\n {{product.Description}}{{product.Description}}\r\n
\r\n
\r\n
\r\n
LOYAL CUSTOMER PRICE : ${{product.Price |number : '1.2-2'}} USD
\r\n
RETAIL PRICE : ${{product.Other1Price |number : '1.2-2'}} USD
\r\n
\r\n Add To Cart\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{product.Description}}\r\n {{product.Description}}\r\n
\r\n
\r\n

LOYAL CUSTOMER PRICE :${{product.Price |number : '1.2-2'}} USD

\r\n

RETAIL PRICE : ${{product.Other1Price |number : '1.2-2'}} USD

\r\n Add To Cart\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport * as _ from 'underscore';\r\nimport { ToastrService } from 'ngx-toastr';\r\n// import { MatDialog } from '@angular/material/dialog';\r\nimport { RestService } from 'app/shared/rest.service';\r\nimport { Location, LocationStrategy, PathLocationStrategy } from '@angular/common';\r\nimport { SharedMethodService } from 'app/shared/sharedMethod.service';\r\nimport { EnrollSessionService } from 'app/shared/enrollSession.service';\r\nimport { productInfoComponent } from 'app/shared/Product-info/Product-info.component';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { Router } from '@angular/router';\r\nimport { OrderSubItemComponent } from 'app/shared/Orders-Sub-Item/Orders-Sub-Item.component';\r\n\r\n@Component({\r\n selector: 'Subscribe',\r\n providers: [Location, { provide: LocationStrategy, useClass: PathLocationStrategy }],\r\n templateUrl: './Subscribe.component.html',\r\n styleUrls: ['./Subscribe.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class SubscribeComponent implements OnInit {\r\n productList: any[] = [];\r\n topPicks: any[] = [];\r\n alternates: any[] = [];\r\n freeProducts: any[] = [];\r\n smarOrderallProductList: any[] = [];\r\n routPath: any = \"Shipping\";\r\n onSearch: any;\r\n panelOpenState : any;\r\n siteType: any;\r\n // mobileView: any;\r\n // subscribeDialogMobile: Subject = new Subject();\r\n constructor(\r\n private _toastr: ToastrService,\r\n private _restService: RestService,\r\n public _sharedMethodService: SharedMethodService,\r\n public _enrollSession: EnrollSessionService,\r\n private _matDialog: MatDialog,\r\n private router : Router\r\n ) {\r\n this.siteType = sessionStorage.getItem(\"siteType\");\r\n if(((this._enrollSession.data.RetailOrderSummary == undefined) || (this._enrollSession.data.RetailOrderSummary && this._enrollSession.data.RetailOrderSummary.Enrollpack.length == 0)) && (this.siteType || this.siteType!=null)){\r\n if(this._enrollSession.data.RetailOrderSummary.Enrollpack.length == 0) {\r\n this._toastr.warning(\"Please select Transformation Pack\", 'Warning');\r\n }\r\n this.router.navigate(['/TodaysOrder']);\r\n }\r\n if((this._enrollSession.data.RetailOrderSummary == undefined) || this._enrollSession.data.RetailOrderSummary.InitialOrders==undefined || (this._enrollSession.data.RetailOrderSummary && this._enrollSession.data.RetailOrderSummary.InitialOrders?.length == 0)){\r\n this._toastr.warning(\"Please select an item\", 'Warning');\r\n this.router.navigate(['/TodaysOrder']);\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.getAllProduct();\r\n this.getSmartOrderAllProduct();\r\n }\r\n getAllProduct() {\r\n const request = {\r\n 'EnrollmentType': '',\r\n 'CustomerType': '',\r\n 'WebCategoryId': 466,\r\n 'isUpgradeCustomer': false,\r\n 'IsSubscriptionOrder': true\r\n\r\n };\r\n this._restService.getProducts(request).subscribe((res: any) => {\r\n if (res) {\r\n const TopPick = [];\r\n const Alternate = [];\r\n const FreeProducts = [];\r\n this.productList = res.Items;\r\n this.productList.forEach((item) => {\r\n if (item.CategoryID === 473) {\r\n TopPick.push(item);\r\n } else if (item.CategoryID === 474) {\r\n Alternate.push(item);\r\n } else if (item.CategoryID === 475) {\r\n FreeProducts.push(item);\r\n }\r\n });\r\n this.topPicks = TopPick;\r\n this.alternates = Alternate;\r\n this.freeProducts = FreeProducts;\r\n } else {\r\n this._toastr.error('Error');\r\n }\r\n }, error => {\r\n this._toastr.error(error.error.Message, 'Error');\r\n });\r\n }\r\n getSmartOrderAllProduct() {\r\n const request = {\r\n 'EnrollmentType': '',\r\n 'CustomerType': '',\r\n 'WebCategoryId': 472,\r\n 'isUpgradeCustomer': false,\r\n 'IsSubscriptionOrder': true\r\n\r\n };\r\n this._restService.getProducts(request).subscribe((res: any) => {\r\n if (res) {\r\n this.smarOrderallProductList = res.Items;\r\n } else {\r\n this._toastr.error('Error');\r\n }\r\n }, error => {\r\n this._toastr.error(error.error.Message, 'Error');\r\n });\r\n }\r\n productInfo(item) {\r\n const dialogRef = this._matDialog.open(productInfoComponent, {\r\n width: '650px',\r\n\r\n panelClass: 'product-info',\r\n data: {\r\n item: item\r\n }\r\n });\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n if (result == 'Success') {\r\n }\r\n });\r\n }\r\n onSearchChange(event) {\r\n this.onSearch = event.target.value;\r\n }\r\n\r\n addToCart(item: any, quantity: any,type: any){\r\n if (item.KitMembers && item.KitMembers.length > 0) {\r\n const dialogRef = this._matDialog.open(OrderSubItemComponent, {\r\n width: '600px',\r\n panelClass: ['order-sub-item', 'sub-item-modal'],\r\n data: {\r\n item: item,\r\n type:type,\r\n \r\n }\r\n });\r\n dialogRef.afterClosed().subscribe(result => {\r\n \r\n });\r\n }\r\n else{\r\n this._sharedMethodService.ContinueRetailOrder(item,quantity,type)\r\n }\r\n }\r\n}\r\n\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { MatButtonModule } from '@angular/material/button';\r\n// import { MatDividerModule } from '@angular/material/divider';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\n// import { MatSlideToggleModule } from '@angular/material/slide-toggle';\r\nimport * as _ from 'underscore';\r\n// import { MatSelectModule } from '@angular/material/select';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { NgxChartsModule } from '@swimlane/ngx-charts';\r\nimport { NgpSortModule } from 'ngp-sort-pipe';\r\nimport { FilterPipeModule } from 'ngx-filter-pipe';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { SubscribeComponent } from './Subscribe.component';\r\nimport { MatExpansionModule } from '@angular/material/expansion';\r\nimport { SummaryCartModule } from '../summary-cart/summary-cart.module';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { PipesModule } from '../pipe/pipe.module';\r\nimport { StepperModule } from '../stepper/stepper.module';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'Subscribe',\r\n component: SubscribeComponent\r\n }\r\n];\r\n\r\n@NgModule({\r\n declarations: [\r\n SubscribeComponent\r\n ],\r\n imports: [\r\n RouterModule.forChild(routes),\r\n\r\n MatButtonModule,\r\n // MatDividerModule,\r\n MatFormFieldModule,\r\n MatIconModule,\r\n MatMenuModule,\r\n // MatSelectModule,\r\n MatTableModule,\r\n MatTabsModule,\r\n NgpSortModule,\r\n NgxChartsModule,\r\n FilterPipeModule,\r\n // MatSlideToggleModule,\r\n MatDialogModule,\r\n MatExpansionModule,\r\n SummaryCartModule,\r\n FlexLayoutModule,\r\n PipesModule,\r\n StepperModule\r\n\r\n ], entryComponents: [\r\n \r\n ],\r\n providers: [\r\n ],\r\n exports: [\r\n ]\r\n})\r\nexport class SubscribeModule {\r\n}\r\n\r\n","
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n 0\" >\r\n \r\n \r\n \r\n
\r\n
\r\n

All Purium Products

\r\n
\r\n
\r\n \r\n search\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"\"\r\n\r\n
\r\n
\r\n
\r\n {{product.Description}}{{product.Description}}\r\n
\r\n
\r\n
\r\n
LOYAL CUSTOMER PRICE : ${{product.Price |number : '1.2-2'}} USD
\r\n
RETAIL PRICE : ${{product.Other1Price |number : '1.2-2'}} USD
\r\n
\r\n Add To Cart\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{product.Description}}\r\n {{product.Description}}\r\n
\r\n
\r\n

LOYAL CUSTOMER PRICE :${{product.Price |number : '1.2-2'}} USD

\r\n

RETAIL PRICE : ${{product.Other1Price |number : '1.2-2'}} USD

\r\n Add To Cart\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport * as _ from 'underscore';\r\nimport { RestService } from 'app/shared/rest.service';\r\nimport { Location, LocationStrategy, PathLocationStrategy } from '@angular/common';\r\nimport { SharedMethodService } from 'app/shared/sharedMethod.service';\r\nimport { EnrollSessionService } from 'app/shared/enrollSession.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { productInfoComponent } from 'app/shared/Product-info/Product-info.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { cloneDeep } from 'lodash';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { OrderSubItemComponent } from 'app/shared/Orders-Sub-Item/Orders-Sub-Item.component';\r\nimport { any } from 'underscore';\r\nimport { LifestyleSubscriptionComponent } from 'app/shared/LifestyleSubscription/LifestyleSubscription.component';\r\n\r\n@Component({\r\n selector: 'app-todays-order',\r\n providers: [Location, { provide: LocationStrategy, useClass: PathLocationStrategy }],\r\n templateUrl: './Todays-order.component.html',\r\n styleUrls: ['./Todays-order.component.scss']\r\n})\r\nexport class TodaysOrderComponent implements OnInit {\r\n productList: any[] = [];\r\n routPath: any = \"Subscribe\";\r\n EnhanceTranformation: any[] = [];\r\n onSearchEnhance: any;\r\n panelOpenState : boolean = true;\r\n siteType: any;\r\n location: Location;\r\n url:any;\r\n webalias: any;\r\n\r\n constructor(\r\n \r\n private _restService: RestService,\r\n public _enrollSession: EnrollSessionService,\r\n public _sharedMethodService: SharedMethodService,\r\n private _matDialog: MatDialog,\r\n private router : Router,\r\n private _location: Location,\r\n private _toastr: ToastrService,\r\n private _activateRoute: ActivatedRoute,\r\n\r\n ) { \r\n this._enrollSession.data.customertype = 22;\r\n this.location = this._location;\r\n if(this._enrollSession.editTransformationPack!= 'true') {\r\n this._enrollSession.data = {};\r\n }\r\n // localStorage.clear();\r\n if (this._enrollSession.data && this._enrollSession.editTransformationPack!= 'true' && Object.keys(this._enrollSession.data).length === 0 ) {\r\n this._enrollSession.data.IsShowCart = false;\r\n this._enrollSession.data.page = this.location.path();\r\n this._enrollSession.data.TotalItemLength = 0;\r\n this._enrollSession.data.RetailEnroll = {};\r\n this._enrollSession.data.InitOrder = [];\r\n this._enrollSession.data.InitialOrdersSubTotal = 0;\r\n this._enrollSession.data.RetailOrderSummary = {};\r\n this._enrollSession.data.RetailOrderSummary.Enrollpack = [];\r\n this._enrollSession.data.EligibleForFreeUpgrade = false;\r\n this._enrollSession.data.RetailEnroll.IsNonprofit = false;\r\n this._enrollSession.data.FileUploaded = false;\r\n this._enrollSession.data.RetailEnroll.ShippingMethod = '';\r\n this._enrollSession.data.usePrimaryCard = null;\r\n this._enrollSession.data.primaryCreditCardField = {};\r\n this._enrollSession.data.EnrollmentType = this._enrollSession.data.EnrollmentType || 1;\r\n this._enrollSession.data.IsUpGrade =\r\n this._activateRoute.snapshot.queryParamMap.get('customerId') ? this._activateRoute.snapshot.queryParamMap.get('customerId') : false;\r\n if (this._enrollSession.data.IsUpGrade) {\r\n localStorage.setItem('customerId', this._enrollSession.data.IsUpGrade);\r\n }\r\n this._enrollSession.data.Volume109 = 0;\r\n this._enrollSession.data.SmartOrderBVTotal = 0;\r\n this._enrollSession.data.InitialOrdersQVTotal = 0;\r\n this._enrollSession.data.AddOnOrdersQVTotal = 0;\r\n }\r\n this.url = window.location.href;\r\n console.log(\"url\",this.url);\r\n this.webalias = this._activateRoute.snapshot.queryParamMap.get('giftcard');\r\n this.siteType = this._activateRoute.snapshot.queryParamMap.get('site');\r\n if (this.siteType) {\r\n sessionStorage.setItem(\"siteType\", this.siteType);\r\n var snapshot = this._activateRoute.snapshot;\r\n const params = { ...snapshot.queryParams };\r\n delete params.site\r\n this.router.navigate([], { queryParams: params });\r\n } else {\r\n this.siteType = sessionStorage.getItem(\"siteType\");\r\n }\r\n window.scrollTo(0, 0);\r\n // if((this._enrollSession.data.RetailOrderSummary == undefined) || (this._enrollSession.data.RetailOrderSummary && this._enrollSession.data.RetailOrderSummary.Enrollpack.length == 0)){\r\n // if(this._enrollSession.data.RetailOrderSummary.Enrollpack.length == 0) {\r\n // this._toastr.warning(\"Please select Transformation Pack\", 'Warning');\r\n // }\r\n // this.router.navigate(['/TodaysOrder']);\r\n // }\r\n }\r\n\r\n ngOnInit(): void {\r\n if(this.webalias && this.webalias != '' && this.webalias != null && this.webalias != \"null\") {\r\n const request = '?WebAlias=' + this.webalias;\r\n this._restService.GetCustomerSite(request).subscribe((result: any) => {\r\n if(result.Data != null) {\r\n this._enrollSession.data.webAlias = this.webalias;\r\n }else{\r\n this._toastr.error('Invalid WebAlias.', 'Error');\r\n }\r\n }, error => {\r\n this._toastr.error('Somthing is wrong Please try again', 'Error');\r\n });\r\n }\r\n this._enrollSession.editTransformationPack = \"true\";\r\n this.siteType = sessionStorage.getItem(\"siteType\");\r\n if (this.siteType == 'collagen') {\r\n this.getAllProduct(495);\r\n }\r\n else {\r\n this.getAllProduct(482);\r\n this.getAllProduct(472)\r\n }\r\n }\r\n\r\n getAllProduct(webCategoryId) {\r\n const request = {\r\n 'EnrollmentType': '',\r\n 'CustomerType': 22,\r\n 'WebCategoryId': webCategoryId,\r\n 'isUpgradeCustomer': false,\r\n 'IsSubscriptionOrder': false\r\n\r\n };\r\n this._restService.getProducts(request).subscribe((res: any) => {\r\n var listData = res.Items;\r\n var uniqueproductListData = listData.filter((tag, index, array) => array.findIndex(t => t.ItemCode == tag.ItemCode && t.Description == tag.Description && t.Price == tag.Price) == index);\r\n //this.productList = uniqueproductListData;\r\n var allProductList = uniqueproductListData;\r\n \r\n //var EnhanceTranformation = [];\r\n allProductList.forEach((item) => {\r\n if (item.CategoryID === 482) {\r\n this.EnhanceTranformation.push(item);\r\n }\r\n if (item.CategoryID === 495) {\r\n this.EnhanceTranformation.push(item);\r\n }\r\n if (item.CategoryID === 472) {\r\n this.productList.push(item);\r\n }\r\n });\r\n //let enhanceTransformProducts = cloneDeep(EnhanceTranformation);\r\n //enhanceTransformProducts.forEach((item) => {\r\n // //if(item.ItemCode ==2520) {\r\n // // item.SmallPicture = \"assets/images/enhance-image/immunesupport-2520.png\";\r\n // //}else if(item.ItemCode ==2750) {\r\n // // item.SmallPicture = \"assets/images/enhance-image/energy-boost-2750.png\";\r\n // //}else if(item.ItemCode ==2752) {\r\n // // item.SmallPicture = \"assets/images/enhance-image/digestion-2752.png\";\r\n // //}else if(item.ItemCode ==2754) {\r\n // // item.SmallPicture = \"assets/images/enhance-image/hydration-2754.png\";\r\n // //}else if(item.ItemCode == 2012) {\r\n // // item.SmallPicture = \"assets/images/enhance-image/elimination-2012.png\";\r\n // //}\r\n //});\r\n //if (webCategoryId === 482) {\r\n // this.EnhanceTranformation = enhanceTransformProducts;\r\n //}\r\n });\r\n }\r\n productInfo(item) {\r\n const dialogRef = this._matDialog.open(productInfoComponent, {\r\n width: '650px',\r\n\r\n panelClass: 'product-info',\r\n data: {\r\n item: item\r\n }\r\n });\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n if (result == 'Success') {\r\n }\r\n });\r\n }\r\n onSearchChangeEnhance(event) {\r\n this.onSearchEnhance = event.target.value;\r\n }\r\n addToCart(item: any, quantity: any,type: any){\r\n if((item.ItemCode=='11200' || item.ItemCode=='11205' || item.ItemCode=='11235' || item.ItemCode=='11238' || item.ItemCode=='11208' || item.ItemCode=='11209' || item.ItemCode=='11210' || item.ItemCode=='11220')) {\r\n this.ultlifestylePoup(item.ItemCode);\r\n }\r\n if (item.KitMembers && item.KitMembers.length > 0) {\r\n const dialogRef = this._matDialog.open(OrderSubItemComponent, {\r\n width: '600px',\r\n panelClass: ['order-sub-item', 'sub-item-modal'],\r\n data: {\r\n item: item,\r\n type:type,\r\n \r\n }\r\n });\r\n dialogRef.afterClosed().subscribe(result => {\r\n \r\n });\r\n }\r\n else{\r\n console.log('addToCart');\r\n this._sharedMethodService.ContinueRetailOrder(item,quantity,type)\r\n }\r\n }\r\n ultlifestylePoup(itemCode)\r\n {\r\n const dialogRef = this._matDialog.open(LifestyleSubscriptionComponent, {\r\n width: '500px',\r\n maxWidth: '500px',\r\n height: '356px',\r\n panelClass: '',\r\n disableClose: true,\r\n data: {\r\n item: itemCode,\r\n }\r\n });\r\n dialogRef.afterClosed().subscribe(result => {\r\n });\r\n }\r\n}","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport * as _ from 'underscore';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { NgxChartsModule } from '@swimlane/ngx-charts';\r\nimport { NgpSortModule } from 'ngp-sort-pipe';\r\nimport { FilterPipeModule } from 'ngx-filter-pipe';\r\nimport { TodaysOrderComponent } from './Todays-order.component';\r\nimport { MatExpansionModule } from '@angular/material/expansion';\r\nimport { SummaryCartModule } from '../summary-cart/summary-cart.module';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { PipesModule } from '../pipe/pipe.module';\r\nimport { StepperModule } from '../stepper/stepper.module';\r\nimport { OrderSubItemComponent } from 'app/shared/Orders-Sub-Item/Orders-Sub-Item.component';\r\nimport { productInfoComponent } from 'app/shared/Product-info/Product-info.component';\r\nimport { AppComponent } from 'app/app.component';\r\nimport { LifestyleSubscriptionModule } from 'app/shared/LifestyleSubscription/LifestyleSubscription.module';\r\nconst routes: Routes = [\r\n {\r\n path: 'TodaysOrder',\r\n component: TodaysOrderComponent\r\n }\r\n];\r\n\r\n@NgModule({\r\n declarations: [\r\n TodaysOrderComponent,\r\n OrderSubItemComponent,\r\n productInfoComponent\r\n ],\r\n imports: [\r\n RouterModule.forChild(routes),\r\n MatButtonModule,\r\n MatFormFieldModule,\r\n MatIconModule,\r\n MatMenuModule,\r\n MatTableModule,\r\n MatTabsModule,\r\n NgpSortModule,\r\n NgxChartsModule,\r\n FilterPipeModule,\r\n MatExpansionModule,\r\n SummaryCartModule,\r\n MatTooltipModule,\r\n FlexLayoutModule,\r\n PipesModule,\r\n StepperModule,\r\n MatDialogModule,\r\n LifestyleSubscriptionModule\r\n ], entryComponents: [\r\n productInfoComponent,\r\n OrderSubItemComponent\r\n ],\r\n providers: [],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class TodaysOrderModule {\r\n}\r\n\r\n","
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n

Checkout

\r\n
\r\n
\r\n
Contact
\r\n
{{_enrollSession.data.RetailOrderSummary.customerInfoData.Email}}
\r\n
Change
\r\n
\r\n
\r\n
Ship to
\r\n
\r\n {{_enrollSession.data.RetailOrderSummary.shippingFormData.address1}} {{_enrollSession.data.RetailOrderSummary.shippingFormData.address2}},\r\n {{_enrollSession.data.RetailOrderSummary.shippingFormData.City}} {{_enrollSession.data.RetailOrderSummary.shippingFormData.State}},\r\n {{_enrollSession.data.RetailOrderSummary.shippingFormData.CountryCode}}, {{_enrollSession.data.RetailOrderSummary.shippingFormData.ZipCode}}\r\n \r\n
\r\n
Change
\r\n
\r\n
\r\n
Method
\r\n
{{_enrollSession.data.RetailEnroll.ShippingDescription}}
\r\n
Change
\r\n
\r\n
\r\n

Referred By

\r\n
\r\n
\r\n \r\n \r\n This field is required\r\n \r\n
\r\n
\r\n

Payment

\r\n
All transactions are secure and encrypted.
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n This field is required\r\n \r\n \r\n \r\n This field is required\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n This field is required\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n This field is required\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n This field is required\r\n Invalid Security code\r\n \r\n
\r\n
\r\n
\r\n

Billing Address

\r\n
Select the address that matches your card or payment method.
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n This field is required\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n This field is required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n This field is required\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n This field is required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n This field is required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n INVALID ZIP\r\n \r\n This field is required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
","import { FormBuilder, FormControl, FormGroup, ValidatorFn, Validators } from '@angular/forms';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { EnrollSessionService } from 'app/shared/enrollSession.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { RestService } from 'app/shared/rest.service';\r\nimport { Router } from '@angular/router';\r\nimport { API_URL } from 'app/constants';\r\nimport { RgetRegexService } from 'app/shared/getRegex.service';\r\nimport * as moment from 'moment';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { Subject } from 'rxjs';\r\nimport * as _ from 'lodash';\r\n@Component({\r\n selector: 'app-checkout',\r\n templateUrl: './checkout.component.html',\r\n styleUrls: ['./checkout.component.scss']\r\n})\r\nexport class CheckoutComponent implements OnInit {\r\n referredForm: FormGroup;\r\n submissionInProgress: boolean;\r\n billingAddressForm: FormGroup;\r\n paymentTypeForm: FormGroup;\r\n currentYear = new Date().getFullYear();\r\n currentMonth = new Date().getMonth() + 1;\r\n monthList: any[] = [];\r\n yearList: any[] = [];\r\n invalidzip1: boolean = false;\r\n sameAddressStatus: boolean = true;\r\n SmartOrderDate: any;\r\n SubscriptionProcessType: any;\r\n siteType: any;\r\n private _unsubscribeAll: Subject\r\n constructor(\r\n public _enrollSession: EnrollSessionService,\r\n private _toastr: ToastrService,\r\n private _formBuilder: FormBuilder,\r\n private _restService: RestService,\r\n private _route: Router,\r\n public _RgetRegexService: RgetRegexService,\r\n private router: Router\r\n\r\n ) {\r\n this._unsubscribeAll = new Subject();\r\n this.submissionInProgress = false;\r\n this.SmartOrderDate = this._enrollSession.data.smartOrderDate;\r\n this.referredForm = this.createReferredForm();\r\n this.paymentTypeForm = this.createPaymentTypeForm();\r\n this.billingAddressForm = this.createBillingAddressForm();\r\n this._enrollSession.data.RetailOrderSummary.ExpirationYear = this._enrollSession.data.RetailOrderSummary.ExpirationYear || new Date().getFullYear();\r\n this._enrollSession.data.RetailOrderSummary.ExpirationMonth = this._enrollSession.data.RetailOrderSummary.ExpirationMonth || new Date().getMonth() + 1;\r\n for (let i = 1; i <= 12; i++) {\r\n this.monthList.push({ key: i, value: i });\r\n }\r\n for (let i = 0; i < 20; i++) {\r\n this.yearList.push({ key: (this.currentYear + i), value: (this.currentYear + i) });\r\n }\r\n this.siteType = sessionStorage.getItem(\"siteType\");\r\n if(((this._enrollSession.data.RetailOrderSummary == undefined) || (this._enrollSession.data.RetailOrderSummary && this._enrollSession.data.RetailOrderSummary.Enrollpack.length == 0) || (this._enrollSession.data.RetailOrderSummary.customerInfoData == undefined)) && (this.siteType && this.siteType!=null)){\r\n if(this._enrollSession.data.RetailOrderSummary.Enrollpack.length == 0 || this._enrollSession.data.RetailOrderSummary == undefined) {\r\n this._toastr.warning(\"Please select Transformation Pack\", 'Warning');\r\n this.router.navigate(['/TodaysOrder']);\r\n return\r\n } \r\n }\r\n if((this._enrollSession.data.RetailOrderSummary == undefined) || this._enrollSession.data.RetailOrderSummary.InitialOrders==undefined || (this._enrollSession.data.RetailOrderSummary && this._enrollSession.data.RetailOrderSummary.InitialOrders?.length == 0)){\r\n this._toastr.warning(\"Please select an item\", 'Warning');\r\n this.router.navigate(['/TodaysOrder']);\r\n }\r\n if((this._enrollSession.data.RetailOrderSummary) && ( this._enrollSession.data.RetailOrderSummary.customerInfoData == undefined && _.isEmpty(this._enrollSession.data.RetailOrderSummary.customerInfoData) || this._enrollSession.data.RetailOrderSummary.customerInfoData.Email == undefined || this._enrollSession.data.RetailOrderSummary.customerInfoData.Password == undefined || this._enrollSession.data.RetailOrderSummary.customerInfoData.Phone == undefined || this._enrollSession.data.RetailOrderSummary.shippingFormData.firstName == undefined || this._enrollSession.data.RetailOrderSummary.shippingFormData.lastName == undefined || this._enrollSession.data.RetailOrderSummary.shippingFormData.address1 == undefined || this._enrollSession.data.RetailOrderSummary.shippingFormData.ZipCode == undefined || this._enrollSession.data.RetailOrderSummary.shippingFormData.City == undefined)) {\r\n this._toastr.warning(\"Please fill all required field\", 'Warning');\r\n this.router.navigate(['/Shipping']); \r\n return\r\n }\r\n if (this._enrollSession.data.RetailOrderSummary?.SmartOrders?.length>0) {\r\n this.SubscriptionProcessType = JSON.parse(localStorage.getItem(\"SubscriptionProcessType\"))=='AutoOrderProcessTy1'?0:1;\r\n } else {\r\n this.SubscriptionProcessType = '';\r\n }\r\n }\r\n createReferredForm(): FormGroup {\r\n return this._formBuilder.group({\r\n referralCode: ['', Validators.required]\r\n })\r\n }\r\n createPaymentTypeForm(): FormGroup {\r\n return this._formBuilder.group({\r\n cardNumber: ['', [Validators.required, Validators.pattern(/^[0-9]*$/)]],\r\n nameOnCard: ['', [Validators.required]],\r\n expMonth: ['', [Validators.required]],\r\n expYear: ['', [Validators.required]],\r\n securityCode: ['', [Validators.required, Validators.pattern(/^\\d*$/)]]\r\n })\r\n }\r\n\r\n createBillingAddressForm(): FormGroup {\r\n return this._formBuilder.group({\r\n sameAddress: [],\r\n firstName: ['', [Validators.required]],\r\n lastName: ['', [Validators.required]],\r\n address1: ['', [Validators.required]],\r\n address2: [''],\r\n CountryCode: ['', Validators.required],\r\n ZipCode: ['', Validators.required],\r\n City: ['', Validators.required],\r\n State: ['', Validators.required]\r\n });\r\n }\r\n ngOnInit(): void {\r\n if (this._enrollSession.data.RetailEnroll.ShippingMethod) {\r\n for (let i = 0; i < this._enrollSession.data.ShippingMethods.length; i++) {\r\n let dataShipping = this._enrollSession.data.ShippingMethods[i];\r\n if (dataShipping.ShipMethodID == this._enrollSession.data.RetailEnroll.ShippingMethod) {\r\n this._enrollSession.data.RetailEnroll.ShippingDescription = dataShipping.Description;\r\n }\r\n }\r\n }\r\n this._enrollSession.data.RetailOrderSummary.billingAddressData = this._enrollSession.data.RetailOrderSummary.billingAddressData || {};\r\n this.billingAddressForm.valueChanges.subscribe(selectedValue => {\r\n this._enrollSession.data.RetailOrderSummary.billingAddressData = selectedValue;\r\n this._enrollSession.data.RetailOrderSummary.billingAddressData.State = selectedValue.State\r\n });\r\n this._enrollSession.data.RetailOrderSummary.paymentTypeData = this._enrollSession.data.RetailOrderSummary.paymentTypeData || {};\r\n this.paymentTypeForm.valueChanges.subscribe(selectedValue => {\r\n this._enrollSession.data.RetailOrderSummary.paymentTypeData = selectedValue;\r\n });\r\n this._enrollSession.data.RetailOrderSummary.referredFormData = this._enrollSession.data.RetailOrderSummary.referredFormData || {};\r\n this.referredForm.valueChanges.subscribe(selectedValue => {\r\n this._enrollSession.data.RetailOrderSummary.referredFormData = selectedValue;\r\n });\r\n this.billingAddressForm.get('sameAddress').valueChanges\r\n .pipe(takeUntil(this._unsubscribeAll))\r\n .subscribe((value) => {\r\n if (!value) {\r\n this._enrollSession.addValidators(this.billingAddressForm, \"firstName\");\r\n this._enrollSession.addValidators(this.billingAddressForm, \"lastName\");\r\n this._enrollSession.addValidators(this.billingAddressForm, \"address1\");\r\n this._enrollSession.addValidators(this.billingAddressForm, \"CountryCode\");\r\n this._enrollSession.addValidators(this.billingAddressForm, \"ZipCode\");\r\n this._enrollSession.addValidators(this.billingAddressForm, \"City\");\r\n this._enrollSession.addValidators(this.billingAddressForm, \"State\");\r\n }\r\n else {\r\n this._enrollSession.removeValidators(this.billingAddressForm, \"firstName\");\r\n this._enrollSession.removeValidators(this.billingAddressForm, \"lastName\");\r\n this._enrollSession.removeValidators(this.billingAddressForm, \"address1\");\r\n this._enrollSession.removeValidators(this.billingAddressForm, \"CountryCode\");\r\n this._enrollSession.removeValidators(this.billingAddressForm, \"ZipCode\");\r\n this._enrollSession.removeValidators(this.billingAddressForm, \"City\");\r\n this._enrollSession.removeValidators(this.billingAddressForm, \"State\");\r\n }\r\n });\r\n this.billingAddressForm.get('sameAddress').valueChanges.subscribe(selectedValue => {\r\n if (selectedValue == \"true\") {\r\n let billingAddressInfo = this._enrollSession.data.RetailOrderSummary.shippingFormData;\r\n this.billingAddressForm.patchValue({\r\n firstName: billingAddressInfo.firstName,\r\n lastName: billingAddressInfo.lastName,\r\n address1: billingAddressInfo.address1,\r\n address2: billingAddressInfo.address2,\r\n CountryCode: billingAddressInfo.CountryCode,\r\n ZipCode: billingAddressInfo.ZipCode,\r\n City: billingAddressInfo.City,\r\n State: billingAddressInfo.State\r\n });\r\n } else if (selectedValue == \"false\") {\r\n this.getStates('US');\r\n this.billingAddressForm.patchValue({\r\n firstName: '',\r\n lastName: '',\r\n address1: '',\r\n address2: '',\r\n CountryCode: this._enrollSession.data.countriesList ? this._enrollSession.data.countriesList[0].countryCodeField : '',\r\n ZipCode: '',\r\n City: '',\r\n State: this._enrollSession.data.RetailOrderSummary.billingAddressData.State ? this._enrollSession.data.RetailOrderSummary.billingAddressData.State : ''\r\n });\r\n }\r\n });\r\n if (this._enrollSession.data.RetailOrderSummary.billingAddressData.sameAddress == \"false\") {\r\n this.billingAddressForm.get(\"sameAddress\").setValue(\"false\");\r\n } else if (this._enrollSession.data.RetailOrderSummary.billingAddressData.sameAddress == \"true\") {\r\n this.billingAddressForm.get(\"sameAddress\").setValue(\"true\");\r\n } else {\r\n this.billingAddressForm.get(\"sameAddress\").setValue(\"true\");\r\n }\r\n\r\n if (_.isEmpty(this._enrollSession.data.RetailOrderSummary.paymentTypeData)) {\r\n this.paymentTypeForm.patchValue({\r\n expMonth: this.currentMonth,\r\n expYear: this.currentYear,\r\n });\r\n }\r\n if (this._enrollSession.data.RetailOrderSummary.paymentTypeData) {\r\n let paymentTypeInfo = this._enrollSession.data.RetailOrderSummary.paymentTypeData;\r\n this.paymentTypeForm.patchValue({\r\n CreditDebitCard: paymentTypeInfo.CreditDebitCard,\r\n cardNumber: paymentTypeInfo.cardNumber,\r\n nameOnCard: paymentTypeInfo.nameOnCard,\r\n expMonth: paymentTypeInfo.expMonth,\r\n expYear: paymentTypeInfo.expYear,\r\n securityCode: paymentTypeInfo.securityCode,\r\n });\r\n }\r\n if (this._enrollSession.data.RetailOrderSummary.billingAddressData) {\r\n let billingAddressInfo = this._enrollSession.data.RetailOrderSummary.billingAddressData;\r\n this.billingAddressForm.patchValue({\r\n firstName: billingAddressInfo.firstName,\r\n lastName: billingAddressInfo.lastName,\r\n address1: billingAddressInfo.address1,\r\n address2: billingAddressInfo.address2,\r\n CountryCode: billingAddressInfo.CountryCode,\r\n ZipCode: billingAddressInfo.ZipCode,\r\n City: billingAddressInfo.City,\r\n State: billingAddressInfo.State\r\n });\r\n }\r\n\r\n if (this._enrollSession.data.RetailOrderSummary.referredFormData) {\r\n let referredInfo = this._enrollSession.data.RetailOrderSummary.referredFormData;\r\n this.referredForm.patchValue({\r\n referralCode: referredInfo.referralCode ? referredInfo.referralCode : this._enrollSession.data.webAlias\r\n });\r\n this.getCustomerSite(this._enrollSession.data.RetailOrderSummary.referredFormData.referralCode, 1);\r\n }\r\n\r\n }\r\n\r\n getStates(country): void {\r\n if (country) {\r\n const getStatesRequest = { CountryCode: country };\r\n this._restService.GetCountryRegions(getStatesRequest)\r\n .subscribe((result: any) => {\r\n this._enrollSession.data.stateList = result.regionsField;\r\n this._enrollSession.data.RetailOrderSummary.billingAddressData.State = ['US','CA'].indexOf(country) > -1 ? '' : result.regionsField[0].regionCodeField;\r\n\r\n }\r\n );\r\n }\r\n\r\n }\r\n\r\n getSubmit(): void {\r\n if (this.referredForm.invalid || this.billingAddressForm.invalid || this.paymentTypeForm.invalid) {\r\n return;\r\n }\r\n this.submissionInProgress = true;\r\n let request: any;\r\n request =\r\n {\r\n 'CustomerId': this._enrollSession.data.customertype === 22 ? 0\r\n : (this._enrollSession.data.IsUpGrade ? this._enrollSession.data.IsUpGrade : this._enrollSession.data.CustomerId ?\r\n this._enrollSession.data.CustomerId : 0),\r\n 'AcceptTerms': this._enrollSession.data.RetailEnroll.AgreeTerms ? this._enrollSession.data.RetailEnroll.AgreeTerms : true,\r\n 'Field5': this._enrollSession.data.customertype === 22 && this._enrollSession.data.checkoutwithlimited ? 'Influencer' :\r\n this._enrollSession.data.RetailEnroll.CommissionDDConfirmation1 === 'Nonprofit' ?\r\n 'NonProfit' : this._enrollSession.data.RetailEnroll.CommissionDDConfirmation1 === 'Influencer' ?\r\n 'Influencer' : this._enrollSession.data.RetailEnroll.CommissionDDConfirmation1 === 'BeautyWellnessProfessional' ? 'Beauty/Wellness Professional' : '',\r\n 'IsProfessional': this._enrollSession.data.customertype === 22 && this._enrollSession.data.checkoutwithlimited ? false :\r\n (this._enrollSession.data.RetailEnroll.CommissionDDConfirmation1 === 'HealthProfessional' &&\r\n this._enrollSession.data.FileUploaded ? true : false),\r\n 'IsNonprofit': this._enrollSession.data.customertype === 22 && this._enrollSession.data.checkoutwithlimited ? false :\r\n (this._enrollSession.data.RetailEnroll.CommissionDDConfirmation1 === 'Nonprofit' ||\r\n this._enrollSession.data.RetailEnroll.CommissionDDConfirmation1 === 'Influencer' && this._enrollSession.data.FileUploaded ? true : false),\r\n 'ApplicantAddress': {\r\n 'Address1': this._enrollSession.data.RetailOrderSummary.shippingFormData.address1 ? this._enrollSession.data.RetailOrderSummary.shippingFormData.address1 : '',\r\n 'Address2': this._enrollSession.data.RetailOrderSummary.shippingFormData.address2 ? this._enrollSession.data.RetailOrderSummary.shippingFormData.address2 : '',\r\n 'Address3': '',\r\n 'City': this._enrollSession.data.RetailOrderSummary.shippingFormData.City ? this._enrollSession.data.RetailOrderSummary.shippingFormData.City : '',\r\n 'CountryCode': this._enrollSession.data.RetailOrderSummary.shippingFormData.CountryCode ? this._enrollSession.data.RetailOrderSummary.shippingFormData.CountryCode : '',\r\n 'State': this._enrollSession.data.RetailOrderSummary.shippingFormData.State ? this._enrollSession.data.RetailOrderSummary.shippingFormData.State : '',\r\n 'Zip': this._enrollSession.data.RetailOrderSummary.shippingFormData.ZipCode ? this._enrollSession.data.RetailOrderSummary.shippingFormData.ZipCode : ''\r\n },\r\n 'BirthDate': '',\r\n 'Company': '',\r\n // 'CustomerType': this._enrollSession.data.customertype === 22 ? this._enrollSession.data.customertype : 22,\r\n 'CustomerType': 22,\r\n 'CustomerWebAlias': this._enrollSession.data.ReferredByGiftCard ? this._enrollSession.data.ReferredByGiftCard : 0,\r\n 'Email': this._enrollSession.data.RetailOrderSummary.customerInfoData.Email ? this._enrollSession.data.RetailOrderSummary.customerInfoData.Email : '',\r\n 'EnrollerWebAlias': this._enrollSession.data.ReferredBy ? this._enrollSession.data.ReferredBy : '',\r\n 'FirstName': this._enrollSession.data.RetailOrderSummary.customerInfoData.FirstName || '',\r\n 'LastName': this._enrollSession.data.RetailOrderSummary.customerInfoData.LastName || '',\r\n 'Gender': '',\r\n 'BusinessName': this._enrollSession.data.RetailEnroll.BusinessName ? this._enrollSession.data.RetailEnroll.BusinessName : '',\r\n 'TaxId': this._enrollSession.data.RetailEnroll.EINNumber ? this._enrollSession.data.RetailEnroll.EINNumber :\r\n this._enrollSession.data.RetailEnroll.CommissionSSN,\r\n 'TaxIDType': 'SSN',\r\n 'LanguageCode': 'en',\r\n 'OrderRequest': {\r\n 'CurrencyCode': 'USD',\r\n 'Details': this._enrollSession.data?.OrderProductDetalis ? this._enrollSession.data.OrderProductDetalis : this._enrollSession.data.RetailOrderSummary.InitialOrders,\r\n 'ShipMethodID': this._enrollSession.data.RetailEnroll.ShippingMethod,\r\n 'IsShipAmntDiscount': this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.SubTotal >= 250\r\n },\r\n 'PartyID': '',\r\n 'Password': this._enrollSession.data.customertype === 22 && this._enrollSession.data.checkoutwithlimited ? '' : this._enrollSession.data.RetailOrderSummary.customerInfoData.Password,\r\n 'PriceType' : this._enrollSession.data.priceType ? this._enrollSession.data.priceType : '',\r\n 'Payment': {\r\n 'Amount': this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.Total ? this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.Total : 0,\r\n 'BillingAddress': {\r\n 'Address1': this._enrollSession.data.RetailOrderSummary.billingAddressData.address1 ? this._enrollSession.data.RetailOrderSummary.billingAddressData.address1 : '',\r\n 'Address2': this._enrollSession.data.RetailOrderSummary.billingAddressData.address2 ? this._enrollSession.data.RetailOrderSummary.billingAddressData.address2 : '',\r\n 'Address3': ' ',\r\n 'City': this._enrollSession.data.RetailOrderSummary.billingAddressData.City ? this._enrollSession.data.RetailOrderSummary.billingAddressData.City : '',\r\n 'CountryCode': this._enrollSession.data.RetailOrderSummary.billingAddressData.CountryCode ? this._enrollSession.data.RetailOrderSummary.billingAddressData.CountryCode : '',\r\n 'State': this._enrollSession.data.RetailOrderSummary.billingAddressData.State ? this._enrollSession.data.RetailOrderSummary.billingAddressData.State : '',\r\n 'Zip': this._enrollSession.data.RetailOrderSummary.billingAddressData.ZipCode ? this._enrollSession.data.RetailOrderSummary.billingAddressData.ZipCode : '',\r\n 'FirstName': this._enrollSession.data.RetailOrderSummary.billingAddressData.firstName ? this._enrollSession.data.RetailOrderSummary.billingAddressData.firstName : '',\r\n 'LastName': this._enrollSession.data.RetailOrderSummary.billingAddressData.lastName ? this._enrollSession.data.RetailOrderSummary.billingAddressData.lastName : '',\r\n 'BusinessName': ''\r\n },\r\n 'CardNumber': this._enrollSession.data.RetailOrderSummary.paymentTypeData.cardNumber ? this._enrollSession.data.RetailOrderSummary.paymentTypeData.cardNumber : '',\r\n 'CardType': this._enrollSession.data.RetailEnroll.CardType ? this._enrollSession.data.RetailEnroll.CardType : '',\r\n 'CurrencyCode': this._enrollSession.data.RetailEnroll.CurrencyCode ? this._enrollSession.data.RetailEnroll.CurrencyCode : '',\r\n 'ExpirationMonth': this._enrollSession.data.RetailOrderSummary.paymentTypeData.expMonth ? this._enrollSession.data.RetailOrderSummary.paymentTypeData.expMonth : '',\r\n 'ExpirationYear': this._enrollSession.data.RetailOrderSummary.paymentTypeData.expYear ? this._enrollSession.data.RetailOrderSummary.paymentTypeData.expYear : '',\r\n 'NameOnCard': this._enrollSession.data.RetailOrderSummary.paymentTypeData.nameOnCard ? this._enrollSession.data.RetailOrderSummary.paymentTypeData.nameOnCard : '',\r\n 'SavePayment': true,\r\n 'CvcCode': this._enrollSession.data.RetailOrderSummary.paymentTypeData.securityCode ? this._enrollSession.data.RetailOrderSummary.paymentTypeData.securityCode : '',\r\n 'SelectedCc': 1\r\n },\r\n\r\n 'Payment2': {\r\n 'Amount': 0,\r\n 'BillingAddress': {\r\n 'Address1': '',\r\n 'Address2': '',\r\n 'Address3': '',\r\n 'City': '',\r\n 'CountryCode': '',\r\n 'State': '',\r\n 'Zip': ''\r\n },\r\n 'CardNumber': '',\r\n 'CardType': '',\r\n 'CurrencyCode': '',\r\n 'ExpirationMonth': 0,\r\n 'ExpirationYear': 0,\r\n 'NameOnCard': '',\r\n 'SavedPaymentMethodID': '',\r\n 'SavePayment': '',\r\n 'CvcCode': '',\r\n 'SelectedCc': 1\r\n },\r\n 'Phone1': this._enrollSession.data.RetailOrderSummary.customerInfoData.Phone,\r\n 'Phone2': '',\r\n 'MobilePhone': this._enrollSession.data.RetailOrderSummary.customerInfoData.Phone,\r\n 'FaxNumber': '',\r\n 'sendSMS':this._enrollSession.data.RetailOrderSummary.customerInfoData.smsOptIn || false,\r\n 'sendEmails': this._enrollSession.data.RetailOrderSummary.customerInfoData.emailOptIn || false,\r\n 'ShippingAddress': {\r\n 'Address1': this._enrollSession.data.RetailOrderSummary.shippingFormData.address1,\r\n 'City': this._enrollSession.data.RetailOrderSummary.shippingFormData.City,\r\n 'CountryCode': this._enrollSession.data.RetailOrderSummary.shippingFormData.CountryCode,\r\n 'State': this._enrollSession.data.RetailOrderSummary.shippingFormData.State,\r\n 'Zip': this._enrollSession.data.RetailOrderSummary.shippingFormData.ZipCode,\r\n 'FirstName': this._enrollSession.data.RetailOrderSummary.shippingFormData.firstName,\r\n 'LastName': this._enrollSession.data.RetailOrderSummary.shippingFormData.lastName,\r\n 'BusinessName': '',\r\n 'Address2': this._enrollSession.data.RetailOrderSummary.shippingFormData.address2,\r\n 'Address3': ''\r\n },\r\n\r\n 'SiteId': '',\r\n 'SponsorId': this._enrollSession.data.RetailEnroll.SponsorId ? this._enrollSession.data.RetailEnroll.SponsorId : '',\r\n 'EnrollerId': this._enrollSession.data.RetailEnroll.EnrollerId ? this._enrollSession.data.RetailEnroll.EnrollerId : '',\r\n 'StoreID': '',\r\n 'TextNumber': '',\r\n 'Username': this._enrollSession.data.RetailOrderSummary.customerInfoData.Email ? this._enrollSession.data.RetailOrderSummary.customerInfoData.Email : '',\r\n 'WebPageItemID': '',\r\n 'WebPageURL': '',\r\n 'DirectDeposit': {\r\n 'NameOnAccount': this._enrollSession.data.RetailEnroll.CommissionNameOnAccount ? this._enrollSession.data.RetailEnroll.CommissionNameOnAccount : '',\r\n 'BankAccountNumber': this._enrollSession.data.RetailEnroll.CommissionAccNo ? this._enrollSession.data.RetailEnroll.CommissionAccNo : '',\r\n 'BankRoutingNumber': this._enrollSession.data.RetailEnroll.CommissionRoutingNo ? this._enrollSession.data.RetailEnroll.CommissionRoutingNo : '',\r\n 'DepositAccountType': '',\r\n 'BankName': this._enrollSession.data.RetailEnroll.CommissionBankName ? this._enrollSession.data.RetailEnroll.CommissionBankName : '',\r\n 'BankAddress': '',\r\n 'BankCity': '',\r\n 'BankState': '',\r\n 'BankZip': '',\r\n 'BankCountry': '',\r\n 'Iban': '',\r\n 'SwiftCode': ''\r\n },\r\n 'BillingAddressPreference': this._enrollSession.data.RetailEnroll.BillAddress === 'yes' ? 0 : 1,\r\n 'CommissionPayableType': '',\r\n 'CommissionPayableTo': this._enrollSession.data.RetailEnroll.payAbleTo ? this._enrollSession.data.RetailEnroll.payAbleTo : '',\r\n 'HasRequestedOptIn': (this._enrollSession.data.RetailEnroll.ReceiveText || this._enrollSession.data.RetailEnroll.ReceiveEmail) ? true : false,\r\n 'IsNotBackOffice': this._enrollSession.data.customertype === 22 && this._enrollSession.data.checkoutwithlimited ? true : false,\r\n 'GiftCardCode': '',\r\n 'UsePrimaryCard': this._enrollSession.data.usePrimaryCard ? this._enrollSession.data.usePrimaryCard : '',\r\n 'SMSOptIn': this._enrollSession.data.RetailOrderSummary.customerInfoData.smsOptIn || false,\r\n 'EmailOptIn': this._enrollSession.data.RetailOrderSummary.customerInfoData.emailOptIn || false,\r\n \"AutoOrderProcessType\": this.SubscriptionProcessType \r\n };\r\n if (this._enrollSession.data.SmartOrderProductDetalis && this._enrollSession.data.SmartOrderProductDetalis.length > 0 && this._enrollSession.data.RetailOrderSummary && this._enrollSession.data.RetailOrderSummary.SmartOrders && this._enrollSession.data.RetailOrderSummary.SmartOrders.length>0) {\r\n request.AutoOrderRequest =\r\n {\r\n 'AutoOrderCartID': '',\r\n 'AutoShipStartDate': this.SmartOrderDate,\r\n 'AutoshipType': 0,\r\n 'BeginMonth': 0,\r\n 'Details': this._enrollSession.data.SmartOrderProductDetalis,\r\n 'ShipMethodID': this._enrollSession.data.RetailEnroll.ShippingMethod\r\n };\r\n }\r\n if ((this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.Total === 0 &&\r\n this._enrollSession.data.RetailEnroll.IsNonprofit && this._enrollSession.data.FileUploaded)) {\r\n request.Payment.BillingAddress = {};\r\n }\r\n this._restService.SubmitApplication(request).subscribe((result: any) => {\r\n this.submissionInProgress = false;\r\n if (result) {\r\n this._enrollSession.submitApplicationData = result;\r\n sessionStorage.setItem('submitApplicationData', JSON.stringify(this._enrollSession.submitApplicationData));\r\n this._enrollSession.data.RetailEnroll.orderDetails = result;\r\n if (result.OrderID > 0) {\r\n if (this._enrollSession.data.FileUploaded) {\r\n this.FunUploadDocument();\r\n }\r\n this._route.navigate(['/Confirmation']);\r\n } else {\r\n this._toastr.error(result.Result.errorsField, 'Error');\r\n\r\n }\r\n } else {\r\n this._toastr.error('Something went wrong please try again', 'Error');\r\n\r\n }\r\n }, (err) => {\r\n this.submissionInProgress = false;\r\n this._toastr.error('Something went wrong please try again', 'Error');\r\n\r\n }, () => {\r\n\r\n });\r\n }\r\n getCustomerSite(webAlias, type): void {\r\n try {\r\n if (webAlias) {\r\n const request = '?WebAlias=' + webAlias;\r\n this._restService.GetCustomerSite(request).subscribe((result: any) => {\r\n if (type === 1) {\r\n if (result.Data) {\r\n\r\n this._enrollSession.data.RetailEnroll = this._enrollSession.data.RetailEnroll || {};\r\n this._enrollSession.data.RetailEnroll.SponsorId = result.Data.customerIDField;\r\n this._enrollSession.data.RetailEnroll.EnrollerId = result.Data.customerIDField;\r\n this._enrollSession.data.RetailEnroll.webAliasField = result.Data.webAliasField;\r\n this._enrollSession.data.CustomerWebAlias = result.Data.webAliasField;\r\n this._enrollSession.data.ValidGiftCardCode = this._enrollSession.data.RetailEnroll.webAliasField;\r\n this._enrollSession.data.RetailEnroll.webAlias = result.Data.firstNameField + ' ' + result.Data.lastNameField;\r\n this._enrollSession.data.ReferredBy = result.Data.webAliasField;\r\n this._enrollSession.data.RetailEnroll.isValidwebalias = true;\r\n\r\n } else {\r\n this._enrollSession.data.RetailEnroll.isValidwebalias = 'false';\r\n this._toastr.error('Invalid WebAlias.', 'Error');\r\n this._enrollSession.data.CustomerWebAlias = '';\r\n this._enrollSession.data.ReferredBy = '';\r\n this._enrollSession.data.RetailOrderSummary.referredFormData.referralCode = '';\r\n }\r\n }\r\n else {\r\n if (result.Data) {\r\n this._enrollSession.data.ReferredByGiftCard = '';\r\n this._enrollSession.data.RetailOrderSummary.referredFormData.referralCode = '';\r\n this._toastr.error('This Referral Code is not Available', 'Error');\r\n }\r\n else {\r\n this._toastr.success('Referral Code Available', 'Success');\r\n }\r\n }\r\n }, (err) => {\r\n console.log(err);\r\n this._enrollSession.data.RetailOrderSummary.referredFormData.referralCode = '';\r\n this._toastr.error('Somthing is wrong Please try again.', 'Error');\r\n }, () => {\r\n\r\n });\r\n }\r\n } catch (e) {\r\n this._toastr.error('Somthing is wrong Please try again.', 'Error');\r\n }\r\n }\r\n regexValidateZip1(event): void {\r\n const billingAddressForm = this.billingAddressForm ? this.billingAddressForm.getRawValue() : {};\r\n const regxExp = this._RgetRegexService.getRegex(billingAddressForm.CountryCode);\r\n const filter = new RegExp(regxExp);\r\n if (filter.test(event.target.value)) {\r\n this.invalidzip1 = false;\r\n } else if (event.target.value && (event.target.value.indexOf(' ') !== 0)) {\r\n this.invalidzip1 = true;\r\n }\r\n else {\r\n this.invalidzip1 = false;\r\n }\r\n }\r\n FunUploadDocument(): void {\r\n\r\n const file = new FormData();\r\n\r\n\r\n const byteString = atob(this._enrollSession.data.FileData.split(',')[1]);\r\n\r\n const ab = new ArrayBuffer(byteString.length);\r\n\r\n const ia = new Uint8Array(ab);\r\n for (let i = 0; i < byteString.length; i++) {\r\n ia[i] = byteString.charCodeAt(i);\r\n\r\n }\r\n const type = this._enrollSession.data.FileName.substring(this._enrollSession.data.FileName.lastIndexOf('.') + 1);\r\n\r\n const bb = new Blob([ab], { type: type });\r\n\r\n file.append('FileName', this._enrollSession.data.FileName);\r\n file.append('CustomerId', this._enrollSession.data.RetailEnroll.orderDetails.CustomerID);\r\n file.append('Image', bb);\r\n\r\n this._enrollSession.data.FileData = file;\r\n\r\n const request = new XMLHttpRequest();\r\n request.onreadystatechange = () => {\r\n if (request.readyState === 4 && request.status === 200) {\r\n if (request.status === 200) {\r\n\r\n }\r\n }\r\n };\r\n let requestWebServiceUrl = '';\r\n requestWebServiceUrl = API_URL + 'api/NonProfitEnrollment/UploadFile';\r\n request.open('POST', requestWebServiceUrl, true);\r\n request.setRequestHeader('Accept', 'application/json');\r\n\r\n\r\n request.send(file);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { MatButtonModule } from '@angular/material/button';\r\n// import { MatDividerModule } from '@angular/material/divider';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\n// import { MatSlideToggleModule } from '@angular/material/slide-toggle';\r\nimport * as _ from 'underscore';\r\n// import { MatSelectModule } from '@angular/material/select';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { NgxChartsModule } from '@swimlane/ngx-charts';\r\nimport { NgpSortModule } from 'ngp-sort-pipe';\r\nimport { FilterPipeModule } from 'ngx-filter-pipe';\r\n// import { MatDialogModule } from '@angular/material/dialog';\r\nimport { CheckoutComponent } from './checkout.component';\r\nimport { SummaryCartModule } from '../summary-cart/summary-cart.module';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { StepperModule } from '../stepper/stepper.module';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'Checkout',\r\n component: CheckoutComponent\r\n }\r\n];\r\n@NgModule({\r\n declarations: [\r\n CheckoutComponent\r\n ],\r\n imports: [\r\n RouterModule.forChild(routes),\r\n\r\n MatButtonModule,\r\n // MatDividerModule,\r\n MatFormFieldModule,\r\n MatIconModule,\r\n MatMenuModule,\r\n // MatSelectModule,\r\n MatTableModule,\r\n MatTabsModule,\r\n NgpSortModule,\r\n NgxChartsModule,\r\n FilterPipeModule,\r\n SummaryCartModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n FlexLayoutModule,\r\n StepperModule\r\n\r\n // MatSlideToggleModule,\r\n // MatDialogModule\r\n ],\r\n exports: [\r\n RouterModule,\r\n FlexLayoutModule\r\n ],\r\n entryComponents: [\r\n\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class CheckoutModule { }\r\n","// my-loader.component.ts\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { LoaderService } from '../../loader.service';\r\n\r\n@Component({\r\n selector: 'app-my-loader',\r\n templateUrl: './my-loader.component.html',\r\n styleUrls: ['./my-loader.component.scss']\r\n})\r\nexport class MyLoaderComponent implements OnInit {\r\n\r\n loading: boolean;\r\n\r\n constructor(private loaderService: LoaderService) {\r\n\r\n this.loaderService.isLoading.subscribe((v) => {\r\n this.loading = v;\r\n }, (err) => {\r\n });\r\n\r\n }\r\n ngOnInit(): void {\r\n }\r\n}\r\n","\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
","import { NgModule } from '@angular/core';\r\nimport {ShippingModule} from './Shipping/Shipping.module';\r\nimport { ConfirmationModule } from './Confirmation/Confirmation.module';\r\nimport { SubscribeModule } from './Subscriptions/Subscribe.module';\r\nimport { CheckoutModule } from './checkout/checkout.module';\r\nimport { SummaryCartModule } from './summary-cart/summary-cart.module';\r\nimport { PipesModule } from './pipe/pipe.module';\r\nimport { StepperModule } from './stepper/stepper.module';\r\nimport { TodaysOrderModule } from './Todays-order/Todays-order.module';\r\n// import { SubscribeDialogComponent } from './subscribe-dialog/subscribe-dialog.component';\r\n@NgModule({\r\n imports: [\r\n TodaysOrderModule,\r\n SubscribeModule,\r\n ShippingModule,\r\n ConfirmationModule,\r\n CheckoutModule,\r\n SummaryCartModule,\r\n PipesModule,\r\n StepperModule\r\n\r\n ],\r\n exports: [\r\n TodaysOrderModule,\r\n SubscribeModule,\r\n ShippingModule,\r\n ConfirmationModule,\r\n CheckoutModule,\r\n PipesModule,\r\n ],\r\n declarations: [\r\n // SubscribeDialogComponent\r\n\r\n ]\r\n})\r\nexport class PagesModule\r\n{\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { SearchPipe } from './search-pipe';\r\n\r\n@NgModule({\r\n declarations: [\r\n SearchPipe\r\n ],\r\n imports : [],\r\n exports : [\r\n SearchPipe\r\n ]\r\n})\r\nexport class PipesModule\r\n{\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'search'\r\n})\r\nexport class SearchPipe implements PipeTransform {\r\n\r\n transform(value: any, keys: string, term: string) {\r\n if (!term) {\r\n return value;\r\n }\r\n return (value || []).filter((item) => keys.split(',').some(key => item.hasOwnProperty(key) && new RegExp(term, 'gi').test(item[key])));\r\n }\r\n\r\n}","
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"image\"\r\n
\r\n
\r\n {{title}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { EnrollSessionService } from 'app/shared/enrollSession.service';\r\n\r\n@Component({\r\n selector: 'app-stepper',\r\n templateUrl: './stepper.component.html',\r\n styleUrls: ['./stepper.component.scss']\r\n})\r\nexport class StepperComponent implements OnInit {\r\n steps=[\r\n {\r\n stepper_title:[\"TODAY\",\"SUBSCRIBE\",\"SHIPPING\",\"CHECKOUT\"],\r\n stepper_back:'',\r\n stepper_images:[],\r\n routes:[]\r\n }\r\n ];\r\n \r\n current_stepper_title:any='';\r\n constructor(\r\n private _activateRoute: ActivatedRoute,\r\n public _enrollSession: EnrollSessionService,\r\n ) {\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n console.log('path');\r\n this.current_stepper_title=this._activateRoute.snapshot.url[0].path;\r\n console.log(this.current_stepper_title);\r\n // switch case for images and routerlink\r\n switch (this.current_stepper_title) {\r\n case 'TodaysOrder':\r\n this.steps[0].stepper_back=\"\"\r\n this.steps[0].stepper_images=[\"assets/images/stepper-logo/Step-1-Green.svg\",\r\n \"assets/images/stepper-logo/Step-2-Gray.svg\",\r\n \"assets/images/stepper-logo/Step-3-Gray.svg\",\r\n \"assets/images/stepper-logo/Step-4-Gray.svg\"\r\n ]\r\n this.steps[0].routes=[\"../TodaysOrder\",\"\",\"\",\"\"] \r\n console.log(this.steps[0].stepper_images);\r\n break;\r\n\r\n case 'Subscribe':\r\n console.log(this.current_stepper_title,this.steps[0].stepper_images);\r\n this.steps[0].stepper_back=\"../TodaysOrder\"\r\n this.steps[0].stepper_images=[\"assets/images/stepper-logo/Circle-Check.svg\",\r\n \"assets/images/stepper-logo/Step-2-Green.svg\",\r\n \"assets/images/stepper-logo/Step-3-Gray.svg\",\r\n \"assets/images/stepper-logo/Step-4-Gray.svg\",\r\n ]\r\n this.steps[0].routes=[\"../TodaysOrder\",\"../Subscribe\",\"\",\"\"] \r\n break;\r\n\r\n\r\n case 'Shipping':\r\n console.log(this.current_stepper_title,this.steps[0].stepper_images);\r\n this.steps[0].stepper_back=\"../Subscribe\"\r\n this.steps[0].stepper_images=[\"assets/images/stepper-logo/Circle-Check.svg\",\r\n \"assets/images/stepper-logo/Circle-Check.svg\",\r\n \"assets/images/stepper-logo/Step-3-Green.svg\",\r\n \"assets/images/stepper-logo/Step-4-Gray.svg\"\r\n ]\r\n this.steps[0].routes=[\"../TodaysOrder\",\"../Subscribe\",\"../Shipping\",\"\"] \r\n console.log(this.steps[0].stepper_images);\r\n break;\r\n\r\n\r\n case 'Checkout':\r\n console.log(this.current_stepper_title,this.steps[0].stepper_images);\r\n this.steps[0].stepper_back=\"../Shipping\"\r\n this.steps[0].stepper_images=[\"assets/images/stepper-logo/Circle-Check.svg\",\r\n \"assets/images/stepper-logo/Circle-Check.svg\",\r\n \"assets/images/stepper-logo/Circle-Check.svg\",\r\n \"assets/images/stepper-logo/Step-4-Green.svg\"\r\n ]\r\n this.steps[0].routes=[\"../TodaysOrder\",\"../Subscribe\",\"../Shipping\",\"../Checkout\"] \r\n \r\n console.log(this.steps[0].stepper_images);\r\n break;\r\n\r\n }\r\n //switch close\r\n\r\n }\r\n \r\n hide(i)\r\n {\r\n if(this.steps[0].stepper_title.length-1==i)\r\n {\r\n return false;\r\n }\r\n else\r\n {\r\n return true;\r\n }\r\n }\r\n\r\n\r\n\r\n}\r\n \r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { StepperComponent } from './stepper.component';\r\nimport { RouterModule } from '@angular/router';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { MatIconModule } from '@angular/material/icon';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n\r\n StepperComponent\r\n\r\n ],\r\n imports: [\r\n CommonModule,\r\n FlexLayoutModule,\r\n MatIconModule,\r\n RouterModule\r\n ],\r\n exports: [\r\n StepperComponent\r\n ]\r\n})\r\nexport class StepperModule { }\r\n","\r\n
\r\n \r\n \r\n \r\n

ORDER SUMMARY

\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
Subtotal
\r\n
Shipping
\r\n
Taxes
\r\n
\r\n
\r\n
---
\r\n
---
\r\n
---
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Your Total:
\r\n
\r\n
\r\n
---
\r\n
\r\n
\r\n \r\n
0) || (_enrollSession.data.RetailOrderSummary.InitialOrders && _enrollSession.data.RetailOrderSummary.InitialOrders.length > 0) || (_enrollSession.data.RetailOrderSummary.SmartOrders && _enrollSession.data.RetailOrderSummary.SmartOrders.length > 0))\">\r\n
0)\">\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \"\"\r\n\r\n
{{item.Description}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{item.Quantity}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{item.Quantity}}
\r\n
= 200\">${{item.Price |number :\r\n '1.2-2'}} USD
\r\n
${{item.RetailPrice |number :\r\n '1.2-2'}} USD
\r\n
\r\n edit\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \"\"\r\n
\r\n
{{ _enrollSession.data.RetailOrderSummary.InitialOrderDetails.ColoradoRetailDeliveryFees.description }}
\r\n\r\n
{{ _enrollSession.data.RetailOrderSummary.InitialOrderDetails.ColoradoRetailDeliveryFees.quantity }}
\r\n\r\n
${{ _enrollSession.data.RetailOrderSummary.InitialOrderDetails.ColoradoRetailDeliveryFees.price |number : '1.2-2'}} USD
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n
0\">\r\n
0)\">
\r\n
\r\n
\r\n
Today's Order
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"\"\r\n\r\n
{{item.Description}}
\r\n
\r\n {{item.Quantity}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{item.Quantity}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{item.Quantity}}
\r\n
= 200\">${{item.Price |number :\r\n '1.2-2'}} USD
\r\n
${{item.RetailPrice |number :\r\n '1.2-2'}} USD
\r\n
\r\n \r\n
\r\n close\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n 0 || _enrollSession.data.RetailOrderSummary.InitialOrders && _enrollSession.data.RetailOrderSummary.InitialOrders.length > 0 || _enrollSession.data.RetailOrderSummary.AddOnOrders && _enrollSession.data.RetailOrderSummary.AddOnOrders.length > 0\">\r\n
\r\n
\r\n
Sub Total
\r\n
Shipping
\r\n
Taxes
\r\n
Your Total
\r\n
\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.InitialOrderDetails.SubTotal |number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.InitialOrderDetails.ShippingTotal\r\n |number : '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.InitialOrderDetails.Tax|number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.InitialOrderDetails.Total|number :\r\n '1.2-2'}} USD\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Sub Total
\r\n
Shipping
\r\n
Taxes
\r\n
Your Total
\r\n
\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.InitialOrderDetails.SubTotal |number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.InitialOrderDetails.ShippingTotal\r\n |number : '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.InitialOrderDetails.Tax|number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.InitialOrderDetails.Total|number :\r\n '1.2-2'}} USD\r\n
\r\n
\r\n
\r\n
\r\n 0\">\r\n
\r\n
\r\n
\r\n
\r\n
Smart Order Subscription
\r\n
\r\n
\r\n {{_enrollSession.data.smartOrderDate ? _enrollSession.data.smartOrderDate :\r\n '--/--/----'}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"\"\r\n\r\n
{{item.Description}}
\r\n
\r\n {{item.Quantity}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{item.Quantity}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
${{item.Price |number : '1.2-2'}} USD
\r\n \r\n
\r\n \r\n close\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
0 && _enrollSession.data.RetailOrderSummary?.shippingFormData?.State == 'CO'\" style=\"margin-bottom: 10px;\">\r\n
\r\n \"\"\r\n
\r\n
{{ _enrollSession.data.RetailOrderSummary.InitialOrderDetails.ColoradoRetailDeliveryFees?.description }}
\r\n\r\n
{{ _enrollSession.data.RetailOrderSummary.InitialOrderDetails.ColoradoRetailDeliveryFees?.quantity }}
\r\n\r\n
${{ _enrollSession.data.RetailOrderSummary.InitialOrderDetails.ColoradoRetailDeliveryFees?.price |number : '1.2-2'}} USD
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Sub Total
\r\n
Shipping
\r\n
Taxes
\r\n
Smart Order Total
\r\n
\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.SmartOrderDetails?.SubTotal |number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.SmartOrderDetails?.ShippingTotal |number\r\n : '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.SmartOrderDetails?.Tax|number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.SmartOrderDetails?.Total|number :\r\n '1.2-2'}} USD\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Sub Total
\r\n
Shipping
\r\n
Taxes
\r\n
Smart Order Total
\r\n
\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.SmartOrderDetails?.SubTotal |number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.SmartOrderDetails?.ShippingTotal |number\r\n : '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.SmartOrderDetails?.Tax|number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.SmartOrderDetails?.Total|number :\r\n '1.2-2'}} USD\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n\r\n\r\n\r\n\r\n\r\n
\r\n

ORDER SUMMARY

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
Subtotal
\r\n
Shipping
\r\n
Taxes
\r\n
\r\n
\r\n
---
\r\n
---
\r\n
---
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Your Total:
\r\n
\r\n
\r\n
---
\r\n
\r\n
\r\n \r\n
0) || (_enrollSession.data.RetailOrderSummary.InitialOrders && _enrollSession.data.RetailOrderSummary.InitialOrders.length > 0) || (_enrollSession.data.RetailOrderSummary.SmartOrders && _enrollSession.data.RetailOrderSummary.SmartOrders.length > 0))\">\r\n
0)\">\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \"\"\r\n\r\n
{{item.Description}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{item.Quantity}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{item.Quantity}}
\r\n
= 200\">${{item.Price |number : '1.2-2'}}\r\n USD
\r\n
\r\n ${{item.RetailPrice |number : '1.2-2'}} USD
\r\n
\r\n Edit\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n
\r\n \"\"\r\n
\r\n
{{ _enrollSession.data.RetailOrderSummary.InitialOrderDetails.ColoradoRetailDeliveryFees.description }}
\r\n\r\n
{{ _enrollSession.data.RetailOrderSummary.InitialOrderDetails.ColoradoRetailDeliveryFees.quantity }}
\r\n\r\n
${{ _enrollSession.data.RetailOrderSummary.InitialOrderDetails.ColoradoRetailDeliveryFees.price |number : '1.2-2'}} USD
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n
0)\">
\r\n
0\">\r\n
\r\n
\r\n
Today's Order
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"\"\r\n\r\n\r\n
{{item.Description}}
\r\n
{{item.Quantity}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{item.Quantity}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{item.Quantity}}
\r\n
= 200\">${{item.Price |number : '1.2-2'}}\r\n USD
\r\n
\r\n ${{item.RetailPrice |number : '1.2-2'}} USD
\r\n
\r\n \r\n
\r\n \r\n close\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n 0 || _enrollSession.data.RetailOrderSummary.InitialOrders && _enrollSession.data.RetailOrderSummary.InitialOrders.length > 0 || _enrollSession.data.RetailOrderSummary.AddOnOrders && _enrollSession.data.RetailOrderSummary.AddOnOrders.length > 0\">\r\n
\r\n
\r\n
Sub Total
\r\n
Shipping
\r\n
Tax
\r\n
Order Total
\r\n
\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.InitialOrderDetails.SubTotal |number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.InitialOrderDetails.ShippingTotal |number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.InitialOrderDetails.Tax|number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.InitialOrderDetails.Total|number : '1.2-2'}}\r\n USD\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Sub Total
\r\n
Shipping
\r\n
Taxes
\r\n
Your Total
\r\n
\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.InitialOrderDetails.SubTotal |number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.InitialOrderDetails.ShippingTotal |number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.InitialOrderDetails.Tax|number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.InitialOrderDetails.Total|number : '1.2-2'}}\r\n USD\r\n
\r\n
\r\n
\r\n
\r\n 0\">\r\n
\r\n
\r\n
\r\n
\r\n
Smart Order Subscription
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{_enrollSession.data.smartOrderDate ? _enrollSession.data.smartOrderDate :\r\n '--/--/----'}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"\"\r\n\r\n
{{item.Description}}
\r\n
{{item.Quantity}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{item.Quantity}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
= 200\">${{item.Price |number :\r\n '1.2-2'}} USD
\r\n
${{item.RetailPrice |number :\r\n '1.2-2'}} USD
\r\n \r\n \r\n
\r\n close\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
0 && _enrollSession.data.RetailOrderSummary?.shippingFormData?.State == 'CO'\" style=\"margin-bottom: 10px;\">\r\n
\r\n \"\"\r\n
\r\n
{{ _enrollSession.data.RetailOrderSummary.InitialOrderDetails.ColoradoRetailDeliveryFees?.description }}
\r\n\r\n
{{ _enrollSession.data.RetailOrderSummary.InitialOrderDetails.ColoradoRetailDeliveryFees?.quantity }}
\r\n\r\n
${{ _enrollSession.data.RetailOrderSummary.InitialOrderDetails.ColoradoRetailDeliveryFees?.price |number : '1.2-2'}} USD
\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
Sub Total
\r\n
Shipping
\r\n
Taxes
\r\n
Smart Order Total
\r\n
\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.SmartOrderDetails?.SubTotal |number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.SmartOrderDetails?.ShippingTotal |number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.SmartOrderDetails?.Tax|number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.SmartOrderDetails?.Total|number : '1.2-2'}}\r\n USD\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Sub Total
\r\n
Shipping
\r\n
Taxes
\r\n
Smart Order Total
\r\n
\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.SmartOrderDetails?.SubTotal |number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.SmartOrderDetails?.ShippingTotal |number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.SmartOrderDetails?.Tax|number :\r\n '1.2-2'}}\r\n
\r\n
\r\n ${{_enrollSession.data.RetailOrderSummary.SmartOrderDetails?.Total|number : '1.2-2'}}\r\n USD\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
","import { Component, EventEmitter, HostListener, Input, OnInit, Output, ChangeDetectorRef, OnDestroy } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { Router } from '@angular/router';\r\nimport { CalculateAutoOrderService } from 'app/shared/calculateAutoOrder.service';\r\nimport { EnrollSessionService } from 'app/shared/enrollSession.service';\r\nimport * as _ from 'underscore';\r\nimport { SubscribeDialogComponent } from 'app/shared/subscribe-dialog/subscribe-dialog.component';\r\nimport { GetDiscountedItemsService } from 'app/shared/getDiscountedItems.service';\r\nimport { CalculateRetailInitialOrderService } from 'app/shared/calculateRetailInitialOrder.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport { SharedMethodService } from 'app/shared/sharedMethod.service';\r\nimport { CalculateRetailSmartOrderService } from 'app/shared/CalculateRetailSmartOrder.service';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { CalculateRetailOrderService } from 'app/shared/calculateRetailOrder.service';\r\n\r\n@Component({\r\n selector: 'summary-cart',\r\n templateUrl: './summary-cart.component.html',\r\n styleUrls: ['./summary-cart.component.scss']\r\n})\r\nexport class SummaryCartComponent implements OnInit, OnDestroy {\r\n @Input() routPath: any;\r\n @Input() customerInfoForm: any;\r\n @Input() shippingForm: any;\r\n @Input() shippingMethodForm: any;\r\n @Input() referredForm: any;\r\n @Input() billingAddressForm: any;\r\n @Input() paymentTypeForm: any;\r\n @Input() subscribeDialogShow: any;\r\n @Output() submitApplication = new EventEmitter();\r\n dialogRef: any;\r\n currentRouterPath: any;\r\n finalShippingMethod: any;\r\n siteType: any;\r\n private _unsubscribeAll: Subject;\r\n constructor(\r\n private _toastr: ToastrService,\r\n private _matDialog: MatDialog,\r\n private router: Router,\r\n public _enrollSession: EnrollSessionService,\r\n public _calculateAutoOrder: CalculateAutoOrderService,\r\n private _calculateRetailInitialOrder: CalculateRetailInitialOrderService,\r\n private _calculateRetailSmartOrder: CalculateRetailSmartOrderService,\r\n public _sharedMethodService: SharedMethodService,\r\n public _calculateRetailOrderService: CalculateRetailOrderService,\r\n private ref: ChangeDetectorRef,\r\n ) {\r\n if (this._enrollSession.data.RetailOrderSummary == null) {\r\n this.router.navigate(['/TodaysOrder']);\r\n }\r\n this._unsubscribeAll = new Subject();\r\n this.finalShippingMethod = this.finalShippingMethod || 0;\r\n this.siteType = sessionStorage.getItem(\"siteType\");\r\n }\r\n\r\n ngOnInit(): void { \r\n this._calculateRetailOrderService.cartSubtotal = 0;\r\n var cartSubTotal = 0;\r\n _.each(this._enrollSession.data.RetailOrderSummary.InitialOrders, function (item) {\r\n if (item.ItemCode !== \"7800GC\") {\r\n cartSubTotal += parseFloat(item.RetailPrice) * parseInt(item.Quantity, 10);\r\n }\r\n });\r\n _.each(this._enrollSession.data.RetailOrderSummary.Enrollpack, function (item) {\r\n if (item.ItemCode !== \"7800GC\") {\r\n cartSubTotal += parseFloat(item.RetailPrice) * parseInt(item.Quantity, 10);\r\n }\r\n });\r\n this._calculateRetailOrderService.cartSubtotal = cartSubTotal;\r\n this.currentRouterPath = this.router.url.split('?')[0];\r\n this._sharedMethodService.checkSubTotal.pipe(takeUntil(this._unsubscribeAll)).subscribe(res => {\r\n if (res) {\r\n if (this._enrollSession.data.RetailEnroll.ShippingMethod) {\r\n this.finalShippingMethod = this._enrollSession.data.RetailEnroll.ShippingMethod;\r\n } else {\r\n this.finalShippingMethod = '';\r\n }\r\n this._calculateRetailInitialOrder.calculate(this.finalShippingMethod);\r\n }\r\n })\r\n }\r\n ngOnDestroy(): void {\r\n this._unsubscribeAll.next();\r\n this._unsubscribeAll.complete();\r\n }\r\n subscribeDialog() {\r\n if (this.currentRouterPath == \"/Subscribe\" && this._enrollSession.data.RetailOrderSummary && this._enrollSession.data.RetailOrderSummary.SmartOrders && this._enrollSession.data.RetailOrderSummary.SmartOrders.length > 0) {\r\n this.router.navigate(['/', this.routPath]);\r\n }\r\n else if (this.currentRouterPath == \"/Subscribe\") {\r\n this.dialogRef = this._matDialog.open(SubscribeDialogComponent, {\r\n width: '500px',\r\n maxWidth: '500px',\r\n height: '356px',\r\n panelClass: '',\r\n disableClose: true\r\n });\r\n this.dialogRef.afterClosed()\r\n .subscribe(response => {\r\n if (!response) {\r\n return;\r\n } else {\r\n if (response == 'false') {\r\n this.router.navigate(['/', this.routPath])\r\n }\r\n if (response == 'true') {\r\n return\r\n }\r\n }\r\n\r\n });\r\n\r\n }\r\n }\r\n onSubmitApplication() {\r\n this.submitApplication.emit();\r\n }\r\n onClickChange() {\r\n if (this.customerInfoForm || this.shippingForm || this.shippingMethodForm) {\r\n if (this.shippingForm && this._enrollSession.data.RetailOrderSummary.shippingFormData.address2 == undefined) {\r\n this._enrollSession.data.RetailOrderSummary.shippingFormData.address2 = \"\";\r\n }\r\n if (this.customerInfoForm.invalid || this.shippingForm.invalid || this.shippingMethodForm.invalid) {\r\n if (this.customerInfoForm.invalid) {\r\n this.validateAllFormFields(this.customerInfoForm);\r\n }\r\n if (this.shippingForm.invalid) {\r\n this.validateAllFormFields(this.shippingForm);\r\n }\r\n if (this.shippingMethodForm.invalid) {\r\n this.validateAllFormFields(this.shippingMethodForm);\r\n }\r\n this._toastr.error('Please fill all required fields', 'error');\r\n return;\r\n }\r\n }\r\n\r\n if (this.referredForm || this.billingAddressForm || this.paymentTypeForm) {\r\n if (this.billingAddressForm && this._enrollSession.data.RetailOrderSummary.billingAddressData.address2 == undefined) {\r\n this._enrollSession.data.RetailOrderSummary.billingAddressData.address2 = \"\";\r\n }\r\n if (this.referredForm.invalid || this.billingAddressForm.invalid || this.paymentTypeForm.invalid) {\r\n if (this.referredForm.invalid) {\r\n this.validateAllFormFields(this.referredForm);\r\n this._toastr.error('Please fill the referral code', 'error');\r\n }\r\n if (this.billingAddressForm.invalid) {\r\n this.validateAllFormFields(this.billingAddressForm);\r\n this._toastr.error('Please fill all required fields', 'error');\r\n }\r\n if (this.paymentTypeForm.invalid) {\r\n this.validateAllFormFields(this.paymentTypeForm);\r\n this._toastr.error('Please fill all required fields', 'error');\r\n }\r\n \r\n return;\r\n }\r\n }\r\n if (this.currentRouterPath == \"/Shipping\" && this._enrollSession.data.RetailOrderSummary && this._enrollSession.data.RetailOrderSummary.SmartOrders && this._enrollSession.data.RetailOrderSummary.SmartOrders.length > 0 && (this._enrollSession.data.smartOrderDate == undefined || this._enrollSession.data.smartOrderDate == null || this._enrollSession.data.smartOrderDate == '')) {\r\n this._toastr.error('Please select Smart Order Date', 'error');\r\n return;\r\n }\r\n if (this.routPath != \"\" && this.routPath != null && this.routPath != \"Shipping\") {\r\n this.router.navigate(['/', this.routPath]);\r\n }\r\n }\r\n removedOrder(index, Quantity, parentId, orderType) {\r\n if (orderType == 'todayOrder') {\r\n this.removeInitOrder({ index: index, Quantity: Quantity, parentId: parentId });\r\n }\r\n if (orderType == 'smartOrder') {\r\n this.removeSmartOrder({ index: index, Quantity: Quantity, parentId: parentId });\r\n }\r\n if (orderType == 'transformation') {\r\n this.EditTransformPack();\r\n }\r\n if((this._enrollSession.data.RetailOrderSummary == undefined) || this._enrollSession.data.RetailOrderSummary.InitialOrders==undefined || (this._enrollSession.data.RetailOrderSummary && this._enrollSession.data.RetailOrderSummary.InitialOrders?.length == 0)){\r\n this._toastr.warning(\"Please select an item\", 'Warning');\r\n this.router.navigate(['/TodaysOrder']);\r\n }\r\n }\r\n\r\n\r\n // ****removeSmartOrder****/\r\n removeSmartOrder(Value: any): any {\r\n this._enrollSession.data.CartQuantity = this._enrollSession.data.CartQuantity - Value.Quantity;\r\n for (let arrIndex = 0; arrIndex < this._enrollSession.data.RetailOrderSummary.SmartOrders.length; arrIndex++) {\r\n if ((!this._enrollSession.data.RetailOrderSummary.SmartOrders[arrIndex].ParentId ||\r\n this._enrollSession.data.RetailOrderSummary.SmartOrders[arrIndex].ParentId === Value.parentId) &&\r\n this._enrollSession.data.RetailOrderSummary.SmartOrders[arrIndex].ItemCode === Value.parentId) {\r\n this._enrollSession.data.RetailOrderSummary.SmartOrders.splice(arrIndex, 1);\r\n }\r\n }\r\n\r\n this._enrollSession.data.RetailOrderSummary.SmartOrders = _.filter(this._enrollSession.data.RetailOrderSummary.SmartOrders, (item) => {\r\n return item.ParentId !== Value.parentId;\r\n });\r\n const filterResult = _.filter(this._enrollSession.data.RetailOrderSummary.SmartOrders, (item) => {\r\n return item.ParentId !== undefined;\r\n });\r\n this._enrollSession.data.SmartOrderSubItems = _.groupBy(filterResult, 'ParentId');\r\n\r\n this._enrollSession.data.SmartOrdersSubTotal = 0;\r\n this._enrollSession.data.SmartOrderBVTotal = 0;\r\n _.each(this._enrollSession.data.RetailOrderSummary.SmartOrders, (item) => {\r\n this._enrollSession.data.SmartOrdersSubTotal = this._enrollSession.data.SmartOrdersSubTotal + (item.Quantity * item.Price);\r\n this._enrollSession.data.SmartOrderBVTotal = this._enrollSession.data.SmartOrderBVTotal + (item.Quantity * item.BV);\r\n });\r\n if (this._enrollSession.data.RetailEnroll.ShippingMethod) {\r\n this.finalShippingMethod = this._enrollSession.data.RetailEnroll.ShippingMethod;\r\n } else {\r\n this.finalShippingMethod = '';\r\n }\r\n this._calculateRetailSmartOrder.calculate(this.finalShippingMethod);\r\n }\r\n\r\n // ****removeInitOrder****/\r\n removeInitOrder(Value: any): any {\r\n this._enrollSession.data.CartQuantity = this._enrollSession.data.CartQuantity - Value.Quantity;\r\n for (let arrIndex = 0; arrIndex < this._enrollSession.data.RetailOrderSummary.InitialOrders.length; arrIndex++) {\r\n if ((!this._enrollSession.data.RetailOrderSummary.InitialOrders[arrIndex].ParentId ||\r\n this._enrollSession.data.RetailOrderSummary.InitialOrders[arrIndex].ParentId === Value.parentId) &&\r\n this._enrollSession.data.RetailOrderSummary.InitialOrders[arrIndex].ItemCode === Value.parentId) {\r\n this._enrollSession.data.RetailOrderSummary.InitialOrders.splice(arrIndex, 1);\r\n }\r\n }\r\n this._enrollSession.data.InitialOrdersSubTotal = 0;\r\n this._enrollSession.data.InitialOrdersQVTotal = 0;\r\n _.each(this._enrollSession.data.RetailOrderSummary.InitialOrders, (item) => {\r\n this._enrollSession.data.InitialOrdersSubTotal = this._enrollSession.data.InitialOrdersSubTotal + (item.Quantity * item.Price);\r\n this._enrollSession.data.InitialOrdersQVTotal = this._enrollSession.data.InitialOrdersQVTotal + (item.Quantity * item.BV);\r\n });\r\n this._enrollSession.data.RetailOrderSummary.InitialOrders = _.filter(this._enrollSession.data.RetailOrderSummary.InitialOrders, (item) => {\r\n return item.ParentId !== Value.parentId;\r\n });\r\n this._enrollSession.data.TotalItemLength = _.filter(this._enrollSession.data.RetailOrderSummary.InitialOrders, (item) => {\r\n return !item.ParentId || (parseInt(item.ParentId, 10) === parseInt(item.ItemCode, 10));\r\n });\r\n const filterInitialOrders = _.filter(this._enrollSession.data.RetailOrderSummary.InitialOrders, (item) => {\r\n return item.ParentId && item.ParentId !== undefined;\r\n });\r\n\r\n this._enrollSession.data.InitialOrdersSubItems = '';\r\n this._enrollSession.data.InitialOrdersSubItems = _.groupBy(filterInitialOrders, 'ParentId');\r\n if (this._enrollSession.data.RetailEnroll.ShippingMethod) {\r\n this.finalShippingMethod = this._enrollSession.data.RetailEnroll.ShippingMethod;\r\n } else {\r\n this.finalShippingMethod = '';\r\n }\r\n this._calculateRetailInitialOrder.calculate(this.finalShippingMethod);\r\n }\r\n validateAllFormFields(formGroup: FormGroup) {\r\n Object.keys(formGroup.controls).forEach(field => {\r\n const control: any = formGroup.get(field);\r\n if (control instanceof FormControl) {\r\n control.markAsTouched({ onlySelf: true });\r\n } else {\r\n this.validateAllFormFields(control);\r\n }\r\n });\r\n }\r\n EditTransformPack() {\r\n this._enrollSession.editTransformationPack = \"true\";\r\n this.router.navigate(['/TodaysOrder']);\r\n }\r\n ngDoCheck() {\r\n this.ref.markForCheck();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport * as _ from 'underscore';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { NgxChartsModule } from '@swimlane/ngx-charts';\r\nimport { NgpSortModule } from 'ngp-sort-pipe';\r\nimport { FilterPipeModule } from 'ngx-filter-pipe';\r\nimport { MatExpansionModule } from '@angular/material/expansion';\r\nimport { SummaryCartComponent } from './summary-cart.component';\r\nimport { SubscribeDialogModule } from 'app/shared/subscribe-dialog/subscribe-dialog.module';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\n\r\n@NgModule({\r\n declarations: [\r\n SummaryCartComponent\r\n ],\r\n imports: [\r\n MatButtonModule,\r\n MatFormFieldModule,\r\n MatIconModule,\r\n MatMenuModule,\r\n MatTableModule,\r\n MatTabsModule,\r\n NgpSortModule,\r\n NgxChartsModule,\r\n FilterPipeModule,\r\n MatExpansionModule,\r\n MatDialogModule,\r\n SubscribeDialogModule,\r\n FlexLayoutModule\r\n ],\r\n entryComponents: [\r\n\r\n ],\r\n providers: [],\r\n exports: [\r\n SummaryCartComponent\r\n ]\r\n})\r\nexport class SummaryCartModule { }\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NotTranslatedService {\r\n notTranslated(key: string): void {\r\n console.log('Not translated', key);\r\n // do whatever you want...\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport * as _ from 'underscore';\r\nimport { CalculateRetailOrderService } from './calculateRetailOrder.service';\r\nimport { EnrollSessionService } from './enrollSession.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CalculateRetailSmartOrderService {\r\n\r\n constructor(\r\n private _calculateRetailOrder: CalculateRetailOrderService,\r\n private _enrollSession: EnrollSessionService\r\n ) {\r\n this._enrollSession.data = JSON.parse(sessionStorage.getItem('EnrollSession')) ? JSON.parse(sessionStorage.getItem('EnrollSession')) : {};\r\n }\r\n calculate(shippingId: any): any {\r\n const promise = new Promise((resolve, reject) => {\r\n this._enrollSession.data.RetailOrderSummary.SmartOrderDetails = this._enrollSession.data.RetailOrderSummary.SmartOrderDetails || {};\r\n if (this._enrollSession.data.RetailOrderSummary.SmartOrders && this._enrollSession.data.RetailOrderSummary.SmartOrders.length > 0) {\r\n this._calculateRetailOrder.calculate(this._enrollSession.data.RetailOrderSummary.SmartOrders, shippingId, (responseSmart: any) => {\r\n this._enrollSession.data.RetailOrderSummary.SmartOrderDetails.Total = responseSmart.Total;\r\n this._enrollSession.data.RetailOrderSummary.SmartOrderDetails.SubTotal = responseSmart.SubTotal;\r\n this._enrollSession.data.RetailOrderSummary.SmartOrderDetails.BV = responseSmart.BusinessVolumeTotal;\r\n this._enrollSession.data.RetailOrderSummary.SmartOrderDetails.CV = responseSmart.CommissionableVolumeTotal;\r\n this._enrollSession.data.RetailOrderSummary.SmartOrderDetails.Tax = responseSmart.TaxTotal;\r\n this._enrollSession.data.RetailOrderSummary.SmartOrderDetails.ShippingTotal = responseSmart.ShippingTotal;\r\n this._enrollSession.data.SmartOrderProductDetail = responseSmart.CustomDetails;\r\n resolve(responseSmart);\r\n }, 4);\r\n } else {\r\n this._enrollSession.data.RetailOrderSummary.SmartOrderDetails.Total = 0;\r\n this._enrollSession.data.RetailOrderSummary.SmartOrderDetails.SubTotal = 0;\r\n this._enrollSession.data.RetailOrderSummary.SmartOrderDetails.BV = 0;\r\n this._enrollSession.data.RetailOrderSummary.SmartOrderDetails.CV = 0;\r\n this._enrollSession.data.RetailOrderSummary.SmartOrderDetails.Tax = 0;\r\n this._enrollSession.data.RetailOrderSummary.SmartOrderDetails.ShippingTotal = 0;\r\n this._enrollSession.data.SmartOrderProductDetail = {};\r\n }\r\n });\r\n return promise;\r\n }\r\n}\r\n","
\r\n \r\n \r\n
\r\n
\r\n

Would you like to Upgrade\r\n
your ULT Pack? \r\n
Get a free portable electric blender \r\n
when you sign-up with a \r\n
Lifestyle Subscription!

\r\n
\r\n  \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n ","import { Component, OnInit, Inject, ViewEncapsulation } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport * as _ from 'underscore';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { SharedMethodService } from 'app/shared/sharedMethod.service';\r\nimport { EnrollSessionService } from '../enrollSession.service';\r\nimport { BASE_URL } from 'app/constants';\r\nimport { Router } from '@angular/router';\r\nimport { RestService } from '../rest.service';\r\nimport { AuthService } from '../auth.service';\r\n\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-lifestyleSubscription',\r\n templateUrl: './LifestyleSubscription.component.html',\r\n styleUrls: ['./LifestyleSubscription.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\n\r\nexport class LifestyleSubscriptionComponent implements OnInit {\r\n currentRouterPath: any;\r\n public userLoginDialog: boolean = false;\r\n public userInfo: any = {};\r\n public loginDetails: any = {};\r\n /**\r\n * Constructor\r\n *\r\n * @param {FuseConfigService} _fuseConfigService\r\n * @param {FormBuilder} _formBuilder\r\n */\r\n constructor(\r\n public dialogRef: MatDialogRef,\r\n public _enrollSession: EnrollSessionService,\r\n public router: Router,\r\n public authService:AuthService,\r\n @Inject(MAT_DIALOG_DATA) public data: any,\r\n public _toastr: ToastrService, public _restService: RestService) {\r\n this.currentRouterPath = this.router.url.split('?')[0];\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n\r\n\r\n onClickYes()\r\n {\r\n if (this.data.item=='11200' || this.data.item=='11205') {\r\n window.location.href = \"https://smartorder.ultlifestyle.com/OrderReview?itemcode=11240&site=ultlifestyle\"\r\n }\r\n else if (this.data.item=='11210' || this.data.item=='11220')\r\n {\r\n window.location.href = \"https://smartorder.ultlifestyle.com/OrderReview?itemcode=11241&site=ultlifestyle\"\r\n }\r\n else if (this.data.item=='11208' || this.data.item=='11209')\r\n {\r\n window.location.href = \"https://smartorder.ultlifestyle.com/OrderReview?itemcode=11242&site=ultlifestyle\"\r\n }\r\n else if (this.data.item=='11235' || this.data.item=='11238')\r\n {\r\n window.location.href = \"https://smartorder.ultlifestyle.com/OrderReview?itemcode=11243&site=ultlifestyle\"\r\n }\r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n","import { MatDialogModule } from '@angular/material/dialog';\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatToolbarModule } from '@angular/material/toolbar';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { FormsModule ,ReactiveFormsModule } from '@angular/forms';\r\nimport { LifestyleSubscriptionComponent } from './LifestyleSubscription.component';\r\n@NgModule({\r\n declarations: [\r\n LifestyleSubscriptionComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MatDialogModule,\r\n MatButtonModule,\r\n MatCheckboxModule,\r\n MatDatepickerModule,\r\n MatFormFieldModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatMenuModule,\r\n MatTableModule,\r\n MatToolbarModule,\r\n MatTooltipModule,\r\n FormsModule,\r\n ReactiveFormsModule\r\n ],\r\n entryComponents: [\r\n LifestyleSubscriptionComponent\r\n ],\r\n exports: [\r\n LifestyleSubscriptionComponent\r\n ]\r\n\r\n})\r\nexport class LifestyleSubscriptionModule {\r\n\r\n }\r\n","
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{dialogTitle}}\r\n
\r\n
\r\n close\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Price: ${{item.Price |number : '1.2-2'}}\r\n
\r\n
\r\n
\r\n
\r\n BV: {{item.BusinessVolume}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n 1\">\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n","import { Component, OnInit, Inject, ViewEncapsulation } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport * as _ from 'underscore';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { SharedMethodService } from 'app/shared/sharedMethod.service';\r\nimport { EnrollSessionService } from '../enrollSession.service';\r\n\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-order-sub-item',\r\n templateUrl: './Orders-Sub-Item.component.html',\r\n styleUrls: ['./Orders-Sub-Item.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\n\r\nexport class OrderSubItemComponent implements OnInit {\r\n customersForm: FormGroup;\r\n dialogTitle: string;\r\n action: string;\r\n userDetails: any;\r\n DynamikKitItem: any = [];\r\n SmartOrders: any[] = [];\r\n selectedCartItem: any;\r\n customerType: string;\r\n item: any;\r\n DynamikItems: any = [];\r\n type:any;\r\n qty:any;\r\n constructor(\r\n public matDialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) private _data: any,\r\n private _sharedMethodService: SharedMethodService ,\r\n private _toastr: ToastrService,\r\n public _enrollSession: EnrollSessionService\r\n ) {\r\n // Set the defaults\r\n this.action = _data.action;\r\n // Set the private defaults\r\n this.dialogTitle = this._data.item.Description;\r\n this.item = this._data.item;\r\n if(this._data.type){\r\n this.type=this._data.type;\r\n }\r\n else{\r\n this.type=1;\r\n }\r\n for (const item of this.item.KitMembers) {\r\n if (item.kitMemberItemsField.length > 1) {\r\n let kitItem = item.kitMemberItemsField.find(x => x.itemCodeField == '2001-BB' || x.itemCodeField == '9827');\r\n if(kitItem)\r\n {\r\n this.DynamikItems.push(kitItem.itemCodeField);\r\n }\r\n else\r\n {\r\n this.DynamikItems.push(item.kitMemberItemsField[0].itemCodeField);\r\n }\r\n\r\n } else {\r\n this.DynamikItems.push('0');\r\n }\r\n\r\n }\r\n\r\n this.selectedCartItem = JSON.parse(localStorage.getItem('SmartOrderItems')) || [];\r\n }\r\n\r\n\r\n\r\n isItemRestrcited(product, selectedItems): any {\r\n let isRestricted = false;\r\n let filterItem: any;\r\n filterItem = _.find(selectedItems, (item) => { \r\n return item.ItemCode === product.ItemCode; \r\n });\r\n if (product.RestrictQty && product.RestrictQty > 0 && (filterItem && filterItem.Quantity >= product.RestrictQty)) {\r\n isRestricted = true;\r\n }\r\n return isRestricted;\r\n }\r\n\r\n ngOnInit(): void {\r\n window.scrollTo(0, 0);\r\n if(this.type==1){\r\n this._enrollSession.data.RetailOrderSummary.Enrollpack = [];\r\n this._sharedMethodService.subOrderItem = true;\r\n }\r\n \r\n \r\n }\r\n\r\n InserDynamicKitItemNew(): any {\r\n for (const [index, kitmember] of this.item.KitMembers.entries()) {\r\n if (kitmember.kitMemberItemsField.length > 1) {\r\n for (const key of kitmember.kitMemberItemsField.keys()) {\r\n if (kitmember.kitMemberItemsField[key].itemCodeField === this.DynamikItems[index]) {\r\n this.DynamikKitItem.push(kitmember.kitMemberItemsField[key]);\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n if (!this.isItemRestrcited(this.item, this.selectedCartItem)) {\r\n const subitem = this.item;\r\n // This for Parent item fetch\r\n const itemObj3 = {\r\n ItemCode: this.item.ItemCode,\r\n Description: this.item.Description,\r\n Quantity: 1,\r\n Price: this.item.Price,\r\n BusinessVolume: this.item.BusinessVolume,\r\n ParentId: this.item.ItemCode,\r\n IsUSOnly: this.item.IsUSOnly,\r\n TinyPicture: this.item.TinyPicture,\r\n SmallPicture: this.item.SmallPicture,\r\n LongDetail: this.item.LongDetail,\r\n LongDetail2: this.item.LongDetail2,\r\n LongDetail3: this.item.LongDetail3,\r\n LongDetail4: this.item.LongDetail4,\r\n Other1Price: this.item.Other1Price\r\n };\r\n this._sharedMethodService.ContinueRetailOrder(itemObj3, 1, this.type);\r\n\r\n // This is for Multiple sub items\r\n this.DynamikKitItem.forEach((item) => {\r\n const itemObj = {\r\n ItemCode: item.itemCodeField,\r\n Description: item.descriptionField,\r\n Quantity: 1,\r\n Price: 0,\r\n BusinessVolume: 0,\r\n ParentId: subitem.ItemCode,\r\n IsUSOnly: subitem.IsUSOnly,\r\n TinyPicture: 'https://purium-api-dev.wsicloud.com/api/NonProfitEnrollment/GetImageData?fileName=' + item.itemCodeField + '.png',\r\n SmallPicture: 'https://purium-api-dev.wsicloud.com/api/NonProfitEnrollment/GetImageData?fileName=' + item.itemCodeField + '.png',\r\n LongDetail: item.LongDetail,\r\n LongDetail2: item.LongDetail2,\r\n LongDetail3: item.LongDetail3,\r\n LongDetail4: item.LongDetail4,\r\n Other1Price: item.Other1Price\r\n };\r\n this._sharedMethodService.ContinueRetailOrder(itemObj, 1, this.type);\r\n \r\n });\r\n\r\n this.item.KitMembers.forEach((item) => {\r\n if (item.kitMemberItemsField.length === 1) {\r\n // This for single item fetch \r\n const singleItem = item.kitMemberItemsField[0];\r\n const itemObj2 = {\r\n ItemCode: singleItem.itemCodeField,\r\n Description: singleItem.descriptionField,\r\n Quantity: 1,\r\n Price: 0,\r\n BusinessVolume: 0,\r\n ParentId: subitem.ItemCode,\r\n IsUSOnly: subitem.IsUSOnly,\r\n TinyPicture: 'https://purium-api-dev.wsicloud.com/api/NonProfitEnrollment/GetImageData?fileName=' + singleItem.itemCodeField + '.png',\r\n SmallPicture: 'https://purium-api-dev.wsicloud.com/api/NonProfitEnrollment/GetImageData?fileName=' + singleItem.itemCodeField + '.png',\r\n LongDetail: singleItem.LongDetail,\r\n LongDetail2: singleItem.LongDetail2,\r\n LongDetail3: singleItem.LongDetail3,\r\n LongDetail4: singleItem.LongDetail4,\r\n Other1Price: item.Other1Price\r\n };\r\n \r\n this._sharedMethodService.ContinueRetailOrder(itemObj2, 1, this.type);\r\n }\r\n this.matDialogRef.close();\r\n });\r\n } else {\r\n this._toastr.error('Info', 'You can buy only ' + this.item.RestrictQty + ' quantity of this item.');\r\n }\r\n\r\n } \r\n onClick() {\r\n this.matDialogRef.close();\r\n this._sharedMethodService.subOrderItem = false;\r\n } \r\n onChange(newValue,index) {\r\n this.DynamikItems[index]=newValue;\r\n \r\n }\r\n}\r\n","import { Component, OnInit, Inject, ViewEncapsulation, Pipe, PipeTransform } from '@angular/core';\r\n\r\nimport { FormGroup } from '@angular/forms';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-product-info',\r\n templateUrl: './Product-info.component.html',\r\n styleUrls: ['./Product-info.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n \r\n})\r\nexport class productInfoComponent implements OnInit {\r\n customersForm: FormGroup;\r\n dialogTitle: string;\r\n action: string;\r\n userDetails: any;\r\n customerType: string;\r\n item: any;\r\n constructor(\r\n public matDialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) private _data: any\r\n ) { // Set the defaults\r\n this.action = _data.action;\r\n // Set the private defaults\r\n this.dialogTitle = this._data.item.Description;\r\n this.item = this._data.item;\r\n }\r\n\r\n ngOnInit() {\r\n window.scrollTo(0, 0);\r\n }\r\n\r\n}","
\r\n\t\r\n\t\t\r\n\t\t\t
\r\n
\r\n {{dialogTitle}}\r\n
\r\n
\r\n close\r\n
\r\n
\r\n\t\t
\r\n\t
\r\n\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{{dialogTitle}}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\r\n\t
\r\n\t\t
\r\n\t\t\tPrice:${{item.Price |number : '1.2-2'}}\t\r\n\t\t
\r\n\t\t
\r\n\t\t\tBV:{{item.BusinessVolume}}\r\n\t\t
\r\n\t
\r\n
","import { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthService {\r\n\r\n constructor(private _router: Router) { }\r\n\r\n sendToken(token: any): void {\r\n localStorage.setItem('authtoken', JSON.stringify(token.access_token));\r\n }\r\n\r\n sendUserData(data: string): void {\r\n localStorage.setItem('LoggedInUserData', data);\r\n }\r\n\r\n\r\n getToken(): any {\r\n return localStorage.getItem('authtoken');\r\n }\r\n\r\n getUserData(): any {\r\n return localStorage.getItem('LoggedInUserData');\r\n }\r\n\r\n\r\n isLoggedIn(): any {\r\n return this.getToken() !== null;\r\n }\r\n\r\n sendLanguageMenu(data: any): void {\r\n localStorage.setItem('LanguageMenuList', data);\r\n }\r\n getLanguageMenu(): any {\r\n return JSON.parse(localStorage.getItem('LanguageMenuList'));\r\n }\r\n\r\n sendDefaultCountryCode(data: any): void {\r\n localStorage.setItem('DefaultCountryCode', data);\r\n }\r\n sendDefaultLanguageCountryCode(data: any): void {\r\n localStorage.setItem('DefaultLanguageCountryCode', data);\r\n }\r\n logout(): void {\r\n localStorage.removeItem('LoggedInUser');\r\n localStorage.removeItem('LoggedInUserData');\r\n localStorage.removeItem('LanguageMenuList');\r\n localStorage.removeItem('DefaultCountryCode');\r\n localStorage.removeItem('DefaultLanguageCountryCode');\r\n this._router.navigate(['login']);\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport * as _ from 'underscore';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { RestService } from './rest.service';\r\nimport { Router } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpResponse } from '@angular/common/http';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CalculateAutoOrderService {\r\n ItemLength: any;\r\n SmartOrderSubItems: any;\r\n SmartOrderItems: any;\r\n SmartOrdersSubTotal: any;\r\n SmartOrderBVTotal: any;\r\n customerDetail: any;\r\n SmartOrder: any;\r\n AllshipMethods: any;\r\n SmartOrderDetails: any = {};\r\n CustomShipMethods: any;\r\n IsCallCalculateOrder: boolean = false;\r\n ParentItemLength = 0;\r\n constructor(\r\n private _toastr: ToastrService, private _route: Router,\r\n private _restService: RestService) {\r\n const SmartOrderItems = JSON.parse(localStorage.getItem('SmartOrderItems'));\r\n this.customerDetail = JSON.parse(localStorage.getItem('customerDetail')) || {};\r\n this.SmartOrderDetails = JSON.parse(localStorage.getItem('SmartOrderDetails')) ? JSON.parse(localStorage.getItem('SmartOrderDetails')) : {};\r\n this.SmartOrderItems = SmartOrderItems || [];\r\n this.IsCallCalculateOrder = false;\r\n this.AllshipMethods = '';\r\n this.ItemLength = SmartOrderItems ? SmartOrderItems.length : 0;\r\n this.SmartOrdersSubTotal = JSON.parse(localStorage.getItem('SmartOrdersSubTotal'));\r\n this.SmartOrderBVTotal = JSON.parse(localStorage.getItem('SmartOrderBVTotal'));\r\n this.SmartOrderSubItems = JSON.parse(localStorage.getItem('SmartOrderSubItems')) || [];\r\n if (SmartOrderItems && SmartOrderItems.length > 0) {\r\n this.ParentItemLength = _.filter(SmartOrderItems, (items) => (items.ParentId === '' || items.ParentId === items.ItemCode || !items.ParentId)).length;\r\n }\r\n }\r\n\r\n TotalItemLength(TotalItemLength): any{\r\n this.ItemLength = TotalItemLength + 0;\r\n\r\n }\r\n\r\n gettotalItemLength(): any {\r\n return this.ItemLength;\r\n }\r\n\r\n SetSmartOrderSubItems(SmartOrderSubItems): any{\r\n this.SmartOrderSubItems = SmartOrderSubItems;\r\n }\r\n\r\n getSmartOrderSubItems(): any {\r\n return this.SmartOrderSubItems;\r\n }\r\n\r\n SetSmartOrderItems(SmartOrderItems): any{\r\n this.SmartOrderItems = SmartOrderItems;\r\n if (SmartOrderItems.length > 0) {\r\n this.ParentItemLength = _.filter(SmartOrderItems, (items) => (items.ParentId === '' || items.ParentId === items.ItemCode || !items.ParentId)).length;\r\n }\r\n }\r\n\r\n getSmartOrderItems(): any {\r\n return this.SmartOrderItems;\r\n }\r\n\r\n getIsCallCalculateOrder(): boolean {\r\n return this.IsCallCalculateOrder;\r\n }\r\n setIsCallCalculateOrder(IsCallCalculateOrder): any{\r\n this.IsCallCalculateOrder = IsCallCalculateOrder;\r\n\r\n }\r\n\r\n getSmartOrdersSubTotal(): any {\r\n return this.SmartOrdersSubTotal;\r\n }\r\n\r\n SetSmartOrdersSubTotal(SmartOrdersSubTotal): any{\r\n this.SmartOrdersSubTotal = SmartOrdersSubTotal;\r\n }\r\n\r\n getSmartOrderBVTotal(): any {\r\n return this.SmartOrderBVTotal;\r\n }\r\n\r\n SetSmartOrderBVTotal(SmartOrderBVTotal): any{\r\n this.SmartOrderBVTotal = SmartOrderBVTotal;\r\n }\r\n\r\n calculate(ShipMethodID, hideLoader = false): Promise<{}> {\r\n const promise = new Promise((resolve, reject) => {\r\n this.customerDetail = JSON.parse(localStorage.getItem('customerDetail')) || {};\r\n if (this.SmartOrderItems.length > 0) {\r\n if (!hideLoader) {\r\n }\r\n const itemDetail = [];\r\n let ParentItemCode = '';\r\n _.each(this.SmartOrderItems, (obj) => {\r\n if (obj.ParentId && obj.ParentId !== obj.ItemCode) {\r\n ParentItemCode = obj.ParentId.toString();\r\n\r\n }\r\n else {\r\n ParentItemCode = '';\r\n\r\n }\r\n itemDetail.push({ ItemCode: obj.ItemCode, Quantity: obj.Quantity, ParentItemCode: ParentItemCode });\r\n\r\n });\r\n if (itemDetail.length > 0) {\r\n this.ParentItemLength = _.filter(itemDetail, (items) => (items.ParentItemCode === '')).length;\r\n }\r\n const request = {\r\n ShipMethodId: ShipMethodID ? ShipMethodID : 0,\r\n ShippingCity: JSON.parse(localStorage.getItem('City')) ? JSON.parse(localStorage.getItem('City')) : '',\r\n State: JSON.parse(localStorage.getItem('State')) ? JSON.parse(localStorage.getItem('State')) : '',\r\n Zip: JSON.parse(localStorage.getItem('Zip')) ? JSON.parse(localStorage.getItem('Zip')) : '',\r\n Country: JSON.parse(localStorage.getItem('CountryCode')) ? JSON.parse(localStorage.getItem('CountryCode')) : '',\r\n Items: itemDetail,\r\n IsProfessional: false,\r\n IsNonprofit: false,\r\n // isDynamicKitChildItem:$scope.EnrollSession.isDynamicKitChildItem \r\n // IsValidCoupon: $scope.EnrollSession.IsValidGiftCard || false\r\n OrderType: 4\r\n };\r\n return this.calculateSmartOrderOrder(request).subscribe((res: any) => {\r\n if (res) {\r\n if (res.Warnings && res.Warnings.length > 0) {\r\n this._toastr.error(res.Warnings[0], 'Error');\r\n }\r\n this.SmartOrderDetails.Total = res.Total;\r\n this.SmartOrderDetails.SubTotal = res.SubTotal;\r\n this.SmartOrderDetails.BV = res.BusinessVolumeTotal;\r\n this.SmartOrderDetails.Tax = res.TaxTotal;\r\n this.SmartOrderDetails.ShippingTotal = res.ShippingTotal;\r\n this.AllshipMethods = res.ShipMethods;\r\n this.CustomShipMethods = res.CustomShipMethods;\r\n localStorage.setItem('AllShipMethods', JSON.stringify(res.ShipMethods));\r\n localStorage.setItem('SmartOrderDetails', JSON.stringify(this.SmartOrderDetails));\r\n localStorage.setItem('CustomShipMethods', JSON.stringify(res.CustomShipMethods));\r\n resolve(res);\r\n }\r\n else {\r\n this._toastr.error(res.Message, 'Error');\r\n reject();\r\n }\r\n\r\n }, error => {\r\n this._toastr.error(error, 'Error');\r\n reject();\r\n });\r\n } else {\r\n this.IsCallCalculateOrder = false;\r\n resolve(0);\r\n return false;\r\n }\r\n });\r\n return promise;\r\n }\r\n \r\n calculateSmartOrderOrder(request: any): Observable>{\r\n const _url = '/RecurringOrders/CalculateOrder';\r\n return this._restService.Post(_url, request);\r\n }\r\n\r\n getSmartOrderDetails(): any {\r\n return this.SmartOrderDetails;\r\n }\r\n\r\n getAllshipMethods(): any {\r\n return this.CustomShipMethods;\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport * as _ from 'underscore';\r\nimport { CalculateRetailOrderService } from './calculateRetailOrder.service';\r\nimport { EnrollSessionService } from './enrollSession.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CalculateRetailInitialOrderService {\r\n\r\n constructor(\r\n private calculateRetailOrder: CalculateRetailOrderService,\r\n private _enrollSession: EnrollSessionService\r\n ) {\r\n this._enrollSession.data = JSON.parse(sessionStorage.getItem('EnrollSession')) ? JSON.parse(sessionStorage.getItem('EnrollSession')) : {};\r\n }\r\n\r\n calculate(shippingId: any): any {\r\n const promise = new Promise((resolve, reject) => {\r\n this._enrollSession.data.RetailOrderSummary.InitialOrderDetails = this._enrollSession.data.RetailOrderSummary.InitialOrderDetails || {};\r\n this.calculateRetailOrder.calculate(this._enrollSession.data.RetailOrderSummary.InitialOrders, shippingId, (response) => {\r\n this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.Total = response.Total;\r\n this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.SubTotal = response.SubTotal;\r\n this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.BV = response.BusinessVolumeTotal;\r\n this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.CV = response.CommissionableVolumeTotal;\r\n this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.Tax = response.TaxTotal;\r\n this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.ShippingTotal = response.ShippingTotal;\r\n this._enrollSession.data.RetailOrderProductDetail = response.CustomDetails;\r\n resolve(response);\r\n }, 0);\r\n });\r\n return promise;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport * as _ from 'underscore';\r\nimport { GetDiscountedItemsService } from './getDiscountedItems.service';\r\nimport { RestService } from './rest.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { EnrollSessionService } from './enrollSession.service';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CalculateRetailOrderService {\r\n itemDetail: any = [];\r\n ArrayList: any = [];\r\n ParentItemCode: any;\r\n IsProfessional: any;\r\n IsNonprofit: any;\r\n getProfessionalItems: any;\r\n discitem: any;\r\n disCountItem: any;\r\n priceType: any;\r\n cartSubtotal: any;\r\n constructor(\r\n private _toastr: ToastrService,\r\n private _restService: RestService,\r\n private _getDiscountedItemsService: GetDiscountedItemsService,\r\n private _enrollSession: EnrollSessionService\r\n ) {\r\n this._enrollSession.data = JSON.parse(sessionStorage.getItem('EnrollSession')) || {};\r\n }\r\n calculate(items: any, ShipMethodId: any, callback: any, type: any): any {\r\n this.itemDetail = [];\r\n this.ArrayList = [];\r\n this.ParentItemCode = '';\r\n this.IsProfessional = false;\r\n this.IsNonprofit = '';\r\n this.priceType = 2;\r\n this.cartSubtotal = 0;\r\n this.getProfessionalItems = false;\r\n this.discitem = undefined;\r\n this._enrollSession.data.RetailOrderSummary.InitialOrders = this._enrollSession.data.RetailOrderSummary.InitialOrders || [];\r\n this._enrollSession.data.RetailOrderSummary.AddOnOrders = this._enrollSession.data.RetailOrderSummary.AddOnOrders || [];\r\n var ConcatArray = this._enrollSession.data.RetailOrderSummary.InitialOrders.concat(this._enrollSession.data.RetailOrderSummary.Enrollpack);\r\n if (type === 4) {\r\n this.ArrayList = items;\r\n }\r\n else {\r\n this.ArrayList = ConcatArray;\r\n }\r\n\r\n _.each(this.ArrayList, (obj) => {\r\n if (obj.ParentId && parseInt(obj.ParentId, 10) !== parseInt(obj.ItemCode, 10)) {\r\n this.ParentItemCode = obj.ParentId.toString();\r\n\r\n }\r\n else {\r\n this.ParentItemCode = '';\r\n }\r\n this.itemDetail.push({ ItemCode: obj.ItemCode, Quantity: obj.Quantity, ParentItemCode: this.ParentItemCode });\r\n if (obj.ItemCode !== \"7800GC\") {\r\n obj.RetailPrice = obj.RetailPrice ? obj.RetailPrice : 0;\r\n this.cartSubtotal += parseFloat(obj.RetailPrice) * parseInt(obj.Quantity, 10);\r\n }\r\n });\r\n \r\n if (type === 0 && this._enrollSession.data.RetailOrderSummary.InitialOrders.length > 0) {\r\n if(this._enrollSession.data.RetailOrderSummary.InitialOrders.length == 1 && this._enrollSession.data.RetailOrderSummary.InitialOrders[0].ItemCode == \"7800GC\")\r\n {\r\n this._enrollSession.data.RetailOrderSummary.InitialOrders = [];\r\n }\r\n this.disCountItem = this._enrollSession.data.RetailOrderSummary.InitialOrders.find((item, index) => {\r\n return item.ItemCode == \"7800GC\";\r\n });\r\n\r\n if (this.cartSubtotal < 200 && !this.disCountItem) {\r\n this.discitem = this._getDiscountedItemsService.getDiscount(this.cartSubtotal);\r\n if (this.discitem !== undefined && this.discitem.itemCode !== '') {\r\n this.itemDetail.push({ ItemCode: this.discitem.itemCode, Quantity: this.discitem.qty, ParentItemCode: '' });\r\n }\r\n }\r\n else if ((this.cartSubtotal >= 200||this.cartSubtotal < 75) && this.disCountItem) {\r\n const index = this._enrollSession.data.RetailOrderSummary.InitialOrders.indexOf(this.disCountItem);\r\n this._enrollSession.data.RetailOrderSummary.InitialOrders.splice(index, 1)\r\n this.itemDetail = [];\r\n var newArrayList = this._enrollSession.data.RetailOrderSummary.InitialOrders.concat(this._enrollSession.data.RetailOrderSummary.InitialOrders);\r\n _.each(newArrayList, (obj) => {\r\n if (obj.ParentId && parseInt(obj.ParentId, 10) !== parseInt(obj.ItemCode, 10)) {\r\n this.ParentItemCode = obj.ParentId.toString();\r\n }\r\n else {\r\n this.ParentItemCode = '';\r\n }\r\n this.itemDetail.push({ ItemCode: obj.ItemCode, Quantity: obj.Quantity, ParentItemCode: this.ParentItemCode });\r\n });\r\n }\r\n this._enrollSession.data.OrderProductDetalis = this.itemDetail;\r\n }\r\n else {\r\n this._enrollSession.data.SmartOrderProductDetalis = this.itemDetail;\r\n this.IsProfessional = false;\r\n this.IsNonprofit = false;\r\n }\r\n console.log(\"carttotal\", this.cartSubtotal);\r\n if (this.cartSubtotal >= 200) {\r\n this.priceType = 10;\r\n }\r\n this._enrollSession.data.priceType = this.priceType;\r\n \r\n try {\r\n const request = {\r\n ShipMethodId: ShipMethodId ? ShipMethodId : (this._enrollSession.data.RetailEnroll.ShippingMethod ? this._enrollSession.data.RetailEnroll.ShippingMethod : 0),\r\n ShippingCity: this._enrollSession.data.RetailEnroll.City ? this._enrollSession.data.RetailEnroll.City : '',\r\n State: this._enrollSession.data.RetailEnroll.State ? this._enrollSession.data.RetailEnroll.State : '',\r\n Zip: this._enrollSession.data.RetailEnroll.ZipCode ? this._enrollSession.data.RetailEnroll.ZipCode : '',\r\n Country: this._enrollSession.data.RetailEnroll.CountryCode ? this._enrollSession.data.RetailEnroll.CountryCode : '',\r\n Items: this.itemDetail,\r\n IsProfessional: this.IsProfessional ? true : false,\r\n IsNonprofit: this.IsNonprofit ? true : false,\r\n PriceType: this.priceType,\r\n // isDynamicKitChildItem:this._enrollSession.data.isDynamicKitChildItem \r\n // IsValidCoupon: this._enrollSession.data.IsValidGiftCard || false\r\n OrderType: type === 4 ? 4 : 0\r\n };\r\n this._enrollSession.data.RetailEnroll.IsNonprofit = this.IsNonprofit;\r\n this._restService.calculateRetailOrder(request).subscribe((result: any) => {\r\n if (result) {\r\n\r\n if (this.itemDetail.length > 0 && result.Warnings.length > 0) {\r\n this._toastr.error(result.Warnings[0], 'Error');\r\n }\r\n\r\n\r\n this._enrollSession.data.calculateRetailOrderData = result;\r\n this._enrollSession.data.calculateRetailOrder = result.CustomDetails;\r\n\r\n if (type !== 4) {\r\n this._enrollSession.data.ShippingMethods = [];\r\n this._enrollSession.data.ShippingMethods = result.CustomShipMethods;\r\n // this._enrollSession.data.ShippingMethods = result.CustomShipMethods ? result.CustomShipMethods.slice(0, 1) : result.CustomShipMethods;\r\n this._enrollSession.data.RetailEnroll.ShippingMethod = this._enrollSession.data.RetailEnroll.ShippingMethod ||\r\n result.CustomShipMethods && result.CustomShipMethods[0].ShipMethodID;\r\n const discountedItem = _.filter(result.CustomDetails, (item) => {\r\n return item.ItemCode === '7800GC';\r\n });\r\n\r\n\r\n this._enrollSession.data.RetailOrderSummary.InitialOrders =\r\n _.without(this._enrollSession.data.RetailOrderSummary.InitialOrders, _.findWhere(this._enrollSession.data.RetailOrderSummary.Enrollpack, { ItemCode: \"7800GC\" }));\r\n\r\n if (discountedItem.length > 0 && !this.disCountItem && this.cartSubtotal >= 75) {\r\n this._enrollSession.data.RetailOrderSummary.InitialOrders.push({\r\n ItemCode: discountedItem[0].ItemCode,\r\n Description: discountedItem[0].Description,\r\n Quantity: discountedItem[0].Quantity,\r\n Price: discountedItem[0].PriceTotal,\r\n RetailPrice: discountedItem[0].PriceTotal,\r\n ShippingPrice: discountedItem[0].ShippingPrice,\r\n TinyImage: discountedItem[0].TinyPicture,\r\n SmallImage: \"assets/images/enhance-image/gift-card-img.png\",//discountedItem[0].SmallPicture,\r\n BV: discountedItem[0].BusinesVolume,\r\n CV: discountedItem[0].CommissionableVolume,\r\n TaxablePrice: discountedItem[0].Taxable,\r\n LongDetail: discountedItem[0].LongDetail,\r\n LongDetail2: discountedItem[0].LongDetail2,\r\n LongDetail3: discountedItem[0].LongDetail3,\r\n LongDetail4: discountedItem[0].LongDetail4,\r\n IsUSOnly: false\r\n });\r\n }\r\n }\r\n\r\n if (this._enrollSession.data.ShippingMethods) {\r\n this._enrollSession.data.ShippingMethods.forEach((method) => {\r\n if (parseInt(method.ShipMethodID, 10) === parseInt(this._enrollSession.data.RetailEnroll.ShippingMethod, 10)) {\r\n this._enrollSession.data.Order_descriptionField = method.Description;\r\n this._enrollSession.data.Shipping_descriptionField = method.Description;\r\n this._enrollSession.data.Order_shipMethodIDField = this._enrollSession.data.RetailEnroll.ShippingMethod;\r\n }\r\n });\r\n }\r\n\r\n\r\n /**** calculateRetailOrder ****/\r\n this._enrollSession.data.orderdItemsData = [];\r\n this._enrollSession.data.InitOrder.forEach((item: any) => {\r\n this._enrollSession.data.calculateRetailOrder.some((calcItem: any) => {\r\n if (parseInt(calcItem.itemCodeField, 10) === item.ItemCode) {\r\n this._enrollSession.data.orderdItemsData.push({\r\n ItemCode: calcItem.ItemCode,\r\n Quantity: calcItem.Quantity,\r\n // isDynamicKitChildItem:this._enrollSession.data.isDynamicKitChildItem,\r\n Price: calcItem.PriceEach,\r\n DescriptionField: calcItem.Description,\r\n PriceTotalField: calcItem.PriceTotal\r\n });\r\n }\r\n });\r\n });\r\n\r\n /******************/\r\n\r\n if (this.itemDetail.length > 0) {\r\n if (result.Result.statusField === 0) {\r\n if (callback) {\r\n callback(result);\r\n }\r\n }\r\n else {\r\n this._toastr.error(result.Message);\r\n }\r\n }\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n this._toastr.error('Unable to calculate order.', 'Error');\r\n });\r\n } catch (e) {\r\n this._toastr.error('Unable to calculate order.', 'Error');\r\n }\r\n }\r\n\r\n TotalItemLength(): any {\r\n if (this._enrollSession.data.customertype === 22) {\r\n if (this._enrollSession.data.checkoutwithlimited) {\r\n return this._enrollSession.data.RetailOrderSummary &&\r\n (this._enrollSession.data.RetailOrderSummary.InitialOrders && this._enrollSession.data.RetailOrderSummary.InitialOrders.length) +\r\n (this._enrollSession.data.RetailOrderSummary.AddOnOrders && this._enrollSession.data.RetailOrderSummary.AddOnOrders.length) +\r\n (this._enrollSession.data.RetailOrderSummary.SmartOrders && this._enrollSession.data.RetailOrderSummary.SmartOrders.length) || 0;\r\n }\r\n else {\r\n return this._enrollSession.data.RetailOrderSummary &&\r\n (this._enrollSession.data.RetailOrderSummary.Enrollpack && this._enrollSession.data.RetailOrderSummary.Enrollpack.length) +\r\n (this._enrollSession.data.RetailOrderSummary.AddOnOrders && this._enrollSession.data.RetailOrderSummary.AddOnOrders.length) +\r\n (this._enrollSession.data.RetailOrderSummary.InitialOrders && this._enrollSession.data.RetailOrderSummary.InitialOrders.length) +\r\n (this._enrollSession.data.RetailOrderSummary.SmartOrders && this._enrollSession.data.RetailOrderSummary.SmartOrders.length) || 0;\r\n }\r\n }\r\n else {\r\n return this._enrollSession.data.RetailOrderSummary &&\r\n (this._enrollSession.data.RetailOrderSummary.Enrollpack && this._enrollSession.data.RetailOrderSummary.Enrollpack.length) +\r\n (this._enrollSession.data.RetailOrderSummary.InitialOrders && this._enrollSession.data.RetailOrderSummary.InitialOrders.length) +\r\n (this._enrollSession.data.RetailOrderSummary.SmartOrders && this._enrollSession.data.RetailOrderSummary.SmartOrders.length) || 0;\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport * as _ from 'underscore';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { FormControl, FormGroup, ValidatorFn, Validators } from '@angular/forms';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EnrollSessionService {\r\n data: any;\r\n mobileView: boolean;\r\n submitApplicationData: any;\r\n mediumScreen: any;\r\n editTransformationPack: any;\r\n constructor(private _activateRoute: ActivatedRoute) {\r\n this.data = JSON.parse(sessionStorage.getItem('EnrollSession')) ? JSON.parse(sessionStorage.getItem('EnrollSession')) : {};\r\n this.submitApplicationData = JSON.parse(sessionStorage.getItem('submitApplicationData')) ? JSON.parse(sessionStorage.getItem('submitApplicationData')) : {};\r\n this.editTransformationPack = sessionStorage.getItem('editTransformationPack') ? sessionStorage.getItem('editTransformationPack') : '';\r\n } \r\n resetEnrollSessionServiceData(page): any {\r\n if(this.editTransformationPack != 'true') {\r\n this.data = {};\r\n if (this.data && Object.keys(this.data).length === 0) {\r\n this.data.IsShowCart = false;\r\n this.data.page = page;\r\n this.data.TotalItemLength = 0;\r\n this.data.RetailEnroll = {};\r\n this.data.InitOrder = [];\r\n this.data.InitialOrdersSubTotal = 0;\r\n this.data.RetailOrderSummary = {};\r\n this.data.RetailOrderSummary.Enrollpack = [];\r\n this.data.EligibleForFreeUpgrade = false;\r\n this.data.RetailEnroll.IsNonprofit = false;\r\n this.data.FileUploaded = false;\r\n this.data.RetailEnroll.ShippingMethod = '';\r\n this.data.usePrimaryCard = null;\r\n this.data.primaryCreditCardField = {};\r\n this.data.EnrollmentType = this.data.EnrollmentType || 1;\r\n this.data.IsUpGrade =\r\n this._activateRoute.snapshot.queryParamMap.get('customerId') ? this._activateRoute.snapshot.queryParamMap.get('customerId') : false;\r\n if (this.data.IsUpGrade) {\r\n localStorage.setItem('customerId', this.data.IsUpGrade);\r\n }\r\n this.data.Volume109 = 0;\r\n this.data.SmartOrderBVTotal = 0;\r\n this.data.InitialOrdersQVTotal = 0;\r\n this.data.AddOnOrdersQVTotal = 0;\r\n }\r\n } \r\n }\r\n\r\n removeValidators(form: FormGroup, formControl: any) {\r\n form.get(formControl).clearValidators();\r\n form.get(formControl).updateValueAndValidity();\r\n }\r\n addValidators(form: FormGroup, formControl: any) {\r\n form.get(formControl).setValidators([Validators.required, trimValidator]);\r\n form.get(formControl).updateValueAndValidity();\r\n }\r\n}\r\nconst trimValidator: ValidatorFn = (control: FormControl) => {\r\n if (control && control.value && typeof control.value == \"string\" && !control.value.replace(/\\s/g, '').length) {\r\n return {\r\n 'trimError': { value: 'control has leading whitespace' }\r\n };\r\n }\r\n\r\n return null;\r\n};\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport * as _ from 'underscore';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { RestService } from './rest.service';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { Router } from '@angular/router';\r\nimport { EnrollSessionService } from './enrollSession.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class GetDiscountedItemsService {\r\n // items: any;\r\n // discountedItem: any;\r\n // IsCallCalculateOrder: boolean = false;\r\n EnrollSession: any;\r\n discountItem: any\r\n constructor(\r\n private _toastr: ToastrService,\r\n private _router: Router,\r\n private _http: HttpClient,\r\n private route: ActivatedRoute,\r\n private _restService: RestService,\r\n private _enrollSession: EnrollSessionService) {\r\n // this.IsCallCalculateOrder = false;\r\n // this.items = ['11050-D', '11050-DD'];\r\n // this.discountedItem = { itemCode: '', qty: 0 };\r\n this.discountItem = { itemCode: '', qty: 0 };\r\n this._enrollSession.data = JSON.parse(sessionStorage.getItem('EnrollSession')) ? JSON.parse(sessionStorage.getItem('EnrollSession')) : {};\r\n }\r\n\r\n // getDiscountedItem(amount: any): any {\r\n // this.discountedItem = { itemCode: '', qty: 0 };\r\n // this._enrollSession.data.qualifyforFREE = false;\r\n // if (amount >= 500 || this.ischeckFreeLaunchItem(this._enrollSession.data.RetailOrderSummary.InitialOrders) ||\r\n // (this._enrollSession.data.EligibleForFreeUpgrade && this.ischeckFreeLaunchItem(this._enrollSession.data.RetailOrderSummary.Enrollpack))) {\r\n // this.discountedItem.itemCode = '11050-DD';\r\n // this.discountedItem.qty = -1;\r\n // this._enrollSession.data.qualifyforFREE = true;\r\n // }\r\n // else if (amount >= 250 && amount < 500) {\r\n // this.discountedItem.itemCode = '11050-D';\r\n // this.discountedItem.qty = -1;\r\n // this._enrollSession.data.qualifyforFREE = false;\r\n // }\r\n // return this.discountedItem;\r\n // }\r\n\r\n // ischeckFreeLaunchItem(InitialItem: any): any {\r\n // const isItemExit = _.filter(InitialItem, (item: any) => {\r\n // return item.ItemCode === '11208' || item.ItemCode === '11208-P65' || item.ItemCode === '11209'\r\n // || item.ItemCode === '11209-AB' || item.ItemCode === '11209-AB-P65' || item.ItemCode === '12520'\r\n // || item.ItemCode === '12520-P65' || item.ItemCode === '11207-P65' || item.ItemCode === '11207' || item.ItemCode === '11206-P65'\r\n // || item.ItemCode === '11206' || item.ItemCode === '12135-L-P65' || item.ItemCode === '12135-L' || item.ItemCode === '12135'\r\n // || item.ItemCode === '11216-CH' || item.ItemCode === '11216-P65' || item.ItemCode === '11216' || item.ItemCode === '11215'\r\n // || item.ItemCode === '11215-P65' || item.ItemCode === '14600-P65' || item.ItemCode === '14600' || item.ItemCode === '11153-O-P65'\r\n // || item.ItemCode === '11153-O' || item.ItemCode === '11153' || item.ItemCode === '11152-AB-P65' || item.ItemCode === '11152-AB'\r\n // || item.ItemCode === '11152' || item.ItemCode === '11204-P65' || item.ItemCode === '11204' || item.ItemCode === '11155-P65'\r\n // || item.ItemCode === '11155' || item.ItemCode === '11154-P65' || item.ItemCode === '11154' || item.ItemCode === '11144-AB-P65'\r\n // || item.ItemCode === '11144-AB' || item.ItemCode === '11144' || item.ItemCode === '11200' || item.ItemCode === '12134'\r\n // || item.ItemCode === '12132' || item.ItemCode === '12132-P65' || item.ItemCode === '11205' || item.ItemCode === '11205-AB'\r\n // || item.ItemCode === '11205-AB-P65' || item.ItemCode === '11210' || item.ItemCode === '11210-P65'\r\n // || item.ItemCode === '11220' || item.ItemCode === '11220-AB' || item.ItemCode === '11220-AB-P65'\r\n // || item.ItemCode === '12136' || item.ItemCode === '12136-L' || item.ItemCode === '12136-L-P65'\r\n // || (item.ItemCode === '11050-RU' && this._enrollSession.data.EligibleForFreeUpgrade);\r\n // });\r\n // if (isItemExit.length > 0) {\r\n // return true;\r\n // } else {\r\n // this._enrollSession.data.qualifyforFREE = false;\r\n // return false;\r\n // }\r\n // }\r\n getDiscount(amount) {\r\n this.discountItem = { itemCode: '', qty: 0, Price: 0 };\r\n if (amount < 200 && amount >= 75) {\r\n this.discountItem.itemCode = '7800GC';\r\n this.discountItem.qty = 1;\r\n this.discountItem.Price = -50;\r\n }\r\n return this.discountItem;\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RgetRegexService {\r\n\r\n\r\n constructor() { }\r\n getRegex(countryCode: any): any {\r\n let regex: any;\r\n switch (countryCode) {\r\n case 'AR':\r\n // regex = /^([A-HJ-TP-Z]{1}\\d{4}[A-Z]{3}|[a-z]{1}\\d{4}[a-hj-tp-z]{3})$/;\r\n regex = /^[a-zA-Z0-9 _.-]*$/;\r\n break;\r\n case 'AT':\r\n case 'AU':\r\n case 'BE':\r\n case 'HU':\r\n case 'NZ':\r\n case 'PH':\r\n regex = /^\\d{4}$/;\r\n break;\r\n case 'CR':\r\n case 'DE':\r\n case 'ES':\r\n case 'FR':\r\n case 'MX':\r\n case 'PE':\r\n regex = /^\\d{5}$/;\r\n break;\r\n case 'PA':\r\n case 'RU':\r\n case 'EC':\r\n case 'SG':\r\n case 'IN':\r\n regex = /^\\d{6}$/;\r\n break;\r\n case 'JP':\r\n regex = /^\\d{7}$/;\r\n break;\r\n case 'CA':\r\n regex = /^([ABCEGHJKLMNPRSTVXYabceghjklmnprstvxy]\\d[ABCEGHJKLMNPRSTVWXYZabceghjklmnprstvwxyz])\\ {0,1}(\\d[ABCEGHJKLMNPRSTVWXYZabceghjklmnprstvwxyz]\\d)$/;\r\n break;\r\n case 'CL':\r\n regex = /^(\\d{7}|\\d{3}[-]\\d{4})$/;\r\n break;\r\n case 'KR':\r\n regex = /^(\\d{6}|\\d{3}[-]\\d{3})$/;\r\n break;\r\n case 'NL':\r\n regex = /^[1-9][0-9]{3}\\s?([a-zA-Z]{2})?$/;\r\n break;\r\n case 'PT':\r\n regex = /^\\d{4}([\\-]?\\d{3})?$/;\r\n break;\r\n case 'US':\r\n regex = /^\\d{5}([\\-]?\\d{4})?$/;\r\n break;\r\n case 'GB':\r\n // regex = /^([g][i][r][0][a][a])$|^((([a-pr-uwyz]{1}([0]|[1-9]\\d?))|([a-pr-uwyz]{1}[a-hk-y]{1}([0]|[1-9]\\d?))|([a-pr-uwyz]{1}[1-9][a-hjkps-uw]{1})|\r\n // ([a-pr-uwyz]{1}[a-hk-y]{1}[1-9][a-z]{1}))(\\d[abd-hjlnp-uw-z]{2})?)$/i;\r\n // regex = /^ ?(([BEGLMNSWbeglmnsw][0-9][0-9]?)|(([A-PR-UWYZa-pr-uwyz]\r\n // [A-HK-Ya-hk-y][0-9][0-9]?)|(([ENWenw][0-9][A-HJKSTUWa-hjkstuw])|\r\n // ([ENWenw][A-HK-Ya-hk-y][0-9][ABEHMNPRVWXYabehmnprvwxy])))) ?[0-9][ABD-HJLNP-UW-Zabd-hjlnp-uw-z]{2}$/;\r\n // regex = /^([Gg][Ii][Rr] 0[Aa]{2})|((([A-Za-z][0-9]{1,2})|\r\n // (([A-Za-z][A-Ha-hJ-Yj-y][0-9]{1,2})|(([AZa-z][0-9][A-Za-z])|([A-Za-z][A-Ha-hJ-Yj-y][0-9]?[A-Za-z])))) [0-9][A-Za-z]{2})$/;\r\n regex = /^([A-Pa-pR-Ur-uWYZwyz](([0-9](([0-9]|[A-Ha-hJKSTUWjkstuw])?)?)|([A-Ha-hK-Yk-y][0-9]([0-9]|[ABEHMNPRVWXYabehmnprvwxy])?)) [0-9][ABabD-Hd-hJLNjlnP-Up-uW-Zw-z]{2})|GIRgir 0AAaa$/;\r\n\r\n break;\r\n default:\r\n regex = /^[a-zA-Z0-9 _.-]*$/;\r\n break;\r\n }\r\n return regex;\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BASE_URL, API_URL, objectToParams } from '../constants';\r\nimport { HttpClient, HttpHeaders, HttpResponse } from '@angular/common/http';\r\nimport { tap } from 'rxjs/operators';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RestService {\r\n\r\n\r\n constructor(private _http: HttpClient) { }\r\n\r\n Delete(resultUrl: string): Observable> {\r\n const url = API_URL + resultUrl;\r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Accept': 'application/json',\r\n 'Content-Type': 'application/json-patch+json; charset=UTF-8'\r\n })\r\n };\r\n\r\n return this._http.delete>(url, httpOptions).pipe();\r\n }\r\n\r\n\r\n Put(resultUrl: string, requestParameterData: any): Observable> {\r\n const url = API_URL + resultUrl;\r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Accept': 'application/json',\r\n 'Content-Type': 'application/json'\r\n })\r\n };\r\n\r\n return this._http.put>(url, requestParameterData, httpOptions).pipe();\r\n }\r\n\r\n\r\n Get(resultUrl: string): Observable> {\r\n \r\n const url = API_URL + resultUrl;\r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Accept': 'application/json',\r\n 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'\r\n })\r\n };\r\n\r\n return this._http.get>(url, httpOptions).pipe(tap());\r\n }\r\n\r\n\r\n Post(resultUrl: string, requestParameterData: any, timeout?: any): Observable> {\r\n requestParameterData = objectToParams(requestParameterData);\r\n const url = API_URL + resultUrl;\r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Accept': 'application/json',\r\n 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'\r\n })\r\n };\r\n\r\n return this._http.post>(url, requestParameterData, httpOptions).pipe(tap());\r\n }\r\n\r\n PostFile(resultUrl: string, requestParameterData: any, timeout?: any): Observable> {\r\n const url = API_URL + resultUrl; \r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Disposition': 'multipart/form-data',\r\n 'Accept': 'application/json'\r\n })\r\n };\r\n\r\n return this._http.post>(url, requestParameterData, httpOptions).pipe(tap());\r\n }\r\n\r\n Token(request): Observable> {\r\n const url = BASE_URL + '/token';\r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',\r\n 'Accept': 'application/json'\r\n })\r\n };\r\n\r\n return this._http.post>(url, request, httpOptions).pipe(tap());\r\n }\r\n\r\n GetCustomersDetails(request: any): Observable> {\r\n const _url = '/RecurringOrders/GetCustomersDetails' + request;\r\n return this.Get(_url);\r\n }\r\n\r\n GetCustomers(request: any): Observable> {\r\n const Requesturl = '/NonProfitEnrollment/GetCustomers?CustomerId=' + request;\r\n return this.Get(Requesturl);\r\n }\r\n\r\n getProducts(request: any): Observable> {\r\n const Requesturl = '/NonProfitEnrollment/GetOrderItems';\r\n return this.Post(Requesturl, request);\r\n }\r\n\r\n GetVerifedAddressResponse(request: any): Observable> {\r\n const Requesturl = '/Comman/GetVerifedAddressResponse';\r\n return this.Post(Requesturl, request);\r\n }\r\n\r\n getMemberShipKit(request: any): Observable> {\r\n const Requesturl = '/NonProfitEnrollment/GetPackItems';\r\n return this.Post(Requesturl, request);\r\n }\r\n\r\n GetCountryRegions(request: any): Observable> {\r\n const Requesturl = '/NonProfitEnrollment/GetCountryRegions';\r\n return this.Post(Requesturl, request);\r\n }\r\n\r\n ShippingMethod(request: any): Observable> {\r\n const Requesturl = 'GetShipMethods' + request;\r\n return this.Get(Requesturl);\r\n }\r\n\r\n VerifyUsername(request: any): Observable> {\r\n const Requesturl = '/NonProfitEnrollment/VerifyUsername' + request;\r\n return this.Get(Requesturl);\r\n }\r\n\r\n VerifyGiftCard(request: any): Observable> {\r\n const Requesturl = 'IsValidGiftCard' + request;\r\n return this.Get(Requesturl);\r\n }\r\n\r\n GetCustomerBilling(request: any): Observable> {\r\n const Requesturl = '/NonProfitEnrollment/getcustomerbilling?customerid=' + request;\r\n return this.Get(Requesturl);\r\n }\r\n\r\n VerifyWebalias(request: any): Observable> {\r\n\r\n const Requesturl = '/NonProfitEnrollment/VerifyWebalias' + request;\r\n return this.Get(Requesturl);\r\n }\r\n\r\n SubmitApplication(request: any): Observable> {\r\n const Requesturl = '/NonProfitEnrollment/SubmitApplication';\r\n return this.Post(Requesturl, request);\r\n }\r\n\r\n IsEmailRegistered(request: any): Observable> {\r\n const Requesturl = '/NonProfitEnrollment/IsEmailAvailable' + request;\r\n return this.Post(Requesturl, '');\r\n }\r\n\r\n calculateRetailOrder(request: any): Observable> {\r\n const Requesturl = '/NonProfitEnrollment/CalculateOrder';\r\n return this.Post(Requesturl, request);\r\n }\r\n\r\n GetCustomerSite(request: any): Observable> {\r\n const Requesturl = '/Comman/GetCustomerSite' + request;\r\n return this.Get(Requesturl);\r\n }\r\n\r\n GetItems(request: any): Observable> {\r\n const Requesturl = '/NonProfitEnrollment/GetTestItems' + request;\r\n return this.Get(Requesturl);\r\n }\r\n}\r\n","import { Injectable, OnInit } from '@angular/core';\r\nimport * as _ from 'underscore';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { RestService } from './rest.service';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { GetDiscountedItemsService } from './getDiscountedItems.service';\r\nimport { CalculateRetailInitialOrderService } from './calculateRetailInitialOrder.service';\r\nimport { CalculateRetailSmartOrderService } from './CalculateRetailSmartOrder.service';\r\nimport { StepperService } from './stepper.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport {EnrollSessionService } from './enrollSession.service'\r\nimport { BehaviorSubject } from 'rxjs';\r\n// import { NavigationComponent } from 'app/main/Orders/Navigation-Popup/Navigation-Popup.component';\r\n// import { SmartShipDateModalComponent } from 'app/main/Subscriptions/SmartShipDateModal/SmartShipDateModal.component';\r\n// import { OpportunityModalComponent } from 'app/main/Subscriptions/Opportunity/OpportunityModal.component';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SharedMethodService implements OnInit {\r\n fuseConfig: any;\r\n CustomerID: any;\r\n AutoOrderID: any;\r\n ifReload: any = false;\r\n finalShippingMethod: any;\r\n IsCallCalculateOrder: any;\r\n templateUrl: any;\r\n navigationInfo: any = {};\r\n subOrderItem: boolean = false;\r\n checkSubTotal: BehaviorSubject;\r\n constructor(\r\n private _toastr: ToastrService,\r\n private _getDiscountedItems: GetDiscountedItemsService,\r\n private _calculateRetailInitialOrder: CalculateRetailInitialOrderService,\r\n private _calculateRetailSmartOrder: CalculateRetailSmartOrderService,\r\n private _stepperService: StepperService,\r\n private _router: Router,\r\n private _restService: RestService,\r\n private _matDialog: MatDialog,\r\n public _enrollSession: EnrollSessionService,\r\n public _activatedRouter: ActivatedRoute) {\r\n this._enrollSession.data = JSON.parse(sessionStorage.getItem('EnrollSession')) ? JSON.parse(sessionStorage.getItem('EnrollSession')) : {};\r\n this.init();\r\n }\r\n init() {\r\n this.checkSubTotal = new BehaviorSubject(null);\r\n }\r\n // *******Next Btn Click******************/\r\n // Nextbtn(state: string): any {\r\n // if (state === 'checkout') {\r\n // if (this._enrollSession.data.IsUpGrade) {\r\n // this._router.navigate(['/Shipping'], { queryParams: { customerId: this._enrollSession.data.IsUpGrade } });\r\n // } else if (this._enrollSession.data.ReferredBy) {\r\n // this._router.navigate(['/Shipping'], { queryParams: { giftcard: this._enrollSession.data.ReferredBy } });\r\n // } else {\r\n // this._router.navigate(['/Shipping']);\r\n // }\r\n\r\n // }\r\n // else if (state === 'AddOnProducts') {\r\n // if (this._enrollSession.data.IsUpGrade) {\r\n // this._router.navigate(['/Shipping'], { queryParams: { customerId: this._enrollSession.data.IsUpGrade } });\r\n // } else if (this._enrollSession.data.ReferredBy) {\r\n // this._router.navigate(['/Shipping'], { queryParams: { giftcard: this._enrollSession.data.ReferredBy } });\r\n // } else {\r\n // this._router.navigate(['/AddOnProducts']);\r\n // }\r\n\r\n // } else {\r\n // if (this._enrollSession.data.IsUpGrade) {\r\n // this._router.navigate(['/Subscriptions'], { queryParams: { customerId: this._enrollSession.data.IsUpGrade } });\r\n // } else if (this._enrollSession.data.ReferredBy) {\r\n // this._router.navigate(['/Subscriptions'], { queryParams: { giftcard: this._enrollSession.data.ReferredBy } });\r\n // } else {\r\n // this._router.navigate(['/Subscriptions']);\r\n // }\r\n // }\r\n\r\n // }\r\n ngOnInit(): void {\r\n \r\n }\r\n // *************start Add To Cart ContinueRetailOrder***********************************************************************/\r\n ContinueRetailOrder(product: any, quantity: any, type: any): any {\r\n // var isRestricted = false;\r\n // Store product in EnrollSession\r\n if (parseInt(quantity, 10) <= 0) {\r\n return false;\r\n }\r\n this._enrollSession.data.RetailOrderSummary = this._enrollSession.data.RetailOrderSummary || [];\r\n if (type === 1) {\r\n this._enrollSession.data.RetailOrderSummary.Enrollpack = this._enrollSession.data.RetailOrderSummary.Enrollpack || [];\r\n const enrollOrder = _.find(this._enrollSession.data.RetailOrderSummary.Enrollpack,\r\n (item: any) => {\r\n return item.ItemCode === product.ItemCode && item.ParentId === product.ParentId;\r\n });\r\n if (!this.isItemRestrcited(product, this._enrollSession.data.RetailOrderSummary.Enrollpack)) {\r\n if (this.subOrderItem) {\r\n if (!enrollOrder) {\r\n this._enrollSession.data.RetailOrderSummary.Enrollpack.push({\r\n ItemCode: product.ItemCode,\r\n Description: product.Description,\r\n Quantity: quantity ? quantity : 1,\r\n Price: product.Price,\r\n RetailPrice: product.Other1Price,\r\n ShippingPrice: product.ShippingPrice,\r\n TinyImage: product.TinyPicture,\r\n SmallImage: product.SmallPicture,\r\n BV: product.BusinessVolume,\r\n CV: product.CommissionableVolume,\r\n TaxablePrice: product.TaxablePrice,\r\n LongDetail: product.LongDetail,\r\n LongDetail2: product.LongDetail2,\r\n LongDetail3: product.LongDetail3,\r\n LongDetail4: product.LongDetail4,\r\n IsUSOnly: product.IsUSOnly ? product.IsUSOnly : false,\r\n ParentId: product.ParentId\r\n });\r\n } else {\r\n enrollOrder.Quantity = enrollOrder.Quantity+1 || 1;\r\n }\r\n } else {\r\n if (!enrollOrder) {\r\n this._enrollSession.data.RetailOrderSummary.Enrollpack = [];\r\n this._enrollSession.data.RetailOrderSummary.Enrollpack.push({\r\n ItemCode: product.ItemCode,\r\n Description: product.Description,\r\n Quantity: quantity ? quantity : 1,\r\n Price: product.Price,\r\n RetailPrice: product.Other1Price,\r\n ShippingPrice: product.ShippingPrice,\r\n TinyImage: product.TinyPicture,\r\n SmallImage: product.SmallPicture,\r\n BV: product.BusinessVolume,\r\n CV: product.CommissionableVolume,\r\n TaxablePrice: product.TaxablePrice,\r\n LongDetail: product.LongDetail,\r\n LongDetail2: product.LongDetail2,\r\n LongDetail3: product.LongDetail3,\r\n LongDetail4: product.LongDetail4,\r\n IsUSOnly: product.IsUSOnly ? product.IsUSOnly : false,\r\n ParentId: product.ParentId\r\n });\r\n } else {\r\n enrollOrder.Quantity = enrollOrder.Quantity+1 || 1;\r\n }\r\n }\r\n // *******find shipping method************/\r\n\r\n if (this._enrollSession.data.RetailEnroll.ShippingMethod) {\r\n this.finalShippingMethod = this._enrollSession.data.RetailEnroll.ShippingMethod;\r\n } else {\r\n this.finalShippingMethod = '';\r\n }\r\n\r\n if (!product.ParentId || product.ParentId === product.ItemCode) {\r\n this._calculateRetailInitialOrder.calculate(this.finalShippingMethod);\r\n // setTimeout(() => {\r\n // if (this._enrollSession.data.RetailOrderSummary.InitialOrderDetails && this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.SubTotal) {\r\n // console.log(\"second\");\r\n \r\n // this.checkSubTotal.next(this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.SubTotal);\r\n // }\r\n // console.log(this._router.url)\r\n // }, 2000)\r\n // if(this._router.url=='/TodaysOrder')\r\n // {\r\n // if(!enrollOrder)\r\n // {\r\n // this._router.navigate(['/Enhance']);\r\n // }\r\n // }\r\n this._toastr.success('Product Added to Cart.', 'Success');\r\n }\r\n }\r\n else {\r\n if (!product.ParentId || product.ParentId === product.ItemCode) {\r\n this._toastr.info('Info', 'You can buy only ' + product.RestrictQty + ' quantity of this item.');\r\n }\r\n }\r\n }\r\n else if (type === 2) {\r\n this._enrollSession.data.RetailOrderSummary.InitialOrders = this._enrollSession.data.RetailOrderSummary.InitialOrders || [];\r\n const initialOrder = _.find(this._enrollSession.data.RetailOrderSummary.InitialOrders, (item) => {\r\n return item.ItemCode === product.ItemCode && item.ParentId === product.ParentId;\r\n });\r\n if (!this.isItemRestrcited(product, this._enrollSession.data.RetailOrderSummary.InitialOrders)) {\r\n if (!initialOrder) {// set order\r\n this._enrollSession.data.RetailOrderSummary.InitialOrders.push({\r\n ItemCode: product.ItemCode,\r\n Description: product.Description,\r\n Quantity: 1,\r\n Price: product.Price,\r\n RetailPrice: product.Other1Price,\r\n ShippingPrice: product.ShippingPrice,\r\n TinyImage: product.TinyPicture,\r\n SmallImage: product.SmallPicture,\r\n BV: product.BusinessVolume,\r\n CV: product.CommissionableVolume,\r\n TaxablePrice: product.TaxablePrice,\r\n LongDetail: product.LongDetail,\r\n LongDetail2: product.LongDetail2,\r\n LongDetail3: product.LongDetail3,\r\n LongDetail4: product.LongDetail4,\r\n ParentId: product.ParentId,\r\n IsUSOnly: product.IsUSOnly ? product.IsUSOnly : false\r\n });\r\n } else {\r\n initialOrder.Quantity = initialOrder.Quantity + 1;\r\n\r\n }\r\n // *******shipping method**********/\r\n if (this._enrollSession.data.RetailEnroll.ShippingMethod) {\r\n this.finalShippingMethod = this._enrollSession.data.RetailEnroll.ShippingMethod;\r\n } else {\r\n this.finalShippingMethod = '';\r\n }\r\n\r\n\r\n // **********calculate order**********************/\r\n if (this.IsCallCalculateOrder) {\r\n this._calculateRetailInitialOrder.calculate(this.finalShippingMethod);\r\n }\r\n else {\r\n this._enrollSession.data.InitialOrdersSubTotal = 0;\r\n this._enrollSession.data.InitialOrdersQVTotal = 0;\r\n _.each(this._enrollSession.data.RetailOrderSummary.InitialOrders, (item) => {\r\n\r\n this._enrollSession.data.InitialOrdersSubTotal = this._enrollSession.data.InitialOrdersSubTotal + (item.Quantity * item.Price);\r\n this._enrollSession.data.InitialOrdersQVTotal = this._enrollSession.data.InitialOrdersQVTotal + (item.Quantity * item.BV);\r\n\r\n });\r\n }\r\n this._enrollSession.data.InitialOrdersSubItems = '';\r\n const filterInitialOrders = _.filter(this._enrollSession.data.RetailOrderSummary.InitialOrders, (item) => {\r\n return item.ParentId && item.ParentId !== undefined;\r\n });\r\n\r\n this._enrollSession.data.InitialOrdersSubItems = _.groupBy(filterInitialOrders, 'ParentId');\r\n const subTotal = this._enrollSession.data.InitialOrdersSubTotal + this._enrollSession.data.Volume109;\r\n this._enrollSession.data.TotalItemLength = _.filter(this._enrollSession.data.RetailOrderSummary.InitialOrders, (item) => {\r\n return !item.ParentId || (parseInt(item.ParentId, 10) === parseInt(item.ItemCode, 10));\r\n });\r\n\r\n this._calculateRetailInitialOrder.calculate(this.finalShippingMethod);\r\n setTimeout(() => {\r\n if (this._enrollSession.data.RetailOrderSummary.InitialOrderDetails && this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.SubTotal) {\r\n this.checkSubTotal.next(this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.SubTotal);\r\n }\r\n }, 2000)\r\n\r\n if (!product.ParentId || product.ParentId === product.ItemCode) {\r\n this._toastr.success('Product Added to Cart.', 'Success');\r\n }\r\n }\r\n else {\r\n if (!product.ParentId || product.ParentId === product.ItemCode) {\r\n this._toastr.info('Info', 'You can buy only ' + product.RestrictQty + ' quantity of this item.');\r\n }\r\n }\r\n }\r\n else if (type === 3) {\r\n this._enrollSession.data.RetailOrderSummary.SmartOrders = this._enrollSession.data.RetailOrderSummary.SmartOrders || [];\r\n const SmartOrder = _.find(this._enrollSession.data.RetailOrderSummary.SmartOrders, (item) => {\r\n return item.ItemCode === product.ItemCode && item.ParentId === product.ParentId;\r\n });\r\n if (!this.isItemRestrcited(product, this._enrollSession.data.RetailOrderSummary.SmartOrders)) {\r\n if (!SmartOrder) {\r\n this._enrollSession.data.RetailOrderSummary.SmartOrders.push({\r\n ItemCode: product.ItemCode,\r\n Description: product.Description,\r\n Quantity: quantity ? quantity : 1,\r\n Price: product.Price,\r\n RetailPrice: product.Other1Price,\r\n ShippingPrice: product.ShippingPrice,\r\n TinyImage: product.TinyPicture,\r\n SmallImage: product.SmallPicture,\r\n BV: product.BusinessVolume,\r\n CV: product.CommissionableVolume,\r\n TaxablePrice: product.TaxablePrice,\r\n LongDetail: product.LongDetail,\r\n LongDetail2: product.LongDetail2,\r\n LongDetail3: product.LongDetail3,\r\n LongDetail4: product.LongDetail4,\r\n ParentId: product.ParentId,\r\n IsUSOnly: product.IsUSOnly ? product.IsUSOnly : false\r\n });\r\n\r\n }\r\n else {\r\n SmartOrder.Quantity = SmartOrder.Quantity + 1;\r\n\r\n }\r\n // *******shipping method**********/\r\n\r\n if (this._enrollSession.data.RetailEnroll.ShippingMethod) {// shipping method\r\n this.IsCallCalculateOrder = true;\r\n this.finalShippingMethod = this._enrollSession.data.RetailEnroll.ShippingMethod;\r\n } else {\r\n this.finalShippingMethod = '';\r\n }\r\n // **********calculate order**********************/\r\n if (this.IsCallCalculateOrder) {\r\n console.log(\"calculatesmart order\",this.finalShippingMethod);\r\n this._calculateRetailSmartOrder.calculate(this.finalShippingMethod);\r\n }\r\n else {\r\n this._enrollSession.data.SmartOrdersSubTotal = 0;\r\n this._enrollSession.data.SmartOrderBVTotal = 0;\r\n _.each(this._enrollSession.data.RetailOrderSummary.SmartOrders, (item) => {\r\n\r\n this._enrollSession.data.SmartOrdersSubTotal = this._enrollSession.data.SmartOrdersSubTotal + (item.Quantity * item.Price);\r\n this._enrollSession.data.SmartOrderBVTotal = this._enrollSession.data.SmartOrderBVTotal + (item.Quantity * item.BV);\r\n\r\n });\r\n }\r\n const filterResult = _.filter(this._enrollSession.data.RetailOrderSummary.SmartOrders, (item) => {\r\n return item.ParentId !== undefined;\r\n });\r\n\r\n this._enrollSession.data.SmartOrderSubItems = _.groupBy(filterResult, 'ParentId');\r\n if (!product.ParentId || product.ParentId === product.ItemCode) {\r\n this._toastr.success('Product Added to Cart.', 'Success');\r\n }\r\n }\r\n else {\r\n if (!product.ParentId || product.ParentId === product.ItemCode) {\r\n this._toastr.info('Info', 'You can buy only ' + product.RestrictQty + ' quantity of this item.');\r\n }\r\n }\r\n }\r\n else if (type === 4) {\r\n this._enrollSession.data.RetailOrderSummary.AddOnOrders = this._enrollSession.data.RetailOrderSummary.AddOnOrders || [];\r\n\r\n const addonOrder = _.find(this._enrollSession.data.RetailOrderSummary.AddOnOrders, (item) => {\r\n return item.ItemCode === product.ItemCode && item.ParentId === product.ParentId;\r\n });\r\n\r\n if (!this.isItemRestrcited(product, this._enrollSession.data.RetailOrderSummary.AddOnOrders)) {\r\n\r\n if (!addonOrder) {// set order\r\n this._enrollSession.data.RetailOrderSummary.AddOnOrders.push({\r\n ItemCode: product.ItemCode,\r\n Description: product.Description,\r\n Quantity: 1,\r\n Price: product.Price,\r\n ShippingPrice: product.ShippingPrice,\r\n TinyImage: product.TinyPicture,\r\n SmallImage: product.SmallPicture,\r\n BV: product.BusinessVolume,\r\n CV: product.CommissionableVolume,\r\n TaxablePrice: product.TaxablePrice,\r\n LongDetail: product.LongDetail,\r\n LongDetail2: product.LongDetail2,\r\n LongDetail3: product.LongDetail3,\r\n LongDetail4: product.LongDetail4,\r\n ParentId: product.ParentId,\r\n IsUSOnly: product.IsUSOnly ? product.IsUSOnly : false\r\n });\r\n\r\n\r\n } else {\r\n addonOrder.Quantity = addonOrder.Quantity + 1;\r\n\r\n }\r\n // *******shipping method**********/\r\n if (this._enrollSession.data.RetailEnroll.ShippingMethod) {// shipping method\r\n this.finalShippingMethod = this._enrollSession.data.RetailEnroll.ShippingMethod;\r\n } else {\r\n this.finalShippingMethod = '';\r\n }\r\n\r\n\r\n // **********calculate order**********************/\r\n if (this.IsCallCalculateOrder) {\r\n this._calculateRetailInitialOrder.calculate(this.finalShippingMethod);\r\n }\r\n else {\r\n this._enrollSession.data.AddOnOrdersSubTotal = 0;\r\n this._enrollSession.data.AddOnOrdersQVTotal = 0;\r\n _.each(this._enrollSession.data.RetailOrderSummary.AddOnOrders, (item) => {\r\n\r\n this._enrollSession.data.AddOnOrdersSubTotal = this._enrollSession.data.AddOnOrdersSubTotal + (item.Quantity * item.Price);\r\n this._enrollSession.data.AddOnOrdersQVTotal = this._enrollSession.data.AddOnOrdersQVTotal + (item.Quantity * item.BV);\r\n\r\n });\r\n }\r\n\r\n this._enrollSession.data.AddOnOrdersSubItems = '';\r\n const filterAddOnOrders = _.filter(this._enrollSession.data.RetailOrderSummary.AddOnOrders, (item) => {\r\n return item.ParentId && item.ParentId !== undefined;\r\n });\r\n\r\n this._enrollSession.data.AddOnOrdersSubItems = _.groupBy(filterAddOnOrders, 'ParentId');\r\n this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.SubTotal =\r\n this._enrollSession.data.AddOnOrdersSubTotal;\r\n this._enrollSession.data.RetailOrderSummary.InitialOrderDetails.BV =\r\n this._enrollSession.data.AddOnOrdersQVTotal;\r\n this._calculateRetailInitialOrder.calculate(this.finalShippingMethod);\r\n\r\n\r\n if (!product.ParentId || product.ParentId === product.ItemCode) {\r\n this._toastr.success('AddOn Product Added to Cart.', 'Success');\r\n }\r\n }\r\n else {\r\n if (!product.ParentId || product.ParentId === product.ItemCode) {\r\n this._toastr.info('Info', 'You can buy only ' + product.RestrictQty + ' quantity of this item.');\r\n }\r\n }\r\n }\r\n\r\n }\r\n decreaseProductQuantity(product: any, quantity: any, type: any) {\r\n if (parseInt(quantity, 10) <= 0) {\r\n return false;\r\n }\r\n if (type === 1) {\r\n var enrollOrderIndex;\r\n this._enrollSession.data.RetailOrderSummary.Enrollpack = this._enrollSession.data.RetailOrderSummary.Enrollpack || [];\r\n const enrollOrder = _.find(this._enrollSession.data.RetailOrderSummary.Enrollpack, (item, index) => {\r\n if(item.ItemCode === product.ItemCode && item.ParentId === product.ParentId) {\r\n enrollOrderIndex = index;\r\n }\r\n return item.ItemCode === product.ItemCode && item.ParentId === product.ParentId;\r\n });\r\n // *******shipping method**********/\r\n if (this._enrollSession.data.RetailEnroll.ShippingMethod) {\r\n this.finalShippingMethod = this._enrollSession.data.RetailEnroll.ShippingMethod;\r\n } else {\r\n this.finalShippingMethod = '';\r\n }\r\n if (!this.isItemRestrcited(product, this._enrollSession.data.RetailOrderSummary.Enrollpack)) {\r\n if (enrollOrder.Quantity>1) {// decrease order\r\n enrollOrder.Quantity = enrollOrder.Quantity - 1;\r\n this._calculateRetailInitialOrder.calculate(this.finalShippingMethod);\r\n if (!product.ParentId || product.ParentId === product.ItemCode) {\r\n this._toastr.success('Product quantity decreased from cart.', 'Success');\r\n }\r\n }\r\n }\r\n else {\r\n if (!product.ParentId || product.ParentId === product.ItemCode) {\r\n this._toastr.info('Info', 'You can buy only ' + product.RestrictQty + ' quantity of this item.');\r\n }\r\n }\r\n }\r\n if (type === 2) {\r\n var initialOrderIndex;\r\n this._enrollSession.data.RetailOrderSummary.InitialOrders = this._enrollSession.data.RetailOrderSummary.InitialOrders || [];\r\n const initialOrder = _.find(this._enrollSession.data.RetailOrderSummary.InitialOrders, (item, index) => {\r\n if(item.ItemCode === product.ItemCode && item.ParentId === product.ParentId) {\r\n initialOrderIndex = index;\r\n }\r\n return item.ItemCode === product.ItemCode && item.ParentId === product.ParentId;\r\n });\r\n // *******shipping method**********/\r\n if (this._enrollSession.data.RetailEnroll.ShippingMethod) {\r\n this.finalShippingMethod = this._enrollSession.data.RetailEnroll.ShippingMethod;\r\n } else {\r\n this.finalShippingMethod = '';\r\n }\r\n if (!this.isItemRestrcited(product, this._enrollSession.data.RetailOrderSummary.InitialOrders)) {\r\n if (initialOrder.Quantity>1) {// decrease order\r\n initialOrder.Quantity = initialOrder.Quantity - 1;\r\n this._calculateRetailInitialOrder.calculate(this.finalShippingMethod);\r\n if (!product.ParentId || product.ParentId === product.ItemCode) {\r\n this._toastr.success('Product quantity decreased from cart.', 'Success');\r\n }\r\n }\r\n }\r\n else {\r\n if (!product.ParentId || product.ParentId === product.ItemCode) {\r\n this._toastr.info('Info', 'You can buy only ' + product.RestrictQty + ' quantity of this item.');\r\n }\r\n }\r\n }else if (type === 3) {\r\n this._enrollSession.data.RetailOrderSummary.SmartOrders = this._enrollSession.data.RetailOrderSummary.SmartOrders || [];\r\n const SmartOrder = _.find(this._enrollSession.data.RetailOrderSummary.SmartOrders, (item) => {\r\n return item.ItemCode === product.ItemCode && item.ParentId === product.ParentId;\r\n });\r\n // *******shipping method**********/\r\n\r\n if (this._enrollSession.data.RetailEnroll.ShippingMethod) {// shipping method\r\n this.finalShippingMethod = this._enrollSession.data.RetailEnroll.ShippingMethod;\r\n } else {\r\n this.finalShippingMethod = '';\r\n }\r\n if (!this.isItemRestrcited(product, this._enrollSession.data.RetailOrderSummary.SmartOrders)) {\r\n if (SmartOrder.Quantity>1) {\r\n SmartOrder.Quantity = SmartOrder.Quantity - 1;\r\n this._calculateRetailSmartOrder.calculate(this.finalShippingMethod);\r\n this._toastr.success('Product quantity decreased from cart.', 'Success');\r\n }\r\n }\r\n else {\r\n if (!product.ParentId || product.ParentId === product.ItemCode) {\r\n this._toastr.info('Info', 'You can buy only ' + product.RestrictQty + ' quantity of this item.');\r\n }\r\n }\r\n }\r\n }\r\n\r\n isItemRestrcited(product: any, selectedItems: any): any {\r\n let isRestricted = false;\r\n let filterItem: any = {};\r\n filterItem = _.find(selectedItems, (item) => {\r\n return item.ItemCode === product.ItemCode;\r\n });\r\n console.log(filterItem);\r\n if (product.RestrictQty && product.RestrictQty > 0 && (filterItem && filterItem.Quantity >= product.RestrictQty)) {\r\n isRestricted = true;\r\n }\r\n return isRestricted;\r\n }\r\n\r\n OpenModal(type): any {\r\n\r\n }\r\n\r\n // navigation(page: any): any {\r\n // if (page === 'Subscriptions') {\r\n // const enrollOrder = _.find(this._enrollSession.data.RetailOrderSummary.Enrollpack, (item) => {\r\n // return item.ItemCode === '11050-DD' || item.ItemCode === '11050-D';\r\n // });\r\n\r\n // if (!enrollOrder && this._enrollSession.data.customertype !== 22) {\r\n // this.OpenModal('navigationModal');\r\n // } else {\r\n // this._stepperService.SetStepperPage('Subscriptions');\r\n // this.Nextbtn('Subscriptions');\r\n // }\r\n\r\n // }\r\n // else if (page === 'AddOnProducts') {\r\n // this._stepperService.SetStepperPage('AddOnProducts');\r\n // this.Nextbtn('AddOnProducts');\r\n // }\r\n // else if (page === 'checkout') {\r\n // const enrollSubscription = this._enrollSession.data.SmartOrderBVTotal >= 50 ? false : true;\r\n // if (enrollSubscription && this._enrollSession.data.RetailOrderSummary.SmartOrders.length === 0) {\r\n // if (this._enrollSession.data.customertype === 22) {\r\n // this.OpenModal('opportunityModal');\r\n // }\r\n // else {\r\n // this.OpenModal('navigationModal');\r\n // }\r\n // } else if (this._enrollSession.data.RetailOrderSummary.SmartOrders.length > 0) {\r\n // this.OpenModal('smartShipDateModal');\r\n\r\n // }\r\n // }\r\n // }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport * as _ from 'underscore';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { RestService } from './rest.service';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { tap } from 'rxjs/operators';\r\nimport { Router } from '@angular/router';\r\nimport * as $ from 'jquery';\r\nimport { EnrollSessionService } from './enrollSession.service';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class StepperService {\r\n ItemLength: any;\r\n SmartOrderSubItems: any;\r\n SmartOrderItems: any;\r\n SmartOrdersSubTotal: any;\r\n SmartOrderBVTotal: any;\r\n customerDetail: any;\r\n SmartOrder: any;\r\n SmartOrderDetails: any = {};\r\n constructor(\r\n private _toastr: ToastrService,\r\n private _router: Router,\r\n private _http: HttpClient,\r\n private route: ActivatedRoute,\r\n private _restService: RestService,\r\n private _enrollSession: EnrollSessionService) {\r\n\r\n const SmartOrderItems = JSON.parse(localStorage.getItem('SmartOrderItems'));\r\n this.customerDetail = JSON.parse(localStorage.getItem('customerDetail'));\r\n this.SmartOrderDetails = JSON.parse(localStorage.getItem('SmartOrderDetails')) ? JSON.parse(localStorage.getItem('SmartOrderDetails')) : {};\r\n this.SmartOrderItems = SmartOrderItems || [];\r\n this.ItemLength = SmartOrderItems ? SmartOrderItems.length : 0;\r\n this.SmartOrdersSubTotal = JSON.parse(localStorage.getItem('SmartOrdersSubTotal'));\r\n this.SmartOrderBVTotal = JSON.parse(localStorage.getItem('SmartOrderBVTotal'));\r\n this.SmartOrderSubItems = JSON.parse(localStorage.getItem('SmartOrderSubItems')) || [];\r\n }\r\n\r\n SetStepperPage(page: any): void {\r\n let stepper;\r\n if (this._enrollSession.data.customertype === 22) {\r\n stepper = 'steper1';\r\n }\r\n else {\r\n stepper = 'steper';\r\n }\r\n\r\n $('#' + stepper).find('span#' + page).removeClass('complete1').addClass('complete');\r\n if (page === 'Enroll') {\r\n page = 'Enrollment';\r\n }\r\n setTimeout(() => {\r\n $('#' + stepper).find('span#' + page).nextAll().removeClass('complete').addClass('complete1');\r\n $('#' + stepper).find('span#' + page).prevAll().removeClass('complete1').addClass('complete');\r\n $('#' + stepper).find('span#' + page).addClass('complete');\r\n }, 1);\r\n if (!$('#' + stepper).find('span#' + page).hasClass('complete1')) {\r\n this._router.navigate([page]);\r\n if (page === 'Enroll') {\r\n page = 'Enrollment';\r\n }\r\n setTimeout(() => {\r\n $('#' + stepper).find('span#' + page).nextAll().removeClass('complete').addClass('complete1');\r\n $('#' + stepper).find('span#' + page).prevAll().removeClass('complete1').addClass('complete');\r\n $('#' + stepper).find('span#' + page).addClass('complete');\r\n }, 1);\r\n }\r\n }\r\n\r\n}\r\n","import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { Component, EventEmitter, Inject, OnInit, Output } from '@angular/core';\r\nimport { EnrollSessionService } from '../enrollSession.service';\r\n\r\n@Component({\r\n selector: 'subscribe-dialog',\r\n templateUrl: './subscribe-dialog.component.html',\r\n styleUrls: ['./subscribe-dialog.component.scss']\r\n})\r\nexport class SubscribeDialogComponent implements OnInit {\r\n ngOnInit(): void {\r\n }\r\n \r\n constructor(\r\n public dialogRef: MatDialogRef,\r\n public _enrollSession: EnrollSessionService,\r\n @Inject(MAT_DIALOG_DATA) public data: any) { }\r\n \r\n onSubscribe(SubscriptionStatus): void {\r\n // this._enrollSession.data.subscribeStatus = SubscriptionStatus;\r\n this.dialogRef.close(SubscriptionStatus);\r\n }\r\n \r\n\r\n}\r\n","
\r\n \r\n \r\n
\r\n
\r\n

Are you sure you Want to pass
on these Subscription benefits?

\r\n
\r\n
    \r\n
  • Consistency towards goals
  • \r\n
  • ability to get free products
  • \r\n
  • maximum savings
  • \r\n
  • double rewards points.
  • \r\n
\r\n
\r\n
\r\n  \r\n \r\n
\r\n
\r\n
\r\n
","import { MatDialogModule } from '@angular/material/dialog';\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SubscribeDialogComponent } from './subscribe-dialog.component';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatToolbarModule } from '@angular/material/toolbar';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\n\r\n@NgModule({\r\n declarations: [\r\n SubscribeDialogComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MatDialogModule,\r\n MatButtonModule,\r\n MatCheckboxModule,\r\n MatDatepickerModule,\r\n MatFormFieldModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatMenuModule,\r\n MatTableModule,\r\n MatToolbarModule,\r\n MatTooltipModule,\r\n ],\r\n entryComponents: [\r\n SubscribeDialogComponent\r\n ],\r\n exports: [\r\n SubscribeDialogComponent\r\n ]\r\n\r\n})\r\nexport class SubscribeDialogModule {\r\n\r\n }\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false,\r\n hmr : false\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/plugins/zone-error'; // Included with Angular CLI.\r\n","import { NgModuleRef, ApplicationRef } from '@angular/core';\r\nimport { createNewHosts } from '@angularclass/hmr';\r\n\r\nexport const hmrBootstrap = (module: any, bootstrap: () => Promise>) => {\r\n let ngModule: NgModuleRef;\r\n module.hot.accept();\r\n bootstrap().then(mod => ngModule = mod);\r\n module.hot.dispose(() => {\r\n const appRef: ApplicationRef = ngModule.injector.get(ApplicationRef);\r\n const elements = appRef.components.map(c => c.location.nativeElement);\r\n const makeVisible = createNewHosts(elements);\r\n ngModule.destroy();\r\n makeVisible();\r\n });\r\n};\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\nimport { hmrBootstrap } from 'hmr';\r\n\r\nif ( environment.production )\r\n{\r\n enableProdMode();\r\n}\r\n\r\nconst bootstrap = () => platformBrowserDynamic().bootstrapModule(AppModule);\r\n\r\nif ( environment.hmr )\r\n{\r\n if ( module['hot'] )\r\n {\r\n hmrBootstrap(module, bootstrap);\r\n }\r\n else\r\n {\r\n console.error('HMR is not enabled for webpack-dev-server!');\r\n console.log('Are you using the --hmr flag for ng serve?');\r\n }\r\n}\r\nelse\r\n{\r\n bootstrap().catch(err => console.error(err));\r\n}\r\n","var map = {\n\t\"./af\": 26431,\n\t\"./af.js\": 26431,\n\t\"./ar\": 81286,\n\t\"./ar-dz\": 1616,\n\t\"./ar-dz.js\": 1616,\n\t\"./ar-kw\": 9759,\n\t\"./ar-kw.js\": 9759,\n\t\"./ar-ly\": 43160,\n\t\"./ar-ly.js\": 43160,\n\t\"./ar-ma\": 62551,\n\t\"./ar-ma.js\": 62551,\n\t\"./ar-sa\": 79989,\n\t\"./ar-sa.js\": 79989,\n\t\"./ar-tn\": 6962,\n\t\"./ar-tn.js\": 6962,\n\t\"./ar.js\": 81286,\n\t\"./az\": 15887,\n\t\"./az.js\": 15887,\n\t\"./be\": 14572,\n\t\"./be.js\": 14572,\n\t\"./bg\": 3276,\n\t\"./bg.js\": 3276,\n\t\"./bm\": 93344,\n\t\"./bm.js\": 93344,\n\t\"./bn\": 58985,\n\t\"./bn.js\": 58985,\n\t\"./bo\": 94391,\n\t\"./bo.js\": 94391,\n\t\"./br\": 46728,\n\t\"./br.js\": 46728,\n\t\"./bs\": 5536,\n\t\"./bs.js\": 5536,\n\t\"./ca\": 41043,\n\t\"./ca.js\": 41043,\n\t\"./cs\": 70420,\n\t\"./cs.js\": 70420,\n\t\"./cv\": 33513,\n\t\"./cv.js\": 33513,\n\t\"./cy\": 6771,\n\t\"./cy.js\": 6771,\n\t\"./da\": 47978,\n\t\"./da.js\": 47978,\n\t\"./de\": 46061,\n\t\"./de-at\": 25204,\n\t\"./de-at.js\": 25204,\n\t\"./de-ch\": 2653,\n\t\"./de-ch.js\": 2653,\n\t\"./de.js\": 46061,\n\t\"./dv\": 85,\n\t\"./dv.js\": 85,\n\t\"./el\": 8579,\n\t\"./el.js\": 8579,\n\t\"./en-SG\": 84285,\n\t\"./en-SG.js\": 84285,\n\t\"./en-au\": 25724,\n\t\"./en-au.js\": 25724,\n\t\"./en-ca\": 10525,\n\t\"./en-ca.js\": 10525,\n\t\"./en-gb\": 52847,\n\t\"./en-gb.js\": 52847,\n\t\"./en-ie\": 67216,\n\t\"./en-ie.js\": 67216,\n\t\"./en-il\": 39305,\n\t\"./en-il.js\": 39305,\n\t\"./en-nz\": 79130,\n\t\"./en-nz.js\": 79130,\n\t\"./eo\": 50802,\n\t\"./eo.js\": 50802,\n\t\"./es\": 40328,\n\t\"./es-do\": 45551,\n\t\"./es-do.js\": 45551,\n\t\"./es-us\": 64790,\n\t\"./es-us.js\": 64790,\n\t\"./es.js\": 40328,\n\t\"./et\": 96389,\n\t\"./et.js\": 96389,\n\t\"./eu\": 52961,\n\t\"./eu.js\": 52961,\n\t\"./fa\": 26151,\n\t\"./fa.js\": 26151,\n\t\"./fi\": 7997,\n\t\"./fi.js\": 7997,\n\t\"./fo\": 37779,\n\t\"./fo.js\": 37779,\n\t\"./fr\": 28174,\n\t\"./fr-ca\": 3287,\n\t\"./fr-ca.js\": 3287,\n\t\"./fr-ch\": 38867,\n\t\"./fr-ch.js\": 38867,\n\t\"./fr.js\": 28174,\n\t\"./fy\": 50452,\n\t\"./fy.js\": 50452,\n\t\"./ga\": 45014,\n\t\"./ga.js\": 45014,\n\t\"./gd\": 74127,\n\t\"./gd.js\": 74127,\n\t\"./gl\": 72124,\n\t\"./gl.js\": 72124,\n\t\"./gom-latn\": 37953,\n\t\"./gom-latn.js\": 37953,\n\t\"./gu\": 76604,\n\t\"./gu.js\": 76604,\n\t\"./he\": 1222,\n\t\"./he.js\": 1222,\n\t\"./hi\": 74235,\n\t\"./hi.js\": 74235,\n\t\"./hr\": 622,\n\t\"./hr.js\": 622,\n\t\"./hu\": 37735,\n\t\"./hu.js\": 37735,\n\t\"./hy-am\": 90402,\n\t\"./hy-am.js\": 90402,\n\t\"./id\": 59187,\n\t\"./id.js\": 59187,\n\t\"./is\": 30536,\n\t\"./is.js\": 30536,\n\t\"./it\": 35007,\n\t\"./it-ch\": 94667,\n\t\"./it-ch.js\": 94667,\n\t\"./it.js\": 35007,\n\t\"./ja\": 62093,\n\t\"./ja.js\": 62093,\n\t\"./jv\": 80059,\n\t\"./jv.js\": 80059,\n\t\"./ka\": 66870,\n\t\"./ka.js\": 66870,\n\t\"./kk\": 80880,\n\t\"./kk.js\": 80880,\n\t\"./km\": 1083,\n\t\"./km.js\": 1083,\n\t\"./kn\": 68785,\n\t\"./kn.js\": 68785,\n\t\"./ko\": 21721,\n\t\"./ko.js\": 21721,\n\t\"./ku\": 37851,\n\t\"./ku.js\": 37851,\n\t\"./ky\": 1727,\n\t\"./ky.js\": 1727,\n\t\"./lb\": 40346,\n\t\"./lb.js\": 40346,\n\t\"./lo\": 93002,\n\t\"./lo.js\": 93002,\n\t\"./lt\": 64035,\n\t\"./lt.js\": 64035,\n\t\"./lv\": 56927,\n\t\"./lv.js\": 56927,\n\t\"./me\": 5634,\n\t\"./me.js\": 5634,\n\t\"./mi\": 94173,\n\t\"./mi.js\": 94173,\n\t\"./mk\": 86320,\n\t\"./mk.js\": 86320,\n\t\"./ml\": 11705,\n\t\"./ml.js\": 11705,\n\t\"./mn\": 31062,\n\t\"./mn.js\": 31062,\n\t\"./mr\": 92805,\n\t\"./mr.js\": 92805,\n\t\"./ms\": 11341,\n\t\"./ms-my\": 59900,\n\t\"./ms-my.js\": 59900,\n\t\"./ms.js\": 11341,\n\t\"./mt\": 37734,\n\t\"./mt.js\": 37734,\n\t\"./my\": 19034,\n\t\"./my.js\": 19034,\n\t\"./nb\": 9324,\n\t\"./nb.js\": 9324,\n\t\"./ne\": 46495,\n\t\"./ne.js\": 46495,\n\t\"./nl\": 70673,\n\t\"./nl-be\": 76272,\n\t\"./nl-be.js\": 76272,\n\t\"./nl.js\": 70673,\n\t\"./nn\": 72486,\n\t\"./nn.js\": 72486,\n\t\"./pa-in\": 2829,\n\t\"./pa-in.js\": 2829,\n\t\"./pl\": 78444,\n\t\"./pl.js\": 78444,\n\t\"./pt\": 53170,\n\t\"./pt-br\": 66117,\n\t\"./pt-br.js\": 66117,\n\t\"./pt.js\": 53170,\n\t\"./ro\": 96587,\n\t\"./ro.js\": 96587,\n\t\"./ru\": 39264,\n\t\"./ru.js\": 39264,\n\t\"./sd\": 42135,\n\t\"./sd.js\": 42135,\n\t\"./se\": 95366,\n\t\"./se.js\": 95366,\n\t\"./si\": 93379,\n\t\"./si.js\": 93379,\n\t\"./sk\": 46143,\n\t\"./sk.js\": 46143,\n\t\"./sl\": 196,\n\t\"./sl.js\": 196,\n\t\"./sq\": 21082,\n\t\"./sq.js\": 21082,\n\t\"./sr\": 91621,\n\t\"./sr-cyrl\": 98963,\n\t\"./sr-cyrl.js\": 98963,\n\t\"./sr.js\": 91621,\n\t\"./ss\": 41404,\n\t\"./ss.js\": 41404,\n\t\"./sv\": 55685,\n\t\"./sv.js\": 55685,\n\t\"./sw\": 3872,\n\t\"./sw.js\": 3872,\n\t\"./ta\": 54106,\n\t\"./ta.js\": 54106,\n\t\"./te\": 39204,\n\t\"./te.js\": 39204,\n\t\"./tet\": 83692,\n\t\"./tet.js\": 83692,\n\t\"./tg\": 86361,\n\t\"./tg.js\": 86361,\n\t\"./th\": 31735,\n\t\"./th.js\": 31735,\n\t\"./tl-ph\": 96129,\n\t\"./tl-ph.js\": 96129,\n\t\"./tlh\": 13759,\n\t\"./tlh.js\": 13759,\n\t\"./tr\": 81644,\n\t\"./tr.js\": 81644,\n\t\"./tzl\": 90875,\n\t\"./tzl.js\": 90875,\n\t\"./tzm\": 16878,\n\t\"./tzm-latn\": 11041,\n\t\"./tzm-latn.js\": 11041,\n\t\"./tzm.js\": 16878,\n\t\"./ug-cn\": 74357,\n\t\"./ug-cn.js\": 74357,\n\t\"./uk\": 74810,\n\t\"./uk.js\": 74810,\n\t\"./ur\": 86794,\n\t\"./ur.js\": 86794,\n\t\"./uz\": 28966,\n\t\"./uz-latn\": 77959,\n\t\"./uz-latn.js\": 77959,\n\t\"./uz.js\": 28966,\n\t\"./vi\": 35386,\n\t\"./vi.js\": 35386,\n\t\"./x-pseudo\": 23156,\n\t\"./x-pseudo.js\": 23156,\n\t\"./yo\": 68028,\n\t\"./yo.js\": 68028,\n\t\"./zh-cn\": 9330,\n\t\"./zh-cn.js\": 9330,\n\t\"./zh-hk\": 89380,\n\t\"./zh-hk.js\": 89380,\n\t\"./zh-tw\": 96508,\n\t\"./zh-tw.js\": 96508\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 46700;"]}