{"version":3,"file":"main.js","mappings":"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","sources":["./src/app/account/account.service.ts","./src/app/account/login-ho-without-spons/login-ho-without-spons.component.ts","./src/app/account/login-ho-without-spons/login-ho-without-spons.component.html","./src/app/account/login-new-page/login-new-page.component.ts","./src/app/account/login-new-page/login-new-page.component.html","./src/app/account/reply-to-email/reply-to-email.component.ts","./src/app/account/reply-to-email/reply-to-email.component.html","./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/auth.guard.ts","./src/app/auth.service.ts","./src/app/contact-form/contact-form.component.ts","./src/app/contact-form/contact-form.component.html","./src/app/dynamic-path.guard.ts","./src/app/notifiation-all/notifiation-all.component.ts","./src/app/notifiation-all/notifiation-all.component.html","./src/app/real-estate-agent/article-manager-enterprisesponsor/article-manager-enterprisesponsor.component.ts","./src/app/real-estate-agent/article-manager-enterprisesponsor/article-manager-enterprisesponsor.component.html","./src/app/real-estate-agent/enterprisesponsor-footer-links/enterprisesponsor-footer-links.component.ts","./src/app/real-estate-agent/enterprisesponsor-footer-links/enterprisesponsor-footer-links.component.html","./src/app/real-estate-agent/qr-client-agent/qr-client-agent.component.ts","./src/app/real-estate-agent/qr-client-agent/qr-client-agent.component.html","./src/app/services/sharing-data/sharing-data.service.ts","./src/app/shared.service.ts","./src/app/shared/app-http-request-handler.service.ts","./src/app/shared/app-http.interceptor.ts","./src/app/shared/common-ops-service.ts","./src/app/shared/http-loader.service.ts","./src/app/shared/http-loader/http-loader.component.ts","./src/app/shared/http-loader/http-loader.component.html","./src/app/shared/image-cropper-tool/image-cropper-tool.component.ts","./src/app/shared/image-cropper-tool/image-cropper-tool.component.html","./src/app/shared/month-year-picker/month-year-picker.component.ts","./src/app/shared/month-year-picker/month-year-picker.component.html","./src/app/shared/payments/stripe/accept-payment/accept-payment.component.ts","./src/app/shared/payments/stripe/accept-payment/accept-payment.component.html","./src/app/shared/shared.module.ts","./src/app/shared/shared.routing.module.ts","./src/app/static-pages/faq/faq.component.ts","./src/app/static-pages/faq/faq.component.html","./src/app/static-pages/homeowner-register-withoutsponsor/homeowner-register-withoutsponsor.component.ts","./src/app/static-pages/homeowner-register-withoutsponsor/homeowner-register-withoutsponsor.component.html","./src/app/static-pages/legal/legal.component.ts","./src/app/static-pages/legal/legal.component.html","./src/app/static-pages/privacy/privacy.component.ts","./src/app/static-pages/privacy/privacy.component.html","./src/app/static-pages/site-map/site-map.component.ts","./src/app/static-pages/site-map/site-map.component.html","./src/app/static-pages/sponsor-register/sponsor-register.component.ts","./src/app/static-pages/sponsor-register/sponsor-register.component.html","./src/app/static-pages/terms/terms.component.ts","./src/app/static-pages/terms/terms.component.html","./src/app/stripe-payment/card-added-successfully/card-added-successfully.component.ts","./src/app/stripe-payment/card-added-successfully/card-added-successfully.component.html","./src/app/stripe-payment/manage-card/manage-card.component.ts","./src/app/stripe-payment/manage-card/manage-card.component.html","./src/app/stripe-payment/payment-failed/payment-failed.component.ts","./src/app/stripe-payment/payment-failed/payment-failed.component.html","./src/app/stripe-payment/payment-success/payment-success.component.ts","./src/app/stripe-payment/payment-success/payment-success.component.html","./src/app/stripe-payment/product-list/product-list.component.ts","./src/app/stripe-payment/product-list/product-list.component.html","./src/app/toast/app-toast.service.ts","./src/app/toast/toast-container/toast-container.component.ts","./src/app/toast/toast-container/toast-container.component.html","./src/environments/environment.ts","./src/main.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { LoginTypeModel, UserJwtDecodedInfo } from './account-type-module';\r\nimport { environment } from '../../environments/environment';\r\nimport jwt_decode from 'jwt-decode';\r\nimport { AppHttpRequestHandlerService } from '../shared/app-http-request-handler.service';\r\nimport { GenericResponseTemplateModel } from '../generic-type-module';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { Observable, Subject } from 'rxjs';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AccountService {\r\n protected ngUnsubscribe: Subject = new Subject();\r\n constructor(private httpClient: HttpClient,private appHttpRequestHandlerService: AppHttpRequestHandlerService) { }\r\n\r\n public loginUser(loginTypeModel : LoginTypeModel){\r\n this.httpClient.post(environment.defaultApiRoot + \"api/\" + \"AccountManager/login\",loginTypeModel)\r\n .subscribe(response=>{\r\n localStorage.setItem(\"BearerToken\",(response).token)\r\n });\r\n }\r\n\r\n getJwtToken():string{\r\n if(localStorage.getItem('BearerToken')){\r\n return localStorage.getItem('BearerToken');\r\n }\r\n return '';\r\n }\r\n\r\n getUserJwtDecodedInfo():UserJwtDecodedInfo{\r\n if(this.isUserLoggedIn()){\r\n return jwt_decode(this.getJwtToken());\r\n }\r\n return null;\r\n }\r\n\r\n public isUserLoggedIn(): boolean{\r\n if(this.getJwtToken()!=''){\r\n return true;\r\n }\r\n return false;\r\n }\r\n checkDuplicateEmail(formData: any): Observable{\r\n return this.appHttpRequestHandlerService.httpGet({ value: formData.value, id: formData.id}, \"AccountManager\", \"CheckDuplicateEmail\").pipe(takeUntil(this.ngUnsubscribe));\r\n }\r\n}","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, Validators } from '@angular/forms';\r\nimport { ActivatedRoute,Router } from '@angular/router';\r\nimport { Subject } from 'rxjs';\r\nimport { GenericFormModel, GenericResponseTemplateModel, TForm } from 'src/app/generic-type-module';\r\nimport { AppHttpRequestHandlerService } from 'src/app/shared/app-http-request-handler.service';\r\nimport { LoginTypeModel } from '../account-type-module';\r\nimport { map, takeUntil } from 'rxjs/operators';\r\nimport { AccountService } from '../account.service';\r\nimport { CookieService } from 'ngx-cookie';\r\n\r\n@Component({\r\n selector: 'app-login-ho-without-spons',\r\n templateUrl: './login-ho-without-spons.component.html',\r\n styleUrls: ['./login-ho-without-spons.component.css']\r\n})\r\nexport class LoginHOWithoutSponsComponent implements OnInit {\r\n protected ngUnsubscribe: Subject = new Subject();\r\n public isloginError: boolean = false;\r\n public rememberme=false;\r\n public remembervalue = false;\r\n isLogin: boolean = false;\r\n freeV: boolean = false;\r\n paidV: boolean = false;\r\n value: string = '';\r\n fieldPass: boolean;\r\n IsREA:boolean=false;\r\n public isLoginRestricted: boolean=false;\r\n public restrictedReasonMessage: string=\"\";\r\n public uname: string=\"\";\r\n public upass: string=\"\";\r\n currentUrl: string = '';\r\n isNoSpons: boolean = false;\r\n state$:any;\r\n constructor(private fb: FormBuilder, \r\n private accountService: AccountService,\r\n private appHttpRequestHandlerService: AppHttpRequestHandlerService,\r\n private router: Router,\r\n private cookieService: CookieService,\r\n private route: ActivatedRoute\r\n ) { \r\n \r\n localStorage.removeItem(\"BearerToken\");\r\n // localStorage.clear();\r\n if(cookieService.get('remember')!==undefined){\r\n if(cookieService.get('remember')==='Y'){\r\n this.loginForm.controls.userName.patchValue(cookieService.get('username'));\r\n this.loginForm.controls.password.patchValue(cookieService.get('password'));\r\n this.rememberme=true;\r\n }\r\n else if(cookieService.get('remember')==='N' && window.history.state.user === \"\" && window.history.state.upsw == \"\"){\r\n this.cookieService.put('username','');\r\n this.cookieService.put('password','');\r\n this.rememberme=false;\r\n }\r\n else if(cookieService.get('remember')==='N'){\r\n this.loginForm.controls.userName.patchValue(cookieService.get('username'));\r\n this.loginForm.controls.password.patchValue(cookieService.get('password'));\r\n this.rememberme=false;\r\n }\r\n \r\n }\r\n }\r\n\r\n loginForm: TForm = this.fb.group({\r\n userName: ['', Validators.required],\r\n password: ['', Validators.required]\r\n }) as TForm;\r\n \r\n ngOnInit(): void {\r\n let savedEmail = this.cookieService.get('username');\r\n let savedPassword = this.cookieService.get('password');\r\n let rememberStatus = this.cookieService.get('remember');\r\n \r\n if (savedEmail !== \"\" && savedPassword!==\"\" && rememberStatus === 'Y') {\r\n this.cookieService.put('remember', 'Y');\r\n }\r\n else if (savedEmail === \"\" && savedPassword ===\"\" && rememberStatus === 'Y') {\r\n this.cookieService.put('remember', 'N');\r\n }\r\n if (!localStorage.getItem('foo')) { \r\n localStorage.setItem('foo', 'no reload') \r\n location.reload() \r\n } else {\r\n localStorage.removeItem('foo') \r\n }\r\n \r\n // localStorage.removeItem(\"NewHomeOwner\");\r\n // localStorage.clear();\r\n // console.log(\"login\",localStorage.getItem(\"NewHomeOwner\"));\r\n this.state$ = this.route.paramMap\r\n .pipe(map(() => window.history.state))\r\n //localStorage.removeItem(\"BearerToken\");\r\n //localStorage.clear();\r\n // localStorage.removeItem(\"BearerToken\");\r\n // localStorage.clear();\r\n }\r\n ngAfterViewInit(){\r\n // localStorage.removeItem(\"BearerToken\");\r\n // localStorage.clear();\r\n }\r\n togglePass() {\r\n this.fieldPass = !this.fieldPass;\r\n }\r\n\r\n onSubmit(): void {\r\n Object.keys(this.loginForm.controls).forEach((key) => {\r\n if (!this.loginForm.value[key]) {\r\n this.loginForm.patchValue({ [key]: '' });\r\n }\r\n });\r\n localStorage.removeItem(\"BearerToken\");\r\n this.isloginError = false;\r\n this.isLoginRestricted = false;\r\n this.restrictedReasonMessage=\"\";\r\n this.appHttpRequestHandlerService.httpPost(this.loginForm.value, \"AccountManager\", \"login\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: string) => {\r\n if ((data).isAvailable) {\r\n localStorage.setItem('firstTimeLogin', '1');\r\n if(this.rememberme){\r\n this.cookieService.put('remember','Y');\r\n this.cookieService.put('username',this.loginForm.controls.userName.value);\r\n this.cookieService.put('password',this.loginForm.controls.password.value);\r\n } \r\n else {\r\n this.cookieService.put('remember','N');\r\n this.cookieService.put('username','');\r\n this.cookieService.put('password','');\r\n } \r\n this.setTokenAndSendUserToHomePage((data).token);\r\n }\r\n else {\r\n //IsLoginRestricted=true, RestrictedReasonMessage\r\n this.isloginError = true;\r\n if((data).token == ''){\r\n this.isLoginRestricted=true;\r\n this.restrictedReasonMessage = \"Invalid username or password..! \";\r\n }\r\n if ((data).isLoginRestricted) {\r\n this.isLoginRestricted=true;\r\n this.restrictedReasonMessage = \"Your account has been \" + (data).restrictedReasonMessage + \". \" ;\r\n \r\n }\r\n }\r\n if ((data).isREA) {\r\n this.isLoginRestricted=true;\r\n this.IsREA=true;\r\n this.restrictedReasonMessage =\"You are no longer being sponsored by \" + (data).restrictedReasonMessage + \". \";\r\n }\r\n });\r\n }\r\n\r\n setTokenAndSendUserToHomePage(token: string) {\r\n localStorage.setItem(\"BearerToken\", token);\r\n this.initiateHomePage();\r\n }\r\n\r\n onPasswordFocusIn() {\r\n //this.loginForm.controls.password.patchValue('');\r\n }\r\n // onPasswordFocusOut() {\r\n // if (this.loginForm.controls.password.value.trim().length > 0) {\r\n // this.loginForm.controls.password.patchValue(shajs('sha256').update(Md5.hashStr(this.loginForm.controls.password.value)).digest('hex'));\r\n // }\r\n // }\r\n initiateHomePage() {\r\n this.currentUrl = this.router.url;\r\n localStorage.setItem(\"loginUrl\", this.currentUrl);\r\n if (this.accountService.getUserJwtDecodedInfo().RoleName == 'HOME_OWNER_USER') {\r\n if(this.accountService.getUserJwtDecodedInfo().IsAgree=='True'){\r\n this.appHttpRequestHandlerService.httpGet({ id: this.accountService.getUserJwtDecodedInfo().UserId}, \"CommonApi\", \"GetPaidAndUnpaidHO\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: any) => {\r\n if(data.message !== \"\")\r\n {\r\n this.freeV = data.freeV;\r\n this.paidV = data.paidV;\r\n if (this.freeV || this.paidV) {\r\n if(this.freeV)\r\n {\r\n this.value = 'Basic';\r\n localStorage.setItem('baicvalue', JSON.stringify(true));\r\n }\r\n else{\r\n this.value = 'Premium';\r\n localStorage.setItem('premiumvalue', JSON.stringify(true));\r\n }\r\n this.appHttpRequestHandlerService.httpGet({ value: this.value, Id:this.accountService.getUserJwtDecodedInfo().UserId}, \"CommonApi\", \"GetHoWithNOSponsMessage\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: any) => {\r\n if(data.message !== \"\")\r\n {\r\n if(data.dataPopup !== null)\r\n {\r\n this.isLogin = data.dataPopup.isLogin;\r\n if (this.isLogin === true) {\r\n localStorage.setItem('loginvalue', JSON.stringify(true)); // Save 'true' in localStorage\r\n } \r\n else{\r\n localStorage.setItem('loginvalue', JSON.stringify(false));\r\n }\r\n }\r\n this.isLogin = JSON.parse(localStorage.getItem('loginvalue'));\r\n this.router.navigate(['/HomeAddress/DashboardWithoutSpons'],{queryParams: {dl:\"Y\" }});\r\n }\r\n else{\r\n this.isLogin = JSON.parse(localStorage.getItem('loginvalue'));\r\n this.router.navigate(['/HomeAddress/DashboardWithoutSpons'],{queryParams: {dl:\"Y\" }});\r\n }\r\n \r\n });\r\n }\r\n }\r\n else{\r\n if(this.accountService.getUserJwtDecodedInfo().IsAgree=='True'){\r\n this.router.navigate(['/HomeAddress/Dashboard'],{queryParams: {dl:\"Y\" }});\r\n }\r\n if(this.accountService.getUserJwtDecodedInfo().IsAgree=='False'){\r\n this.router.navigate(['/Account/TermsAndConditions']);\r\n }\r\n }\r\n\r\n });\r\n \r\n }\r\n if(this.accountService.getUserJwtDecodedInfo().IsAgree=='False'){\r\n this.router.navigate(['/Account/TermsAndConditions']);\r\n }\r\n \r\n //});\r\n } \r\n // else if (this.accountService.getUserJwtDecodedInfo().RoleName == 'REAL_ESTATE_USER') {\r\n // this.appHttpRequestHandlerService.httpGet({ id: this.accountService.getUserJwtDecodedInfo().UserId}, \"CommonApi\", \"GetEnterpriseSponsor\").pipe(takeUntil(this.ngUnsubscribe))\r\n // .subscribe((data1: any) => {\r\n // if(data1.enterprise !==\"\"){\r\n // this.appHttpRequestHandlerService.httpGet({ id: this.accountService.getUserJwtDecodedInfo().UserId}, \"AccountManager\", \"CheckIsUserProfileCompleted\").pipe(takeUntil(this.ngUnsubscribe))\r\n // .subscribe((data1: GenericResponseTemplateModel) => {\r\n // if(data1.responseDataModel){\r\n // if(this.accountService.getUserJwtDecodedInfo().IsAgree=='False'){\r\n // this.router.navigate(['/Account/TermsAndConditions']);\r\n // }else{\r\n // this.router.navigate(['/RealEstateAgent/Dashboard']);\r\n // }\r\n // }\r\n // else{\r\n // if(this.accountService.getUserJwtDecodedInfo().IsAgree=='False'){\r\n // this.router.navigate(['/Account/TermsAndConditions']);\r\n // }else{\r\n // this.router.navigate(['/RealEstateAgent/CompleteProfileSteps']);\r\n // }\r\n // }\r\n // });\r\n // }\r\n // else{\r\n // this.appHttpRequestHandlerService.httpGet({ id: this.accountService.getUserJwtDecodedInfo().UserId}, \"Stripe\", \"CheckIsUserBecameCustomer\").pipe(takeUntil(this.ngUnsubscribe))\r\n // .subscribe((data: GenericResponseTemplateModel) => {\r\n // if(!data.responseDataModel){ // New Customer\r\n \r\n // this.appHttpRequestHandlerService.httpGet({ id: this.accountService.getUserJwtDecodedInfo().UserId}, \"Stripe\", \"CreateAndMapCustomer\").pipe(takeUntil(this.ngUnsubscribe))\r\n // .subscribe((data: GenericResponseTemplateModel) => {\r\n // this.router.navigate(['/Pick-A-Product'], {queryParams: { 'c3e931f1-9e57-41e9-8025-001ce1a15414': this.accountService.getUserJwtDecodedInfo().UserId}}); \r\n // //Go to checkout page\r\n // });\r\n // }\r\n // else{\r\n // this.appHttpRequestHandlerService.httpGet({ id: this.accountService.getUserJwtDecodedInfo().UserId}, \"Stripe\", \"CheckCustomerHasActiveSubscription\").pipe(takeUntil(this.ngUnsubscribe))\r\n // .subscribe((data: GenericResponseTemplateModel) => {\r\n // if(data.responseDataModel){\r\n \r\n // this.appHttpRequestHandlerService.httpGet({ id: this.accountService.getUserJwtDecodedInfo().UserId}, \"AccountManager\", \"CheckIsUserProfileCompleted\").pipe(takeUntil(this.ngUnsubscribe))\r\n // .subscribe((data1: GenericResponseTemplateModel) => {\r\n // if(data1.responseDataModel){\r\n // if(this.accountService.getUserJwtDecodedInfo().IsAgree=='False'){\r\n // this.router.navigate(['/Account/TermsAndConditions']);\r\n // }else{\r\n // this.router.navigate(['/RealEstateAgent/Dashboard']);\r\n // }\r\n // }\r\n // else{\r\n // if(this.accountService.getUserJwtDecodedInfo().IsAgree=='False'){\r\n // this.router.navigate(['/Account/TermsAndConditions']);\r\n // }else{\r\n // this.router.navigate(['/RealEstateAgent/CompleteProfileSteps']);\r\n // }\r\n // }\r\n // });\r\n // }\r\n // else{\r\n // this.router.navigate(['/Pick-A-Product'], {queryParams: { 'c3e931f1-9e57-41e9-8025-001ce1a15414': this.accountService.getUserJwtDecodedInfo().UserId}}); \r\n // }\r\n // });\r\n // }\r\n // });\r\n // }\r\n // });\r\n\r\n // }\r\n // else if (this.accountService.getUserJwtDecodedInfo().RoleName == 'ADMIN_USER') {\r\n // this.router.navigate(['/Admin/Dashboard']);\r\n // }\r\n }\r\n ngOnDestroy() {\r\n this.ngUnsubscribe.next();\r\n this.ngUnsubscribe.complete();\r\n }\r\n onClickForgetUsername() {\r\n this.router.navigate(['/Account/ForgetUsername']);\r\n }\r\n onClickForgetPassword() {\r\n this.uname = this.loginForm.controls.userName.value;\r\n this.upass = this.loginForm.controls.password.value;\r\n this.isNoSpons = true;\r\n this.router.navigate(['/Account/ForgetPassword'], {\r\n state: {user: this.uname, upsw: this.upass, noSpon: this.isNoSpons }\r\n });\r\n }\r\n resetErrorMsg(){\r\n this.isloginError=false;\r\n }\r\n // onRemberMeChange(event){\r\n // var rmCheck =(document.getElementById(\"remember\")).value\r\n // this.rememberme = event.target.checked;\r\n // if(this.rememberme == false)\r\n // {\r\n // this.cookieService.put('remember','N');\r\n // }\r\n // else{\r\n // this.cookieService.put('remember','Y');\r\n // }\r\n // }\r\n goToLoginPage() {\r\n //localStorage.setItem(\"name\", \"true\");\r\n this.router.navigate(['/Account/login']);\r\n }\r\n\r\n onRemberMeChange(event: any) {\r\n let email = (document.getElementById(\"form2Example1\")).value;\r\n let password = (document.getElementById(\"form2Example2\")).value;\r\n \r\n if (email && password) {\r\n this.rememberme = event.target.checked;\r\n if (this.rememberme) {\r\n this.cookieService.put('remember', 'Y');\r\n } else {\r\n this.cookieService.put('remember', 'N');\r\n }\r\n } else {\r\n // Prevent checking if email or password is empty\r\n //event.preventDefault();\r\n //event.target.checked = false;\r\n this.cookieService.put('remember', 'N');\r\n }\r\n }\r\n\r\n}\r\n","
\r\n \"login-img\"\r\n
\r\n
\r\n \r\n
\r\n \"login-img\"\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \"home-logo\"\r\n
\r\n
\r\n

Home Owner Login

\r\n

Log into your account

\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n Invalid username or password..!\r\n {{restrictedReasonMessage}} Please contact us at help@upkeepable.com\r\n {{restrictedReasonMessage}} Please contact us at help@upkeepable.com\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, Validators } from '@angular/forms';\r\nimport { ActivatedRoute,Router } from '@angular/router';\r\nimport { Subject } from 'rxjs';\r\nimport { GenericResponseTemplateModel, TForm } from 'src/app/generic-type-module';\r\nimport { AppHttpRequestHandlerService } from 'src/app/shared/app-http-request-handler.service';\r\nimport { LoginTypeModel } from '../account-type-module';\r\nimport { map, takeUntil } from 'rxjs/operators';\r\nimport { AccountService } from '../account.service';\r\nimport { CookieService } from 'ngx-cookie';\r\n@Component({\r\n selector: 'app-login-new-page',\r\n templateUrl: './login-new-page.component.html',\r\n styleUrls: ['./login-new-page.component.css']\r\n})\r\nexport class LoginNewPageComponent implements OnInit {\r\n protected ngUnsubscribe: Subject = new Subject();\r\n public isloginError: boolean = false;\r\n public rememberme=false;\r\n public remembervalue = false;\r\n paidV: boolean = false;\r\n freeV: boolean = false;\r\n currentUrl: string = '';\r\n value: string = '';\r\n value1: string = '';\r\n fieldPass: boolean;\r\n IsREA:boolean=false;\r\n img: string = '';\r\n logoImg: string = '';\r\n name: string = '';\r\n shape: string ='';\r\n emailData: string = '';\r\n isMobile: boolean = false;\r\n public isLoginRestricted: boolean=false;\r\n public restrictedReasonMessage: string=\"\";\r\n public uname: string=\"\";\r\n public upass: string=\"\";\r\n isNoSpons: boolean = false;\r\n state$:any;\r\n dynamicPath: string | null = null;\r\n constructor(private fb: FormBuilder, \r\n private accountService: AccountService,\r\n private appHttpRequestHandlerService: AppHttpRequestHandlerService,\r\n private router: Router,\r\n private cookieService: CookieService,\r\n private route: ActivatedRoute\r\n ) { \r\n \r\n localStorage.removeItem(\"BearerToken\");\r\n // localStorage.clear();\r\n if(cookieService.get('remember')!==undefined){\r\n if(cookieService.get('remember')==='Y'){\r\n this.loginForm.controls.userName.patchValue(cookieService.get('username'));\r\n this.loginForm.controls.password.patchValue(cookieService.get('password'));\r\n this.rememberme=true;\r\n }\r\n else if(cookieService.get('remember')==='N' && window.history.state.user === \"\" && window.history.state.upsw == \"\"){\r\n this.cookieService.put('username','');\r\n this.cookieService.put('password','');\r\n this.rememberme=false;\r\n }\r\n else if(cookieService.get('remember')==='N'){\r\n this.loginForm.controls.userName.patchValue(cookieService.get('username'));\r\n this.loginForm.controls.password.patchValue(cookieService.get('password'));\r\n this.rememberme=false;\r\n }\r\n \r\n }\r\n }\r\n\r\n loginForm: TForm = this.fb.group({\r\n userName: ['', Validators.required],\r\n password: ['', Validators.required]\r\n }) as TForm;\r\n \r\n ngOnInit(): void {\r\n let savedEmail = this.cookieService.get('username');\r\n let savedPassword = this.cookieService.get('password');\r\n let rememberStatus = this.cookieService.get('remember');\r\n \r\n if (savedEmail !== \"\" && savedPassword!==\"\" && rememberStatus === 'Y') {\r\n this.cookieService.put('remember', 'Y');\r\n }\r\n else if (savedEmail === \"\" && savedPassword ===\"\" && rememberStatus === 'Y') {\r\n this.cookieService.put('remember', 'N');\r\n }\r\n this.isMobile = window.innerWidth <= 768; // Example for mobile detection\r\n window.addEventListener('resize', () => {\r\n this.isMobile = window.innerWidth <= 768;\r\n });\r\n this.route.paramMap.subscribe(params => {\r\n this.dynamicPath = params.get('dynamicPath'); // Capture any dynamic path\r\n //console.log('Dynamic Path:', this.dynamicPath); // For example, log the dynamic path\r\n this.value1 = window.location.origin.concat(\"/login/\"+this.dynamicPath);\r\n this.appHttpRequestHandlerService.httpGet({ id: this.value1}, \"CommonApi\", \"GetLoginUrl\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: any) => {\r\n if(data.enterprise === \"\" || data.enterprise === null)\r\n {\r\n }\r\n else{\r\n this.img = data.imageData1;\r\n this.logoImg = data.imageData;\r\n this.name = data.userName;\r\n this.shape = data.enterprise.profileShape;\r\n this.emailData = data.email;\r\n }\r\n });\r\n });\r\n if (!localStorage.getItem('foo')) { \r\n localStorage.setItem('foo', 'no reload') \r\n location.reload() \r\n } else {\r\n localStorage.removeItem('foo') \r\n }\r\n \r\n // localStorage.removeItem(\"NewHomeOwner\");\r\n // localStorage.clear();\r\n // console.log(\"login\",localStorage.getItem(\"NewHomeOwner\"));\r\n this.state$ = this.route.paramMap\r\n .pipe(map(() => window.history.state))\r\n //localStorage.removeItem(\"BearerToken\");\r\n //localStorage.clear();\r\n // localStorage.removeItem(\"BearerToken\");\r\n // localStorage.clear();\r\n }\r\n ngAfterViewInit(){\r\n // localStorage.removeItem(\"BearerToken\");\r\n // localStorage.clear();\r\n }\r\n togglePass() {\r\n this.fieldPass = !this.fieldPass;\r\n }\r\n\r\n onSubmit(): void {\r\n Object.keys(this.loginForm.controls).forEach((key) => {\r\n if (!this.loginForm.value[key]) {\r\n this.loginForm.patchValue({ [key]: '' });\r\n }\r\n });\r\n localStorage.removeItem(\"BearerToken\");\r\n this.isloginError = false;\r\n this.isLoginRestricted = false;\r\n this.restrictedReasonMessage=\"\";\r\n this.appHttpRequestHandlerService.httpPost(this.loginForm.value, \"AccountManager\", \"login\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: string) => {\r\n // if ((data).isAvailable) {\r\n // localStorage.setItem('firstTimeLogin', '1');\r\n // if(this.rememberme){\r\n // this.cookieService.put('remember','Y');\r\n // this.cookieService.put('username',this.loginForm.controls.userName.value);\r\n // this.cookieService.put('password',this.loginForm.controls.password.value);\r\n // } \r\n // else {\r\n // this.cookieService.put('remember','N');\r\n // this.cookieService.put('username','');\r\n // this.cookieService.put('password','');\r\n // } \r\n // this.setTokenAndSendUserToHomePage((data).token);\r\n // }\r\n // else {\r\n // //IsLoginRestricted=true, RestrictedReasonMessage\r\n // this.isloginError = true;\r\n // if((data).token == ''){\r\n // this.isLoginRestricted=true;\r\n // this.restrictedReasonMessage = \"Invalid username or password..! \";\r\n // }\r\n // if ((data).isLoginRestricted) {\r\n // this.isLoginRestricted=true;\r\n // this.restrictedReasonMessage = \"Your account has been \" + (data).restrictedReasonMessage + \". \" ;\r\n \r\n // }\r\n // }\r\n // if ((data).isREA) {\r\n // this.isLoginRestricted=true;\r\n // this.IsREA=true;\r\n // this.restrictedReasonMessage =\"You are no longer being sponsored by \" + (data).restrictedReasonMessage + \". \";\r\n // }\r\n this.appHttpRequestHandlerService.httpGet({ id: Number((data).id)}, \"CommonApi\", \"GetPaidAndUnpaidHO\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data1: any) => {\r\n if(data1.message !== \"\")\r\n {\r\n this.freeV = data1.freeV;\r\n this.paidV = data1.paidV;\r\n if (this.freeV || this.paidV) {\r\n this.isloginError = true;\r\n this.isLoginRestricted=true;\r\n this.restrictedReasonMessage = \"Invalid username or password..! \";\r\n }\r\n\r\n }\r\n else{\r\n if ((data).isAvailable) {\r\n localStorage.setItem('firstTimeLogin', '1');\r\n if(this.rememberme){\r\n this.cookieService.put('remember','Y');\r\n this.cookieService.put('username',this.loginForm.controls.userName.value);\r\n this.cookieService.put('password',this.loginForm.controls.password.value);\r\n } \r\n else {\r\n this.cookieService.put('remember','N');\r\n this.cookieService.put('username','');\r\n this.cookieService.put('password','');\r\n } \r\n this.setTokenAndSendUserToHomePage((data).token);\r\n }\r\n else {\r\n //IsLoginRestricted=true, RestrictedReasonMessage\r\n this.isloginError = true;\r\n if((data).token == ''){\r\n this.isLoginRestricted=true;\r\n this.restrictedReasonMessage = \"Invalid username or password..! \";\r\n }\r\n if ((data).isLoginRestricted) {\r\n this.isLoginRestricted=true;\r\n this.restrictedReasonMessage = \"Your account has been \" + (data).restrictedReasonMessage + \". \" ;\r\n \r\n }\r\n }\r\n if ((data).isREA) {\r\n this.isLoginRestricted=true;\r\n this.IsREA=true;\r\n this.restrictedReasonMessage =\"You are no longer being sponsored by \" + (data).restrictedReasonMessage + \". \";\r\n }\r\n }\r\n });\r\n });\r\n }\r\n\r\n setTokenAndSendUserToHomePage(token: string) {\r\n localStorage.setItem(\"BearerToken\", token);\r\n this.initiateHomePage();\r\n }\r\n\r\n onPasswordFocusIn() {\r\n }\r\n initiateHomePage() {\r\n this.currentUrl = this.router.url;\r\n localStorage.setItem(\"loginUrl\", this.currentUrl);\r\n if (this.accountService.getUserJwtDecodedInfo().RoleName == 'HOME_OWNER_USER') {\r\n if(this.accountService.getUserJwtDecodedInfo().IsAgree=='True'){\r\n this.router.navigate(['/HomeAddress/Dashboard'],{queryParams: {dl:\"Y\" }});\r\n }\r\n if(this.accountService.getUserJwtDecodedInfo().IsAgree=='False'){\r\n this.router.navigate(['/Account/TermsAndConditions']);\r\n }\r\n } \r\n else if (this.accountService.getUserJwtDecodedInfo().RoleName == 'REAL_ESTATE_USER') {\r\n this.appHttpRequestHandlerService.httpGet({ id: this.accountService.getUserJwtDecodedInfo().UserId}, \"CommonApi\", \"GetEnterpriseSponsor\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data1: any) => {\r\n if(data1.enterprise !==\"\"){\r\n this.appHttpRequestHandlerService.httpGet({ id: this.accountService.getUserJwtDecodedInfo().UserId}, \"AccountManager\", \"CheckIsUserProfileCompleted\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data1: GenericResponseTemplateModel) => {\r\n if(data1.responseDataModel){\r\n if(this.accountService.getUserJwtDecodedInfo().IsAgree=='False'){\r\n this.router.navigate(['/Account/TermsAndConditions']);\r\n }else{\r\n this.router.navigate(['/RealEstateAgent/Dashboard']);\r\n }\r\n }\r\n else{\r\n if(this.accountService.getUserJwtDecodedInfo().IsAgree=='False'){\r\n this.router.navigate(['/Account/TermsAndConditions']);\r\n }else{\r\n this.router.navigate(['/RealEstateAgent/CompleteProfileSteps']);\r\n }\r\n }\r\n });\r\n }\r\n else{\r\n this.appHttpRequestHandlerService.httpGet({ id: this.accountService.getUserJwtDecodedInfo().UserId}, \"Stripe\", \"CheckIsUserBecameCustomer\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => {\r\n if(!data.responseDataModel){ // New Customer\r\n \r\n this.appHttpRequestHandlerService.httpGet({ id: this.accountService.getUserJwtDecodedInfo().UserId}, \"Stripe\", \"CreateAndMapCustomer\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => {\r\n this.router.navigate(['/Pick-A-Product'], {queryParams: { 'c3e931f1-9e57-41e9-8025-001ce1a15414': this.accountService.getUserJwtDecodedInfo().UserId}}); \r\n //Go to checkout page\r\n });\r\n }\r\n else{\r\n this.appHttpRequestHandlerService.httpGet({ id: this.accountService.getUserJwtDecodedInfo().UserId}, \"Stripe\", \"CheckCustomerHasActiveSubscription\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => {\r\n if(data.responseDataModel){\r\n \r\n this.appHttpRequestHandlerService.httpGet({ id: this.accountService.getUserJwtDecodedInfo().UserId}, \"AccountManager\", \"CheckIsUserProfileCompleted\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data1: GenericResponseTemplateModel) => {\r\n if(data1.responseDataModel){\r\n if(this.accountService.getUserJwtDecodedInfo().IsAgree=='False'){\r\n this.router.navigate(['/Account/TermsAndConditions']);\r\n }else{\r\n this.router.navigate(['/RealEstateAgent/Dashboard']);\r\n }\r\n }\r\n else{\r\n if(this.accountService.getUserJwtDecodedInfo().IsAgree=='False'){\r\n this.router.navigate(['/Account/TermsAndConditions']);\r\n }else{\r\n this.router.navigate(['/RealEstateAgent/CompleteProfileSteps']);\r\n }\r\n }\r\n });\r\n }\r\n else{\r\n this.router.navigate(['/Pick-A-Product'], {queryParams: { 'c3e931f1-9e57-41e9-8025-001ce1a15414': this.accountService.getUserJwtDecodedInfo().UserId}}); \r\n }\r\n });\r\n }\r\n });\r\n }\r\n });\r\n\r\n }\r\n else if (this.accountService.getUserJwtDecodedInfo().RoleName == 'ADMIN_USER') {\r\n this.router.navigate(['/Admin/Dashboard']);\r\n }\r\n }\r\n ngOnDestroy() {\r\n this.ngUnsubscribe.next();\r\n this.ngUnsubscribe.complete();\r\n }\r\n onClickForgetUsername() {\r\n this.router.navigate(['/Account/ForgetUsername']);\r\n }\r\n onClickForgetPassword() {\r\n localStorage.setItem(\"loginUrl\", this.router.url);\r\n this.uname = this.loginForm.controls.userName.value;\r\n this.upass = this.loginForm.controls.password.value;\r\n this.router.navigate(['/Account/ForgetPassword'], {\r\n state: {user: this.uname, upsw: this.upass}\r\n });\r\n }\r\n resetErrorMsg(){\r\n this.isloginError=false;\r\n }\r\n // onRemberMeChange(event){\r\n // var rmCheck =(document.getElementById(\"remember\")).value\r\n // this.rememberme = event.target.checked;\r\n // if(this.rememberme == false)\r\n // {\r\n // this.cookieService.put('remember','N');\r\n // }\r\n // else{\r\n // this.cookieService.put('remember','Y');\r\n // }\r\n // }\r\n onRemberMeChange(event: any) {\r\n let email = (document.getElementById(\"form2Example1\")).value;\r\n let password = (document.getElementById(\"form2Example2\")).value;\r\n \r\n if (email && password) {\r\n this.rememberme = event.target.checked;\r\n if (this.rememberme) {\r\n this.cookieService.put('remember', 'Y');\r\n } else {\r\n this.cookieService.put('remember', 'N');\r\n }\r\n } else {\r\n // Prevent checking if email or password is empty\r\n //event.preventDefault();\r\n //event.target.checked = false;\r\n this.cookieService.put('remember', 'N');\r\n }\r\n }\r\n\r\n onClickRegister()\r\n {\r\n this.router.navigate(['/', this.emailData]);\r\n }\r\n}\r\n","
\r\n \r\n \"login-img\"\r\n
\r\n
\r\n \r\n
\r\n \r\n \"login-img\"\r\n \"home-logo\"\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \"home-logo\"\r\n
\r\n
\r\n

{{name}}

\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n Invalid username or password..!\r\n {{restrictedReasonMessage}} Please contact us at help@upkeepable.com\r\n {{restrictedReasonMessage}} Please contact us at help@upkeepable.com\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

Powered By

\r\n
\r\n
\r\n \"upkeepable-logo\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { FormBuilder, Validators } from '@angular/forms';\r\nimport { ReplyToEmailModal } from '../account-type-module';\r\nimport { TForm } from 'src/app/generic-type-module';\r\nimport { map, takeUntil } from 'rxjs/operators';\r\nimport { Subject } from 'rxjs';\r\nimport { AppHttpRequestHandlerService } from 'src/app/shared/app-http-request-handler.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-reply-to-email',\r\n templateUrl: './reply-to-email.component.html',\r\n styleUrls: ['./reply-to-email.component.css']\r\n})\r\nexport class ReplyToEmailComponent implements OnInit {\r\n protected ngUnsubscribe: Subject = new Subject();\r\n queryParamValue: string;\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private fb: FormBuilder,\r\n private appHttpRequestHandlerService: AppHttpRequestHandlerService,\r\n ) { }\r\n\r\n\r\n EmailReplyForm: TForm = this.fb.group({\r\n Subject: ['', Validators.required],\r\n Message: ['', Validators.required],\r\n To:['', Validators.required]\r\n }) as TForm;\r\n\r\n \r\n\r\n ngOnInit(): void {\r\n this.route.queryParams.subscribe(params => {\r\n this.queryParamValue = params['email'];\r\n });\r\n }\r\n\r\n onSubmit(): void {\r\n this.EmailReplyForm.patchValue({\r\n To: this.queryParamValue,\r\n });\r\n this.appHttpRequestHandlerService.httpPost(this.EmailReplyForm.value, \"RealEstateAgent\", \"SendReplyToEmail\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: string) => {\r\n this.EmailReplyForm.reset();\r\n \r\n });\r\n\r\n }\r\n\r\n\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {{ queryParamValue }}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
","import { NgModule } from '@angular/core';\r\nimport { PreloadAllModules, RouterModule, Routes } from '@angular/router';\r\nimport { AuthGuard } from './auth.guard';\r\nimport { DynamicPathGuard } from './dynamic-path.guard';\r\nimport { PrivacyComponent } from './static-pages/privacy/privacy.component';\r\nimport { ReplyToEmailComponent } from './account/reply-to-email/reply-to-email.component';\r\nimport { TermsComponent } from './static-pages/terms/terms.component';\r\nimport { LegalComponent } from './static-pages/legal/legal.component';\r\nimport { SiteMapComponent } from './static-pages/site-map/site-map.component';\r\nimport { FaqComponent } from './static-pages/faq/faq.component';\r\nimport { NotifiationAllComponent } from './notifiation-all/notifiation-all.component';\r\nimport { ProductListComponent } from './stripe-payment/product-list/product-list.component';\r\nimport { PaymentSuccessComponent } from './stripe-payment/payment-success/payment-success.component';\r\nimport { PaymentFailedComponent } from './stripe-payment/payment-failed/payment-failed.component';\r\n//import { SubscriptionManagerComponent } from './account/subscription-manager/subscription-manager.component';\r\nimport { ManageCardComponent } from './stripe-payment/manage-card/manage-card.component';\r\nimport { CardAddedSuccessfullyComponent } from './stripe-payment/card-added-successfully/card-added-successfully.component';\r\nimport { ContactFormComponent } from './contact-form/contact-form.component';\r\nimport { SponsorRegisterComponent } from './static-pages/sponsor-register/sponsor-register.component';\r\nimport { QRClientAgentComponent } from '../app/real-estate-agent/qr-client-agent/qr-client-agent.component';\r\nimport { HomeownerRegisterWithoutsponsorComponent } from './static-pages/homeowner-register-withoutsponsor/homeowner-register-withoutsponsor.component';\r\nimport { LoginHOWithoutSponsComponent } from './account/login-ho-without-spons/login-ho-without-spons.component';\r\nimport { LoginNewPageComponent } from './account/login-new-page/login-new-page.component';\r\nconst routes: Routes = [\r\n {\r\n path:\"recommendation\", loadChildren:()=>import('./recommendation/recommendation.module')\r\n .then(mod=>mod.RecommendationModule), canActivate:[AuthGuard]\r\n },\r\n {\r\n path:\"HomeAddress\", loadChildren:()=>import('./home-owner-address/home-owner-address.module')\r\n .then(mod=>mod.HomeOwnerAddressModule), canActivate:[AuthGuard]\r\n },\r\n {\r\n path:\"RealEstateAgent\", loadChildren:()=>import('./real-estate-agent/real-estate-agent.module')\r\n .then(mod=>mod.RealEstateAgentModule), canActivate:[AuthGuard]\r\n },\r\n {\r\n path:\"\", loadChildren:()=>import('./account/account.module')\r\n .then(mod=>mod.AccountModule)\r\n },\r\n {\r\n path:\"Account\", loadChildren:()=>import('./account/account.module')\r\n .then(mod=>mod.AccountModule)\r\n },\r\n {\r\n path:\"Admin\", loadChildren:()=>import('./admin-user/admin-user.module')\r\n .then(mod=>mod.AdminUserModule), canActivate:[AuthGuard]\r\n },\r\n {path:\"privacy\", component:PrivacyComponent},\r\n {path:\"terms\", component:TermsComponent},\r\n {path:\"legal\", component:LegalComponent},\r\n {path:\"replytoemail\", component:ReplyToEmailComponent},\r\n {path:\"sitemap\", component:SiteMapComponent},\r\n {path:\"faq\", component:FaqComponent},\r\n {path:\"all-notifications\", component:NotifiationAllComponent},\r\n {path:\"Pick-A-Product\", component:ProductListComponent},\r\n {path:\"success\", component:PaymentSuccessComponent},\r\n {path:\"canceled\", component:PaymentFailedComponent},\r\n //{path:\"Manage-payments\", component: SubscriptionManagerComponent, canActivate:[AuthGuard]},\r\n {path:\"Manage-Cards\", component: ManageCardComponent, canActivate:[AuthGuard]},\r\n {path:\"Card-added-successfully\", component:CardAddedSuccessfullyComponent},\r\n {path:\"contact-form\", component:ContactFormComponent}, \r\n {path:\"sponsor-register\", component: SponsorRegisterComponent}, \r\n { path: 'myhome', component: LoginHOWithoutSponsComponent },\r\n // { path: '', redirectTo: '/myhome', pathMatch: 'full' },\r\n// { path: '**', redirectTo: '/myhome' } ,\r\n { path: 'start', component: HomeownerRegisterWithoutsponsorComponent }, // Route for /start\r\n //{ path: '', redirectTo: '/start', pathMatch: 'full' },\r\n // { path: '**', redirectTo: '/start' },\r\n {path: ':id', component: QRClientAgentComponent },\r\n { path: 'login/:dynamicPath', component: LoginNewPageComponent, canActivate: [DynamicPathGuard]},\r\n //{ path: ':dynamicPath', component: LoginNewPageComponent },\r\n\r\n \r\n \r\n\r\n // { path: 'QRClientbyAgent', component: QRClientAgentComponent }\r\n\r\n \r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes, {preloadingStrategy: PreloadAllModules})],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","import { Component,OnInit, HostListener, Renderer2, ViewChild, TemplateRef} from '@angular/core';\r\nimport { FormBuilder, Validators } from '@angular/forms';\r\nimport { NavigationEnd, NavigationStart } from '@angular/router';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Subject, Subscription } from 'rxjs';\r\nimport { CommonOpsService } from 'src/app/shared/common-ops-service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { AuthService } from './auth.service';\r\n//import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; import { MessageService } from './message.service';\r\nimport { AppHttpRequestHandlerService } from './shared/app-http-request-handler.service';\r\nimport { filter } from 'rxjs/operators';\r\nimport { UserJwtDecodedInfo } from './account/account-type-module';\r\nimport {EnumJsonTemplate, GenericFormModel, GenericResponseTemplateModel,GenericServiceResultTemplate, IState, TForm, INotification } from './generic-type-module';\r\nimport { AccountService } from './account/account.service';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { NgbModal, NgbModalRef } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ContacTypeModel } from './account/account-type-module';\r\nimport { AppToastService } from './toast/app-toast.service';\r\nimport Swal from 'sweetalert2';\r\nimport { SharedService } from 'src/app/shared.service';\r\nimport { IPriceEntry } from './home-owner-address/home-owner-address-type-module';\r\nimport { NgForm } from \"@angular/forms\";\r\ndeclare var $: any\r\ndeclare var Stripe: any;\r\n\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css']\r\n})\r\nexport class AppComponent implements OnInit {\r\n\r\n isClassApplied = false;\r\n\r\n addClass() {\r\n this.isClassApplied = true;\r\n this.inputForm.reset();\r\n this.submitted = false;\r\n }\r\n\r\n removeClass() {\r\n this.isClassApplied = false;\r\n }\r\n\r\n \r\n protected ngUnsubscribe: Subject = new Subject();\r\n @ViewChild('qrCodeModalContent') qrCodeModalContent: TemplateRef;\r\n @ViewChild('upgradeModalContent') upgradeModalContent: TemplateRef;\r\n previousUrl: string = '';\r\n currentUrl: string = '';\r\n submitted = false; \r\n hideFooter: boolean = false;\r\n hideheader: boolean = false;\r\n title = 'UpKeepable';\r\n value = '';\r\n isMessage : boolean = false;\r\n isImage : boolean = false;\r\n image : string ='';\r\n formDataWithToken : any;\r\n cardMessage : string = '';\r\n isCardError : boolean = false;\r\n paymentMessage : string ='';\r\n isPaymentMessage: boolean = false;\r\n isPaymentMessageError: boolean = false;\r\n isPaymentSuccess : boolean = false;\r\n card: any;\r\n StripeKey: string = environment.StripeKey;\r\n stripe = Stripe(this.StripeKey);\r\n elements = this.stripe.elements();\r\n style = {\r\n base: {\r\n fontSize: '16px',\r\n color: '#32325d',\r\n },\r\n };\r\n isButtonText : boolean = false;\r\n isHide : boolean = false;\r\n modalBool : boolean = false;\r\n public subscription: Subscription;\r\n homeOwnerAddressId: number;\r\n defaultProfilePhoto: string = environment.defaultProfilePhoto;\r\n freeV: boolean = false;\r\n paidV : boolean = false;\r\n isEnterpriseSponsor: boolean = false;\r\n isHOEnterpriseSponsor: boolean = false;\r\n logoImg: string = '';\r\n logoImg1: string = '';\r\n shape: string = 'circle';\r\n userJwtDecodedInfo: UserJwtDecodedInfo;\r\n menuCode: string='';\r\n currentURL: string;\r\n date = new Date();\r\n sub: Subscription;\r\n isNewHomeOwner: boolean=false;\r\n prevUserId:string=null;\r\n notifications: INotification[]=[];\r\n isShowNotificationClicked:boolean=false;\r\n hasLatestNotification:boolean=false;\r\n areREAMenuShown: boolean=true;\r\n isManageCard: boolean=false;\r\n inputForm1: TForm = this.fb.group({\r\n Price_amount: [0, Validators.required]\r\n\r\n}) as TForm;\r\nget formControls1() { return this.inputForm1.controls; }\r\ndefaultApiRoot = environment.defaultApiRoot;\r\n constructor( \r\n private modalService: NgbModal, \r\n private sharedService: SharedService,\r\n private renderer: Renderer2, \r\n public authService: AuthService,\r\n private accountService: AccountService,\r\n private fb: FormBuilder, \r\n public commonOpsService: CommonOpsService,\r\n private appHttpRequestHandlerService: AppHttpRequestHandlerService, \r\n public toastService: AppToastService,\r\n private router: Router,\r\n private route: ActivatedRoute) {\r\n this.router.events.subscribe(() => {\r\n // Check if current route includes HomeownerWithoutsponsorWelcomeComponent\r\n this.hideFooter = this.router.url.includes('HomeownerWithoutsponsorWelcomeComponent');\r\n this.hideFooter = this.router.url.includes('/login/');\r\n this.hideheader = this.router.url.includes('/login/');\r\n if(this.router.url.includes('/login/'))\r\n {\r\n this.renderer.addClass(document.body, 'no-header-footer');\r\n }\r\n });\r\n this.areREAMenuShown=true;\r\n // this.subscription = this.messageService.getHomeOwnerAddressId().subscribe(msg => { this.homeOwnerAddressId = msg })\r\n this.router.events\r\n .pipe(filter(event => event instanceof NavigationEnd))\r\n .subscribe((event: NavigationEnd) => {\r\n if(event.url.includes('Manage-Cards')){\r\n this.isManageCard=true;\r\n }\r\n\r\n if(document.getElementById('mobileMenuButton')){\r\n document.getElementById('mobileMenuButton').classList.add('collapsed')\r\n }\r\n \r\n\r\n if(this.authService.isUserLoggedIn()){\r\n this.getAllUnreadNotifications(this.authService.getUserJwtDecodedInfo().UserId);\r\n }\r\n\r\n if(event.url.includes('Dashboard') || event.url.includes('AllClients')){\r\n this.menuCode='Dashboard';\r\n }\r\n else if(event.url.includes('Details')){\r\n this.menuCode='Details';\r\n }\r\n else if(event.url.includes('Messages')){\r\n this.menuCode='Messages';\r\n }\r\n else if(event.url.includes('Analytics')){\r\n this.menuCode='Analytics'\r\n }\r\n else if(event.url.includes('home-variables-manager')){\r\n this.menuCode='home-variables-manager';\r\n }\r\n else if(event.url.includes('Articles')){\r\n this.menuCode='Articles';\r\n }\r\n else if(event.url.includes('Links')){\r\n this.menuCode='Links';\r\n }\r\n else if(event.url.includes('EnterpriseMessage')){\r\n this.menuCode='Messages';\r\n }\r\n else{\r\n this.menuCode='';\r\n }\r\n if(window.location.href.includes('QRClientbyAgent')){\r\n this.router.navigate([window.location.href]);\r\n }\r\n\r\n if(event.url.includes('CompleteProfileSteps') || event.url.includes('success') || event.url.includes('canceled') || event.url.includes('Pick-A-Product')){\r\n this.areREAMenuShown=false;\r\n }\r\n\r\n //if (event.url.includes('Dashboard')) {\r\n\r\n // if(this.userJwtDecodedInfo?.RoleName=='REAL_ESTATE_USER'){\r\n // this.menuCode='CL';\r\n // }\r\n // else if(this.userJwtDecodedInfo?.RoleName=='HOME_OWNER_USER'){\r\n // this.menuCode='UpKeep';\r\n // }\r\n // else if(this.userJwtDecodedInfo?.RoleName=='ADMIN_USER'){\r\n // this.menuCode='Dashboard';\r\n // }\r\n this.userJwtDecodedInfo = this.authService.getUserJwtDecodedInfo(); \r\n if (this.userJwtDecodedInfo) {\r\n if(this.userJwtDecodedInfo.RoleName=='ADMIN_USER'){\r\n this.defaultProfilePhoto = environment.defaultProfilePhoto; \r\n }\r\n if(this.userJwtDecodedInfo.RoleName=='HOME_OWNER_USER'){\r\n this.appHttpRequestHandlerService.httpGet({ userId: Number(this.userJwtDecodedInfo.UserId)}, \"CommonApi\", \"getImageBlobName\")\r\n .pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: any) => {\r\n if (data != null) {\r\n this.logoImg1 = data.imageData;\r\n }\r\n if(this.logoImg1 !='' && this.isManageCard==false){\r\n this.appHttpRequestHandlerService.httpGet({ imageName: this.logoImg1 }, \"CommonApi\", \"getImageBlob\")\r\n .pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: any) => {\r\n if (data != null) {\r\n if(data.imageBase64==null || data.imageBase64.length==0){\r\n this.defaultProfilePhoto = environment.defaultProfilePhoto; \r\n }\r\n else{\r\n this.defaultProfilePhoto = data.imageBase64;\r\n }\r\n }\r\n else{\r\n this.defaultProfilePhoto = environment.defaultProfilePhoto;\r\n }\r\n });\r\n } else {\r\n this.defaultProfilePhoto = environment.defaultProfilePhoto;\r\n }\r\n });\r\n this.appHttpRequestHandlerService.httpGet({ id: this.userJwtDecodedInfo.UserId}, \"CommonApi\", \"GetPaidAndUnpaidHO\")\r\n .pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: any) => {\r\n if (data != null) {\r\n this.freeV = data.freeV;\r\n this.paidV = data.paidV;\r\n }\r\n });\r\n this.appHttpRequestHandlerService.httpGet({ id: this.userJwtDecodedInfo.UserId}, \"CommonApi\", \"GetIsEnterpriseSponsor\")\r\n .pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: any) => {\r\n if (data.isEnterpriseSponsor === true) {\r\n this.isHOEnterpriseSponsor = true;\r\n this.shape = data.enterprise.profileShape;\r\n this.logoImg = data.imageData;\r\n }\r\n });\r\n \r\n\r\n }\r\n if(this.userJwtDecodedInfo.RoleName=='REAL_ESTATE_USER')\r\n {\r\n this.appHttpRequestHandlerService.httpGet({ userId: Number(this.userJwtDecodedInfo.UserId)}, \"CommonApi\", \"getImageBlobName\")\r\n .pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: any) => {\r\n if (data != null) {\r\n this.logoImg1 = data.imageData;\r\n }\r\n if(this.logoImg1 !='' && this.isManageCard == false){\r\n this.appHttpRequestHandlerService.httpGet({ imageName: this.logoImg1 }, \"CommonApi\", \"getImageBlob\")\r\n .pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: any) => {\r\n if (data != null) {\r\n if(data.imageBase64==null || data.imageBase64.length==0){\r\n this.defaultProfilePhoto = environment.defaultProfilePhoto; \r\n }\r\n else{\r\n this.defaultProfilePhoto = data.imageBase64;\r\n }\r\n }\r\n else{\r\n this.defaultProfilePhoto = environment.defaultProfilePhoto;\r\n }\r\n });\r\n } else {\r\n this.defaultProfilePhoto = environment.defaultProfilePhoto;\r\n }\r\n });\r\n this.appHttpRequestHandlerService.httpGet({ id: this.userJwtDecodedInfo.UserId}, \"CommonApi\", \"GetEnterpriseSponsor\")\r\n .pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: any) => {\r\n if (data.enterprise !== '') {\r\n this.isEnterpriseSponsor = true;\r\n }\r\n });\r\n \r\n }\r\n else{\r\n if(this.userJwtDecodedInfo.UserImage!='' && this.userJwtDecodedInfo.UserImage!=null && this.isManageCard==false){\r\n this.appHttpRequestHandlerService.httpGet({ imageName: this.userJwtDecodedInfo.UserImage }, \"CommonApi\", \"getImageBlob\")\r\n .pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: any) => {\r\n if (data != null) {\r\n if(data.imageBase64==null || data.imageBase64.length==0){\r\n this.defaultProfilePhoto = environment.defaultProfilePhoto; \r\n }\r\n else{\r\n this.defaultProfilePhoto = data.imageBase64;\r\n }\r\n }\r\n else{\r\n this.defaultProfilePhoto = environment.defaultProfilePhoto;\r\n }\r\n });\r\n } else {\r\n this.defaultProfilePhoto = environment.defaultProfilePhoto;\r\n }\r\n } \r\n }\r\n //}\r\n });\r\n this.renderer.listen('window', 'click', (event: Event) => {\r\n var classList = (event?.target)?.id;\r\n if(classList!='mobileMenuButton'){\r\n document.getElementById('mobileMenuButton')?.classList?.add('collapsed');\r\n \r\n }\r\n });\r\n }\r\n inputForm: TForm = this.fb.group({\r\n firstName: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/), Validators.maxLength(20)]],\r\n lastName: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/), Validators.maxLength(20)]],\r\n email: ['', [Validators.required, Validators.pattern('[A-Za-z0-9._%-]+@[A-Za-z0-9._%-]+\\\\.[a-z]{2,3}')]],\r\n message: ['',[Validators.required]]\r\n }) as TForm;\r\n get formControls() { return this.inputForm.controls; }\r\n ngOnInit(): void {\r\n $(document).on(\"click\", \".flip_modal_opener1\", function () {\r\n $(\".flip_modal_upper_wrapper1\").addClass(\"show\");\r\n $(\"body\").css(\"overflow-y\",\"hidden\");\r\n });\r\n $(document).on(\"click\", \".flip_btn\", function () {\r\n $(\".flip_modal_wrapper\").addClass(\"flip safari\");\r\n });\r\n $(document).on(\"click\", \"#flipnew\", function () {\r\n\r\n $(\".flip_modal_wrapper\").removeClass(\"flip safari\");\r\n });\r\n \r\n $(document).on(\"click\", \".flip_modal_wrapper.flip button.btn-close\", function () {\r\n $(\".flip_modal_upper_wrapper1\").removeClass(\"show\");\r\n $(\"body\").css(\"overflow-y\",\"auto\");\r\n $(\".flip_modal_wrapper\").removeClass(\"flip safari\");\r\n });\r\n\r\n $(document).on(\"click\", \".flip_modal_wrapper .btn-close\", function () {\r\n $(\".flip_modal_upper_wrapper1\").removeClass(\"show\");\r\n $(\"body\").css(\"overflow-y\",\"auto\");\r\n \r\n });\r\n this.router.events.subscribe(event => {\r\n if (event instanceof NavigationStart) {\r\n // This is when the navigation starts\r\n //console.log('Navigating from:', this.currentUrl);\r\n this.previousUrl = this.currentUrl; // Store the current URL as the previous URL\r\n }\r\n \r\n if (event instanceof NavigationEnd) {\r\n // This is when navigation ends\r\n this.currentUrl = event.url; // Update the current URL to the new one\r\n //console.log('Navigated to:', this.currentUrl);\r\n }\r\n });\r\n }\r\n @HostListener('window:popstate', ['$event'])\r\n onPopState(event) {\r\n if(window.location.href.includes('Admin')&& window.location.href.includes('Dashboard')){\r\n if(this.prevUserId!=null){\r\n this.directLogin(this.prevUserId);\r\n }\r\n }\r\n }\r\n ngAfterContentInit() {\r\n this.sub = this.sharedService.send_data.subscribe(\r\n data => {\r\n if(data==true){\r\n if(localStorage.getItem(\"NewHomeOwner\")==\"true\"){\r\n this.isNewHomeOwner = true;\r\n }\r\n else{\r\n this.isNewHomeOwner = false;\r\n }\r\n }\r\n }\r\n )\r\n }\r\n ngAfterViewInit(){\r\n this.prevUserId = localStorage.getItem('APID')\r\n this.router.events.subscribe(event => {\r\n if (event instanceof NavigationEnd) {\r\n // Ensure Angular fully loads the new page before scrolling\r\n setTimeout(() => {\r\n window.scrollTo(0, 0);\r\n }, 10); // Small delay to allow page to render properly\r\n }\r\n });\r\n // this.userJwtDecodedInfo = this.authService.getUserJwtDecodedInfo();\r\n // if(this.userJwtDecodedInfo?.RoleName=='REAL_ESTATE_USER'){\r\n // this.menuCode='CL';\r\n // }\r\n // else if(this.userJwtDecodedInfo?.RoleName=='HOME_OWNER_USER'){\r\n // this.menuCode='UpKeep';\r\n // }\r\n // else if(this.userJwtDecodedInfo?.RoleName=='ADMIN_USER'){\r\n // this.menuCode='Dashboard';\r\n // }\r\n }\r\n getAllUnreadNotifications(userId){\r\n if(this.isManageCard==false){\r\n this.appHttpRequestHandlerService.httpGet({ id: userId }, \"NotificationManager\", \"GetAllUnreadNotifications\")\r\n .pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => {\r\n this.notifications = data.responseDataModel;\r\n //if(this.notifications.length>0){\r\n this.isShowNotificationClicked=false;\r\n this.hasLatestNotification = this.notifications.some(x=>x.notificationStatusType==0);\r\n //}\r\n });\r\n }\r\n \r\n }\r\n onCloseAllModels() {\r\n this.modalService.dismissAll();\r\n }\r\n\r\n openModal(content) : void{\r\n this.modalBool = true;\r\n }\r\n openAddPriceModal(entryId:number, content, data:IPriceEntry): NgbModalRef {\r\n this.appHttpRequestHandlerService.httpGet({}, \"CommonApi\", \"Price-Data\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: any) => {\r\n if(data !== undefined){\r\n this.inputForm1.patchValue({\r\n Price_amount: data.imageBase64.price_Amount/100,\r\n });\r\n }\r\n });\r\n \r\n if(data === undefined){\r\n this.inputForm1.patchValue({\r\n Price_amount: 0,\r\n });\r\n }\r\n return this.modalService.open(content, { size: 'lg', backdrop: 'static',keyboard: false });\r\n }\r\n\r\n saveEntry(){\r\n if (this.inputForm1.valid) {\r\n this.modalService.dismissAll();\r\n this.appHttpRequestHandlerService.httpPost(this.inputForm1.value, \"CommonApi\", \"PriceSave\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericServiceResultTemplate) => {\r\n this.toastService.show(\"\",\"Submitted\", 3000,\"bg-success text-white\",\"fa-check-circle\");\r\n });\r\n }\r\n }\r\n\r\n onClickUpkeepNospon(menuCode: string) {\r\n this.menuCode=menuCode;\r\n this.modalService.dismissAll();\r\n const profileImg = document.querySelector('.profile-img');\r\n if (profileImg) {\r\n this.renderer.setStyle(profileImg, 'display', 'block');\r\n }\r\n localStorage.setItem('premiumvalue', JSON.stringify(true));\r\n this.router.navigate(['/HomeAddress/DashboardWithoutSpons']).then(() => {\r\n window.location.reload();\r\n });\r\n }\r\n\r\n onClickUpkeep1() {\r\n navigator.clipboard.writeText(this.value).then().catch(e => console.error(e));\r\n this.isButtonText = true;\r\n this.isMessage = true;\r\n this.isImage = true;\r\n }\r\n onModalCloseClick() {\r\n this.modalService.dismissAll();\r\n }\r\n\r\n onClickUpkeep(menuCode: string) {\r\n this.menuCode=menuCode;\r\n const profileImg = document.querySelector('.profile-img');\r\n if (profileImg) {\r\n this.renderer.setStyle(profileImg, 'display', 'block');\r\n }\r\n if(this.freeV === true || this.paidV === true)\r\n {\r\n this.router.navigate(['/HomeAddress/DashboardWithoutSpons']);\r\n }\r\n else{\r\n this.router.navigate(['/HomeAddress/Dashboard']);\r\n }\r\n \r\n }\r\n onClickHome(menuCode: string) {\r\n this.menuCode=menuCode;\r\n const profileImg = document.querySelector('.profile-img');\r\n if (profileImg) {\r\n this.renderer.setStyle(profileImg, 'display', 'none');\r\n }\r\n this.router.navigate(['/HomeAddress/Details']);\r\n }\r\n public ngOnDestroy(): void {\r\n this.subscription.unsubscribe();\r\n if (this.sub) {\r\n this.sub.unsubscribe()\r\n }\r\n }\r\n\r\n async onSubmitStripe(form: NgForm) {\r\n const { paymentMethod, error1 } = await this.stripe.createPaymentMethod({\r\n type: 'card',\r\n card: this.card,\r\n billing_details: {\r\n name: 'Jenny Rosen', // Customer’s name\r\n },\r\n });\r\n const {\r\n token,\r\n error\r\n } = await this.stripe.createToken(this.card);\r\n if (error) {\r\n this.isCardError = true;\r\n this.cardMessage = error.message;\r\n return;\r\n } \r\n this.isCardError = false;\r\n this.cardMessage = '';\r\n this.formDataWithToken = {\r\n Email: this.userJwtDecodedInfo.EmailId,\r\n UserId : this.userJwtDecodedInfo.UserId,\r\n // EmailToken : token.card.id\r\n EmailToken : paymentMethod.id\r\n };\r\n this.appHttpRequestHandlerService.httpPost(this.formDataWithToken, \"Payment\", \"CreatePaymentIntentForPaidHO\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: any) => {\r\n if(data.paymentmessage !== \"Payment Failed\" && data.paymentmessage !== \"\" && data.paymentmessage !== \"something went wrong.\")\r\n {\r\n this.isPaymentMessage = true;\r\n this.paymentMessage = data.paymentmessage;\r\n this.card.clear();\r\n }\r\n else if(data.paymentmessage === \"something went wrong.\")\r\n {\r\n this.paymentMessage = data.paymentmessage;\r\n this.isPaymentMessageError = true;\r\n this.card.clear();\r\n }\r\n else{\r\n this.paymentMessage = data.paymentmessage;\r\n this.isPaymentMessageError = true;\r\n this.card.clear();\r\n }\r\n });\r\n }\r\n\r\n\r\n goDashboard(){\r\n\r\n }\r\n\r\n openProfileManagerPage() {\r\n // if(this.userJwtDecodedInfo?.RoleName=='HOME_OWNER_USER' && this.authService?.getUserJwtDecodedInfo()?.IsAgree =='True'){\r\n // this.router.navigate(['/Account/Settings']);\r\n // }\r\n // if(this.userJwtDecodedInfo?.RoleName=='REAL_ESTATE_USER' && this.authService?.getUserJwtDecodedInfo()?.IsAgree =='True'){\r\n // this.router.navigate(['/Account/Settings']);\r\n // }\r\n // if(this.userJwtDecodedInfo?.RoleName=='ADMIN_USER'){\r\n // this.router.navigate(['/Account/Settings']);\r\n // }\r\n var currentURL = window.location.href; \r\n if(currentURL.split(\"/\")[4]==\"Settings\")\r\n {\r\n if(this.userJwtDecodedInfo?.RoleName=='REAL_ESTATE_USER')\r\n {\r\n this.router.navigate(['/RealEstateAgent/Dashboard']);\r\n }\r\n if(this.userJwtDecodedInfo?.RoleName=='HOME_OWNER_USER')\r\n {\r\n this.router.navigate(['/HomeAddress/Dashboard']);\r\n }\r\n if(this.userJwtDecodedInfo?.RoleName=='ADMIN_USER')\r\n {\r\n this.router.navigate(['Admin/Dashboard']);\r\n }\r\n \r\n }\r\n else{\r\n this.router.navigate(['/Account/Settings']);\r\n } \r\n }\r\n\r\n onClieckViewAllClients(){\r\n this.router.navigate(['/RealEstateAgent/AllClients']);\r\n }\r\n onClieckViewAllMessages(menuCode: string) {\r\n this.menuCode=menuCode;\r\n if(this.isEnterpriseSponsor === true)\r\n {\r\n this.router.navigate(['/RealEstateAgent/EnterpriseMessage']);\r\n }\r\n else{\r\n this.router.navigate(['/RealEstateAgent/Messages']);\r\n\r\n }\r\n }\r\n onClieckViewAllAnalytics(menuCode: string) {\r\n this.menuCode=menuCode;\r\n if(this.isEnterpriseSponsor === true)\r\n {\r\n this.router.navigate(['/RealEstateAgent/AnalyticsEnterprise']);\r\n }\r\n else{\r\n this.router.navigate(['/RealEstateAgent/Analytics']);\r\n }\r\n }\r\n onClieckViewAllFooterLinks(menuCode: string) {\r\n this.menuCode=menuCode;\r\n this.router.navigate(['/RealEstateAgent/Links']);\r\n }\r\n onClieckViewAllArticles(menuCode: string) {\r\n this.menuCode=menuCode;\r\n this.router.navigate(['/RealEstateAgent/Articles']);\r\n }\r\n onClieckAdminDashboard(menuCode: string) {\r\n this.menuCode=menuCode;\r\n this.router.navigate(['/Admin/Dashboard']);\r\n }\r\n onClieckHomeVariables(menuCode: string) {\r\n this.menuCode=menuCode;\r\n this.router.navigate(['/Admin/home-variables-manager']);\r\n }\r\n navigateToHome(){\r\n const profileImg = document.querySelector('.profile-img');\r\n if (profileImg) {\r\n this.renderer.setStyle(profileImg, 'display', 'block');\r\n }\r\n if(this.userJwtDecodedInfo?.RoleName=='HOME_OWNER_USER' && (this.userJwtDecodedInfo?.IsAgree =='True'|| this.authService.isPrevUserId()) && (!this.freeV && !this.paidV)){\r\n this.router.navigate(['/HomeAddress/Dashboard']);\r\n }\r\n else if(this.userJwtDecodedInfo?.RoleName=='HOME_OWNER_USER' && (this.userJwtDecodedInfo?.IsAgree =='True'|| this.authService.isPrevUserId()) && (this.freeV || this.paidV)){\r\n this.router.navigate(['/HomeAddress/DashboardWithoutSpons']);\r\n setTimeout(()=>{\r\n window.location.reload();\r\n }, 500);\r\n }\r\n else if(this.userJwtDecodedInfo?.RoleName=='REAL_ESTATE_USER' && (this.userJwtDecodedInfo?.IsAgree =='True'|| this.authService.isPrevUserId())){\r\n this.router.navigate(['/RealEstateAgent/Dashboard']);\r\n setTimeout(()=>{\r\n window.location.reload();\r\n }, 500);\r\n }\r\n else if(this.userJwtDecodedInfo?.RoleName=='ADMIN_USER'){\r\n this.router.navigate(['/Admin/Dashboard']);\r\n setTimeout(()=>{\r\n window.location.reload();\r\n }, 500);\r\n }\r\n if((this.userJwtDecodedInfo?.RoleName=='HOME_OWNER_USER' || this.userJwtDecodedInfo?.RoleName=='REAL_ESTATE_USER') && this.userJwtDecodedInfo?.IsAgree =='False' && (!this.authService.isPrevUserId())){\r\n this.goToLoginPage();\r\n }\r\n }\r\n openStaticPage(pageName:string){\r\n const rt = this.router.url.includes('myhome');\r\n if(rt === true)\r\n {\r\n localStorage.setItem(\"myHome\", 'true');\r\n }\r\n else if (localStorage.getItem(\"myHome\") === 'true' && (this.currentUrl.includes('/privacy') || this.currentUrl.includes('/legal'))) {\r\n localStorage.setItem(\"myHome\", 'true');\r\n }\r\n else if (this.previousUrl.includes(\"\") && (this.currentUrl.includes('/privacy') || this.currentUrl.includes('/legal'))) {\r\n localStorage.setItem(\"myHome\", 'false');\r\n }\r\n else if( this.currentUrl === '/' || this.currentUrl === '/Account/Login')\r\n {\r\n localStorage.setItem(\"myHome\", 'false');\r\n }\r\n else{\r\n localStorage.setItem(\"myHome\", 'false');\r\n }\r\n this.router.navigate(['/'+pageName]);\r\n setTimeout(()=>{\r\n window.location.reload();\r\n }, 500);\r\n // else if(this.router.routerState.root.snapshot.firstChild.component[\"name\"] == \"QRClientAgentComponent\"){\r\n // this.router.navigate(['/'+pageName]);\r\n // setTimeout(()=>{\r\n // window.location.reload();\r\n // }, 500);\r\n // }\r\n\r\n }\r\n openVideoModal(content) {\r\n this.modalService.open(content, { size: 'lg', ariaLabelledBy: 'modal-basic-title', centered:true }).result.then((result) => {}, (reason) => {});\r\n }\r\n onVideoModalCancelClick() {\r\n this.modalService.dismissAll();\r\n }\r\n onRequestClick(){\r\n this.modalService.dismissAll();\r\n }\r\n goToLoginPage(){\r\n const rt = this.router.url.includes('myhome');\r\n if(rt === true)\r\n {\r\n localStorage.setItem(\"myHome\", 'true');\r\n }\r\n else if(localStorage.getItem(\"myHome\") === 'true' && this.currentUrl !== '/')\r\n {\r\n window.location.reload();\r\n this.router.navigate(['/myhome']);\r\n }\r\n else if(this.previousUrl.includes('/myhome'))\r\n {\r\n localStorage.setItem(\"myHome\", 'true');\r\n }\r\n else if(this.currentUrl === '/' || this.currentUrl === '/Account/Login')\r\n {\r\n localStorage.setItem(\"myHome\", 'false');\r\n }\r\n else{\r\n this.router.navigate(['/Account/Login']);\r\n }\r\n }\r\n directLogin(userId){\r\n localStorage.removeItem('APID');\r\n \r\n this.appHttpRequestHandlerService.httpGet({\"userId\": userId}, \"AccountManager\", \"DirectLoginByAdmin\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: string) => {\r\n if ((data).isAvailable) {\r\n this.setTokenAndSendUserToHomePage((data).token);\r\n }\r\n else {\r\n //this.isSomethingWentWrong = true;\r\n }\r\n });\r\n //window.open('www.google.com', '_blank', 'location=yes,height=570,width=520,scrollbars=yes,status=yes'); // Open new window\r\n }\r\n\r\n setTokenAndSendUserToHomePage(token: string) {\r\n localStorage.setItem(\"BearerToken\", token);\r\n //window.location.reload();\r\n this.initiateHomePage();\r\n }\r\n initiateHomePage() {\r\n if (this.accountService.getUserJwtDecodedInfo().RoleName == 'ADMIN_USER') {\r\n this.router.navigate(['/Admin/Dashboard']);\r\n setTimeout(()=>{\r\n window.location.reload();\r\n }, 500);\r\n } \r\n }\r\n viewAllNotifications(){\r\n this.router.navigate(['all-notifications']);\r\n }\r\n mobileMenuButtonClick(event){\r\n\r\n var isAlreadyCollapsed = document.getElementById('mobileMenuButton')?.classList?.contains('collapsed');\r\n if(isAlreadyCollapsed){\r\n document.getElementById('mobileMenuButton')?.classList?.remove('collapsed')\r\n }\r\n else{\r\n document.getElementById('mobileMenuButton')?.classList?.add('collapsed')\r\n }\r\n }\r\n hasMobileMenuButtonHasClass(){\r\n return !document.getElementById('mobileMenuButton')?.classList?.contains('collapsed');\r\n }\r\n onClickDropNotification(){\r\n this.isShowNotificationClicked=true;\r\n this.hasLatestNotification=false;\r\n this.appHttpRequestHandlerService.httpGet({ id: this.authService.getUserJwtDecodedInfo().UserId }, \"NotificationManager\", \"markReadAllNotifications\")\r\n .pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => {});\r\n }\r\n onClicklinkDetails(){\r\n this.value = '';\r\n this.isMessage = false;\r\n this.isImage = false;\r\n this.image ='';\r\n this.isButtonText = false;\r\n this.isHide = false;\r\n this.modalBool = false;\r\n this.userJwtDecodedInfo = this.authService.getUserJwtDecodedInfo();\r\n if(this.userJwtDecodedInfo.RoleName === \"HOME_OWNER_USER\")\r\n {\r\n if(this.paidV === undefined)\r\n {\r\n this.appHttpRequestHandlerService.httpGet({ Id: this.userJwtDecodedInfo.UserId}, \"HomeOwnerAddress\", \"GetRealEstateUserDetails\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericServiceResultTemplate) => {\r\n let email = data.email;\r\n this.image = data.image;\r\n let link = this.defaultApiRoot;\r\n let newUrl = link.replace(/:\\d+/, '');\r\n this.value = newUrl.concat(email);\r\n });\r\n }\r\n\r\n\r\n if(this.paidV === true)\r\n {\r\n //this.value = 'https://stage.upkeepable.com/start';\r\n this.value = 'https://app.upkeepable.com/start';\r\n }\r\n \r\n }\r\n }\r\n onClickupgradeDetails(content){\r\n this.userJwtDecodedInfo = this.authService.getUserJwtDecodedInfo();\r\n this.isCardError = false;\r\n if (this.card) {\r\n this.card.destroy();\r\n }\r\n setTimeout(() =>{\r\n this.card = this.elements.create('card', this.style );\r\n this.card.mount('#card-element');\r\n },1500)\r\n this.modalService.open(this.upgradeModalContent, { size: 'lg', ariaLabelledBy: 'modal-basic-title', centered:true }).result.then((result) => {}, (reason) => {});\r\n }\r\n\r\n onSubmit() {\r\n if (!this.inputForm.valid) {\r\n this.submitted = true;\r\n return; \r\n }\r\n this.appHttpRequestHandlerService.httpPost(this.inputForm.value, \"CommonApi\", \"ContactForm\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericServiceResultTemplate) => {\r\n this.isClassApplied = false;\r\n this.inputForm.reset(); \r\n Swal.fire({\r\n title: 'We have received your request',\r\n text: 'Your request has been submitted via email. Please check your inbox for updates',\r\n icon: 'success', // You can change this to 'success', 'error', 'info', etc.\r\n confirmButtonText: 'CLOSE'\r\n //showCloseButton: true\r\n }); \r\n //this.toastService.show(\"\",\"Submitted\", 3000,\"bg-success text-white\",\"fa-check-circle\");\r\n }); \r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n Recommendation name is required.\r\n
\r\n
\r\n Recommendation name can be max 150 characters long.\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n Description is required.\r\n
\r\n
\r\n Description can be max 500 characters long.\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n {{selectedIconName==''? 'Please select icon': selectedIconName}}\r\n \r\n\r\n \r\n \r\n

\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n Icon is required.\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n \"profile-change-img\"\r\n
\r\n \r\n \r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n Image 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
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Copyright © Upkeepable {{date| date:'yyyy'}}
\r\n
\r\n
\r\n\r\n
\r\n
\r\n Home\r\n Privacy\r\n \r\n Legal\r\n \r\n Help\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

Need Help? Ask Us.

\r\n
Submit this form to get support from our team
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n First name is required.\r\n
\r\n
\r\n Invalid First name.\r\n
\r\n
\r\n First name can be max 20 characters long.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Last name is required.\r\n
\r\n
\r\n Invalid Last name.\r\n
\r\n
\r\n Last name can be max 20 characters long.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Email address is required.\r\n
\r\n
\r\n Invalid email address.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Message 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 \r\n
\r\n
","import { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { AppHttpRequestHandlerService } from './shared/app-http-request-handler.service';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { AppHttpInterceptor } from './shared/app-http.interceptor';\r\nimport { SharedModule } from './shared/shared.module';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations'; \r\nimport { JwtModule } from '@auth0/angular-jwt';\r\nimport { environment } from './../environments/environment';\r\nimport { ToastContainerComponent } from './toast/toast-container/toast-container.component';\r\n// import { MessageService } from './message.service';\r\nimport { CarouselModule } from 'ngx-owl-carousel-o';\r\nimport { CookieModule } from 'ngx-cookie';\r\nimport { PrivacyComponent } from './static-pages/privacy/privacy.component';\r\nimport { TermsComponent } from './static-pages/terms/terms.component';\r\nimport { LegalComponent } from './static-pages/legal/legal.component';\r\nimport { ReplyToEmailComponent } from './account/reply-to-email/reply-to-email.component';\r\nimport { SiteMapComponent } from './static-pages/site-map/site-map.component';\r\nimport { FaqComponent } from './static-pages/faq/faq.component';\r\nimport { NotifiationAllComponent } from './notifiation-all/notifiation-all.component';\r\nimport { ProductListComponent } from './stripe-payment/product-list/product-list.component';\r\nimport { PaymentSuccessComponent } from './stripe-payment/payment-success/payment-success.component';\r\nimport { PaymentFailedComponent } from './stripe-payment/payment-failed/payment-failed.component';\r\n//import { SubscriptionManagerComponent } from './account/subscription-manager/subscription-manager.component';\r\nimport { ManageCardComponent } from './stripe-payment/manage-card/manage-card.component';\r\nimport { CardAddedSuccessfullyComponent } from './stripe-payment/card-added-successfully/card-added-successfully.component';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { ContactFormComponent } from './contact-form/contact-form.component';\r\nimport { CookieService } from 'ngx-cookie';\r\nimport { SponsorRegisterComponent } from './static-pages/sponsor-register/sponsor-register.component';\r\nimport { QRCodeModule } from 'angularx-qrcode';\r\nimport { initializeApp } from 'firebase/app';\r\ninitializeApp(environment.firebase);\r\nimport { HomeownerRegisterWithoutsponsorComponent } from './static-pages/homeowner-register-withoutsponsor/homeowner-register-withoutsponsor.component';\r\nimport { CommonModule } from '@angular/common'; // Add this line\r\nimport { ArticleManagerEnterprisesponsorComponent } from './real-estate-agent/article-manager-enterprisesponsor/article-manager-enterprisesponsor.component';\r\nimport { EnterprisesponsorFooterLinksComponent } from './real-estate-agent/enterprisesponsor-footer-links/enterprisesponsor-footer-links.component';\r\nimport { LoginNewPageComponent } from './account/login-new-page/login-new-page.component';\r\nexport function authTokenGetter(){\r\n return localStorage.getItem(\"BearerToken\");\r\n}\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n ToastContainerComponent,\r\n PrivacyComponent,\r\n ReplyToEmailComponent,\r\n TermsComponent,\r\n LegalComponent,\r\n SiteMapComponent,\r\n FaqComponent,\r\n NotifiationAllComponent,\r\n ProductListComponent,\r\n PaymentSuccessComponent,\r\n PaymentFailedComponent,\r\n ManageCardComponent,\r\n CardAddedSuccessfullyComponent,\r\n ContactFormComponent,\r\n SponsorRegisterComponent,\r\n HomeownerRegisterWithoutsponsorComponent,\r\n ArticleManagerEnterprisesponsorComponent,\r\n EnterprisesponsorFooterLinksComponent,\r\n LoginNewPageComponent\r\n ],\r\n imports: [\r\n BrowserModule,\r\n AppRoutingModule,\r\n ReactiveFormsModule,\r\n QRCodeModule,\r\n HttpClientModule,\r\n SharedModule,\r\n JwtModule.forRoot({\r\n config:{\r\n tokenGetter:authTokenGetter,\r\n allowedDomains:environment.allowedDomains,\r\n disallowedRoutes:[]\r\n }\r\n }),\r\n NgbModule,\r\n BrowserAnimationsModule,\r\n CarouselModule, \r\n CookieModule.forRoot(),\r\n FormsModule,\r\n ReactiveFormsModule,\r\n CommonModule\r\n ],\r\n providers: [\r\n AppHttpRequestHandlerService,\r\n CookieService,\r\n { provide: HTTP_INTERCEPTORS, useClass: AppHttpInterceptor, multi: true }\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRoute, ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot, UrlTree } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { AuthService } from './auth.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthGuard implements CanActivate {\r\n constructor(private authService: AuthService, private route: ActivatedRoute,private router: Router){}\r\n canActivate(\r\n route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot): Observable | Promise | boolean | UrlTree {\r\n if(!this.authService.isUserLoggedIn()){\r\n this.router.navigate(['/Account/Login']);\r\n }\r\n return true;\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport jwt_decode from 'jwt-decode';\r\nimport { UserJwtDecodedInfo } from './account/account-type-module';\r\nimport { Router } from '@angular/router';\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AuthService {\r\n constructor(private httpClient: HttpClient, private router: Router) { }\r\n prevUserId:string =null;\r\n getJwtToken():string{\r\n if(localStorage.getItem('BearerToken')){\r\n return localStorage.getItem('BearerToken');\r\n }\r\n return '';\r\n }\r\n\r\n getUserJwtDecodedInfo():UserJwtDecodedInfo{\r\n if(this.isUserLoggedIn()){\r\n return jwt_decode(this.getJwtToken());\r\n }\r\n return null;\r\n }\r\n\r\n public isUserLoggedIn(): boolean{\r\n if(this.getJwtToken()!=''){\r\n return true;\r\n }\r\n return false;\r\n }\r\n public onLogoutClick(): void {\r\n const url = localStorage.getItem(\"loginUrl\");\r\n if(url !== null)\r\n {\r\n localStorage.removeItem(\"BearerToken\");\r\n localStorage.clear();\r\n this.router.navigate([url])\r\n }\r\n else{\r\n localStorage.removeItem(\"BearerToken\");\r\n localStorage.clear();\r\n this.router.navigate(['/Account/Login']);\r\n\r\n }\r\n }\r\n public onLogoutClick1(): void {\r\n localStorage.removeItem(\"BearerToken\");\r\n localStorage.clear();\r\n this.router.navigate(['/myhome']);\r\n}\r\n public isPrevUserId(): boolean{\r\n this.prevUserId = localStorage.getItem('APID')\r\n if(this.prevUserId != null){\r\n return true;\r\n }\r\n return false;\r\n} \r\n}","import { Component, OnInit} from '@angular/core';\r\nimport { FormBuilder, Validators } from '@angular/forms';\r\nimport { EnumJsonTemplate, GenericFormModel, GenericResponseTemplateModel, GenericServiceResultTemplate, IState, TForm } from 'src/app/generic-type-module';\r\nimport { AppHttpRequestHandlerService } from 'src/app/shared/app-http-request-handler.service';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { Subject } from 'rxjs';\r\nimport { CommonOpsService } from 'src/app/shared/common-ops-service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ContacTypeModel } from '../account/account-type-module';\r\nimport { AppToastService } from '../toast/app-toast.service';\r\nimport Swal from 'sweetalert2';\r\n@Component({\r\n selector: 'app-contact-form',\r\n templateUrl: './contact-form.component.html',\r\n styleUrls: ['./contact-form.component.css']\r\n})\r\nexport class ContactFormComponent implements OnInit {\r\n protected ngUnsubscribe: Subject = new Subject();\r\n submitted = false;\r\n constructor(private modalService: NgbModal,\r\n private fb: FormBuilder, \r\n private appHttpRequestHandlerService: AppHttpRequestHandlerService,\r\n public commonOpsService: CommonOpsService,\r\n public toastService: AppToastService,\r\n private router: Router,\r\n private route: ActivatedRoute) { }\r\n inputForm: TForm = this.fb.group({\r\n firstName: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/), Validators.maxLength(20)]],\r\n lastName: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/), Validators.maxLength(20)]],\r\n email: ['', [Validators.required, Validators.pattern('[A-Za-z0-9._%-]+@[A-Za-z0-9._%-]+\\\\.[a-z]{2,3}')]],\r\n message: ['',[Validators.required]]\r\n }) as TForm;\r\n get formControls() { return this.inputForm.controls; }\r\n ngOnInit(): void { \r\n }\r\n\r\n // onSubmit() {\r\n \r\n // this.submitted = true;\r\n // if (this.inputForm.valid) { \r\n // this.appHttpRequestHandlerService.httpPost(this.inputForm.value, \"CommonApi\", \"ContactForm\").pipe(takeUntil(this.ngUnsubscribe))\r\n // .subscribe((data: GenericServiceResultTemplate) => {\r\n // this.inputForm.reset(); \r\n // this.inputForm.controls.firstName.setErrors(null);\r\n // this.inputForm.controls.lastName.setErrors(null);\r\n // this.inputForm.controls.email.setErrors(null);\r\n // this.inputForm.controls.message.setErrors(null);\r\n // this.toastService.show(\"\",\"Submitted\", 3000,\"bg-success text-white\",\"fa-check-circle\");\r\n // });\r\n \r\n // }\r\n // }\r\n onSubmit() {\r\n if (!this.inputForm.valid) {\r\n this.submitted = true;\r\n return; \r\n }\r\n this.appHttpRequestHandlerService.httpPost(this.inputForm.value, \"CommonApi\", \"ContactForm\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericServiceResultTemplate) => {\r\n this.inputForm.reset(); \r\n Swal.fire({\r\n title: 'We have Recieved Your Request',\r\n text: 'Your request has been submitted via email. Please check your inbox for updates',\r\n icon: 'success', // You can change this to 'success', 'error', 'info', etc.\r\n confirmButtonText: 'CLOSE'\r\n //showCloseButton: true\r\n }); \r\n //this.toastService.show(\"\",\"Submitted\", 3000,\"bg-success text-white\",\"fa-check-circle\");\r\n }); \r\n }\r\n\r\n \r\n}\r\n","
\r\n

Need Help? Ask Us.

\r\n
Submit this form to get support from our team
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n First name is required.\r\n
\r\n
\r\n Invalid First name.\r\n
\r\n
\r\n First name can be max 20 characters long.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Last name is required.\r\n
\r\n
\r\n Invalid Last name.\r\n
\r\n
\r\n Last name can be max 20 characters long.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Email address is required.\r\n
\r\n
\r\n Invalid email address.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Message 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
","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot, UrlTree, Router } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { AppHttpRequestHandlerService } from './shared/app-http-request-handler.service';\r\nimport { Subject } from 'rxjs';\r\nimport { map, takeUntil } from 'rxjs/operators';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DynamicPathGuard implements CanActivate {\r\n protected ngUnsubscribe: Subject = new Subject();\r\n dynamicPath: string;\r\n value1: string;\r\n isBool: boolean;\r\n constructor(\r\n private router: Router,\r\n private appHttpRequestHandlerService: AppHttpRequestHandlerService // nject your service\r\n ) {}\r\n canActivate(\r\n route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot): Observable | Promise | boolean | UrlTree {\r\n const dynamicPath = route.paramMap.get('dynamicPath'); \r\n this.value1 = window.location.origin.concat(\"/login/\"+dynamicPath);\r\n return this.appHttpRequestHandlerService.httpGet({ id: this.value1 }, \"CommonApi\", \"GetLoginUrl\").pipe(\r\n takeUntil(this.ngUnsubscribe),\r\n map((data: any) => {\r\n if (data.enterprise === \"\" || data.enterprise === null) {\r\n this.isBool = false;\r\n return false; // Return false to prevent navigation\r\n } else {\r\n this.isBool = true;\r\n return true; // Return true to allow navigation\r\n }\r\n })\r\n );\r\n }\r\n \r\n}\r\n","import { Component, OnInit, ElementRef } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { AuthService } from '../auth.service';\r\nimport { GenericResponseTemplateModel, INotification } from '../generic-type-module';\r\nimport { AppHttpRequestHandlerService } from '../shared/app-http-request-handler.service';\r\nimport { SharingDataService } from '../services/sharing-data/sharing-data.service';\r\n\r\n@Component({\r\n selector: 'app-notifiation-all',\r\n templateUrl: './notifiation-all.component.html',\r\n styleUrls: ['./notifiation-all.component.css']\r\n})\r\nexport class NotifiationAllComponent implements OnInit {\r\n\r\n protected ngUnsubscribe: Subject = new Subject();\r\n notifications: INotification[]=[];\r\n constructor(private appHttpRequestHandlerService: AppHttpRequestHandlerService, \r\n public authService: AuthService,\r\n private router: Router,\r\n private sharingdataService: SharingDataService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getAllUnreadNotifications(this.authService.getUserJwtDecodedInfo().UserId);\r\n }\r\n getAllUnreadNotifications(userId){\r\n this.appHttpRequestHandlerService.httpGet({ id: userId }, \"NotificationManager\", \"GetAllNotifications\")\r\n .pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => {\r\n this.notifications = data.responseDataModel;\r\n //console.log('notilist',this.notifications)\r\n });\r\n }\r\n goToHomePage(event: any) {\r\n event.preventDefault();\r\n const targetElement = event.target as HTMLElement;\r\n const notificationBox = targetElement.closest('.notification-box');\r\n if (notificationBox) {\r\n const dateNotiElement = notificationBox.querySelector('.date-noti') as HTMLElement;\r\n \r\n if (dateNotiElement) {\r\n const dateValue = dateNotiElement.textContent?.trim();\r\n const normalizedDateString = dateValue.replace(\" at\", \"\");\r\n\r\n // Try creating a Date object again\r\n const dateObject = new Date(normalizedDateString);\r\n const options: Intl.DateTimeFormatOptions = { month: 'long' }; // Correct usage with the appropriate type\r\n // Extract the month name\r\n const month = dateObject.toLocaleString('en-US', options);\r\n // Extract the year\r\n const year = dateObject.getFullYear();\r\n this.sharingdataService.setHrSharingData(true, month, year);\r\n //console.log(\"Found date: \" + dateValue);\r\n } else {\r\n // console.log(\"Date-noti element not found within notification-box\");\r\n }\r\n } else {\r\n //console.log(\"Notification box not found\");\r\n }\r\n localStorage.setItem(\"name\", \"true\");\r\n this.router.navigate(['/HomeAddress/Dashboard']);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n\r\n\r\n \r\n
    \r\n
  • \r\n
    \r\n
    Notifications List
    \r\n
    \r\n
  • \r\n
  • \r\n
    \r\n No latest notification yet.\r\n
    \r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit,TemplateRef, ViewChild } from '@angular/core';\r\nimport { FormBuilder, Validators, FormGroup } from '@angular/forms';\r\nimport { NgbModal, NgbModalRef } from '@ng-bootstrap/ng-bootstrap';\r\nimport { Subject } from 'rxjs';\r\nimport { debounceTime, switchMap,takeUntil } from 'rxjs/operators';\r\nimport { IArticle } from 'src/app/article/recommendation/article-type-module';\r\nimport { GenericResponseTemplateModel, GenericServiceResultTemplate, IDataTableParamsViewModel, TForm } from 'src/app/generic-type-module';\r\nimport { AppHttpRequestHandlerService } from 'src/app/shared/app-http-request-handler.service';\r\nimport { CommonOpsService } from 'src/app/shared/common-ops-service';\r\nimport { AppToastService } from '../../toast/app-toast.service';\r\nimport { AccountService } from 'src/app/account/account.service';\r\n\r\n@Component({\r\n selector: 'app-article-manager-enterprisesponsor',\r\n templateUrl: './article-manager-enterprisesponsor.component.html',\r\n styleUrls: ['./article-manager-enterprisesponsor.component.css']\r\n})\r\nexport class ArticleManagerEnterprisesponsorComponent implements OnInit {\r\n protected ngUnsubscribe: Subject = new Subject();\r\n articleList: IArticle[] = [];\r\n articleLink:'';\r\n myGroup: FormGroup;\r\n showMoreControls: boolean = false;\r\n dataTableParams: IDataTableParamsViewModel = {\r\n searchCode: '',\r\n pageNo: 0,\r\n pageSize: 0,\r\n sortColumn: '',\r\n searchColumn: '',\r\n sortColumn1: '',\r\n sortOrder: '1',\r\n userId:0,\r\n filterArray:'',\r\n boolFlag1:0,\r\n month:0,\r\n year:0,\r\n tabValue:0\r\n };\r\n totalRecords: number = 0;\r\n totalPages: number = 0;\r\n fakeArray = new Array(0);\r\n invalidSize:boolean=true;\r\n //currSortColName:string = '';\r\n stepCode: number = 1;\r\n @ViewChild('cropImageModal') cropImageModal: TemplateRef;\r\n fileUploadEventObject: any;\r\n targetImageElementId: string = '';\r\n aspectRatio: string = '1/1';\r\n //defaultArticleImage: string = environment.defaultHomePhoto;\r\n articleImage: string = '';\r\n private cropModalReference: NgbModalRef;\r\n articleLinks: string[] = [];\r\n public unlimitedViews=false;\r\n selectedArticleId: number=0;\r\n isValidURL: boolean = true;\r\n isValidNumber: boolean = true;\r\n months: string[] = [\"JAN\", \"FEB\", \"MAR\", \"APR\", \"MAY\", \"JUN\", \"JUL\", \"AUG\", \"SEP\", \"OCT\", \"NOV\", \"DEC\"];\r\n homeVariables: any[] =[\r\n {\"value\":\"1\", \"Text\":\"Home General Variables\"},\r\n {\"value\":\"2\", \"Text\":\"Home Heating Variables\"},\r\n {\"value\":\"3\", \"Text\":\"Home Cooling Variables\"},\r\n {\"value\":\"4\", \"Text\":\"Home Water Treatment Variables\"},\r\n {\"value\":\"5\", \"Text\":\"Home Outside Variables\"},\r\n {\"value\":\"6\", \"Text\":\"Home Appliances Variables\"},\r\n ];\r\n searchText: string ='';\r\n constructor(private appHttpRequestHandlerService: AppHttpRequestHandlerService, public toastService: AppToastService,\r\n private modalService: NgbModal,\r\n private fb: FormBuilder,\r\n public commonOpsService:CommonOpsService, private accountService: AccountService) { }\r\n submitted = false;\r\n inputForm: TForm = this.fb.group({\r\n articleId: [0, Validators.required],\r\n articleTitle: ['', [Validators.required, Validators.maxLength(100),Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/)]],\r\n shortDescriptionText: ['', [Validators.required, Validators.maxLength(500)]],\r\n descriptionText: ['', [Validators.required, Validators.maxLength(500)]],\r\n imageFile: ['', Validators.required],\r\n imageFileBase64:['', Validators.required],\r\n articleStausType: [1, Validators.required],\r\n monthsCodes: ['NA'],\r\n articleLinks: [[]],\r\n optionalLinks: [[]],\r\n optionalLinkText: ['', [Validators.pattern(/((([A-Za-z]{3,9}:(?:\\/\\/)?)(?:[-;:&=\\+\\$,\\w]+@)?[A-Za-z0-9.-]+|(?:www.|[-;:&=\\+\\$,\\w]+@)[A-Za-z0-9.-]+)((?:\\/[\\+~%\\/.\\w-_]*)?\\??(?:[-\\+=&;%@.\\w_]*)#?(?:[\\w]*))?)/)]],\r\n maxViewEachMonth: ['', [Validators.required, Validators.pattern('[0-9]{1,9}')]],\r\n homeOwnerAddressDetailType: ['', Validators.required],\r\n monthStartJson: [{ year: new Date().getFullYear(), month: new Date().getMonth()+1 }, Validators.required],\r\n monthEndJson: [{ year: new Date().getFullYear(), month: new Date().getMonth()+1 }, Validators.required],\r\n monthStart: ['NA', Validators.required],\r\n monthEnd: ['NA', Validators.required],\r\n endDate:[new Date()],\r\n startDate:[new Date()],\r\n createdOn:[new Date()],\r\n UserRefId:[0]\r\n // monthStart_isValid: [1, [Validators.required, Validators.min(1)]],\r\n // monthEnd_isValid: [1, [Validators.required, Validators.min(1)]],\r\n }) as TForm;\r\n \r\n get formControls() { return this.inputForm.controls; }\r\n ngOnInit(): void {\r\n this.dataTableParams.searchCode = ' ';\r\n this.dataTableParams.pageNo = 1;\r\n this.dataTableParams.pageSize = 10;\r\n this.dataTableParams.sortColumn = 'ArticleTitle';\r\n this.dataTableParams.sortOrder = '1';\r\n this.dataTableParams.filterArray='';\r\n //this.currSortColName = this.dataTableParams.sortColumn;\r\n this.getArticleList();\r\n this.articleLinks = [];\r\n }\r\n getArticleList() {\r\n //this.dataTableParams.userId = this.userId;\r\n this.appHttpRequestHandlerService.httpGet(this.dataTableParams, \"Article\", \"GetAllArticlesByEnterpriseSponsors\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => {\r\n this.articleList = data.responseDataModel;\r\n if (this.articleList.length > 0) {\r\n this.totalRecords = this.articleList[0].maxRows;\r\n }\r\n else {\r\n this.totalRecords = 0;\r\n }\r\n this.calcTotalPages();\r\n });\r\n }\r\n trackByIndex(index: number, item: string): number {\r\n return index; // Return the index to avoid re-rendering inputs unnecessarily\r\n }\r\n onFocus(index: number): void {\r\n console.log('Focused on input at index', index);\r\n }\r\n calcTotalPages() {\r\n this.totalPages = Math.ceil(this.totalRecords / this.dataTableParams.pageSize);\r\n this.fakeArray = Array(this.totalPages);\r\n }\r\n onChangeSortOrder(event) {\r\n this.dataTableParams.sortOrder = event.target.value;\r\n this.getArticleList();\r\n }\r\n onChangePageSize(event) {\r\n this.dataTableParams.pageNo = 1;\r\n this.dataTableParams.pageSize = event.target.value;\r\n this.getArticleList();\r\n }\r\n loadPage(event){\r\n this.dataTableParams.pageNo = event;\r\n this.getArticleList();\r\n }\r\n onClickSearchBar(){\r\n this.searchByKeyword((document.getElementById('searchKeyword')).value);\r\n }\r\n searchByKeyword(keyword: string) {\r\n this.dataTableParams.pageNo = 1;\r\n this.dataTableParams.searchCode = keyword.trim();\r\n if(keyword.includes(\"'\")){\r\n let v=keyword.replace(/'/g,\"''\");\r\n this.dataTableParams.searchCode=v;\r\n }\r\n this.getArticleList();\r\n }\r\n\r\n sortByColName(colName: string){\r\n if(colName == this.dataTableParams.sortColumn){\r\n this.dataTableParams.sortOrder = (this.dataTableParams.sortOrder == '1' ? '2' : '1');\r\n }\r\n else{\r\n this.dataTableParams.sortOrder = '1';\r\n }\r\n this.dataTableParams.sortColumn = colName;\r\n this.getArticleList();\r\n }\r\n\r\n openAddArticleModal(articleId:number, content): NgbModalRef {\r\n this.selectedArticleId = articleId;\r\n this.stepCode = 1;\r\n this.submitted=false;\r\n this.inputForm.reset();\r\n this.inputForm.patchValue({\r\n articleId: articleId,\r\n articleTitle: '',\r\n shortDescriptionText: '',\r\n descriptionText: '',\r\n imageFile: '',\r\n imageFileBase64: '',\r\n articleStausType: 1,\r\n monthsCodes: 'NA',\r\n articleLinks: [],\r\n optionalLinks: [],\r\n optionalLinkText: '',\r\n maxViewEachMonth: '',\r\n homeOwnerAddressDetailType: '',\r\n monthStartJson: { year: new Date().getFullYear(), month: new Date().getMonth()+1 },\r\n monthEndJson: { year: new Date().getFullYear(), month: new Date().getMonth()+1 },\r\n monthStart: 'NA',\r\n monthEnd: 'NA',\r\n endDate:new Date(),\r\n startDate:new Date(),\r\n createdOn :new Date(),\r\n\r\n // monthStart_isValid: 1,\r\n // monthEnd_isValid: 1\r\n });\r\n this.unlimitedViews=false;\r\n this.onRemoveImage();\r\n\r\n if(this.selectedArticleId>0){\r\n this.getArticleById();\r\n }\r\n this.articleLinks = [];\r\n return this.modalService.open(content, { size: 'lg', backdrop: 'static',keyboard: false });\r\n }\r\n\r\n setArticleModalStep(stepCode: number){\r\n this.submitted=true;\r\n if(stepCode==2){\r\n if(this.formControls.articleTitle.valid && this.formControls.shortDescriptionText.valid && this.formControls.descriptionText.valid && this.formControls.imageFileBase64.valid){\r\n this.stepCode = stepCode;\r\n this.submitted=false;\r\n }\r\n }\r\n else {\r\n this.stepCode = stepCode;\r\n this.submitted=false;\r\n }\r\n }\r\n closeModal(){\r\n this.modalService.dismissAll();\r\n }\r\n saveArticle(){\r\n if(!this.unlimitedViews){\r\n if(parseInt(this.inputForm.controls.maxViewEachMonth.value.toString()) === 0 || parseInt(this.inputForm.controls.maxViewEachMonth.value.toString()) < 0){\r\n this.isValidNumber = false;\r\n }\r\n else{\r\n this.isValidNumber = true;\r\n }\r\n }else{\r\n this.inputForm.controls.maxViewEachMonth.patchValue(0);\r\n this.isValidNumber = true;\r\n }\r\n this.submitted = true;\r\n this.inputForm.controls.UserRefId.patchValue(this.accountService.getUserJwtDecodedInfo().UserId);\r\n this.inputForm.controls.monthEnd.patchValue('NA');\r\n let currDate = new Date();\r\n let startDate= new Date(parseInt(this.inputForm.controls.monthStartJson.value.year), parseInt(this.inputForm.controls.monthStartJson.value.month));\r\n let endDate= new Date(parseInt(this.inputForm.controls.monthEndJson.value.year), parseInt(this.inputForm.controls.monthEndJson.value.month));\r\n if (this.inputForm.valid && this.isValidNumber) {\r\n if((parseInt(this.inputForm.controls.monthEndJson.value.year) <= parseInt(this.inputForm.controls.monthStartJson.value.year)) &&\r\n (parseInt(this.inputForm.controls.monthEndJson.value.month) < parseInt(this.inputForm.controls.monthStartJson.value.month))){\r\n this.inputForm.controls.monthEnd.patchValue('');\r\n this.inputForm.controls.monthEnd.setErrors(Validators.required);\r\n }\r\n else if(this.inputForm.controls.articleId.value==0 && (startDate0){\r\n if(this.articleLinks == null || this.articleLinks == undefined){\r\n this.articleLinks = [];\r\n }\r\n this.articleLinks.push(this.inputForm.controls.optionalLinkText.value.trim());\r\n this.inputForm.controls.optionalLinks.patchValue(this.articleLinks);\r\n } \r\n if(this.inputForm?.controls?.articleLinks){\r\n this.inputForm.controls.articleLinks.patchValue([]);\r\n }\r\n\r\n this.appHttpRequestHandlerService.httpPost(this.inputForm.value, \"Article\", \"AddUpdateArticleByEnterpriseSponsor\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericServiceResultTemplate) => {\r\n this.modalService.dismissAll();\r\n this.getArticleList();\r\n this.toastService.show(\"\",\"Article submitted successfully\", 3000,\"bg-success text-white\",\"fa-check-circle\"); \r\n });\r\n }\r\n }\r\n }\r\n\r\n\r\n openCropImageModal(content) : NgbModalRef{\r\n return this.modalService.open(content, { size: 'lg', backdrop: 'static',keyboard: false });\r\n }\r\n passClickToFileInput(browserInputId: string) {\r\n document.getElementById(browserInputId).click();\r\n }\r\n onArticleImageBrowserInputChange(event, targetImageElementId, aspectRatio) {\r\n if (event.target.value.length) {\r\n this.fileUploadEventObject = event;\r\n this.targetImageElementId = targetImageElementId;\r\n this.aspectRatio = aspectRatio;\r\n this.cropModalReference = this.openCropImageModal(this.cropImageModal);\r\n }\r\n }\r\n onImageCropper(croppedImageInfo: any) {\r\n if(croppedImageInfo.croppedImage == null){\r\n this.cropModalReference.close('Close click');\r\n }\r\n this.cropModalReference.close()\r\n if (croppedImageInfo.targetImageElementId == 'articleImageElement') {\r\n this.articleImage = croppedImageInfo.croppedImage;\r\n (document.getElementById('articleImageBrowserInput')).value = '';\r\n this.inputForm.controls.imageFileBase64.patchValue(this.articleImage);\r\n this.inputForm.controls.imageFile.patchValue('Article_0');\r\n // if(this.articleImage.length < 1400000){\r\n // this.invalidSize=true;\r\n // }else{\r\n // this.invalidSize=false;\r\n // }\r\n }\r\n }\r\n onRemoveImage() {\r\n // this.invalidSize=true;\r\n this.articleImage = null;\r\n this.inputForm.controls.imageFileBase64.patchValue(this.articleImage);\r\n this.inputForm.controls.imageFile.patchValue(this.articleImage);\r\n }\r\n onCancelCropImageModal(){\r\n this.cropModalReference.close('Close click')\r\n }\r\n onAddNewOptionalLink(linkString: string) {\r\n if(!this.inputForm.controls.optionalLinkText.errors?.pattern){\r\n if (linkString && linkString.trim().length > 0){\r\n if(this.articleLinks==null){\r\n this.articleLinks=[];\r\n }\r\n this.articleLinks.push(linkString);\r\n this.inputForm.controls.optionalLinks.patchValue(this.articleLinks);\r\n this.inputForm.controls.optionalLinkText.reset();\r\n }\r\n else{\r\n this.inputForm.controls.optionalLinkText.reset();\r\n }\r\n if(this.inputForm.controls.optionalLinkText.value == null || this.inputForm.controls.optionalLinkText.value==undefined){\r\n this.inputForm.controls.optionalLinkText.patchValue(\"\");\r\n }\r\n }\r\n }\r\n onRemoveOptionalLink(index: number) {\r\n this.articleLinks.splice(index, 1);\r\n this.inputForm.controls.articleLinks.patchValue(this.articleLinks);\r\n }\r\n\r\n numberOnly(event): boolean {\r\n const charCode = (event.which) ? event.which : event.keyCode;\r\n if (charCode > 31 && (charCode < 48 || charCode > 57)) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n isValidMaxNum()\r\n {\r\n if(this.inputForm.controls.maxViewEachMonth?.value != null){\r\n if(parseInt(this.inputForm.controls.maxViewEachMonth?.value?.toString()) === 0 || parseInt(this.inputForm.controls.maxViewEachMonth?.value?.toString()) < 0){\r\n this.isValidNumber = false;\r\n this.inputForm.controls.maxViewEachMonth?.patchValue(Number(this.inputForm.controls.maxViewEachMonth?.value?.toString().slice(0,1)));\r\n }\r\n else{\r\n this.isValidNumber = true;\r\n }\r\n }\r\n else{\r\n this.inputForm.controls.maxViewEachMonth?.patchValue(Number(this.inputForm.controls.maxViewEachMonth?.value?.toString().slice(0,1)));\r\n }\r\n if(this.inputForm.controls.maxViewEachMonth?.value < 0){\r\n this.inputForm.controls.maxViewEachMonth?.patchValue(Number(this.inputForm.controls.maxViewEachMonth?.value?.toString().slice(0,1)));\r\n }\r\n }\r\n onSetMaxViewUnlimitedChange(event){\r\n this.inputForm.controls.maxViewEachMonth.patchValue('');\r\n this.unlimitedViews = event.target.checked;\r\n if(event.target.checked){\r\n this.isValidNumber = true;\r\n this.inputForm.controls.maxViewEachMonth.patchValue(0);\r\n }\r\n }\r\n openDeleteArticleModal(content, selectedArticleId) {\r\n this.selectedArticleId = selectedArticleId;\r\n this.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', centered:true }).result.then((result) => {}, (reason) => {});\r\n }\r\n openDetailArticleModal(content, selectedArticleId) {\r\n this.modalService.dismissAll();\r\n this.inputForm.controls.startDate.patchValue(new Date());\r\n this.inputForm.controls.endDate.patchValue(new Date());\r\n this.selectedArticleId = selectedArticleId;\r\n if(this.selectedArticleId>0){\r\n this.getArticleById();\r\n // this.inputForm.controls.monthStartJson.patchValue({\r\n // month: this.getMonthNameByCode(this.inputForm.controls.monthStartJson.value.month),\r\n // year : this.inputForm.controls.monthStartJson.value.year\r\n // });\r\n }\r\n this.modalService.open(content, { size: 'lg', backdrop: 'static',keyboard: false });\r\n }\r\n\r\n deleteArticle(){\r\n this.modalService.dismissAll();\r\n this.appHttpRequestHandlerService.httpGet({ id: this.selectedArticleId }, \"Article\", \"DeleteArticleByEnterpriseSponsor\")\r\n .pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data:any) => {\r\n //this.getArticleList();\r\n this.toastService.show(\"\",\"Article deleted successfully.\", 3000,\"bg-success text-white\",\"fa-check-circle\");\r\n if(this.articleList.length==1 && this.dataTableParams.pageNo>1){\r\n this.dataTableParams.pageNo=this.dataTableParams.pageNo-1;\r\n }\r\n this.getArticleList();\r\n });\r\n }\r\n getArticleById(){\r\n this.appHttpRequestHandlerService.httpGet({ id: this.selectedArticleId }, \"Article\", \"GetArticleByIdByEnterpriseSponsor\")\r\n .pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data:GenericResponseTemplateModel) => {\r\n //console.log(data.responseDataModel)\r\n this.inputForm.patchValue(data.responseDataModel);\r\n this.articleLinks=this.inputForm.controls.optionalLinks.value;\r\n\r\n this.articleImage = this.inputForm.controls.imageFileBase64.value;\r\n this.inputForm.patchValue({\r\n articleStausType: 1,\r\n monthsCodes: 'NA',\r\n optionalLinkText: '',\r\n monthStartJson: { year: parseInt(this.inputForm.controls.monthStart.value.split('-')[1]) , month: parseInt(this.inputForm.controls.monthStart.value.split('-')[0])},\r\n monthEndJson: { year: parseInt(this.inputForm.controls.monthEnd.value.split('-')[1]) , month: parseInt(this.inputForm.controls.monthEnd.value.split('-')[0])},\r\n \r\n\r\n monthStart: 'NA',\r\n monthEnd: 'NA'});\r\n if(this.inputForm.controls.maxViewEachMonth.value==0){\r\n this.unlimitedViews=true;\r\n }\r\n });\r\n }\r\n getMonthNameByCode(monthCode: number): string{\r\n return this.months[monthCode-1];\r\n }\r\n getHomeVariableName(code): string{\r\n return this.homeVariables?.filter(x=>x.value==code)?.[0]?.Text; \r\n }\r\n openEditArticleModal(articleId:number, content){\r\n this.modalService.dismissAll();\r\n // this.onRemoveImage();\r\n // this.inputForm.patchValue({\r\n // articleId: 0,\r\n // articleTitle: '',\r\n // shortDescriptionText: '',\r\n // descriptionText: '',\r\n // imageFile: '',\r\n // imageFileBase64:'',\r\n // articleStausType: 1,\r\n // monthsCodes: 'NA',\r\n // articleLinks: [],\r\n // optionalLinks: [],\r\n // optionalLinkText: '',\r\n // maxViewEachMonth: '',\r\n // homeOwnerAddressDetailType: '',\r\n // monthStartJson: { year: new Date().getFullYear(), month: new Date().getMonth()+1 },\r\n // monthEndJson: { year: new Date().getFullYear(), month: new Date().getMonth()+1 },\r\n // monthStart: 'NA',\r\n // monthEnd: 'NA',\r\n // endDate:new Date(),\r\n // startDate:new Date(),\r\n // });\r\n\r\n this.openAddArticleModal(articleId, content);\r\n }\r\n searchPressed(event){\r\n if(event.keyCode==13){\r\n this.onClickSearchBar()\r\n }\r\n }\r\n searchKeyUp(event){\r\n this.searchText =(document.getElementById('searchKeyword')).value;\r\n if(((event.keyCode==8 || event.keyCode==46) && event.target.value.trim().length==0)){\r\n this.onClickSearchBar()\r\n }\r\n }\r\n clearSearch(){\r\n (document.getElementById('searchKeyword')).value='';\r\n this.searchText='';\r\n this.onClickSearchBar()\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Articles

\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \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; else noArticle\">\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n Article Title\r\n \r\n \r\n Create Date\r\n \r\n View DetailsViews
\r\n
{{article.articleTitle}}
\r\n
{{article.createdOnText}}\r\n \r\n \r\n \r\n Unlimited\r\n \r\n \r\n {{article.maxViewEachMonth}}\r\n \r\n \r\n
    \r\n
  • \r\n
  • \r\n
\r\n
\r\n No Article is found..!\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

Results per page:

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Article title is required.\r\n
\r\n
\r\n Please provide valid Article title.\r\n
\r\n
\r\n Title can be max 100 characters long.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Short description is required.\r\n
\r\n \r\n
\r\n Short description can be max 500 characters long.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Description is required.\r\n
\r\n \r\n
\r\n Description can be max 500 characters long.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \"profile-change-img\"\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n Image 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 \r\n
\r\n
\r\n Home Variable 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 \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n Invalid period is selected.\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n Max views is required.\r\n
\r\n
\r\n Max Views can be max 9 digits long.\r\n
\r\n\r\n
\r\n
\r\n
\r\n Please enter number greater than zero.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \"modal-home-icon\"\r\n

Are you sure you want to Delete this article?

\r\n

This cannot be undone

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

{{formControls.articleTitle.value}}

\r\n
{{formControls.shortDescriptionText.value}}
\r\n
\r\n
\r\n \"modal-home-img\"\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { IFooterLink } from 'src/app/footer-link/footer-link-type-module';\r\nimport { GenericResponseTemplateModel, TForm } from 'src/app/generic-type-module';\r\nimport { AppHttpRequestHandlerService } from 'src/app/shared/app-http-request-handler.service';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { Subject } from 'rxjs';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { UserJwtDecodedInfo } from 'src/app/account/account-type-module';\r\nimport { AuthService } from 'src/app/auth.service';\r\nimport { FormBuilder, Validators } from '@angular/forms';\r\nimport { CommonOpsService } from 'src/app/shared/common-ops-service';\r\nimport { AppToastService } from '../../toast/app-toast.service';\r\n\r\n@Component({\r\n selector: 'app-enterprisesponsor-footer-links',\r\n templateUrl: './enterprisesponsor-footer-links.component.html',\r\n styleUrls: ['./enterprisesponsor-footer-links.component.css']\r\n})\r\nexport class EnterprisesponsorFooterLinksComponent implements OnInit {\r\n protected ngUnsubscribe: Subject = new Subject();\r\n footerLinks:IFooterLink[]=[];\r\n selectedFooterLinkId: number=0;\r\n selectedFooterLinkOrder: number=0;\r\n searchItem: string ='';\r\n sortOrder: string = '';\r\n selectedFooterLinkUrl: string= '';\r\n selectedFooterLinkTitle: string= '';\r\n userJwtDecodedInfo: UserJwtDecodedInfo;\r\n searchText: string ='';\r\n inputFormFooterLink: TForm = this.fb.group({\r\n footerLinkId: [0, Validators.required],\r\n linkTitle: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/), Validators.maxLength(20)]],\r\n linkUrl: ['', [Validators.required, Validators.pattern(/((([A-Za-z]{3,9}:(?:\\/\\/)?)(?:[-;:&=\\+\\$,\\w]+@)?[A-Za-z0-9.-]+|(?:www.|[-;:&=\\+\\$,\\w]+@)[A-Za-z0-9.-]+)((?:\\/[\\+~%\\/.\\w-_]*)?\\??(?:[-\\+=&;%@.\\w_]*)#?(?:[\\w]*))?)/)]],\r\n footerLinkSourceType: [0, Validators.required],\r\n userRefId: [0, Validators.required],\r\n lastModifiedOn: [new Date(), Validators.required],\r\n linkOrder:[0, Validators.required]\r\n }) as TForm;\r\n constructor(private appHttpRequestHandlerService: AppHttpRequestHandlerService, \r\n public toastService: AppToastService,\r\n private modalService: NgbModal, \r\n public authService: AuthService,\r\n private fb: FormBuilder,\r\n public commonOpsService: CommonOpsService) { }\r\n get formControls() { return this.inputFormFooterLink.controls; }\r\n submitted: boolean=false;\r\n ngOnInit(): void {\r\n this.userJwtDecodedInfo = this.authService.getUserJwtDecodedInfo();\r\n this.getAllFooterLinks();\r\n }\r\n getAllFooterLinks(){\r\n this.appHttpRequestHandlerService.httpGet({ id: this.userJwtDecodedInfo.UserId, flag: false, search: this.searchItem, sort: this.sortOrder}, \"FooterLink\", \"GetFooterLinksByUserRefIdWithSearch\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => {\r\n this.footerLinks = data.responseDataModel; \r\n //console.log('linkDetails', this.footerLinks); \r\n });\r\n }\r\n openRemoveFooterLink(content, selectedFooterLinkId) {\r\n this.selectedFooterLinkId = selectedFooterLinkId;\r\n this.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', centered:true }).result.then((result) => {}, (reason) => {});\r\n }\r\n onRemoveFooterLinkModalCancelClick() {\r\n this.modalService.dismissAll();\r\n }\r\n onAddEditFooterLinkModalCancelClick() {\r\n this.modalService.dismissAll();\r\n }\r\n onRemoveFooterLinkModalYesClick() {\r\n this.modalService.dismissAll();\r\n this.appHttpRequestHandlerService.httpPost({ id: this.selectedFooterLinkId }, \"FooterLink\", \"DeleteFooterLinkById\")\r\n .pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data:any) => {\r\n this.toastService.show(\"\",\"Footer Link deleted successfully.\", 3000,\"bg-success text-white\",\"fa-check-circle\");\r\n if(data.responseDataModel){\r\n this.footerLinks=this.footerLinks.filter(x=>x.footerLinkId!=this.selectedFooterLinkId);\r\n }\r\n },\r\n \r\n );\r\n }\r\n openAddEditFooterLinkModal(content, selectedFooterLinkId) {\r\n this.modalService.dismissAll();\r\n this.submitted=false;\r\n this.selectedFooterLinkId = selectedFooterLinkId;\r\n this.inputFormFooterLink.reset();\r\n if(this.selectedFooterLinkId>0){\r\n this.inputFormFooterLink.patchValue(this.footerLinks.filter(x=>x.footerLinkId==selectedFooterLinkId)[0]);\r\n }\r\n this.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', centered:true }).result.then((result) => {}, (reason) => {});\r\n }\r\n\r\n openDetailArticleModal(content, selectedFooterLinkId, selectedFooterLinkUrl, selectedFooterLinkTitle, selectedFooterLinkOrder) {\r\n this.modalService.dismissAll();\r\n this.selectedFooterLinkId = selectedFooterLinkId;\r\n this.selectedFooterLinkUrl = selectedFooterLinkUrl;\r\n this.selectedFooterLinkTitle = selectedFooterLinkTitle;\r\n this.selectedFooterLinkOrder = selectedFooterLinkOrder;\r\n this.modalService.open(content, { size: 'lg', backdrop: 'static',keyboard: false });\r\n }\r\n\r\n closeModal(){\r\n this.modalService.dismissAll();\r\n }\r\n onSubmitFooterLink(){\r\n this.submitted=true;\r\n this.inputFormFooterLink.controls.footerLinkId.patchValue(this.selectedFooterLinkId);\r\n this.inputFormFooterLink.controls.footerLinkSourceType.patchValue((this.userJwtDecodedInfo.RoleId == '1') ? 1 : 2 );\r\n this.inputFormFooterLink.controls.userRefId.patchValue(this.userJwtDecodedInfo.UserId);\r\n this.inputFormFooterLink.controls.lastModifiedOn.patchValue(new Date());\r\n if (this.inputFormFooterLink.valid) {\r\n var endpoint='AddNewFooterLink';\r\n if(this.selectedFooterLinkId>0){\r\n endpoint='EditFooterLink';\r\n }\r\n this.appHttpRequestHandlerService.httpPost(this.inputFormFooterLink.value, \"FooterLink\", endpoint).pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => {\r\n if (!data.hasError) {\r\n this.toastService.show(\"\",\"Footer Link Submitted\", 3000,\"bg-success text-white\",\"fa-check-circle\");\r\n this.inputFormFooterLink.reset();\r\n this.modalService.dismissAll();\r\n this.getAllFooterLinks();\r\n }\r\n });\r\n }\r\n }\r\n\r\n searchPressed(event){\r\n if(event.keyCode==13){\r\n this.onClickSearchBar()\r\n }\r\n }\r\n searchKeyUp(event){\r\n this.searchText =(document.getElementById('searchKeyword')).value;\r\n if(((event.keyCode==8 || event.keyCode==46) && event.target.value.trim().length==0)){\r\n this.onClickSearchBar()\r\n }\r\n }\r\n clearSearch(){\r\n (document.getElementById('searchKeyword')).value='';\r\n this.searchText='';\r\n this.onClickSearchBar()\r\n }\r\n onClickSearchBar(){\r\n this.searchByKeyword((document.getElementById('searchKeyword')).value);\r\n }\r\n searchByKeyword(keyword: string) {\r\n this.searchItem = keyword;\r\n this.getAllFooterLinks();\r\n }\r\n\r\n onChangeSortOrder(event) {\r\n this.sortOrder = event.target.value;\r\n this.getAllFooterLinks();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Footer Links

\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\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; else noFooterLinks\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Link TitlesLinksView DetailsAction
{{footerLink.linkTitle}}
\r\n
{{footerLink.linkUrl}}
\r\n
\r\n \r\n \r\n
    \r\n
  • \r\n
  • \r\n
\r\n
\r\n\r\n \r\n
No Footer Links yet..!
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \"modal-home-icon\"\r\n

Are you sure you want to Remove this footer link?

\r\n

This cannot be undone

\r\n
\r\n
\r\n \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, HostListener, Injectable, Input, OnDestroy, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { NgbModal, NgbModalConfig, NgbModalRef } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AppHttpRequestHandlerService } from 'src/app/shared/app-http-request-handler.service';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport {EnumJsonTemplate, GenericFormModel, GenericResponseTemplateModel, IState, TForm } from 'src/app/generic-type-module';\r\nimport { FormBuilder, Validators } from '@angular/forms';\r\nimport { IHomeOwnerNewUserResponseViewModel, IHomeOwnerProfileViewModel } from 'src/app/home-owner-address/home-owner-address-type-module';\r\nimport { CommonOpsService } from 'src/app/shared/common-ops-service';\r\nimport {Router, ActivatedRoute, CanDeactivate} from '@angular/router';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { AccountService } from 'src/app/account/account.service';\r\nimport { AppToastService } from '../../toast/app-toast.service';\r\nimport { IRealEstateAgentViewModel } from 'src/app/real-estate-agent/real-estate-agent-type-module';\r\nimport { environment } from 'src/environments/environment';\r\nimport { SharedService } from 'src/app/shared.service';\r\nimport { IHomeVariableMainCategory, IHomeVariableSubCategory } from 'src/app/admin-user/home-variable-manager/home-variable-type-module';\r\nimport { CookieService } from 'ngx-cookie';\r\n//import { IHomeVariableMainCategory } from 'src/app/admin-user/home-variable-manager/home-variable-type-module';\r\ndeclare var $: any\r\n\r\n@Component({\r\n selector: 'app-qr-client-agent',\r\n templateUrl: './qr-client-agent.component.html',\r\n styleUrls: ['./qr-client-agent.component.css'],\r\n})\r\n\r\n\r\n\r\nexport class QRClientAgentComponent implements OnInit { \r\n\r\n protected ngUnsubscribe: Subject = new Subject();\r\n submitted = false;\r\n @ViewChild('cropImageModal') cropImageModal: TemplateRef;\r\n fileUploadEventObject: any;\r\n targetImageElementId: string = '';\r\n aspectRatio: string = '1/1';\r\n pageAdditionalInfo: IRealEstateAgentViewModel;\r\n messageHomePhoto: string = '';\r\n homePhoto: string = null;\r\n userId: number; \r\n getemail:string;\r\n value = ''; \r\n states: IState[]=[];\r\n homeTypeEnum: EnumJsonTemplate[] = [];\r\n enumListTemplateLists: any;\r\n homeType:any; \r\n isLoad: number = 1;\r\n homeAddressGeneralDetailId: number=0;\r\n mainCategories:IHomeVariableMainCategory[]=[];\r\n private cropModalReference: NgbModalRef;\r\n isCompleteHomeProfile: boolean = false;\r\n isDuplicateEmail: boolean=false;\r\n selCollapseBtn: string='collapseOne';\r\n defaultProfilePhoto: string = environment.defaultProfilePhoto;\r\n profilePhoto: string = this.defaultProfilePhoto;\r\n\r\n //QrcodeUrl: any;\r\n\r\n inputForm: TForm = this.fb.group({\r\n homeAddressGeneralDetailId: [0, Validators.required],\r\n homeType: [0],\r\n homeOwnerAddressId: [0, Validators.required],\r\n address: ['', [Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/), Validators.maxLength(40)]],\r\n zipCode: ['', [Validators.pattern('[0-9]{5}')]],\r\n isNotficationOn: [0, [Validators.required]],\r\n homeProfileImage: [\"\"],\r\n userRefId: [0, [Validators.required]],\r\n cityName: ['', [Validators.pattern(/^[a-zA-Z ]*$/), Validators.maxLength(20)]],\r\n stateCode: [''],\r\n firstName: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/), Validators.maxLength(20)]],\r\n lastName: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/), Validators.maxLength(20)]],\r\n email: ['', [Validators.required, Validators.pattern('[A-Za-z0-9._%-]+@[A-Za-z0-9._%-]+\\\\.[a-z]{2,3}')]],\r\n //phone: ['', [Validators.pattern(/^(?:\\+?1[\\s-]?)?\\d{10}$/)]],\r\n phone: ['', [Validators.pattern(/^[1-9]\\d{6,14}$/)]],\r\n userImage: [''],\r\n userImageBase64: [''],\r\n homeProfileImageBase64: [''],\r\n realEstateAgentUserRefId: [''],\r\n isShareable:false,\r\n userId:[0],\r\n }) as TForm;\r\n\r\n get InviteClientformControls() { return this.inputForm.controls; }\r\n subCategories:IHomeVariableSubCategory[]=[];\r\n\r\n @Input() mainCategory: IHomeVariableMainCategory;\r\n\r\n\r\n constructor(private modalService: NgbModal,\r\n config: NgbModalConfig,\r\n private sharedService: SharedService,\r\n private appHttpRequestHandlerService: AppHttpRequestHandlerService,\r\n private fb: FormBuilder,\r\n public commonOpsService: CommonOpsService,\r\n private activatedRoute: ActivatedRoute,\r\n private location: LocationStrategy,\r\n public toastService: AppToastService,\r\n private router: Router,\r\n private accountService: AccountService,\r\n private cookieService: CookieService\r\n ) {\r\n config.backdrop = 'static';\r\n config.keyboard = false;\r\n history.pushState(null, null, window.location.href); \r\n this.location.onPopState(() => {\r\n this.modalService.dismissAll();\r\n history.pushState(null, null, window.location.href); \r\n }); \r\n\r\n $(document).ready(function(){\r\n // $(\".et_pb_video_overlay\").click(function(){\r\n // $(this).addClass(\"hide\");\r\n\r\n\r\n \r\n\r\n // });\r\n\r\n document.getElementById('et_pb_video_overlay').addEventListener('click', function () {\r\n this.classList.add(\"hide\");\r\n const videoId = 'C1APWZYa3jg';\r\n const iframe = document.createElement('iframe');\r\n // iframe.setAttribute('width', '560');\r\n // iframe.setAttribute('height', '315');\r\n iframe.style.width = \"100%\";\r\n iframe.style.height = \"100%\";\r\n iframe.style.position = \"absolute\";\r\n iframe.style.top = \"0\";\r\n iframe.setAttribute('src', `https://www.youtube.com/embed/${videoId}?autoplay=1`);\r\n iframe.setAttribute('frameborder', '0');\r\n iframe.setAttribute('allow', 'accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture');\r\n iframe.setAttribute('allowfullscreen', '');\r\n \r\n const videoContainer = document.getElementById('iframe_container');\r\n videoContainer.innerHTML = '';\r\n videoContainer.appendChild(iframe);\r\n });\r\n });\r\n\r\n }\r\n\r\n \r\n toggleCollapse(collapseBtn: string){\r\n var allCollapsibles = document.querySelectorAll(\".accordion-collapse\");\r\n var isAlreadyCollapsed = document.getElementById(collapseBtn).classList.contains('collapse');\r\n \r\n allCollapsibles.forEach(element => {\r\n if (collapseBtn == element.id && isAlreadyCollapsed){\r\n document.getElementById(collapseBtn).classList.remove('collapse')\r\n }\r\n else if (collapseBtn == element.id && !isAlreadyCollapsed){\r\n document.getElementById(collapseBtn).classList.add('collapse')\r\n }\r\n else{\r\n document.getElementById(element.id).classList.add('collapse')\r\n }\r\n });\r\n }\r\n\r\n isCollapsedShown(collapseId: string){\r\n return !document.getElementById(collapseId).classList.contains('collapse')\r\n }\r\n\r\n \r\n ngOnInit() {\r\n window.scroll({ \r\n top: 0, \r\n left: 0, \r\n behavior: 'smooth'\r\n });\r\n\r\n this.activatedRoute.params.subscribe(params => { \r\n \r\n this.getemail = params['id'];\r\n });\r\n \r\n \r\n this.appHttpRequestHandlerService.httpPost({EmailId : this.getemail}, \"AccountManager\", \"GetUserDetails\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: any) => {\r\n \r\n //console.log(\"location\",data)\r\n // const userId = data.data.userId; \r\n\r\n const userId = data.data.userId;\r\n this.userId = data.data.userId;\r\n this.inputForm.patchValue({\r\n userId: data.data.userId\r\n });\r\n \r\n\r\n this.appHttpRequestHandlerService.httpGet({ id: this.userId }, \"RealEstateAgent\", \"GetRealEstateAgentProfileById\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericFormModel) => {\r\n \r\n this.pageAdditionalInfo = data.formModel; \r\n // this.enumListTemplateLists = data.enumListTemplateLists;\r\n // console.log('list1', this.enumListTemplateLists);\r\n if (data.formModel.userImageBase64 != null) {\r\n this.profilePhoto = data.formModel.userImageBase64;\r\n }\r\n \r\n });\r\n\r\n });\r\n\r\n\r\n this.getAllSubCategories(1); \r\n //localStorage.removeItem(\"BearerToken\");\r\n //localStorage.clear();\r\n localStorage.setItem(\"NewHomeOwner\", \"true\");\r\n localStorage.setItem(\"isLoad\", \"1\");\r\n //console.log(\"qr\",localStorage.getItem(\"NewHomeOwner\"));\r\n this.sharedService.send_data.next(true);\r\n document.getElementById('collapseOne').classList.add('collapse');\r\n // this.activatedRoute.queryParams.subscribe(params => {\r\n // this.userId = params['foo'];\r\n // });\r\n this.appHttpRequestHandlerService.httpGet({ id: 0}, \"CommonApi\", \"GetAllStatesList\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: IState[]) => {\r\n this.states = data;\r\n });\r\n \r\n // setTimeout(() => {\r\n this.getAllMainCategories();\r\n // }, 500);\r\n \r\n }\r\n\r\n getAllMainCategories(){\r\n this.appHttpRequestHandlerService.httpGet({ id: 0 }, \"HomeVariableManager\", \"GetAllMainCategoriesWithAllChilds\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => {\r\n this.mainCategories=data?.responseDataModel;\r\n // console.log('main list',this.mainCategories)\r\n setTimeout(() => {\r\n if(this.mainCategories[0]?.homeVariableSubCategories[0]?.homeVariableSubCategoryListItems !== undefined)\r\n {\r\n this.enumListTemplateLists =this.mainCategories[0]?.homeVariableSubCategories[0]?.homeVariableSubCategoryListItems.filter(x=>x.homeVariableSubCategoryRefId == 1 && !x.isDeleted);\r\n //console.log('enumlist',this.enumListTemplateLists)\r\n }\r\n else {\r\n console.warn('mainCategories or its nested data missing');\r\n }\r\n }, 500);\r\n // console.log('list',this.mainCategories[0]?.homeVariableSubCategories[0]?.homeVariableSubCategoryListItems)\r\n \r\n });\r\n }\r\n\r\n onSubmitWithskipHomeDetails(){\r\n this.isCompleteHomeProfile=false;\r\n this.onSubmit();\r\n }\r\n scroll(el: HTMLElement) {\r\n el.scrollIntoView({behavior: 'smooth'});\r\n }\r\n\r\n getValues(){\r\n this.appHttpRequestHandlerService.httpGet({ homeAddressGeneralDetailId: this.homeAddressGeneralDetailId }, \"HomeOwnerAddress\", \"GetHomeAddressGeneraldetail\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericFormModel) => { \r\n this.homeTypeEnum = this.commonOpsService.getEnumItemsByEnumName(data.enumListTemplateLists, \"HomeTypeEnum\");\r\n \r\n }); \r\n\r\n }\r\n\r\n getAllSubCategories(id: number){\r\n if(id){\r\n this.appHttpRequestHandlerService.httpGet({ id: id }, \"HomeVariableManager\", \"GetAllSubCategoriesByMainCategoryId\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => { \r\n\r\n this.subCategories=data.responseDataModel;\r\n this.getValues();\r\n \r\n // this.inputForm.patchValue({\r\n // // homeType: 0,\r\n // homeType: this.subCategories[0]?.homeVariableSubCategoryListItems[0]?.homeVariableSubCategoryListItemId,\r\n // })\r\n });\r\n }\r\n}\r\n\r\n onSubmit() {\r\n this.inputForm.controls.isShareable.value= true;\r\n // if(this.inputForm.controls.homeType?.value == null || this.inputForm.controls.homeType?.value == 0)\r\n // {\r\n // this.inputForm.patchValue({\r\n // homeType: this.subCategories[0]?.homeVariableSubCategoryListItems[0]?.homeVariableSubCategoryListItemId,\r\n // })\r\n // this.appHttpRequestHandlerService.httpPost(this.inputForm.value, \"HomeOwnerAddress\", \"AddUpdateHomeAddressGeneraldetail\").pipe(takeUntil(this.ngUnsubscribe))\r\n // }\r\n\r\n // if(this.inputForm.controls.homeType?.value == null || this.inputForm.controls.homeType?.value == 0)\r\n // {\r\n // this.inputForm.patchValue({\r\n // homeType: this.mainCategories[0]?.homeVariableSubCategories[0]?.homeVariableSubCategoryListItems[0]?.homeVariableSubCategoryListItemId,\r\n // })\r\n // }\r\n if(this.inputForm.controls.homeType?.value == null || this.inputForm.controls.homeType?.value == 0)\r\n {\r\n this.inputForm.patchValue({\r\n homeType: this.subCategories[0]?.homeVariableSubCategoryListItems[0]?.homeVariableSubCategoryListItemId,\r\n })\r\n }\r\n this.inputForm.controls.realEstateAgentUserRefId.patchValue(this.userId);\r\n if(this.inputForm.controls.cityName?.value?.trim()?.length == 0){\r\n this.inputForm.controls.cityName?.patchValue(\"\");\r\n }\r\n //console.log(\"this.inputForm.value\",this.inputForm.value)\r\n if (this.inputForm.valid && !this.isDuplicateEmail) {\r\n \r\n this.appHttpRequestHandlerService.httpPost(this.inputForm.value, \"RealEstateAgent\", \"InviteNewHomeOwner\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericFormModel) => {\r\n //this.inputForm.reset();\r\n this.toastService.show(\"\",\"Homeowner added successfully\", 3000,\"bg-success text-white\",\"fa-check-circle\");\r\n this.modalService.dismissAll();\r\n this.router.navigate(['/Account/HOWelcomeComponent'], { queryParams: { info: this.inputForm.controls.email.value, homwownerId: data.formModel.homeOwnerAddressId, foo: this.userId}});\r\n });\r\n }\r\n this.submitted = true;\r\n }\r\n passClickToHomeProfileFileInput(browserInputId: string) {\r\n document.getElementById(browserInputId).click();\r\n }\r\n\r\n openVideoModal(content) {\r\n this.modalService.open(content, { size: 'lg', ariaLabelledBy: 'modal-basic-title', centered:true }).result.then((result) => {}, (reason) => {});\r\n }\r\n onVideoModalCancelClick() {\r\n this.modalService.dismissAll();\r\n }\r\n onHomeProfilePhotoBrowserInputChange(event, targetImageElementId, aspectRatio) {\r\n if (event.target.value.length) {\r\n this.fileUploadEventObject = event;\r\n this.targetImageElementId = targetImageElementId;\r\n this.aspectRatio = aspectRatio;\r\n this.cropModalReference = this.openCropImageModal(this.cropImageModal);\r\n }\r\n }\r\n openCropImageModal(content) : NgbModalRef{\r\n return this.modalService.open(content, { size: 'lg' });\r\n }\r\n checkDuplicateEmail(){\r\n if(this.inputForm.controls.email.valid){\r\n this.accountService.checkDuplicateEmail({value: this.inputForm.controls.email.value, id: this.inputForm.controls.userRefId.value}).pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => {\r\n this.isDuplicateEmail = data.responseDataModel;\r\n });\r\n }\r\n }\r\n onEmailFocusOut(){\r\n if(this.isDuplicateEmail){\r\n }\r\n }\r\n \r\n onClickCloseModal() {\r\n this.modalService.dismissAll();\r\n }\r\n \r\n passClickToFileInput(browserInputId: string) {\r\n document.getElementById(browserInputId).click();\r\n }\r\n onPhotoBrowserInputChange(event, targetImageElementId, aspectRatio) {\r\n if (event.target.value.length) {\r\n this.fileUploadEventObject = event;\r\n this.targetImageElementId = targetImageElementId;\r\n this.aspectRatio = aspectRatio;\r\n this.cropModalReference = this.openCropImageModal(this.cropImageModal);\r\n }\r\n }\r\n onImageCropper(croppedImageInfo: any) {\r\n this.cropModalReference.close()\r\n if (croppedImageInfo.targetImageElementId == 'messagePhotoImgElement') {\r\n this.messageHomePhoto = croppedImageInfo.croppedImage;\r\n (document.getElementById('messagePhotoBrowserInput')).value = '';\r\n //this.inputFormMessage.controls.messageImageBase64.patchValue(this.messageHomePhoto);\r\n // this.appHttpRequestHandlerService.httpPost({ homeOwnerAddressId: this.homeOwnerAddressId, homeProfileImageBase64: this.defaultHomePhoto }, \"HomeOwnerAddress\", \"UpdateHomeAddressPhoto\").pipe(takeUntil(this.ngUnsubscribe))\r\n // .subscribe((data: GenericServiceResultTemplate) => { });\r\n }\r\n else if (croppedImageInfo.targetImageElementId == 'homePhotoImgElement') {\r\n this.homePhoto = croppedImageInfo.croppedImage;\r\n this.inputForm.controls.homeProfileImageBase64.patchValue(this.homePhoto);\r\n }\r\n }\r\n onRemoveImage() {\r\n this.messageHomePhoto = null;\r\n this.homePhoto=null;\r\n this.inputForm.controls.homeProfileImageBase64.patchValue(this.homePhoto);\r\n }\r\n onCancelCropImageModal(){\r\n this.cropModalReference.close('Close click')\r\n }\r\n \r\n}\r\n\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\"upkeepable-white-logo-ho\"\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Upkeepable: Your Home's Best Friend!

\r\n

Ever wished for a personal home upkeep guide without the hefty price?
Get sponsored by\r\n {{pageAdditionalInfo?.firstName}} {{pageAdditionalInfo?.lastName}} and let Upkeepable guide you\r\n for free!

\r\n
\r\n Watch Video\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \"profile-img\"\r\n
\r\n\r\n\r\n\r\n\r\n\r\n
\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"rea-profile-img\"\r\n \"rea-profile-img\"\r\n\r\n
\r\n
{{pageAdditionalInfo?.firstName}} {{pageAdditionalInfo?.lastName}}
\r\n

Welcome to Upkeepable

\r\n
{{pageAdditionalInfo?.realEstateAgentMessageInfo1?.messageText}}
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n First name is required.\r\n
\r\n
\r\n Invalid First name.\r\n
\r\n
\r\n First name can be max 20 characters long.\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Last name is required.\r\n
\r\n
\r\n Invalid Last name.\r\n
\r\n
\r\n Last name can be max 20 characters long.\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n \r\n
\r\n Invalid phone number.\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Email address is required.\r\n
\r\n
\r\n Invalid email address.\r\n
\r\n
\r\n
\r\n Email id already exists..!\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{mainCategories[0]?.homeVariableSubCategories[0]?.title}}\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n Invalid Address.\r\n
\r\n
\r\n Address can be max 40 characters long.\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n Invalid Address.\r\n
\r\n
\r\n Address can be max 40 characters long.\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n Invalid City.\r\n
\r\n
\r\n City can be max 20 characters long.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n Invalid zip code.\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n COMMON QUESTION\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \"upkeepable-tab-design\"\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Unlock Upkeepable: Save on home care, sponsored for you!

\r\n
Ever wished for a personal guide to help you navigate the intricacies of home maintenance?\r\n Upkeepable is here to revolutionize the way you care for your home. With tailored\r\n recommendations and timely reminders, we ensure your home gets the love it deserves.
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

How Upkeepable Works & Why It's a Game-Changer\r\n

\r\n
Dive into Upkeepable, your intuitive guide to home maintenance. Here's the magic: based on your\r\n unique home profile, we curate personalized upkeep recommendations. No more guesswork or missed\r\n maintenance tasks. And the cherry on top? Real estate agents can sponsor your access, making it\r\n free for you. Why does this matter? Regular home care not only ensures a safe and comfortable\r\n living space but also saves you significant repair costs in the long run. With Upkeepable,\r\n you're not just maintaining a house; you're investing in a home.
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \"upkeepable-tab-design\"\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Why You’ll Love Upkeepable

\r\n
    \r\n
  • Personalized Recommendations: Every home is unique, and so are its needs. Get advice\r\n tailored to your home's specific profile.
  • \r\n
  • Timely Reminders: Never miss out on essential upkeep tasks. From seasonal maintenance\r\n to crucial checks, we've got you covered.
  • \r\n
  • Trusted Advice:Our recommendations are backed by industry experts, ensuring your home\r\n is in safe hands.
  • \r\n
  • Easy-to-Use: With a user-friendly interface, managing your home's upkeep has never\r\n been this simple.
  • \r\n
\r\n REGISTER NOW\r\n
\r\n
\r\n\r\n
\r\n
\r\n \"upkeepable-tab-design\"\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \"upkeepable-tab-design\"\r\n

Hear What Home Owners Are Saying

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

\"I've always been a DIY kind of guy, but I'd often forget some of the seasonal tasks around the\r\n house. Upkeepable changed that for me. The platform not only reminds me of what needs doing but\r\n also offers valuable tips on how to do it right. Plus, having it sponsored was a pleasant\r\n surprise! It's made home care so much simpler and stress-free.\"

\r\n
\r\n \"upkeepable-tab-design\"\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

\"When I moved into my home, I was overwhelmed with all the maintenance tasks. I wasn't sure where\r\n to start or what was crucial. Then I discovered Upkeepable. It's been a lifesaver! Every month,\r\n I get personalized reminders tailored to my home's needs. I've avoided some potentially costly\r\n repairs thanks to their advice. It's like having a home expert in my pocket!\"

\r\n
\r\n \"upkeepable-tab-design\"\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n REGISTER NOW\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

Frequently Asked Questions

\r\n
Have questions? We’re here to help.
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n

\r\n What is Upkeepable?\r\n \r\n\r\n

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

A maintenance platform that helps you protect and maintain your home by\r\n providing recommendations each month based on your unique home profile.

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

\r\n Who much does Upkeepable cost?\r\n \r\n

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

Upkeepable is $99 a year for homeowners, paid for by\r\n {{pageAdditionalInfo?.firstName}}\r\n {{pageAdditionalInfo?.lastName}}

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

\r\n What can Upkeepable do?\r\n \r\n

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

Upkeepable can provide you maintenance recommendations to help protect your\r\n home. It also allows you to input your upgrades and other work you do on\r\n your home.

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

\r\n How do I customize my home recommendations?\r\n\r\n \r\n

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

Fill out your home profile; the more you tell about your home, the more\r\n detailed your monthly recommendations.

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

\r\n Can I record my own home updates?\r\n \r\n

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

Yes! You can record maintenance, upgrades, and to-dos. If it has to do with\r\n your home, you can record it.\r\n

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

\r\n How often do I get recommendations?\r\n \r\n

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

You’ll receive custom home maintenance recommendations once per month, but\r\n you can log into your dashboard anytime.

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

\r\n Can I share Upkeepable with others?\r\n\r\n \r\n

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

Yes! Contact SPONSOR {{pageAdditionalInfo?.firstName}}\r\n {{pageAdditionalInfo?.lastName}} {{pageAdditionalInfo?.email}}\r\n with link to their email to get your friends and family setup with\r\n Upkeepable.\r\n

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

\r\n How do I get started?\r\n\r\n \r\n

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

Fill out the form above and you’ll be sent a confirmation email. Then, finish\r\n your profile and you’re ready to go!\r\n\r\n

\r\n\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n REGISTER NOW\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n","import { Injectable, EventEmitter } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SharingDataService {\r\n invokeMyMethod = new EventEmitter();\r\n //HRService: boolean = false\r\n HRService: { value: boolean, month: string, year: number };\r\n\r\n\r\n constructor() { }\r\n\r\n// setHrSharingData(value: boolean){\r\n// this.HRService = value;\r\n// }\r\nsetHrSharingData(value: boolean, month: string, year: number){\r\n this.HRService = { value, month, year };\r\n}\r\n\r\n\r\ngetHrSharingData(){\r\n return this.HRService;\r\n}\r\n\r\ngetMessageList(){\r\n this.invokeMyMethod.emit();\r\n}\r\ngeAllHOEntry(){\r\n this.invokeMyMethod.emit();\r\n}\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SharedService {\r\n\r\n send_data = new Subject();\r\n\r\n constructor() { }\r\n}","import { HttpClient, HttpErrorResponse, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Observable, Subject, throwError } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { Router } from '@angular/router';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AppHttpRequestHandlerService {\r\n protected ngUnsubscribe: Subject = new Subject();\r\n constructor(private httpClient: HttpClient, @Inject(Router) private router: Router) { }\r\n \r\n httpGet(params: any, apiController: string, apiAction: string): Observable{\r\n //debugger;\r\n return this.httpClient.get(environment.defaultApiRoot + \"api/\" + apiController + \"/\" + apiAction, {params: params})\r\n .pipe(catchError(err=>this.errorHandler(err)));\r\n }\r\n\r\n httpPost(postData: any, apiController: string, apiAction: string): Observable{\r\n // var formData = new FormData();\r\n // formData.append('requestData',postData);\r\n return this.httpClient.post(environment.defaultApiRoot + \"api/\" + apiController + \"/\" + apiAction,postData,{\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json; charset=utf-8'\r\n })})\r\n .pipe(catchError(err=>this.errorHandler(err)));\r\n }\r\n httpPost1(postData: any, apiController: string, apiAction: string): Observable {\r\n let headers = new HttpHeaders();\r\n \r\n if (!(postData instanceof FormData)) {\r\n // If not FormData, set the Content-Type to JSON\r\n headers = headers.set('Content-Type', 'application/json; charset=utf-8');\r\n }\r\n \r\n return this.httpClient.post(environment.defaultApiRoot + \"api/\" + apiController + \"/\" + apiAction, postData, { headers })\r\n .pipe(catchError(err => this.errorHandler(err)));\r\n }\r\n\r\n httpDelete(params: any, apiController: string, apiAction: string): Observable{\r\n return this.httpClient.get(environment.defaultApiRoot + \"api/\" + apiController + \"/\" + apiAction, {params: params})\r\n .pipe(catchError(err=>this.errorHandler(err)));\r\n }\r\n\r\n errorHandler(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n // A client-side or network error occurred. Handle it accordingly.\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n // The backend returned an unsuccessful response code.\r\n // The response body may contain clues as to what went wrong,\r\n console.error(\r\n `Backend returned code ${error.status}, ` +\r\n `body was: ${error.error}`);\r\n if(error.status==401 || error.status==403) {\r\n localStorage.removeItem(\"BearerToken\");\r\n this.router.navigate(['/Account/Login']);\r\n }\r\n }\r\n // return an observable with a user-facing error message\r\n return throwError(\r\n 'Something bad happened; please try again later.');\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpInterceptor, HttpEvent, HttpResponse, HttpRequest, HttpHandler } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpLoaderService } from './http-loader.service';\r\n//import Swal from 'sweetalert2';\r\nimport {AccountService} from '../account/account.service';\r\nimport { AppToastService } from '../toast/app-toast.service';\r\n@Injectable()\r\nexport class AppHttpInterceptor implements HttpInterceptor {\r\n private requests: HttpRequest[] = [];\r\n isCompleted: boolean = true;\r\n\r\n constructor(private loaderService: HttpLoaderService, private accountService: AccountService, public toastService: AppToastService) { }\r\n\r\n removeRequest(req: HttpRequest) {\r\n const i = this.requests.indexOf(req);\r\n if (i >= 0) {\r\n this.requests.splice(i, 1);\r\n }\r\n //debugger;\r\n if(this.requests.length === 0)\r\n {\r\n this.loaderService.isLoading.next(false);\r\n }\r\n else{\r\n this.loaderService.isLoading.next(this.requests.length > 0);\r\n }\r\n // if(req.url != \"https://stage.upkeepable.com:4455/api/HomeOwnerAddress/AddNewHomeOwnerEntry\")\r\n // var loaderStatus = localStorage.getItem(\"loaderStatus\");\r\n // if(loaderStatus != \"0\"){\r\n // this.loaderService.isLoading.next(this.requests.length > 0);\r\n // } else {\r\n // this.loaderService.isLoading.next(false);\r\n // }\r\n }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n let currentUser = this.accountService.getJwtToken();\r\n if (currentUser) {\r\n req = req.clone({\r\n setHeaders: {\r\n Authorization: `Bearer ${currentUser}`\r\n }\r\n });\r\n }\r\n //debugger;\r\n this.requests.push(req);\r\n // if(req.url === \"https://app.upkeepable.com:4455/api/NotificationManager/GetAllUnreadNotifications\")\r\n //if(req.url === \"https://stage.upkeepable.com:4455/api/NotificationManager/GetAllUnreadNotifications\")\r\n //{\r\n // this.requests.pop();\r\n // this.loaderService.isLoading.next(false);\r\n //}\r\n // if(req.url === \"https://app.upkeepable.com:4455/api/CommonApi/getImageBlob\")\r\n // if(req.url === \"https://stage.upkeepable.com:4455/api/HomeOwnerAddress/GetHomeOwnerEntryById\")\r\n // {\r\n // this.loaderService.isLoading.next(true);\r\n // }\r\n if(req.url === \"https://app.upkeepable.com:4455/api/HomeOwnerAddress/GetHomeAddressIndexPageAdditionalSingleInfo\")\r\n //if(req.url === \"https://stage.upkeepable.com:4455/api/HomeOwnerAddress/GetHomeAddressIndexPageAdditionalSingleInfo\")\r\n {\r\n this.loaderService.isLoading.next(true);\r\n }\r\n if(req.url === \"https://app.upkeepable.com:4455/api/CommonApi/EditHOMessageById\")\r\n //if(req.url === \"https://stage.upkeepable.com:4455/api/CommonApi/EditHOMessageById\")\r\n {\r\n this.loaderService.isLoading.next(true);\r\n }\r\n if(req.url === \"https://app.upkeepable.com:4455/api/CommonApi/getImageBlob\")\r\n // if(req.url === \"https://stage.upkeepable.com:4455/api/CommonApi/getImageBlob\")\r\n {\r\n this.requests.pop();\r\n this.loaderService.isLoading.next(false);\r\n }\r\n if(req.url === \"https://app.upkeepable.com:4455/api/HomeOwnerAddress/AddNewHomeOwnerEntry\")\r\n // if(req.url === \"https://stage.upkeepable.com:4455/api/HomeOwnerAddress/AddNewHomeOwnerEntry\")\r\n {\r\n this.requests.pop();\r\n this.loaderService.isLoading.next(false);\r\n }\r\n if(req.url === \"https://app.upkeepable.com:4455/api/HomeOwnerAddress/GetAllHomeOwnerEntry\")\r\n // if(req.url === \"https://stage.upkeepable.com:4455/api/HomeOwnerAddress/GetAllHomeOwnerEntry\")\r\n {\r\n this.loaderService.isLoading.next(true);\r\n }\r\n if(req.url === \"https://app.upkeepable.com:4455/api/CommonApi/GetPaidAndUnpaidHO\")\r\n // if(req.url === \"https://stage.upkeepable.com:4455/api/CommonApi/GetPaidAndUnpaidHO\")\r\n {\r\n this.requests.pop();\r\n this.loaderService.isLoading.next(false);\r\n }\r\n if(req.url !== \"https://app.upkeepable.com:4455/api/NotificationManager/GetAllUnreadNotifications\" && req.url != \"https://app.upkeepable.com:4455/api/CommonApi/getImageBlob\" && req.url !== \"https://app.upkeepable.com:4455/api/HomeOwnerAddress/AddNewHomeOwnerEntry\")\r\n // if(req.url !== \"https://stage.upkeepable.com:4455/api/CommonApi/getImageBlob\" && req.url !== \"https://stage.upkeepable.com:4455/api/HomeOwnerAddress/AddNewHomeOwnerEntry\" && req.url === \"https://stage.upkeepable.com:4455/api/HomeOwnerAddress/GetAllHomeOwnerEntry\")\r\n {\r\n this.loaderService.isLoading.next(true);\r\n }\r\n // if(req.url != \"https://app.upkeepable.com:4455/api/CommonApi/getImageBlob\")\r\n // {\r\n // this.loaderService.isLoading.next(true);\r\n // }\r\n // var loaderStatus = localStorage.getItem(\"loaderStatus\");\r\n // if(loaderStatus != \"0\"){\r\n // this.loaderService.isLoading.next(true);\r\n // } \r\n // else {\r\n // this.loaderService.isLoading.next(false);\r\n // }\r\n\r\n // if(req.method==\"GET\"){\r\n // this.loaderService.showDialogBox.next(true);\r\n // }\r\n return Observable.create((observer: { next: (arg0: HttpResponse) => void; error: (arg0: any) => void; complete: () => void; }) => {\r\n const subscription = next.handle(req)\r\n .subscribe((\r\n event: any) => {\r\n if(event.body?.responseDataModel?.isCompleted == false){\r\n this.isCompleted = false;\r\n }\r\n if (event instanceof HttpResponse) {\r\n //debugger;\r\n this.removeRequest(req);\r\n // if(req.method==\"POST\"){\r\n // this.loaderService.showDialogBox.next(true);\r\n // }\r\n observer.next(event);\r\n }\r\n },\r\n err => {\r\n //alert('error' + err);\r\n this.removeRequest(req);\r\n //this.loaderService.showDialogBox.next({showDislog:true, isError:true, errorMsg:err?.error });\r\n // Swal.fire({ \r\n // icon: 'error', \r\n // title: 'Oops...', \r\n // text: 'Something went wrong!', \r\n // //footer: 'Why do I have this issue?' \r\n // });\r\n this.toastService.show(\"\",\"Something went wrong...!\", 3000,\"bg-danger text-white\",\"fa-exclamation-triangle\"); \r\n observer.error(err);\r\n },\r\n () => {\r\n this.removeRequest(req);\r\n if(req.method==\"POST\"){\r\n //this.loaderService.showDialogBox.next({showDislog:true, isError:false, errorMsg:'err'});\r\n // Swal.fire({ \r\n // //position: 'top-end', \r\n // icon: 'success', \r\n // title: 'Done', \r\n // showConfirmButton: true, \r\n // timer: 1500 \r\n // });\r\n if(!this.isCompleted){\r\n this.isCompleted = !this.isCompleted;\r\n return;\r\n }\r\n if(!req.url.includes('login')){\r\n // this.toastService.show(\"\",\"Submitted\", 3000,\"bg-success text-white\",\"fa-check-circle\"); \r\n }\r\n }\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}","import { Injectable } from '@angular/core'; \r\nimport { FormBuilder, FormGroup } from '@angular/forms';\r\n//import * as CryptoJS from 'crypto-js'; \r\nimport { Observable, BehaviorSubject, throwError } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { environment } from 'src/environments/environment';\r\nimport { EnumJsonTemplate, EnumListTemplate } from '../generic-type-module';\r\n@Injectable() \r\nexport class CommonOpsService { \r\n \r\n public isForceFullyClosed: BehaviorSubject = new BehaviorSubject(true);\r\n \r\n public RestrictNumericValuesOnly(e: any, maxSizeAllowed: number ) {\r\n let input;\r\n if(e.target.value.length==maxSizeAllowed){\r\n return false;\r\n }\r\n if (e.metaKey || e.ctrlKey) {\r\n return true;\r\n }\r\n if (e.which === 32) {\r\n return false;\r\n }\r\n if (e.which === 0) {\r\n return true;\r\n }\r\n if (e.which < 33) {\r\n return true;\r\n }\r\n input = String.fromCharCode(e.which);\r\n return !!/[\\d\\s]/.test(input);\r\n }\r\n \r\n // public encodeQueryParamsInBase64(model: any):string{\r\n // return CryptoJS.AES.encrypt(JSON.stringify(model), environment.queryParmsPrivateEncryptionKey).toString(); \r\n // }\r\n\r\n // public decodeQueryParamsFromBase64ToModel(encodedText: string, callback): Observable{\r\n // return callback(JSON.parse(CryptoJS.AES.decrypt(encodedText, environment.queryParmsPrivateEncryptionKey).toString(CryptoJS.enc.Utf8)));\r\n // }\r\n errorHandler(error: any) {\r\n return throwError(\r\n 'Something bad happened; please try again later.');\r\n }\r\n\r\n getEnumItemsByEnumName(enumListTemplateLists: EnumListTemplate[], selectListTypeCode: string): EnumJsonTemplate[]{\r\n var enumListTemplate = enumListTemplateLists.filter(object => {\r\n return object['selectListTypeCode'] == selectListTypeCode;\r\n });\r\n if(enumListTemplate!=undefined && enumListTemplate.length>0){\r\n return enumListTemplate[0].enumJsonTemplateItems;\r\n } \r\n\r\n var emptyEnumListTemplate: EnumJsonTemplate[] =[];\r\n return emptyEnumListTemplate;\r\n }\r\n prepareCommaSeparatedCheckBoxValues(event:any, itemArray:any):[]{\r\n if(itemArray==null){\r\n itemArray=[];\r\n }\r\n if(event.target.checked){\r\n itemArray.push(event.target.value)\r\n }\r\n else{\r\n itemArray = itemArray.filter((item: number)=> item != event.target.value);\r\n }\r\n return itemArray;\r\n }\r\n\r\n markCheckboxChecked(value:number, itemArray:any):boolean{\r\n if(itemArray!=null){\r\n return itemArray.some(function(el){ return (el).toString() === (value).toString()});\r\n }\r\n return false;\r\n }\r\n\r\n public trimFormControlOnFocusOut(e: any, fb: FormGroup, formControlName: string) {\r\n fb.controls[formControlName].patchValue(e.target.value.replace(/ {2,}/g, ' ').trim());\r\n }\r\n public trimOnFocusOut(e: any) {\r\n // console.log(e.target.value)\r\n e.target.value= e.target.value.trim();\r\n }\r\n\r\n\r\n\r\n} \r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class HttpLoaderService {\r\n public isLoading = new BehaviorSubject(false);\r\n public showDialogBox = new BehaviorSubject({showDislog:false, isError:false, errorMsg:''})\r\n constructor() { }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { HttpLoaderService } from '../http-loader.service';\r\n@Component({\r\n selector: 'app-http-loader',\r\n templateUrl: './http-loader.component.html',\r\n styleUrls: ['./http-loader.component.css']\r\n})\r\nexport class HttpLoaderComponent implements OnInit {\r\n loading: boolean | undefined;\r\n isApiCompleted: any;\r\n constructor(private httpLoaderService: HttpLoaderService) {\r\n \r\n this.httpLoaderService.isLoading.subscribe((v) => {\r\n //debugger;\r\n this.loading = v;\r\n });\r\n\r\n this.httpLoaderService.showDialogBox.subscribe((v) => {\r\n this.isApiCompleted = v;\r\n //showDislog:false, isError:false, errorMsg:''\r\n });\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n public hideApiMessageDialog(){\r\n localStorage.removeItem(\"BearerToken\");\r\n this.isApiCompleted.showDislog = false;\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\"up-loader-img\"
\r\n
\r\n Please Wait...\r\n
\r\n\r\n \r\n\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n Error{{isApiCompleted.errorMsg | json}} Done
\r\n
\r\n\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { ImageCroppedEvent, LoadedImage } from 'ngx-image-cropper';\r\nimport { NgbModal, NgbModalConfig, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\n\r\n@Component({\r\n selector: 'app-image-cropper-tool',\r\n templateUrl: './image-cropper-tool.component.html',\r\n styleUrls: ['./image-cropper-tool.component.css']\r\n})\r\nexport class ImageCropperToolComponent implements OnInit {\r\n imageChangedEvent: any = '';\r\n croppedImage: any = '';\r\n submitted:boolean = false;\r\n invalidSize: boolean = false;\r\n closeModal: boolean = false;\r\n @Input() fileUploadEventObject : any;\r\n @Input() targetParentImageElementId:string;\r\n @Input() aspectRatio:string;\r\n @Output() passCroppedImageToParentEvent = new EventEmitter();\r\n constructor(private modalService: NgbModal,\r\n config: NgbModalConfig,\r\n private activeModal:NgbActiveModal) {\r\n config.backdrop = 'static';\r\n config.keyboard = false;\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n ngOnChanges(){\r\n this.imageChangedEvent = this.fileUploadEventObject;\r\n var size = this.fileUploadEventObject.srcElement.files[0].size;\r\n\r\n const totalSizeMB = size / Math.pow(1024,2);\r\n var n = totalSizeMB.toFixed(3)\r\n // console.log(totalSizeMB, n);\r\n if(parseFloat(n)>1){\r\n this.invalidSize=true;\r\n }\r\n else{\r\n this.invalidSize=false;\r\n }\r\n }\r\n fileChangeEvent(event: any): void {\r\n this.imageChangedEvent = event;\r\n }\r\n imageCropped(event: ImageCroppedEvent) {\r\n this.croppedImage = event.base64;\r\n \r\n }\r\n\r\n onImageCropDone(){\r\n if(this.submitted == false && this.invalidSize == false){\r\n this.submitted = true;\r\n this.passCroppedImageToParentEvent.emit({\r\n croppedImage: this.croppedImage,\r\n targetImageElementId: this.targetParentImageElementId,\r\n closeModal: false\r\n });\r\n }\r\n //this.modalService.dismissAll();\r\n //this.activeModal.dismiss();\r\n }\r\n\r\n imageLoaded() {\r\n // show cropper\r\n }\r\n cropperReady() {\r\n // cropper ready\r\n }\r\n loadImageFailed() {\r\n // show message\r\n }\r\n passCroppedImageToParent(){\r\n // this.passCroppedImageToParentEvent.emit(this.croppedImage);\r\n }\r\n onModelNoClick() {\r\n //this.modalService.dismissAll();\r\n this.passCroppedImageToParentEvent.emit({\r\n closeModal: true\r\n });\r\n }\r\n}\r\n","\r\n\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n\r\n
\r\n Maximum File Size Limit is 1MB\r\n
\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, forwardRef, HostBinding, Input,OnInit,ViewChild } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport {NgbDropdown} from '@ng-bootstrap/ng-bootstrap';\r\n\r\ninterface Idata {\r\n month: number;\r\n year: number;\r\n}\r\n\r\n@Component({\r\n selector: 'app-month-year-picker',\r\n templateUrl: './month-year-picker.component.html',\r\n styleUrls: ['./month-year-picker.component.css'],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonthYearPickerComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class MonthYearPickerComponent implements ControlValueAccessor {\r\n\r\n data: Idata;\r\n dataTxt: string;\r\n separator: string;\r\n monthFirst: boolean;\r\n place: number;\r\n\r\n isyear:boolean=false;\r\n isDisableBack:boolean=false;\r\n incr:number=0;\r\n \r\n\r\n months: string[] = [\"JAN\", \"FEB\", \"MAR\", \"APR\", \"MAY\", \"JUN\", \"JUL\", \"AUG\", \"SEP\", \"OCT\", \"NOV\", \"DEC\"];\r\n // Allow the input to be disabled, and when it is make it somewhat transparent.\r\n @Input() disabled = false;\r\n @Input() mask = \"mm-yyyy\";\r\n @Input() allMonths = false;\r\n\r\n @ViewChild('calendarPanel') calendar: NgbDropdown; \r\n\r\n constructor() {\r\n this.separator = this.mask.replace(/m|y|M/gi, \"\");\r\n this.monthFirst = this.mask.indexOf('y') > 0;\r\n this.place = this.mask.indexOf(this.separator);\r\n }\r\n\r\n change(value: string) {\r\n value=this.separator==\" \"?value.replace(/\\.|-|\\//,\" \"):\r\n this.separator==\"/\"?value.replace(/\\.|-| /,\"/\"):\r\n this.separator==\"-\"?value.replace(/\\.| |\\//,\"-\"):\r\n value.replace(/.| |\\/ /,\"-\");\r\n\r\n let lastchar = value.substr(value.length - 1);\r\n if (lastchar == this.separator && value.length <= this.place) {\r\n if (this.monthFirst) {\r\n value = \"0\" + value;\r\n }\r\n }\r\n if (value.length > this.place && value.indexOf(this.separator) < 0) {\r\n value = value.substr(0, value.length - 1) + this.separator + lastchar;\r\n }\r\n this.dataTxt = value;\r\n let items = value.split(this.separator);\r\n if (items.length == 2) {\r\n let year = this.monthFirst ? items[1] : items[0];\r\n let month = this.monthFirst ? items[0] : items[1];\r\n let imonth = this.months.indexOf(month);\r\n if ((imonth) < 0)\r\n imonth = parseInt(month);\r\n else\r\n imonth = imonth + 1;\r\n\r\n let iyear = parseInt(year);\r\n if (iyear < 100)\r\n iyear = iyear + 2000;\r\n this.data = {\r\n year: iyear,\r\n month: imonth\r\n }\r\n this.incr=this.getIncr(this.data.year);\r\n }\r\n this.writeValue(this.data);\r\n\r\n }\r\n selectYearMonth($event,index:number)\r\n {\r\n if (this.isyear)\r\n {\r\n $event.stopPropagation();\r\n this.data.year=index+this.incr;\r\n this.dataTxt=this.formatData(this.data);\r\n this.isyear=false;\r\n this.incr=this.getIncr(this.data.year);\r\n }\r\n else{\r\n let currentMonth = new Date().getMonth();\r\n let currentYear = new Date().getFullYear();\r\n if((((index+1) < (currentMonth+1))&& currentYear==this.data.year)|| currentYear>this.data.year){\r\n if(this.allMonths){\r\n this.data.month=index+1;\r\n this.dataTxt=this.formatData(this.data);\r\n }\r\n return;\r\n }else{\r\n this.data.month=index+1;\r\n this.dataTxt=this.formatData(this.data);\r\n }\r\n \r\n }\r\n }\r\n showYear($event:any,show:boolean)\r\n {\r\n $event.stopPropagation();\r\n this.isyear=!this.isyear;\r\n }\r\n addYear($event:any,incr:number)\r\n {\r\n $event.stopPropagation(); \r\n let currentMonth = new Date().getMonth();\r\n let currentYear = new Date().getFullYear();\r\n let year=this.isyear?this.data.year+10*incr:this.data.year+incr;\r\n if(year < currentYear)\r\n {\r\n if(this.allMonths){\r\n this.isDisableBack =false;\r\n this.data.year=year;\r\n this.data.month=1;\r\n this.incr=this.getIncr(year);\r\n this.dataTxt=this.formatData(this.data);\r\n }else{\r\n this.isDisableBack =true;\r\n return;\r\n\r\n }\r\n \r\n }else{\r\n this.isDisableBack =false;\r\n this.data.year=year;\r\n if(year==currentYear){\r\n this.data.month=currentMonth+1;\r\n }else{\r\n this.data.month=1;\r\n }\r\n this.incr=this.getIncr(year);\r\n this.dataTxt=this.formatData(this.data);\r\n }\r\n }\r\n onChange = (data: Idata) => {\r\n this.data = data;\r\n this.dataTxt = this.monthFirst ? \"\" + data.month + this.separator + data.year :\r\n \"\" + data.year + this.separator + data.month;\r\n this.incr=this.getIncr(this.data.year);\r\n };\r\n\r\n getIncr(year:number):number\r\n {\r\n // console.log(\"*\",(year-year%10)-1);\r\n return (year-year%10)-1;\r\n }\r\n formatData(data:Idata):string\r\n {\r\n let monthTxt=data.month<10? \"0\"+data.month:\"\" + data.month;\r\n return this.monthFirst ? monthTxt+ this.separator + data.year :\r\n \"\" + data.year + this.separator + monthTxt\r\n\r\n }\r\n // Function to call when the input is touched (when a star is clicked).\r\n onTouched = () => { };\r\n\r\n writeValue(data: Idata): void {\r\n this.data = data;\r\n this.onChange(this.data)\r\n }\r\n\r\n // Allows Angular to register a function to call when the model (rating) changes.\r\n // Save the function as a property to call later here.\r\n registerOnChange(fn: (data: Idata) => void): void {\r\n this.onChange = fn;\r\n }\r\n\r\n // Allows Angular to register a function to call when the input has been touched.\r\n // Save the function as a property to call later here.\r\n registerOnTouched(fn: () => void): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n // Allows Angular to disable the input.\r\n setDisabledState(isDisabled: boolean): void {\r\n this.disabled = isDisabled;\r\n }\r\n}\r\n","
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{data.year}}
\r\n
{{incr+1}}-{{incr+10}}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{month}}\r\n {{i+incr}}\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-accept-payment',\r\n templateUrl: './accept-payment.component.html',\r\n styleUrls: ['./accept-payment.component.css']\r\n})\r\nexport class AcceptPaymentComponent implements OnInit {\r\n StripeKey: string = environment.StripeKey;\r\n stripe = Stripe(this.StripeKey);\r\n elements = this.stripe.elements();\r\n styleCard = {\r\n 'style': {\r\n 'base': {\r\n 'fontFamily': 'Arial, sans-serif',\r\n 'fontSize': '8px',\r\n 'color': '#C1C7CD',\r\n },\r\n 'Invalid': { 'color': 'red', },\r\n }\r\n }; \r\n \r\n\r\n constructor() {\r\n \r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n ngAfterViewInit() {\r\n var card = this.elements.create('card', this.styleCard);\r\n //console.log('sdfsfd', card)\r\n\r\n card.mount('#card-element'); \r\n\r\n}\r\n}\r\n","
\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n \r\n
","import { NgModule } from '@angular/core';\r\nimport { RouterModule} from '@angular/router';\r\nimport { CommonModule } from '@angular/common';\r\nimport { HttpLoaderService } from './http-loader.service';\r\nimport { HttpLoaderComponent } from './http-loader/http-loader.component';\r\nimport {SharedRoutingModule} from './shared.routing.module';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { CommonOpsService } from './common-ops-service';\r\nimport { ImageCropperToolComponent } from './image-cropper-tool/image-cropper-tool.component';\r\nimport { ImageCropperModule } from 'ngx-image-cropper';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { MonthYearPickerComponent } from './month-year-picker/month-year-picker.component';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AcceptPaymentComponent } from './payments/stripe/accept-payment/accept-payment.component';\r\n @NgModule({\r\n declarations: [\r\n HttpLoaderComponent,\r\n ImageCropperToolComponent,\r\n MonthYearPickerComponent,\r\n AcceptPaymentComponent\r\n ],\r\n imports: [\r\n RouterModule,\r\n CommonModule,\r\n SharedRoutingModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n ImageCropperModule,\r\n NgbModule\r\n ],\r\n exports: [\r\n HttpLoaderComponent,\r\n ImageCropperToolComponent,\r\n MonthYearPickerComponent,\r\n AcceptPaymentComponent\r\n ],\r\n providers: [HttpLoaderService, CommonOpsService,NgbActiveModal]\r\n })\r\n export class SharedModule { }","import { NgModule } from \"@angular/core\";\r\nimport { RouterModule, Routes } from \"@angular/router\";\r\n\r\nconst appRoutes: Routes=[\r\n // { path:'appfileupload', component: ApplicationFileUploadComponent},\r\n // { path:'appdocuments', component: ApplicationDocumentsComponent}\r\n];\r\n@NgModule({\r\n imports:[\r\n RouterModule.forChild(appRoutes)\r\n ],\r\n exports:[RouterModule]\r\n})\r\nexport class SharedRoutingModule{}","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-faq',\r\n templateUrl: './faq.component.html',\r\n styleUrls: ['./faq.component.css']\r\n})\r\nexport class FaqComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n\r\n

Frequently Asked Questions

\r\n\r\n

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the\r\n industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type\r\n and scrambled it to make a type specimen book. It has survived not only five centuries, but also the\r\n leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s\r\n with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop\r\n publishing software like Aldus PageMaker including versions of Lorem Ipsum.

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

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the\r\n industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type\r\n and scrambled it to make a type specimen book. It has survived not only five centuries, but also the\r\n leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s\r\n with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop\r\n publishing software like Aldus PageMaker including versions of Lorem Ipsum. leap into electronic\r\n typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of\r\n Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software\r\n like Aldus PageMaker including versions of Lorem Ipsum.

\r\n\r\n

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the\r\n industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type\r\n and scrambled it to make a type specimen book. It has survived not only five centuries, but also the\r\n leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s\r\n with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop\r\n publishing software like Aldus PageMaker including versions of Lorem Ipsum.

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

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the\r\n industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type\r\n and scrambled it to make a type specimen book. It has survived not only five centuries, but also the\r\n leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s\r\n with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop\r\n publishing software like Aldus PageMaker including versions of Lorem Ipsum.

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

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the\r\n industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type\r\n and scrambled it to make a type specimen book. It has survived not only five centuries, but also the\r\n leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s\r\n with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop\r\n publishing software like Aldus PageMaker including versions of Lorem Ipsum. leap into electronic\r\n typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of\r\n Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software\r\n like Aldus PageMaker including versions of Lorem Ipsum.

\r\n\r\n

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the\r\n industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type\r\n and scrambled it to make a type specimen book. It has survived not only five centuries, but also the\r\n leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s\r\n with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop\r\n publishing software like Aldus PageMaker including versions of Lorem Ipsum.

\r\n\r\n
\r\n
\r\n
\r\n
","import { Component, ElementRef , Injectable, Input, OnDestroy, OnInit, TemplateRef, ViewChild, Renderer2, HostListener, ChangeDetectorRef } from '@angular/core';\r\nimport { NgbModal, NgbModalConfig, NgbModalRef } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AppHttpRequestHandlerService } from 'src/app/shared/app-http-request-handler.service';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport {EnumJsonTemplate, GenericFormModel, GenericResponseTemplateModel, IState, TForm } from 'src/app/generic-type-module';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { IHomeOwnerNewUserResponseViewModel, IHomeOwnerProfileViewModel } from 'src/app/home-owner-address/home-owner-address-type-module';\r\nimport { CommonOpsService } from 'src/app/shared/common-ops-service';\r\nimport {Router, ActivatedRoute, CanDeactivate} from '@angular/router';\r\nimport { LocationStrategy } from '@angular/common';\r\nimport { AccountService } from 'src/app/account/account.service';\r\nimport { AppToastService } from '../../toast/app-toast.service';\r\nimport { IRealEstateAgentViewModel } from 'src/app/real-estate-agent/real-estate-agent-type-module';\r\nimport { environment } from 'src/environments/environment';\r\nimport { SharedService } from 'src/app/shared.service';\r\nimport { IHomeVariableMainCategory, IHomeVariableSubCategory } from 'src/app/admin-user/home-variable-manager/home-variable-type-module';\r\nimport { CookieService } from 'ngx-cookie';\r\nimport { LoginTypeModel } from 'src/app/account/account-type-module';\r\ndeclare var $: any\r\ndeclare var Stripe: any;\r\n\r\n@Component({\r\n selector: 'app-homeowner-register-withoutsponsor',\r\n templateUrl: './homeowner-register-withoutsponsor.component.html',\r\n styleUrls: ['./homeowner-register-withoutsponsor.component.css']\r\n})\r\nexport class HomeownerRegisterWithoutsponsorComponent implements OnInit {\r\n protected ngUnsubscribe: Subject = new Subject();\r\n submitted = false;\r\n cardMessage : string = '';\r\n isLogin: boolean = false;\r\n freeV: boolean = false;\r\n paidV: boolean = false;\r\n isMobile: boolean = false;\r\n public isloginError: boolean= false;\r\n isLoginRestricted: boolean= false;\r\n restrictedReasonMessage:string= \"\"; \r\n selectedPlan: string = 'premium';\r\n isCardError: boolean = false;\r\n couponCode: string = '';\r\n isMessage: boolean = false;\r\n isPrice: boolean = false;\r\n message: string = '';\r\n amountpayable: number = 0;\r\n StripeKey: string = environment.StripeKey;\r\n stripe = Stripe(this.StripeKey);\r\n elements = this.stripe.elements();\r\n style = {\r\n base: {\r\n fontSize: '16px',\r\n color: '#32325d',\r\n },\r\n };\r\n card:any;\r\n cardNumber: any;\r\n cardExpiry: any;\r\n cardCvc: any;\r\n error: string = '';\r\n @ViewChild('cropImageModal') cropImageModal: TemplateRef;\r\n @ViewChild('contentDiv') contentDiv!: ElementRef; // Reference to the div\r\n divError: boolean = false;\r\n premiumSelected: boolean = false; // Track whether \"SELECT\" was clicked\r\n fieldOldPass: boolean;\r\n fieldNewPass: boolean;\r\n basicSelected:boolean = false;\r\n tokenValue: string = '';\r\n fileUploadEventObject: any;\r\n targetImageElementId: string = '';\r\n date = new Date();\r\n aspectRatio: string = '1/1';\r\n pageAdditionalInfo: IRealEstateAgentViewModel;\r\n messageHomePhoto: string = '';\r\n homePhoto: string = null;\r\n userId: number; \r\n getemail:string;\r\n value = ''; \r\n states: IState[]=[];\r\n homeTypeEnum: EnumJsonTemplate[] = [];\r\n enumListTemplateLists: any;\r\n homeType:any; \r\n isLoad: number = 1;\r\n homeAddressGeneralDetailId: number=0;\r\n mainCategories:IHomeVariableMainCategory[]=[];\r\n private cropModalReference: NgbModalRef;\r\n isCompleteHomeProfile: boolean = false;\r\n isDuplicateEmail: boolean=false;\r\n selCollapseBtn: string='collapseOne';\r\n defaultProfilePhoto: string = environment.defaultProfilePhoto;\r\n profilePhoto: string = this.defaultProfilePhoto;\r\n\r\n //QrcodeUrl: any;\r\n\r\n inputForm: TForm = this.fb.group({\r\n homeAddressGeneralDetailId: [0, Validators.required],\r\n homeType: [0],\r\n homeOwnerAddressId: [0, Validators.required],\r\n address: ['', [Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/), Validators.maxLength(40)]],\r\n zipCode: ['', [Validators.pattern('[0-9]{5}')]],\r\n isNotficationOn: [0, [Validators.required]],\r\n homeProfileImage: [\"\"],\r\n userRefId: [0, [Validators.required]],\r\n cityName: ['', [Validators.pattern(/^[a-zA-Z ]*$/), Validators.maxLength(20)]],\r\n stateCode: [''],\r\n firstName: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/), Validators.maxLength(20)]],\r\n lastName: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/), Validators.maxLength(20)]],\r\n email: ['', [Validators.required, Validators.pattern('[A-Za-z0-9._%-]+@[A-Za-z0-9._%-]+\\\\.[a-z]{2,3}')]],\r\n // phone: ['', [Validators.pattern('^(\\\\+?\\d{1,4}[\\s-])?(?!0+\\s+,?$)\\\\d{10}\\s*,?$')]],\r\n phone: ['', [Validators.pattern(/^[1-9]\\d{6,14}$/)]],\r\n password: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/),Validators.minLength(6)]],\r\n repeatPassword: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/)]],\r\n userImage: [''],\r\n userImageBase64: [''],\r\n homeProfileImageBase64: [''],\r\n realEstateAgentUserRefId: [''],\r\n isShareable:false,\r\n userId:[0],\r\n premiumSelected:true,\r\n basicSelected:false,\r\n tokenValue :[''],\r\n couponCode:'',\r\n amountpayable: ''\r\n }, { validator: this.passwordMatchValidator }) as TForm;\r\n loginForm: TForm = this.fb.group({\r\n UserName: [''],\r\n Password: [''],\r\n Recaptcha: [''],\r\n ForgetType: ['']\r\n }) as TForm;\r\n get InviteClientformControls() { return this.inputForm.controls; }\r\n subCategories:IHomeVariableSubCategory[]=[];\r\n\r\n @Input() mainCategory: IHomeVariableMainCategory;\r\n\r\n\r\n constructor(private modalService: NgbModal,\r\n config: NgbModalConfig,\r\n private sharedService: SharedService,\r\n private appHttpRequestHandlerService: AppHttpRequestHandlerService,\r\n private fb: FormBuilder,\r\n public commonOpsService: CommonOpsService,\r\n private activatedRoute: ActivatedRoute,\r\n private location: LocationStrategy,\r\n public toastService: AppToastService,\r\n private router: Router,\r\n private accountService: AccountService,\r\n private cookieService: CookieService,\r\n private renderer: Renderer2,\r\n private cdr: ChangeDetectorRef\r\n ) {\r\n config.backdrop = 'static';\r\n config.keyboard = false;\r\n history.pushState(null, null, window.location.href); \r\n this.location.onPopState(() => {\r\n this.modalService.dismissAll();\r\n history.pushState(null, null, window.location.href); \r\n }); \r\n\r\n $(document).ready(function(){\r\n document.getElementById('et_pb_video_overlay').addEventListener('click', function () {\r\n this.classList.add(\"hide\");\r\n const videoId = 'C1APWZYa3jg';\r\n const iframe = document.createElement('iframe');\r\n iframe.style.width = \"100%\";\r\n iframe.style.height = \"100%\";\r\n iframe.style.position = \"absolute\";\r\n iframe.style.top = \"0\";\r\n iframe.setAttribute('src', `https://www.youtube.com/embed/${videoId}?autoplay=1`);\r\n iframe.setAttribute('frameborder', '0');\r\n iframe.setAttribute('allow', 'accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture');\r\n iframe.setAttribute('allowfullscreen', '');\r\n \r\n const videoContainer = document.getElementById('iframe_container');\r\n videoContainer.innerHTML = '';\r\n videoContainer.appendChild(iframe);\r\n });\r\n });\r\n\r\n }\r\n\r\n \r\n toggleCollapse(collapseBtn: string){\r\n var allCollapsibles = document.querySelectorAll(\".accordion-collapse\");\r\n var isAlreadyCollapsed = document.getElementById(collapseBtn).classList.contains('collapse');\r\n \r\n allCollapsibles.forEach(element => {\r\n if (collapseBtn == element.id && isAlreadyCollapsed){\r\n document.getElementById(collapseBtn).classList.remove('collapse')\r\n }\r\n else if (collapseBtn == element.id && !isAlreadyCollapsed){\r\n document.getElementById(collapseBtn).classList.add('collapse')\r\n }\r\n else{\r\n document.getElementById(element.id).classList.add('collapse')\r\n }\r\n });\r\n }\r\n\r\n isCollapsedShown(collapseId: string){\r\n return !document.getElementById(collapseId).classList.contains('collapse')\r\n }\r\n\r\n \r\n ngOnInit() {\r\n this.isMobile = window.innerWidth <= 768; // Example for mobile detection\r\n window.addEventListener('resize', () => {\r\n this.isMobile = window.innerWidth <= 768;\r\n });\r\n window.scroll({ \r\n top: 0, \r\n left: 0, \r\n behavior: 'smooth'\r\n });\r\n this.cdr.detectChanges();\r\n this.activatedRoute.params.subscribe(params => { \r\n \r\n this.getemail = params['id'];\r\n });\r\n \r\n \r\n // this.appHttpRequestHandlerService.httpPost({EmailId : this.getemail}, \"AccountManager\", \"GetUserDetails\").pipe(takeUntil(this.ngUnsubscribe))\r\n // .subscribe((data: any) => {\r\n \r\n // const userId = data.data.userId;\r\n // this.userId = data.data.userId;\r\n // this.inputForm.patchValue({\r\n // userId: data.data.userId\r\n // });\r\n \r\n\r\n // this.appHttpRequestHandlerService.httpGet({ id: this.userId }, \"RealEstateAgent\", \"GetRealEstateAgentProfileById\").pipe(takeUntil(this.ngUnsubscribe))\r\n // .subscribe((data: GenericFormModel) => {\r\n \r\n // this.pageAdditionalInfo = data.formModel; \r\n // this.enumListTemplateLists = data.enumListTemplateLists;\r\n // if (data.formModel.userImageBase64 != null) {\r\n // this.profilePhoto = data.formModel.userImageBase64;\r\n // }\r\n \r\n // });\r\n\r\n // });\r\n\r\n\r\n this.getAllSubCategories(1); \r\n //localStorage.removeItem(\"BearerToken\");\r\n // localStorage.clear();\r\n localStorage.setItem(\"NewHomeOwner\", \"true\");\r\n localStorage.setItem(\"isLoad\", \"1\");\r\n //console.log(\"qr\",localStorage.getItem(\"NewHomeOwner\"));\r\n this.sharedService.send_data.next(true);\r\n document.getElementById('collapseOne').classList.add('collapse');\r\n // this.activatedRoute.queryParams.subscribe(params => {\r\n // this.userId = params['foo'];\r\n // });\r\n this.appHttpRequestHandlerService.httpGet({ id: 0}, \"CommonApi\", \"GetAllStatesList\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: IState[]) => {\r\n this.states = data;\r\n });\r\n \r\n setTimeout(() => {\r\n this.getAllMainCategories();\r\n }, 500);\r\n if (typeof window !== 'undefined') {\r\n setTimeout(() =>{\r\n this.card = this.elements.create('card', this.style );\r\n this.card.mount('#card-element');\r\n // this.cardNumber = this.elements.create('cardNumber');\r\n // this.cardExpiry = this.elements.create('cardExpiry');\r\n // this.cardCvc = this.elements.create('cardCvc');\r\n\r\n // Mount the elements to their respective divs\r\n // this.cardNumber.mount('#card-number-element');\r\n // this.cardExpiry.mount('#card-expiry-element');\r\n // this.cardCvc.mount('#card-cvc-element');\r\n },1500)\r\n // if (this.card) {\r\n // this.card.destroy();\r\n // }\r\n }\r\n if(this.isMobile)\r\n {\r\n this.premiumSelected = true;\r\n }\r\n if(!this.isMobile)\r\n {\r\n this.premiumSelected = true;\r\n this.basicSelected = false;\r\n this.selectedPlan = 'premium';\r\n this.divError = false; // Reset any previous errors\r\n const button = document.getElementById('select-premium-btn');\r\n const div = document.getElementById('premiumDiv');\r\n if (button && !this.isMobile) {\r\n this.renderer.setProperty(button, 'innerText', 'Selected'); // Change button text\r\n this.renderer.removeClass(button, 'btn-secondary');\r\n this.renderer.addClass(button, 'btn-primary');\r\n }\r\n if (div) {\r\n this.renderer.setStyle(div, 'border', '4px solid var(--0061C1-title-color)'); // Apply border\r\n }\r\n }\r\n }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n onResize() {\r\n this.checkScreenSize();\r\n }\r\n\r\n checkScreenSize() {\r\n this.isMobile = window.innerWidth < 768;\r\n }\r\n passwordMatchValidator(frm: FormGroup) {\r\n return frm.value.password === frm.value.repeatPassword ? null : { 'mismatch': true };\r\n }\r\n selectPremium() {\r\n this.premiumSelected = true;\r\n this.basicSelected = false;\r\n this.selectedPlan = 'premium';\r\n this.divError = false; // Reset any previous errors\r\n const button = document.getElementById('select-premium-btn');\r\n const div = document.getElementById('premiumDiv');\r\n if (button && !this.isMobile) {\r\n this.renderer.setProperty(button, 'innerText', 'Selected'); // Change button text\r\n }\r\n if (div) {\r\n this.renderer.setStyle(div, 'border', '4px solid var(--0061C1-title-color)'); // Apply border\r\n }\r\n const button1 = document.getElementById('select-basic-btn');\r\n const div1 = document.getElementById('basicDiv');\r\n if (button1) {\r\n this.renderer.setProperty(button1, 'innerText', 'Select'); // Change button text\r\n }\r\n if (div1) {\r\n this.renderer.removeStyle(div1, 'border'); // Removes the border style\r\n }\r\n }\r\n\r\n selectBasic() {\r\n this.card.clear();\r\n this.basicSelected = true;\r\n this.premiumSelected = false;\r\n this.divError = false; // Reset any previous errors\r\n this.selectedPlan = 'basic';\r\n const button = document.getElementById('select-basic-btn');\r\n const div = document.getElementById('basicDiv');\r\n if (button && !this.isMobile) {\r\n this.renderer.setProperty(button, 'innerText', 'Selected'); // Change button text\r\n }\r\n if (div) {\r\n this.renderer.setStyle(div, 'border', '4px solid var(--0061C1-title-color)'); // Apply border\r\n }\r\n const button1 = document.getElementById('select-premium-btn');\r\n const div1 = document.getElementById('premiumDiv');\r\n if (button1) {\r\n this.renderer.setProperty(button1, 'innerText', 'Select'); // Change button text\r\n }\r\n if (div1) {\r\n this.renderer.removeStyle(div1, 'border'); // Removes the border style\r\n }\r\n }\r\n onInputChange(event: Event) {\r\n const inputElement = event.target as HTMLInputElement;\r\n this.couponCode = inputElement.value;\r\n this.appHttpRequestHandlerService.httpGet({ id:this.couponCode }, \"CommonApi\", \"CouponDetailsForHO\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: any) => {\r\n //console.log('logdata', data);\r\n if(data.message === \"Coupon not found.\")\r\n {\r\n this.isMessage = true;\r\n this.message = data.message;\r\n this.amountpayable = 99;\r\n this.couponCode = \"\";\r\n }\r\n else if(data.message !== undefined)\r\n {\r\n this.isMessage = true;\r\n this.message = data.message;\r\n }\r\n else{\r\n this.isPrice = true;\r\n this.amountpayable = data.price;\r\n if(data.price < 0)\r\n {\r\n this.amountpayable = 0.5\r\n }\r\n if(this.amountpayable !== null || this.amountpayable !== 0)\r\n {\r\n this.couponCode = data.stripe_CouponCode;\r\n }\r\n }\r\n \r\n });\r\n }\r\n\r\n getAllMainCategories(){\r\n this.appHttpRequestHandlerService.httpGet({ id: 0 }, \"HomeVariableManager\", \"GetAllMainCategoriesWithAllChilds\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => {\r\n this.mainCategories=data?.responseDataModel;\r\n setTimeout(() => {\r\n this.enumListTemplateLists =this.mainCategories[0]?.homeVariableSubCategories[0]?.homeVariableSubCategoryListItems.filter(x=>x.homeVariableSubCategoryRefId == 1 && !x.isDeleted);\r\n }, 500);\r\n });\r\n }\r\n\r\n onSubmitWithskipHomeDetails(){\r\n this.isCompleteHomeProfile=false;\r\n this.onSubmit();\r\n }\r\n scroll(el: HTMLElement) {\r\n el.scrollIntoView({behavior: 'smooth'});\r\n }\r\n\r\n getValues(){\r\n this.appHttpRequestHandlerService.httpGet({ homeAddressGeneralDetailId: this.homeAddressGeneralDetailId }, \"HomeOwnerAddress\", \"GetHomeAddressGeneraldetail\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericFormModel) => { \r\n this.homeTypeEnum = this.commonOpsService.getEnumItemsByEnumName(data.enumListTemplateLists, \"HomeTypeEnum\");\r\n \r\n }); \r\n\r\n }\r\n\r\n getAllSubCategories(id: number){\r\n if(id){\r\n this.appHttpRequestHandlerService.httpGet({ id: id }, \"HomeVariableManager\", \"GetAllSubCategoriesByMainCategoryId\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => { \r\n this.subCategories=data.responseDataModel;\r\n this.getValues();\r\n });\r\n }\r\n}\r\n\r\nasync onSubmit() {\r\n this.submitted = true;\r\n this.isMessage = false;\r\n this.message =\"\";\r\n if(this.premiumSelected === true)\r\n {\r\n const { paymentMethod, error1 } = await this.stripe.createPaymentMethod({\r\n type: 'card',\r\n card: this.card,\r\n billing_details: {\r\n name: 'Jenny Rosen', // Customer’s name\r\n },\r\n });\r\n // const result = await this.stripe.createPaymentMethod({ \r\n// type: 'card',\r\n// card: this.card,\r\n// billing_details: {\r\n// name: 'Jenny Rosen',\r\n// },\r\n// })\r\n// .then(function (result) {\r\n// localStorage.setItem('paymentId',result.paymentMethod.id)\r\n// });\r\n// if(result === undefined){\r\n// return;\r\n// }\r\n const {\r\n token,\r\n error\r\n } = await this.stripe.createToken(this.card);\r\n if (error) {\r\n this.isCardError = true;\r\n this.cardMessage = error.message;\r\n return;\r\n }\r\n// if (token) {\r\n// this.tokenValue = token.card.id;\r\n// }\r\nif (paymentMethod) {\r\n this.tokenValue = paymentMethod.id;\r\n}\r\n }\r\n \r\n if (!this.premiumSelected && !this.basicSelected) {\r\n this.divError = true; // Show error if neither is selected\r\n } else {\r\n this.divError = false; // No error if at least one is selected\r\n }\r\n this.inputForm.controls.isShareable.value= false;\r\n this.inputForm.controls.premiumSelected.patchValue(this.premiumSelected);\r\n this.inputForm.controls.basicSelected.patchValue(this.basicSelected);\r\n this.inputForm.controls.couponCode.patchValue(this.couponCode);\r\n this.inputForm.controls.amountpayable.patchValue(this.amountpayable);\r\n if(this.inputForm.controls.homeType?.value == null || this.inputForm.controls.homeType?.value == 0)\r\n {\r\n this.inputForm.patchValue({\r\n homeType: this.subCategories[0]?.homeVariableSubCategoryListItems[0]?.homeVariableSubCategoryListItemId,\r\n })\r\n }\r\n this.inputForm.controls.realEstateAgentUserRefId.patchValue(this.userId);\r\n this.inputForm.controls.tokenValue.patchValue(this.tokenValue);\r\n if(this.inputForm.controls.cityName?.value?.trim()?.length == 0){\r\n this.inputForm.controls.cityName?.patchValue(\"\");\r\n }\r\n if (this.inputForm.valid && !this.isDuplicateEmail && !this.divError) {\r\n \r\n this.appHttpRequestHandlerService.httpPost(this.inputForm.value, \"RealEstateAgent\", \"InviteNewHomeOwnerWithoutSponsor\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericFormModel) => {\r\n //console.log('logdata', data)\r\n if(data.formModel.isSuccefullyCreated === true)\r\n {\r\n this.loginForm.controls.UserName.patchValue(this.inputForm.controls.email.value);\r\n this.loginForm.controls.Password.patchValue(this.inputForm.controls.password.value);\r\n this.loginForm.controls.Recaptcha.patchValue(null);\r\n this.loginForm.controls.ForgetType.patchValue(null);\r\n this.appHttpRequestHandlerService.httpPost(this.loginForm.value, \"AccountManager\", \"login\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: string) => {\r\n if ((data).isAvailable) {\r\n localStorage.setItem('firstTimeLogin', '1'); \r\n this.setTokenAndSendUserToHomePage((data).token);\r\n }\r\n else {\r\n //IsLoginRestricted=true, RestrictedReasonMessage\r\n this.isloginError = true;\r\n if((data).token == ''){\r\n this.isLoginRestricted=true;\r\n this.restrictedReasonMessage = \"Invalid username or password..! \";\r\n }\r\n if ((data).isLoginRestricted) {\r\n this.isLoginRestricted=true;\r\n this.restrictedReasonMessage = \"Your account has been \" + (data).restrictedReasonMessage + \". \" ;\r\n \r\n }\r\n }\r\n });\r\n }\r\n //this.toastService.show(\"\",\"Homeowner added successfully\", 3000,\"bg-success text-white\",\"fa-check-circle\");\r\n \r\n //this.router.navigate(['/Account/TermsAndConditions']);\r\n //this.router.navigate(['/HomeAddress/DashboardWithoutSpons'],{queryParams: {dl:\"Y\" }});\r\n //this.router.navigate(['/Account/HomeownerWithoutsponsorWelcomeComponent'], { queryParams: { info: this.inputForm.controls.email.value, homwownerId: data.formModel.homeOwnerAddressId, foo: this.userId}});\r\n });\r\n }\r\n }\r\n\r\n setTokenAndSendUserToHomePage(token: string) {\r\n localStorage.setItem(\"BearerToken\", token);\r\n this.initiateHomePage();\r\n }\r\n initiateHomePage() {\r\n if (this.accountService.getUserJwtDecodedInfo().RoleName == 'HOME_OWNER_USER') {\r\n // if(this.accountService.getUserJwtDecodedInfo().IsAgree=='True'){\r\n // this.appHttpRequestHandlerService.httpGet({ id: this.accountService.getUserJwtDecodedInfo().UserId}, \"CommonApi\", \"GetPaidAndUnpaidHO\").pipe(takeUntil(this.ngUnsubscribe))\r\n // .subscribe((data: any) => {\r\n // console.log('dataforimg1', data)\r\n // this.freeV = data.freeV;\r\n // this.paidV = data.paidV;\r\n // if (this.freeV || this.paidV) {\r\n // if(this.freeV)\r\n // {\r\n // this.value = 'Basic';\r\n // }\r\n // else{\r\n // this.value = 'Premium';\r\n // }\r\n // this.appHttpRequestHandlerService.httpGet({ value: this.value, Id:this.accountService.getUserJwtDecodedInfo().UserId}, \"CommonApi\", \"GetHoWithNOSponsMessage\").pipe(takeUntil(this.ngUnsubscribe))\r\n // .subscribe((data: any) => {\r\n // debugger\r\n // if(data.message !== \"\")\r\n // {\r\n // if(data.dataPopup !== null)\r\n // {\r\n // this.isLogin = data.dataPopup.isLogin;\r\n // if (this.isLogin === true) {\r\n // localStorage.setItem('loginvalue', JSON.stringify(true)); // Save 'true' in localStorage\r\n // } \r\n // else{\r\n // localStorage.setItem('loginvalue', JSON.stringify(false));\r\n // }\r\n // }\r\n // this.isLogin = JSON.parse(localStorage.getItem('loginvalue'));\r\n // this.router.navigate(['/HomeAddress/DashboardWithoutSpons'],{queryParams: {dl:\"Y\" }});\r\n // }\r\n // else{\r\n // this.isLogin = JSON.parse(localStorage.getItem('loginvalue'));\r\n // this.router.navigate(['/HomeAddress/DashboardWithoutSpons'],{queryParams: {dl:\"Y\" }});\r\n // }\r\n\r\n // });\r\n \r\n // }\r\n // });\r\n \r\n // }\r\n if(this.accountService.getUserJwtDecodedInfo().IsAgree=='False'){\r\n this.isLogin = JSON.parse(localStorage.getItem('loginvalue'));\r\n this.router.navigate(['/Account/TermsAndConditions']);\r\n }\r\n \r\n //});\r\n } \r\n }\r\n passClickToHomeProfileFileInput(browserInputId: string) {\r\n document.getElementById(browserInputId).click();\r\n }\r\n\r\n openVideoModal(content) {\r\n this.modalService.open(content, { size: 'lg', ariaLabelledBy: 'modal-basic-title', centered:true }).result.then((result) => {}, (reason) => {});\r\n }\r\n onVideoModalCancelClick() {\r\n this.modalService.dismissAll();\r\n }\r\n onHomeProfilePhotoBrowserInputChange(event, targetImageElementId, aspectRatio) {\r\n if (event.target.value.length) {\r\n this.fileUploadEventObject = event;\r\n this.targetImageElementId = targetImageElementId;\r\n this.aspectRatio = aspectRatio;\r\n this.cropModalReference = this.openCropImageModal(this.cropImageModal);\r\n }\r\n }\r\n openCropImageModal(content) : NgbModalRef{\r\n return this.modalService.open(content, { size: 'lg' });\r\n }\r\n checkDuplicateEmail(){\r\n if(this.inputForm.controls.email.valid){\r\n this.accountService.checkDuplicateEmail({value: this.inputForm.controls.email.value, id: this.inputForm.controls.userRefId.value}).pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => {\r\n this.isDuplicateEmail = data.responseDataModel;\r\n });\r\n }\r\n }\r\n onEmailFocusOut(){\r\n if(this.isDuplicateEmail){\r\n }\r\n }\r\n \r\n onClickCloseModal() {\r\n this.modalService.dismissAll();\r\n }\r\n \r\n passClickToFileInput(browserInputId: string) {\r\n document.getElementById(browserInputId).click();\r\n }\r\n onPhotoBrowserInputChange(event, targetImageElementId, aspectRatio) {\r\n if (event.target.value.length) {\r\n this.fileUploadEventObject = event;\r\n this.targetImageElementId = targetImageElementId;\r\n this.aspectRatio = aspectRatio;\r\n this.cropModalReference = this.openCropImageModal(this.cropImageModal);\r\n }\r\n }\r\n onImageCropper(croppedImageInfo: any) {\r\n this.cropModalReference.close()\r\n if (croppedImageInfo.targetImageElementId == 'messagePhotoImgElement') {\r\n this.messageHomePhoto = croppedImageInfo.croppedImage;\r\n (document.getElementById('messagePhotoBrowserInput')).value = '';\r\n //this.inputFormMessage.controls.messageImageBase64.patchValue(this.messageHomePhoto);\r\n // this.appHttpRequestHandlerService.httpPost({ homeOwnerAddressId: this.homeOwnerAddressId, homeProfileImageBase64: this.defaultHomePhoto }, \"HomeOwnerAddress\", \"UpdateHomeAddressPhoto\").pipe(takeUntil(this.ngUnsubscribe))\r\n // .subscribe((data: GenericServiceResultTemplate) => { });\r\n }\r\n else if (croppedImageInfo.targetImageElementId == 'homePhotoImgElement') {\r\n this.homePhoto = croppedImageInfo.croppedImage;\r\n this.inputForm.controls.homeProfileImageBase64.patchValue(this.homePhoto);\r\n }\r\n }\r\n onRemoveImage() {\r\n this.messageHomePhoto = null;\r\n this.homePhoto=null;\r\n this.inputForm.controls.homeProfileImageBase64.patchValue(this.homePhoto);\r\n }\r\n onCancelCropImageModal(){\r\n this.cropModalReference.close('Close click')\r\n }\r\n toggleOldPass() {\r\n this.fieldOldPass = !this.fieldOldPass;\r\n }\r\n toggleNewPass() {\r\n this.fieldNewPass = !this.fieldNewPass;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\"upkeepable-white-logo-ho\"\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Upkeepable: Your Home's Best Friend!

\r\n

Ever wished for a personal home upkeep guide without the hefty price?
Get sponsored by\r\n {{pageAdditionalInfo?.firstName}} {{pageAdditionalInfo?.lastName}} and let Upkeepable guide you\r\n for free!

\r\n
\r\n LEARN MORE\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \"profile-img\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Preserve and Protect Your Home

\r\n
Upkeepable makes it easy to keep your home in top shape with monthly maintenance tips tailored specifically to your property. You’ll save time, prevent expensive repairs, and get connected with trusted local professionals when you need help. Sign up today and take the hassle out of home upkeep while protecting your investment!
\r\n
\r\n
\r\n
\r\n

Basic

\r\n

Our standard offering helps you protect and preserve your home.

\r\n
    \r\n
  • \"img-checked\" Your Home Profile
  • \r\n
  • \"img-checked\" Custom Maintenance Recommendations
  • \r\n
  • \"img-checked\" Home Hints and Tips
  • \r\n
  • \"img-delete\" Home History Log
  • \r\n
  • \"img-delete\" Personalized Maintenance Logging
  • \r\n
\r\n

FREE

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

Premium

\r\n

Log all your maintenance history, including custom entries and more.

\r\n
    \r\n
  • \"img-checked\" Your Home Profile
  • \r\n
  • \"img-checked\" Custom Maintenance Recommendations
  • \r\n
  • \"img-checked\" Home Hints and Tips
  • \r\n
  • \"img-checked\" Home History Log
  • \r\n
  • \"img-checked\" Personalized Maintenance Logging
  • \r\n
\r\n

$99/year

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

\r\n Please select a plan.\r\n

\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n First name is required.\r\n
\r\n
\r\n Invalid First name.\r\n
\r\n
\r\n First name can be max 20 characters long.\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Last name is required.\r\n
\r\n
\r\n Invalid Last name.\r\n
\r\n
\r\n Last name can be max 20 characters long.\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n Invalid phone number.\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Email address is required.\r\n
\r\n
\r\n Invalid email address.\r\n
\r\n
\r\n
\r\n Email id already exists..!\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n New password is required.\r\n
\r\n
\r\n Invalid New Password.\r\n
\r\n
\r\n New password can be min 6 characters long.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n Confirm Password is required.\r\n
\r\n
\r\n Invalid Confirm Password.\r\n
\r\n
\r\n
\r\n
\r\n Confirm Passwords don't match.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Home Type\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Invalid Address.\r\n
\r\n
\r\n Address can be max 40 characters long.\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n Invalid Address.\r\n
\r\n
\r\n Address can be max 40 characters long.\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n Invalid City.\r\n
\r\n
\r\n City can be max 20 characters long.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n Invalid zip code.\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
{{ cardMessage }}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n {{message}}\r\n
\r\n
\r\n
\r\n Amount to be paid is ${{amountpayable}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n COMMON QUESTION\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \"upkeepable-tab-design\"\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Protect Your Home with Custom Maintenance Recommendations

\r\n
Ever wished for a personal guide to help you navigate the intricacies of home maintenance? Upkeepable is here to revolutionize the way you care for your home. With tailored recommendations and timely reminders, we ensure your home gets the love it deserves.
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

How Upkeepable Works & Why It's a Game-Changer\r\n

\r\n
Dive into Upkeepable, your intuitive guide to home maintenance. Here's the magic: based on your\r\n unique home profile, we curate personalized upkeep recommendations. No more guesswork or missed\r\n maintenance tasks. And the cherry on top? Real estate agents can sponsor your access, making it\r\n free for you. Why does this matter? Regular home care not only ensures a safe and comfortable\r\n living space but also saves you significant repair costs in the long run. With Upkeepable,\r\n you're not just maintaining a house; you're investing in a home.
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \"upkeepable-tab-design\"\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Why You’ll Love Upkeepable

\r\n
    \r\n
  • Personalized Recommendations: Every home is unique, and so are its needs. Get advice\r\n tailored to your home's specific profile.
  • \r\n
  • Timely Reminders: Never miss out on essential upkeep tasks. From seasonal maintenance\r\n to crucial checks, we've got you covered.
  • \r\n
  • Trusted Advice:Our recommendations are backed by industry experts, ensuring your home\r\n is in safe hands.
  • \r\n
  • Easy-to-Use: With a user-friendly interface, managing your home's upkeep has never\r\n been this simple.
  • \r\n
\r\n REGISTER NOW\r\n
\r\n
\r\n\r\n
\r\n
\r\n \"upkeepable-tab-design\"\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \"upkeepable-tab-design\"\r\n

Hear What Home Owners Are Saying

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

\"I've always been a DIY kind of guy, but I'd often forget some of the seasonal tasks around the\r\n house. Upkeepable changed that for me. The platform not only reminds me of what needs doing but\r\n also offers valuable tips on how to do it right. Plus, having it sponsored was a pleasant\r\n surprise! It's made home care so much simpler and stress-free.\"

\r\n
\r\n \"upkeepable-tab-design\"\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

\"When I moved into my home, I was overwhelmed with all the maintenance tasks. I wasn't sure where\r\n to start or what was crucial. Then I discovered Upkeepable. It's been a lifesaver! Every month,\r\n I get personalized reminders tailored to my home's needs. I've avoided some potentially costly\r\n repairs thanks to their advice. It's like having a home expert in my pocket!\"

\r\n
\r\n \"upkeepable-tab-design\"\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n REGISTER NOW\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

Frequently Asked Questions

\r\n
Have questions? We’re here to help.
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n What is Upkeepable, and why should I use it?\r\n \r\n

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

Upkeepable provides personalized home maintenance recommendations based on your home’s unique profile. It helps you stay on top of essential tasks to protect your investment and keep your home in top condition. With convenient reminders, Upkeepable ensures you never miss important maintenance tasks, reducing the risk of costly emergency repairs.

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

\r\n What are home maintenance recommendations?\r\n \r\n

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

Home maintenance recommendations are personalized tasks tailored to your home’s specific features, such as age, size, and systems. These tasks help you keep your home well-maintained and prevent future issues by addressing essential upkeep like HVAC checks, roof inspections, and gutter cleaning.

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

\r\n Why should I upgrade to the Premium plan?\r\n \r\n

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

Upgrading to Premium for just $99/year gives you access to a comprehensive home history log, allowing you to track all maintenance performed on your home. You can also log home improvements (like deck installations or renovations), upload photos, and store important documents like warranties, keeping all your home’s maintenance history in one secure place. This feature helps increase your home’s value by showing potential buyers that your home has been well-maintained.

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

\r\n What is the home history log, and how does it work?\r\n \r\n

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

The home history log, available in the Premium plan, \r\n is a detailed record of all maintenance tasks performed on your home. It allows you to add custom entries for any improvements or upgrades, such as a new roof or remodeled kitchen, and attach relevant documents and photos. This organized log provides a clear picture of your home’s maintenance history, which can be useful for resale or simply for managing future tasks.\r\n

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

\r\n How do custom entries work in the Premium plan?\r\n \r\n

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

In the Premium plan, you can add custom entries to your home history log, such as new renovations or upgrades. For example, if you build a new deck or install solar panels, you can log these entries, attach photos, and store warranty information, ensuring everything is documented for future reference.\r\n

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

\r\n Why is it important to keep a home maintenance history?\r\n \r\n

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

A detailed home maintenance history helps preserve and even increase your home’s value. When selling your home, potential buyers can see that your home has been well-maintained, which can make your property more attractive and increase its resale value. It also provides peace of mind by keeping all your home’s important documents and records in one place.

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

\r\n How will Upkeepable save me time and money?\r\n\r\n \r\n

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

By providing proactive maintenance recommendations, Upkeepable helps you avoid major repairs and emergency breakdowns, saving you money in the long run. It also saves you time by automating your home’s maintenance schedule, reducing the need to research and plan each task manually.\r\n

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

\r\n Is the Premium plan really worth it?\r\n\r\n \r\n

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

Absolutely! For only $99/year, you get access to powerful features like the home history log, where you can track all maintenance, upload photos, and store important documents like warranties. It’s a small investment that can pay off significantly, especially when it comes to resale value or future home improvements.\r\n

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

\r\n How secure is my data?\r\n\r\n \r\n

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

We take your privacy seriously. All your data, including any documents or photos you upload, is securely stored and encrypted, ensuring that only you have access to it.\r\n\r\n

\r\n\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n REGISTER NOW\r\n
\r\n
\r\n
\r\n
\r\n\r\n
Copyright © Upkeepable {{date| date:'yyyy'}}
\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\n\r\n@Component({\r\n selector: 'app-legal',\r\n templateUrl: './legal.component.html',\r\n styleUrls: ['./legal.component.css']\r\n})\r\nexport class LegalComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n if(localStorage.getItem(\"myHome\") === 'true')\r\n {\r\n localStorage.setItem(\"myHome\", 'true');\r\n }\r\n else{\r\n localStorage.setItem(\"myHome\", 'false');\r\n }\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n\r\n
\r\n

Legal Disclaimers

\r\n
1. Disclaimer of Warranties
\r\n

The information and materials contained in this website are provided \"as is\" and without warranties of any kind, either express or implied. Upkeepable (\"we\", \"us\", \"our\") disclaims all warranties, express or implied, including, but\r\n not limited to, implied warranties of merchantability, fitness for a particular purpose, and non-infringement. We do not warrant that the functions contained in the materials will be uninterrupted or error-free, that defects will\r\n be corrected, or that this website or the server that makes it available are free of viruses or other harmful components. We do not warrant or make any representations regarding the use or the results of the use of the materials\r\n on this website in terms of their correctness, accuracy, reliability, or otherwise. You assume the entire cost of all necessary servicing, repair, or correction.

\r\n\r\n
\r\n\r\n
\r\n
2. Limitation of Liability
\r\n

Under no circumstances, including, but not limited to, negligence, shall we be liable for any special or consequential damages that result from the use of, or the inability to use, the materials on this website. In no event shall our\r\n total liability to you for all damages, losses, and causes of action (whether in contract, tort, or otherwise) exceed the amount paid by you, if any, for accessing this website.

\r\n
\r\n\r\n
\r\n
3. Indemnification
\r\n

You agree to indemnify and hold us, and our affiliates, officers, agents, and other partners and employees, harmless from any loss, liability, claim, or demand, including reasonable attorneys' fees, made by any third party due to or\r\n arising out of your use of the Services in violation of this Agreement and/or arising from a breach of this Agreement and/or any breach of your representations and warranties set forth above.

\r\n
\r\n\r\n
\r\n
4. Governing Law
\r\n

This website is controlled and operated by us from our offices within the United States. We make no representation that the materials on this website are appropriate or available for use in other locations. Those who choose to access\r\n this website from other locations do so on their own initiative and are responsible for compliance with local laws, if and to the extent local laws are applicable. This Agreement shall be governed by and construed in accordance\r\n with the laws of the State of North Carolina, without giving effect to any principles of conflicts of law. You agree that any action at law or in equity arising out of or relating to these terms shall be filed only in the state\r\n and federal courts located in Raleigh, North Carolina and you hereby consent and submit to the personal jurisdiction of such courts for the purposes of litigating any such action.

\r\n
\r\n\r\n
\r\n
5. Intellectual Property
\r\n

The materials contained in this website are protected by copyright and trademark laws. You may not use any of the materials on this website for any commercial purpose without the express written consent of us. Unauthorized use of the\r\n materials on this website may violate copyright, trademark, and other laws.

\r\n
\r\n\r\n
\r\n
6. Modification of Materials and Services
\r\n

We reserve the right to modify or discontinue the Services or any portion thereof with or without notice to you. We shall not be liable to you or any third party should we exercise our right to modify or discontinue the Services.\r\n

\r\n
\r\n\r\n
\r\n
7. Entire Agreement
\r\n

This Agreement constitutes the entire agreement between you and us and governs your use of the Services, superseding any prior agreements between you and us. You may also be subject to additional terms and conditions that may apply\r\n when you use third-party content or services.

\r\n
\r\n\r\n
\r\n
8. Waiver
\r\n

The failure of us to exercise or enforce any right or provision of this Agreement shall not constitute a waiver of such right or provision. If any provision of this Agreement is found by a court of competent jurisdiction to be invalid,\r\n the parties nevertheless agree that the court should endeavor to give effect to the parties' intentions as reflected in the provision, and the other provisions of this Agreement remain in full force and effect.

\r\n
\r\n\r\n
\r\n
9. Statute of Limitations
\r\n

You agree that regardless of any statute or law to the contrary, any claim or cause of action arising out of or related to the use of the Services or this Agreement must be filed within one (1) year after such claim or cause of action\r\n arose or be forever barred.

\r\n
\r\n\r\n
\r\n
10. No Third-Party Beneficiaries
\r\n

You agree that, except as otherwise expressly provided in this Agreement, there shall be no third-party beneficiaries to this Agreement. Effective date: 12/1/2022

\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\n\r\n@Component({\r\n selector: 'app-privacy',\r\n templateUrl: './privacy.component.html',\r\n styleUrls: ['./privacy.component.css']\r\n})\r\nexport class PrivacyComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n if(localStorage.getItem(\"myHome\") === 'true')\r\n {\r\n localStorage.setItem(\"myHome\", 'true');\r\n }\r\n else{\r\n localStorage.setItem(\"myHome\", 'false');\r\n }\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n

Privacy & Terms

\r\n

Upkeepable (\"we\", \"us\", \"our\") is committed to protecting your privacy. This Privacy Policy explains how we collect, use, and share information about you when you use our website, Upkeepable.com (the \"Site\"), and our services (together\r\n with the Site, the \"Services\").

\r\n\r\n

By using our Services, you agree to the collection, use, and sharing of your information as described in this Privacy Policy. If you do not agree with our policies and practices, do not use our Services.

\r\n\r\n

We may change our policies and practices from time to time, and we encourage you to review this Privacy Policy periodically. If we make any material changes, we will post the updated policy on this page and indicate the effective date\r\n of the changes at the top of the page. Your continued use of our Services after the changes become effective indicates your acceptance of the changes.

\r\n
\r\n\r\n
\r\n
1. Information We Collect and How We Collect It
\r\n

We collect information about you in several ways when you use our Services.

\r\n\r\n
    \r\n
  • Information You Provide to Us: We collect information you provide directly to us, such as when you create an account, contact us, or request information. This may include your name, email address, phone number, and any other information\r\n you choose to provide.
  • \r\n\r\n
  • Information We Collect Automatically: When you use our Services, we automatically collect certain information about your device and usage of our Services. This may include your IP address, device type, browser type, operating system,\r\n referral source, length of visit, and page views. We may also collect information about your location, including location data from your device or IP address.
  • \r\n\r\n
  • Cookies and Other Tracking Technologies: We use cookies and similar tracking technologies to collect information about your activity on our Services and hold certain information. Cookies are small text files that are placed on\r\n your device when you visit a website. We use cookies to store your preferences and settings, to help personalize your experience on our Services, and to track and analyze your use of our Services. You can control the use of\r\n cookies at the individual browser level, but if you choose to disable cookies, it may limit your use of certain features or functions on our Services.
  • \r\n
\r\n
\r\n\r\n
\r\n
2. How We Use Your Information
\r\n

We use the information we collect about you for a variety of purposes, including:

\r\n
    \r\n
  • Providing, maintaining, and improving our Services;
  • \r\n
  • Personalizing your experience on our Services;
  • \r\n
  • Communicating with you, including responding to your requests and inquiries;
  • \r\n
  • Analyzing and understanding how you use our Services;
  • \r\n
  • Protecting the security and integrity of our Services; and
  • \r\n
  • Complying with legal and regulatory obligations.
  • \r\n
\r\n
\r\n\r\n
\r\n
3. Sharing Your Information
\r\n

We may share your information in the following circumstances:

\r\n\r\n
    \r\n
  • With third-party service providers who perform services on our behalf, such as website hosting, data analysis, payment processing, and marketing assistance;\r\n
  • \r\n\r\n
  • In response to a request for information if we believe disclosure is required or permitted by law, such as in response to a court order or subpoena;
  • \r\n\r\n
  • With law enforcement or other government agencies, or with other third parties, if we believe your actions are inconsistent with our user agreements or policies, or to protect the rights, property, or safety of Upkeepable or others;\r\n and\r\n
  • \r\n\r\n
  • With other users of our Services if you choose to share information or interact with them.We may also share aggregated or anonymized information that does not directly identify you.
  • \r\n
\r\n
\r\n\r\n
\r\n
4. Your Choices and Access to Your Information (continued)
\r\n
    \r\n
  • Access and update your information: You can access and update your account information at any time by logging into your account on our Services.
  • \r\n\r\n
  • Opt out of marketing communications: You can opt out of receiving marketing communications from us by following the unsubscribe instructions in the communications you receive or by contacting us at [Insert contact email or form].\r\n Please note that if you opt out of marketing communications, you may still receive non-marketing communications from us, such as those related to your account or our ongoing business relations.
  • \r\n\r\n
  • Manage your cookies: You can set your browser to refuse all or some browser cookies, or to alert you when websites set or access cookies. If you disable or refuse cookies, please note that some parts of our Services may become\r\n inaccessible or not function properly.
  • \r\n\r\n
  • Request deletion of your information: You can request that we delete your account and the personal information associated with it by contacting us at [Insert contact email or form]. Please note that we may not be able to delete\r\n all of your information, as some information may be retained for legal or business purposes.
  • \r\n
\r\n
\r\n\r\n
\r\n
5. Data Security and Retention
\r\n

We take reasonable measures to protect the information we collect from loss, misuse, and unauthorized access, disclosure, alteration, and destruction. However, no internet or email transmission is ever fully secure or error free, so\r\n you should take special care in deciding what information you send to us. We will retain your personal information for as long as your account is active or as needed to provide you with our Services. We will retain and use your\r\n information as necessary to comply with our legal obligations, resolve disputes, and enforce our agreements.

\r\n
\r\n\r\n
\r\n
6. Children's Privacy
\r\n

Our Services are not directed to children under the age of 18, and we do not knowingly collect personal information from children under the age of 18. If we learn that we have collected personal information from a child under the age\r\n of 18, we will delete that information as soon as possible.

\r\n
\r\n\r\n
\r\n
7. International Data Transfer
\r\n

Your information may be transferred to, and maintained on, computers located outside of your state, province, country, or other governmental jurisdiction where the data protection laws may differ from those in your jurisdiction. If\r\n you are located outside the United States and choose to provide information to us, please note that we transfer the data, including personal information, to the United States and process it there. Your consent to this Privacy Policy\r\n followed by your submission of such information represents your agreement to the transfer.

\r\n
\r\n\r\n
\r\n
8. Links to Other Websites
\r\n

Our Services may contain links to other websites that are not operated by us. If you click on a third-party link, you will be directed to that third party's site. We strongly advise you to review the Privacy Policy of every site you\r\n visit. We have no control over and assume no responsibility for the content, privacy policies, or practices of any third-party sites or services.

\r\n
\r\n\r\n
\r\n
9. Contact Us
\r\n

If you have any questions about this Privacy Policy, please contact us at info@upkeepable.com

\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\n\r\n@Component({\r\n selector: 'app-site-map',\r\n templateUrl: './site-map.component.html',\r\n styleUrls: ['./site-map.component.css']\r\n})\r\nexport class SiteMapComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n\r\n

Stiemap Page Dummy Title Text

\r\n\r\n

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the\r\n industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type\r\n and scrambled it to make a type specimen book. It has survived not only five centuries, but also the\r\n leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s\r\n with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop\r\n publishing software like Aldus PageMaker including versions of Lorem Ipsum.

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

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the\r\n industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type\r\n and scrambled it to make a type specimen book. It has survived not only five centuries, but also the\r\n leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s\r\n with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop\r\n publishing software like Aldus PageMaker including versions of Lorem Ipsum. leap into electronic\r\n typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of\r\n Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software\r\n like Aldus PageMaker including versions of Lorem Ipsum.

\r\n\r\n

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the\r\n industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type\r\n and scrambled it to make a type specimen book. It has survived not only five centuries, but also the\r\n leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s\r\n with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop\r\n publishing software like Aldus PageMaker including versions of Lorem Ipsum.

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

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the\r\n industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type\r\n and scrambled it to make a type specimen book. It has survived not only five centuries, but also the\r\n leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s\r\n with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop\r\n publishing software like Aldus PageMaker including versions of Lorem Ipsum.

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

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the\r\n industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type\r\n and scrambled it to make a type specimen book. It has survived not only five centuries, but also the\r\n leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s\r\n with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop\r\n publishing software like Aldus PageMaker including versions of Lorem Ipsum. leap into electronic\r\n typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of\r\n Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software\r\n like Aldus PageMaker including versions of Lorem Ipsum.

\r\n\r\n

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the\r\n industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type\r\n and scrambled it to make a type specimen book. It has survived not only five centuries, but also the\r\n leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s\r\n with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop\r\n publishing software like Aldus PageMaker including versions of Lorem Ipsum.

\r\n\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit ,Renderer2} from '@angular/core';\r\nimport { TForm } from 'src/app/generic-type-module';\r\nimport { AppHttpRequestHandlerService } from 'src/app/shared/app-http-request-handler.service';\r\nimport { GenericFormModel, GenericResponseTemplateModel, GenericServiceResultTemplate, IDataTableParamsViewModel, IState } from 'src/app/generic-type-module';\r\nimport { FormBuilder,FormGroup,Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { NgbModal, NgbModalRef } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AccountService } from 'src/app/account/account.service';\r\nimport { CommonOpsService } from 'src/app/shared/common-ops-service';\r\nimport { AppToastService } from '../../toast/app-toast.service';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { AuthService } from 'src/app/auth.service';\r\nimport { ISponsorRegResponseViewModel } from 'src/app/generic-type-module';\r\nimport Swal from 'sweetalert2';\r\nimport { IContactViewModel } from 'src/app/home-owner-address/home-owner-address-type-module';\r\n\r\n\r\n@Component({\r\n selector: 'app-sponsor-register',\r\n templateUrl: './sponsor-register.component.html',\r\n styleUrls: ['./sponsor-register.component.css']\r\n})\r\nexport class SponsorRegisterComponent implements OnInit {\r\n submitted = false;\r\n submitted1 = false;\r\n fieldOldPass: boolean;\r\n fieldNewPass: boolean;\r\n fieldConfirmNewPass: boolean;\r\n email: string = '';\r\n resendId : number = 0;\r\n date = new Date();\r\n\r\n isActive = false;\r\n\r\n isClassApplied = false;\r\n istoggleclass = false;\r\n addClass() {\r\n this.isClassApplied = true;\r\n }\r\n \r\n removeClass() {\r\n this.isClassApplied = false;\r\n }\r\n\r\n toggleClass() {\r\n this.isActive = !this.isActive;\r\n }\r\n\r\n\r\n isOpen = false;\r\n openPopup(){\r\n this.isOpen = !this.isOpen;\r\n this.inputForm.patchValue({\r\n IsActive: false,\r\n isNotficationOn: 1\r\n })\r\n this.appHttpRequestHandlerService.httpGet({ id: 0 }, \"CommonApi\", \"GetAllStatesList\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: IState[]) => {\r\n this.states = data;\r\n }); \r\n }\r\n\r\n get formControls() { return this.inputForm.controls; }\r\n states: IState[] = [];\r\n\r\n\r\n inputForm = this.fb.group({\r\n isNotficationOn: [1],\r\n IsActive: [false],\r\n isDeleted: [false],\r\n isEmailConfirmed: [false],\r\n userRefId: [0, [Validators.required]],\r\n FirstName: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/),Validators.maxLength(20)]],\r\n LastName: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/),Validators.maxLength(20)]],\r\n Email: ['', [Validators.required, Validators.pattern('[A-Za-z0-9._%-]+@[A-Za-z0-9._%-]+\\\\.[a-z]{2,3}')]],\r\n // Phone: ['', [Validators.required, Validators.pattern('^(\\\\+?\\d{1,4}[\\s-])?(?!0+\\s+,?$)\\\\d{10}\\s*,?$')]],\r\n Phone: ['', [Validators.pattern(/^[1-9]\\d{6,14}$/)]], \r\n Address: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/), Validators.maxLength(300)]],\r\n ZipCode: ['', [Validators.required, Validators.pattern('[0-9]{5}')]],\r\n CityName: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/), Validators.maxLength(20)]],\r\n StateCode: ['', Validators.required],\r\n Password: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/), Validators.minLength(6)]],\r\n ConfirmPassword: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/)]],\r\n },{ validator: this.passwordMatchValidator });\r\n\r\n inputForm1: TForm = this.fb.group({\r\n firstName: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/),Validators.maxLength(20)]],\r\n lastName: ['', [Validators.required ,Validators.pattern(/^(\\s+\\S+\\s*)*(?!\\s).*$/),Validators.maxLength(20)]],\r\n email: ['', [Validators.required, Validators.pattern('[A-Za-z0-9._%-]+@[A-Za-z0-9._%-]+\\\\.[a-z]{2,3}')]],\r\nmessage: ['',Validators.required]\r\n}) as TForm;\r\nget formControls1() { return this.inputForm1.controls; }\r\n\r\n\r\n protected ngUnsubscribe: Subject = new Subject();\r\n isDuplicateEmail: boolean=false;\r\n\r\n constructor(private appHttpRequestHandlerService: AppHttpRequestHandlerService, \r\n private renderer: Renderer2, \r\n public authService: AuthService,\r\n private fb: FormBuilder, \r\n public commonOpsService:CommonOpsService,\r\n private modalService: NgbModal, \r\n private router: Router,\r\n public toastService: AppToastService,\r\n private accountService: AccountService) { \r\n\r\n \r\n if(this.authService.isUserLoggedIn()){\r\n // this.getAllUnreadNotifications(this.authService.getUserJwtDecodedInfo().UserId);\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n ngOnInit(): void {\r\n this.appHttpRequestHandlerService.httpGet({ id: 0 }, \"CommonApi\", \"GetAllStatesList\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: IState[]) => {\r\n this.states = data;\r\n }); \r\n }\r\n \r\n passwordMatchValidator(frm: FormGroup) {\r\n return frm.value.Password === frm.value.ConfirmPassword ? null : { 'mismatch': true };\r\n }\r\n toggleOldPass() {\r\n this.fieldOldPass = !this.fieldOldPass;\r\n }\r\n toggleNewPass() {\r\n this.fieldNewPass = !this.fieldNewPass;\r\n }\r\n\r\n onClickLogin(){\r\n this.router.navigate(['/Account/Login']);\r\n } \r\n onSubmitSponsorRegister() {\r\n this.email = this.inputForm.value.Email;\r\n // if(this.inputForm.controls.cityName?.value?.trim()?.length == 0){\r\n // this.inputForm.controls.cityName?.patchValue(\"\");\r\n // }\r\n this.inputForm.patchValue({\r\n userRefId:0,\r\n isActive: true,\r\n isDeleted: false,\r\n isEmailConfirmed:false\r\n })\r\n\r\n // this.inputForm.controls.isActive.patchValue(true);\r\n // this.inputForm.controls.isDeleted.patchValue(false);\r\n // this.inputForm.controls.isEmailConfirmed.patchValue(false);\r\n // this.inputFormHomeOwner.controls.realEstateAgentUserRefId.patchValue(this.userJwtDecodedInfo.UserId);\r\n // this.inputForm.controls..patchValue(this.inputFormHomeOwner.controls.reaUser.value.userId);\r\n if (this.inputForm.valid && !this.isDuplicateEmail) { \r\n localStorage.setItem(\"CreateSponoruser\", this.inputForm.value.Email); \r\n localStorage.setItem(\"CreateSponoruser1\", this.inputForm.value.Password); \r\n this.appHttpRequestHandlerService.httpPost(this.inputForm.value, \"RealEstateAgent\", \"CreatesponsorRegister\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericFormModel) => {\r\n this.toastService.show(\"\",\"Submitted\", 3000,\"bg-success text-white\",\"fa-check-circle\"); \r\n localStorage.setItem(\"CreateSponorFromsponsorregister\", 'true'); \r\n this.inputForm.reset();\r\n //this.resendId = data.formModel.id;\r\n //this.isOpen = true;\r\n this.submitted = false;\r\n const id = data.formModel.id;\r\n this.appHttpRequestHandlerService.httpGet({ id: data.formModel.id}, \"Stripe\", \"CheckIsUserBecameCustomer\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => {\r\n if(!data.responseDataModel){ // New Customer\r\n \r\n this.appHttpRequestHandlerService.httpGet({ id: id}, \"Stripe\", \"CreateAndMapCustomer\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => {\r\n this.router.navigate(['/Pick-A-Product'], {queryParams: { 'c3e931f1-9e57-41e9-8025-001ce1a15414': id}}); \r\n //Go to checkout page\r\n });\r\n }\r\n });\r\n }); \r\n } \r\n this.submitted = true;\r\n \r\n }\r\n\r\n SendEmail(email:any)\r\n {\r\n\r\n this.appHttpRequestHandlerService.httpPost({Id: this.resendId, Email: email} , \"RealEstateAgent\", \"ResendEmailVerificationTest\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: string) => {\r\n // this.inputForm.reset();\r\n this.toastService.show(\"\",\"Resend Email Verification successfully\", 3000,\"bg-success text-white\",\"fa-check-circle\");\r\n //this.modalService.dismissAll();\r\n //this.clientManagerTemplate.searchByKeyword('');\r\n \r\n });\r\n \r\n }\r\n\r\n\r\n openInviteClientModal(content) : NgbModalRef{\r\n this.inputForm.reset();\r\n // this.invalidSize= true;\r\n this.submitted=false;\r\n this.isDuplicateEmail=false;\r\n this.inputForm.patchValue({\r\n isNotficationOn: 0,\r\n userRefId: 0,\r\n \r\n firstName: '',\r\n lastName: '',\r\n email: '',\r\n phone: '',\r\n userImage: '',\r\n userImageBase64: '',\r\n socialMedia_FacebookUrl:'',\r\n socialMedia_TweeterUrl:'',\r\n socialMedia_InstagramUrl:'',\r\n socialMedia_YoutubeUrl:'',\r\n stateCode:''\r\n });\r\n // this.profilePhoto=null;\r\n this.inputForm.controls.userRefId.patchValue(0);\r\n this.inputForm.controls.isActive.patchValue(true);\r\n this.inputForm.controls.isDeleted.patchValue(false);\r\n this.inputForm.controls.isEmailConfirmed.patchValue(false);\r\n this.inputForm.controls.userStatusType.patchValue(0);\r\n this.inputForm.controls.isNotficationOn.patchValue(0);\r\n return this.modalService.open(content, { size: 'lg', backdrop: 'static',keyboard: false });\r\n }\r\n\r\n checkDuplicateEmail(){\r\n if(this.inputForm.controls.userRefId.value === null)\r\n {\r\n if(this.inputForm.value.Email){\r\n this.accountService.checkDuplicateEmail({value: this.inputForm.controls.Email.value, id: 0}).pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => {\r\n this.isDuplicateEmail = data.responseDataModel;\r\n });\r\n }\r\n }\r\n else{\r\n if(this.inputForm.value.Email){\r\n this.accountService.checkDuplicateEmail({value: this.inputForm.controls.Email.value, id: this.inputForm.controls.userRefId.value}).pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => {\r\n this.isDuplicateEmail = data.responseDataModel;\r\n });\r\n }\r\n }\r\n }\r\n // onInputChange(event: Event) {\r\n // const inputElement = event.target as HTMLInputElement;\r\n // this.inputForm.value.Email = inputElement.value;\r\n // console.log('Id', this.inputForm.controls.userRefId.value);\r\n // if(this.inputForm.value.Email){\r\n // this.accountService.checkDuplicateEmail({value: this.inputForm.controls.Email.value, id: this.inputForm.controls.userRefId.value}).pipe(takeUntil(this.ngUnsubscribe))\r\n // .subscribe((data: GenericResponseTemplateModel) => {\r\n // this.isDuplicateEmail = data.responseDataModel;\r\n // });\r\n // }\r\n // }\r\n onEmailFocusOut(){\r\n if(this.isDuplicateEmail){\r\n //this.inputForm.controls.email.patchValue('');\r\n //this.isDuplicateEmail=false;\r\n }\r\n }\r\n\r\n openStaticPage(pageName:string){\r\n this.router.navigate(['/'+pageName]);\r\n setTimeout(()=>{\r\n window.location.reload();\r\n }, 500);\r\n // else if(this.router.routerState.root.snapshot.firstChild.component[\"name\"] == \"QRClientAgentComponent\"){\r\n // this.router.navigate(['/'+pageName]);\r\n // setTimeout(()=>{\r\n // window.location.reload();\r\n // }, 500);\r\n // }\r\n\r\n }\r\n\r\n goToLoginPage(){ \r\n this.router.navigate(['/Account/Login']);\r\n }\r\n\r\n onSubmit() {\r\n //debugger\r\n if (!this.inputForm1.valid) {\r\n this.submitted1 = true;\r\n return; \r\n }\r\n this.appHttpRequestHandlerService.httpPost(this.inputForm1.value, \"CommonApi\", \"ContactForm\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericServiceResultTemplate) => {\r\n this.isClassApplied = false;\r\n this.inputForm1.reset(); \r\n Swal.fire({\r\n title: 'We have received your request',\r\n text: 'Your request has been submitted via email. Please check your inbox for updates',\r\n icon: 'success', // You can change this to 'success', 'error', 'info', etc.\r\n confirmButtonText: 'CLOSE'\r\n //showCloseButton: true\r\n }); \r\n //this.toastService.show(\"\",\"Submitted\", 3000,\"bg-success text-white\",\"fa-check-circle\");\r\n }); \r\n this.submitted1 = false; \r\n }\r\n \r\n}\r\n","\r\n
\r\n
\r\n \r\n \"Close\"\r\n \r\n
\r\n
\r\n \r\n \"Envelope\"\r\n \r\n
\r\n

Please Verify your Email

\r\n

You’re almost there! We sent an email to

\r\n

{{ email }}

\r\n

Just click in the link in that email to complete your signup. If
\r\n you don’t see it, You may need to check your spam folder.

\r\n

Still can’t find the email? No Problem.

\r\n Resend verification email\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

Become an Upkeepable Sponsor

\r\n

Reach homeowner through personalized home maintenance
recommendations based on their home profile.

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n First name is required.\r\n
\r\n
\r\n Invalid First name.\r\n
\r\n
\r\n First name can be max 20 characters long.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Last name is required.\r\n
\r\n
\r\n Invalid Last name.\r\n
\r\n
\r\n Last name can be max 20 characters long.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Email address is required.\r\n
\r\n
\r\n Invalid Email address.\r\n
\r\n
\r\n
\r\n Email id already exists..!\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Phone is required.\r\n
\r\n
\r\n Invalid phone number.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Address is required.\r\n
\r\n
\r\n Invalid Address.\r\n
\r\n
\r\n Address can be max 500 characters long.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n City is required.\r\n
\r\n
\r\n Invalid City.\r\n
\r\n
\r\n City can be max 20 characters long.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n State 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 Zip code is required.\r\n
\r\n
\r\n Invalid Zip code.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n password is required.\r\n
\r\n
\r\n Invalid password.\r\n
\r\n
\r\n password can be min 6 characters long.\r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n Confirm Password is required.\r\n
\r\n
\r\n Invalid Confirm Password.\r\n
\r\n
\r\n
\r\n
\r\n Confirm Passwords don't match.\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

Already have a Account? Login now

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Copyright © Upkeepable {{date| date:'yyyy'}}
\r\n
\r\n
\r\n\r\n
\r\n
\r\n Home\r\n Privacy\r\n Legal\r\n Help\r\n
\r\n
\r\n\r\n\r\n \r\n\r\n\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

Need Help? Ask Us.

\r\n
Submit this form to get support from our team
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n First name is required.\r\n
\r\n
\r\n Invalid First name.\r\n
\r\n
\r\n First name can be max 20 characters long.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Last name is required.\r\n
\r\n
\r\n Invalid Last name.\r\n
\r\n
\r\n Last name can be max 20 characters long.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Email address is required.\r\n
\r\n
\r\n Invalid email address.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Message 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 \r\n
\r\n
\r\n\r\n\r\n
","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-terms',\r\n templateUrl: './terms.component.html',\r\n styleUrls: ['./terms.component.css']\r\n})\r\nexport class TermsComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n if(localStorage.getItem(\"myHome\") === 'true')\r\n {\r\n localStorage.setItem(\"myHome\", 'true');\r\n }\r\n else{\r\n localStorage.setItem(\"myHome\", 'false');\r\n }\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n\r\n

Lorem Ipsum is simply dummy text

\r\n\r\n

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the\r\n industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type\r\n and scrambled it to make a type specimen book. It has survived not only five centuries, but also the\r\n leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s\r\n with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop\r\n publishing software like Aldus PageMaker including versions of Lorem Ipsum.

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

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the\r\n industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type\r\n and scrambled it to make a type specimen book. It has survived not only five centuries, but also the\r\n leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s\r\n with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop\r\n publishing software like Aldus PageMaker including versions of Lorem Ipsum. leap into electronic\r\n typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of\r\n Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software\r\n like Aldus PageMaker including versions of Lorem Ipsum.

\r\n\r\n

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the\r\n industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type\r\n and scrambled it to make a type specimen book. It has survived not only five centuries, but also the\r\n leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s\r\n with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop\r\n publishing software like Aldus PageMaker including versions of Lorem Ipsum.

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

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the\r\n industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type\r\n and scrambled it to make a type specimen book. It has survived not only five centuries, but also the\r\n leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s\r\n with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop\r\n publishing software like Aldus PageMaker including versions of Lorem Ipsum.

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

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the\r\n industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type\r\n and scrambled it to make a type specimen book. It has survived not only five centuries, but also the\r\n leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s\r\n with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop\r\n publishing software like Aldus PageMaker including versions of Lorem Ipsum. leap into electronic\r\n typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of\r\n Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software\r\n like Aldus PageMaker including versions of Lorem Ipsum.

\r\n\r\n

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the\r\n industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type\r\n and scrambled it to make a type specimen book. It has survived not only five centuries, but also the\r\n leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s\r\n with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop\r\n publishing software like Aldus PageMaker including versions of Lorem Ipsum.

\r\n\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { UserJwtDecodedInfo } from 'src/app/account/account-type-module';\r\nimport { AuthService } from 'src/app/auth.service';\r\n\r\n@Component({\r\n selector: 'app-card-added-successfully',\r\n templateUrl: './card-added-successfully.component.html',\r\n styleUrls: ['./card-added-successfully.component.css']\r\n})\r\nexport class CardAddedSuccessfullyComponent implements OnInit { userJwtDecodedInfo: UserJwtDecodedInfo;\r\n constructor(private authService: AuthService, private router: Router) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n navigateToHome(){\r\n //this.authService.onLogoutClick();\r\n // localStorage.removeItem(\"BearerToken\");\r\n // this.router.navigate(['/Account/Login']);\r\n this.userJwtDecodedInfo = this.authService.getUserJwtDecodedInfo();\r\n // if(this.userJwtDecodedInfo?.RoleName=='HOME_OWNER_USER'){\r\n // this.router.navigate(['/HomeAddress/Dashboard'])\r\n // .then(() => {\r\n // window.location.reload();\r\n // });\r\n // }\r\n // else \r\n \r\n if(this.userJwtDecodedInfo?.RoleName=='REAL_ESTATE_USER'){\r\n this.router.navigate(['/RealEstateAgent/Dashboard']).then(() => {\r\n window.location.reload();\r\n });\r\n }\r\n else{\r\n this.router.navigate(['/Account/Login']);\r\n }\r\n } \r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"check-icon-mail\"\r\n

Card Added Successfully

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Your card details were added successfully!
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Need Help? Contact Support.

\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 { environment } from 'src/environments/environment';\r\nimport { AppHttpRequestHandlerService } from 'src/app/shared/app-http-request-handler.service';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-manage-card',\r\n templateUrl: './manage-card.component.html',\r\n styleUrls: ['./manage-card.component.css']\r\n})\r\nexport class ManageCardComponent implements OnInit {\r\n public defaultApiRoot: string=environment.defaultApiRoot + \"api/Payment/AddNewCardSession\";\r\n protected ngUnsubscribe: Subject = new Subject();\r\n constructor(private route: ActivatedRoute, private appHttpRequestHandlerService: AppHttpRequestHandlerService) { }\r\n\r\n ngOnInit(): void {\r\n // this.route.queryParams\r\n // .subscribe(params => {\r\n // var submitForm = (document.getElementById('checkoutForm'));\r\n // submitForm.action=this.defaultApiRoot;\r\n // (submitForm.elements.namedItem('userId')).setAttribute('value',params['c3e931f1-9e57-41e9-8025-001ce1a15414']);\r\n // (submitForm.elements.namedItem('productId')).setAttribute('value','price_1MYoJRJVNHhJ5Y9v7pHSU6dm');\r\n \r\n // (document.getElementById('checkoutForm')).submit()\r\n\r\n // });\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.appHttpRequestHandlerService.httpGet({ }, \"CommonApi\", \"Price-Data\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data) => {\r\n localStorage.setItem(\"price\", data.imageBase64.price_Id_stripe);\r\n if(data != null)\r\n {\r\n var submitForm = (document.getElementById('checkoutForm'));\r\n submitForm.action=this.defaultApiRoot;\r\n let p = localStorage.getItem(\"price\");\r\n (submitForm.elements.namedItem('userId')).setAttribute('value',params['c3e931f1-9e57-41e9-8025-001ce1a15414']);\r\n //(submitForm.elements.namedItem('productId')).setAttribute('value','price_1MYoJRJVNHhJ5Y9v7pHSU6dm');\r\n (submitForm.elements.namedItem('productId')).setAttribute('value',p);\r\n //(submitForm.elements.namedItem('productId')).setAttribute('value','price_1OdnYfJVNHhJ5Y9v1GEXbNvy');\r\n (document.getElementById('checkoutForm')).submit()\r\n }\r\n });\r\n //localStorage.clear();\r\n localStorage.removeItem(\"price\");\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 { Router } from '@angular/router';\r\nimport { UserJwtDecodedInfo } from 'src/app/account/account-type-module';\r\nimport { AuthService } from 'src/app/auth.service';\r\n\r\n@Component({\r\n selector: 'app-payment-failed',\r\n templateUrl: './payment-failed.component.html',\r\n styleUrls: ['./payment-failed.component.css']\r\n})\r\nexport class PaymentFailedComponent implements OnInit {\r\n\r\n userJwtDecodedInfo: UserJwtDecodedInfo;\r\n constructor(private authService: AuthService, private router: Router) { }\r\n\r\n ngOnInit(): void {\r\n localStorage.removeItem(\"BearerToken\");\r\n }\r\n navigateToHome(){\r\n this.router.navigate(['/Account/Login'])\r\n // this.userJwtDecodedInfo = this.authService.getUserJwtDecodedInfo();\r\n // if(this.userJwtDecodedInfo?.RoleName=='HOME_OWNER_USER'){\r\n // this.router.navigate(['/HomeAddress/Dashboard'])\r\n // .then(() => {\r\n // window.location.reload();\r\n // });\r\n // }\r\n // else if(this.userJwtDecodedInfo?.RoleName=='REAL_ESTATE_USER'){\r\n // this.router.navigate(['/RealEstateAgent/Dashboard']).then(() => {\r\n // window.location.reload();\r\n // });\r\n // }\r\n // else if(this.userJwtDecodedInfo?.RoleName=='ADMIN_USER'){\r\n // this.router.navigate(['/Admin/Dashboard']).then(() => {\r\n // window.location.reload();\r\n // });\r\n // }\r\n } \r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

Payment Cancelled

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Your payment has cancelled
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Need Help? Contact support.

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { UserJwtDecodedInfo } from 'src/app/account/account-type-module';\r\nimport { AuthService } from 'src/app/auth.service';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { Subject } from 'rxjs';\r\nimport { GenericResponseTemplateModel, TForm } from '../../generic-type-module';\r\nimport { AppHttpRequestHandlerService } from 'src/app/shared/app-http-request-handler.service';\r\nimport { AccountService } from 'src/app/account/account.service';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { LoginTypeModel } from 'src/app/account/account-type-module';\r\nimport { FormBuilder,FormGroup } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-payment-success',\r\n templateUrl: './payment-success.component.html',\r\n styleUrls: ['./payment-success.component.css']\r\n})\r\nexport class PaymentSuccessComponent implements OnInit {\r\n itemId: string;\r\n userJwtDecodedInfo: UserJwtDecodedInfo;\r\n protected ngUnsubscribe: Subject = new Subject();\r\n constructor(private authService: AuthService, private router: Router,\r\n private accountService: AccountService,private route: ActivatedRoute,\r\n private appHttpRequestHandlerService: AppHttpRequestHandlerService,\r\n private fb: FormBuilder,\r\n ) { }\r\n loginForm: TForm = this.fb.group({\r\n UserName: [''],\r\n Password: [''],\r\n Recaptcha: [''],\r\n ForgetType: ['']\r\n }) as TForm;\r\n ngOnInit(): void {\r\n this.itemId = this.route.snapshot.queryParams['id'];\r\n this.sendIdToServer(this.itemId);\r\n }\r\n\r\n sendIdToServer(id: string): void {\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.appHttpRequestHandlerService.httpGet({id}, \"CommonApi\", \"PaymentDetails\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: GenericResponseTemplateModel) => {\r\n });\r\n });\r\n }\r\n navigateToHome(){\r\n if(localStorage.getItem(\"CreateSponorFromsponsorregister\")==\"true\"){\r\n this.loginForm.controls.UserName.patchValue(localStorage.getItem(\"CreateSponoruser\"));\r\n this.loginForm.controls.Password.patchValue(localStorage.getItem(\"CreateSponoruser1\"));\r\n this.loginForm.controls.Recaptcha.patchValue(null);\r\n this.loginForm.controls.ForgetType.patchValue(null);\r\n this.appHttpRequestHandlerService.httpPost(this.loginForm.value, \"AccountManager\", \"login\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data: string) => {\r\n if ((data).isAvailable) { \r\n this.setTokenAndSendUserToHomePage((data).token);\r\n this.userJwtDecodedInfo = this.authService.getUserJwtDecodedInfo();\r\n if(this.userJwtDecodedInfo?.RoleName=='REAL_ESTATE_USER'){\r\n // this.router.navigate(['/RealEstateAgent/Dashboard']).then(() => {\r\n // window.location.reload();\r\n // });\r\n this.appHttpRequestHandlerService.httpGet({ id: this.accountService.getUserJwtDecodedInfo().UserId}, \"AccountManager\", \"CheckIsUserProfileCompleted\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data1: GenericResponseTemplateModel) => {\r\n if(data1.responseDataModel){\r\n if(this.accountService.getUserJwtDecodedInfo().IsAgree=='False'){\r\n this.router.navigate(['/Account/TermsAndConditions']);\r\n }else{\r\n this.router.navigate(['/RealEstateAgent/Dashboard']);\r\n }\r\n }\r\n else{\r\n if(this.accountService.getUserJwtDecodedInfo().IsAgree=='False'){\r\n this.router.navigate(['/Account/TermsAndConditions']);\r\n }else{\r\n this.router.navigate(['/RealEstateAgent/CompleteProfileSteps']);\r\n }\r\n }\r\n });\r\n }\r\n }\r\n });\r\n }\r\n else\r\n {\r\n this.userJwtDecodedInfo = this.authService.getUserJwtDecodedInfo();\r\n if(this.userJwtDecodedInfo?.RoleName=='HOME_OWNER_USER'){\r\n this.router.navigate(['/HomeAddress/Dashboard'])\r\n .then(() => {\r\n window.location.reload();\r\n });\r\n }\r\n else if(this.userJwtDecodedInfo?.RoleName=='REAL_ESTATE_USER'){\r\n // this.router.navigate(['/RealEstateAgent/Dashboard']).then(() => {\r\n // window.location.reload();\r\n // });\r\n this.appHttpRequestHandlerService.httpGet({ id: this.accountService.getUserJwtDecodedInfo().UserId}, \"AccountManager\", \"CheckIsUserProfileCompleted\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data1: GenericResponseTemplateModel) => {\r\n if(data1.responseDataModel){\r\n if(this.accountService.getUserJwtDecodedInfo().IsAgree=='False'){\r\n this.router.navigate(['/Account/TermsAndConditions']);\r\n }else{\r\n this.router.navigate(['/RealEstateAgent/Dashboard']);\r\n }\r\n }\r\n else{\r\n if(this.accountService.getUserJwtDecodedInfo().IsAgree=='False'){\r\n this.router.navigate(['/Account/TermsAndConditions']);\r\n }else{\r\n this.router.navigate(['/RealEstateAgent/CompleteProfileSteps']);\r\n }\r\n }\r\n });\r\n }\r\n else if(this.userJwtDecodedInfo?.RoleName=='ADMIN_USER'){\r\n this.router.navigate(['/Admin/Dashboard']).then(() => {\r\n window.location.reload();\r\n });\r\n }\r\n else{\r\n this.router.navigate(['/Account/Login']).then(() => {\r\n window.location.reload();\r\n });\r\n }\r\n }\r\n \r\n }\r\n setTokenAndSendUserToHomePage(token: string) {\r\n localStorage.setItem(\"BearerToken\", token);\r\n } \r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"check-icon-mail\"\r\n

Card Added Successfully

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Your Payment was successfully!
You can now continue using Upkeepable
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Need Help? Contact support.

\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 { environment } from 'src/environments/environment';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { AppHttpRequestHandlerService } from 'src/app/shared/app-http-request-handler.service';\r\nimport { Subject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-product-list',\r\n templateUrl: './product-list.component.html',\r\n styleUrls: ['./product-list.component.css']\r\n})\r\nexport class ProductListComponent implements OnInit {\r\n public defaultApiRoot: string=environment.defaultApiRoot + \"api/Payment/create-checkout-session\";\r\n protected ngUnsubscribe: Subject = new Subject();\r\n constructor(private route: ActivatedRoute, private appHttpRequestHandlerService: AppHttpRequestHandlerService) { }\r\n\r\n ngOnInit(): void {\r\n // this.route.queryParams\r\n // .subscribe(params => {\r\n // var submitForm = (document.getElementById('checkoutForm'));\r\n // setTimeout(() => {\r\n // submitForm.action=this.defaultApiRoot; \r\n // (submitForm.elements.namedItem('userId')).setAttribute('value',params['c3e931f1-9e57-41e9-8025-001ce1a15414']);\r\n // (submitForm.elements.namedItem('productId')).setAttribute('value','price_1MYoJRJVNHhJ5Y9v7pHSU6dm');\r\n // (document.getElementById('checkoutForm')).submit()\r\n // }, 1000);\r\n \r\n\r\n // });\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.appHttpRequestHandlerService.httpGet({ }, \"CommonApi\", \"Price-Data\").pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((data) => {\r\n localStorage.setItem(\"price\", data.imageBase64.price_Id_stripe);\r\n if(data != null)\r\n {\r\n var submitForm = (document.getElementById('checkoutForm'));\r\n setTimeout(() => {\r\n submitForm.action=this.defaultApiRoot;\r\n let p = localStorage.getItem(\"price\");\r\n (submitForm.elements.namedItem('userId')).setAttribute('value',params['c3e931f1-9e57-41e9-8025-001ce1a15414']);\r\n //(submitForm.elements.namedItem('productId')).setAttribute('value','price_1MYoJRJVNHhJ5Y9v7pHSU6dm');\r\n (submitForm.elements.namedItem('productId')).setAttribute('value',p);\r\n //(submitForm.elements.namedItem('productId')).setAttribute('value','price_1OdnYfJVNHhJ5Y9v1GEXbNvy');\r\n (document.getElementById('checkoutForm')).submit()\r\n }, 500);\r\n }\r\n });\r\n //localStorage.clear();\r\n localStorage.removeItem(\"price\");\r\n\r\n });\r\n }\r\n\r\n}\r\n","
\r\n \r\n \r\n \r\n
","import { Injectable, TemplateRef } from \"@angular/core\";\r\n\r\nexport interface ToastInfo {\r\n header: string;\r\n body: string;\r\n classList: string,\r\n icon: string,\r\n delay?: number;\r\n}\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AppToastService {\r\n toasts: ToastInfo[] = [];\r\n\r\n show(header: string, body: string, delay: number, classList: string, icon: string) {\r\n this.toasts.push({ header, body, delay, classList, icon });\r\n }\r\n remove(toast) {\r\n this.toasts = this.toasts.filter(t => t !== toast);\r\n }\r\n clear() {\r\n this.toasts.splice(0, this.toasts.length);\r\n }\r\n}","import { Component, OnInit } from '@angular/core';\r\nimport { AppToastService } from '../app-toast.service';\r\n\r\n@Component({\r\n selector: 'app-toast-container',\r\n templateUrl: './toast-container.component.html',\r\n styleUrls: ['./toast-container.component.css']\r\n})\r\nexport class ToastContainerComponent implements OnInit {\r\n constructor(public toastService: AppToastService) {}\r\n ngOnInit(): void {\r\n }\r\n}\r\n","\r\n {{toast.body}}\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// allowedDomains:[\"localhost:44323\"],\r\n // defaultApiRoot:\"https://localhost:44305/\",\r\n\r\n // allowedDomains:[\"154.27.72.187:81\"],\r\n // defaultApiRoot:\"http://154.27.72.187:81/\",\r\n\r\n // allowedDomains:[\"154.27.72.187:80\"],\r\n // defaultApiRoot:\"http://154.27.72.187:80/Stage1\",\r\n\r\n// allowedDomains:[\"15.204.210.115:81\"],\r\n// defaultApiRoot:\"http://15.204.210.115:81/\",\r\n\r\n// allowedDomains:[\"15.204.210.115:5050\"],\r\n// defaultApiRoot:\"http://15.204.210.115:5050/\",\r\n\r\n // allowedDomains:[\"stage.upkeepable.com:4455\"],\r\n// defaultApiRoot:\"https://stage.upkeepable.com:4455/\",\r\n\r\n allowedDomains:[\"app.upkeepable.com:4455\"],\r\ndefaultApiRoot:\"https://app.upkeepable.com:4455/\",\r\n\r\n defaultProfilePhoto: 'assets/img/default-profile-icon.png',\r\n defaultHomePhoto: 'assets/img/home-img-default.jpg',\r\n\r\n\r\n //StripeKey : 'pk_test_51BTUDGJAJfZb9HEBwDg86TN1KNprHjkfipXmEDMb0gSCassK5T3ZfxsAbcgKVmAIXF7oZ6ItlZZbXO6idTHE67IM007EwQ4uN3',\r\n StripeKey : 'pk_live_51MIbG8Efh9w7mXGWgCHgdEMnqUPn77p4Mf6SJHdVNVKWGXgXvkgmzBZI2JQb9CIqZpuKW69MAOhO4re3ySIpF8rD00zgDSfKw6',\r\n firebase: {\r\n apiKey: \"AIzaSyDLwkwEaeBXQTFeSg1yjlGX3yDgJZ0v9SE\",\r\n authDomain: \"traver-lamp.firebaseapp.com\",\r\n projectId: \"traver-lamp\",\r\n storageBucket: \"traver-lamp.appspot.com\",\r\n messagingSenderId: \"15520629438\",\r\n appId: \"1:15520629438:web:cd59191af4d6ad997394ef\",\r\n measurementId: \"G-8GZTCP8V3F\",\r\n vapidKey:\"BFLWEBUCUTPgESdIAAtj9IlI82FQuCYmJzGSe01RK3P8-ic0boVxpgBkXa7D_R9wynVxjuvOYwbaPy73hKMVFgw\"\r\n },\r\n\r\n\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 { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif ('serviceWorker' in navigator) {\r\n window.addEventListener('load', () => {\r\n navigator.serviceWorker.register('/custom-service-worker.js')\r\n .then(registration => {\r\n //console.log('Service Worker registered with scope:', registration.scope);\r\n })\r\n .catch(error => {\r\n console.error('Service Worker registration failed:', error);\r\n });\r\n });\r\n} else {\r\n console.warn('Service Worker is not supported in this browser.');\r\n}\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n"],"names":[],"sourceRoot":"webpack:///"}