{"version":3,"file":"main.aa245758c87dc6d5470b.js","mappings":"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AACE;AAEE;AACwG;AAC1G;AACF;AACA;AAEE;AACE;AACE;AACE;AAEA;AACE;AACE;AACE;AAAO;AAAY;AACnB;AAA+C;AAAU;AACzD;AACF;AACF;AACA;AACE;AACE;AAAqB;AAAiB;AAEtC;AAAiK;AAAA;AAAA;AAAA;AAAA;AAAjK;AACA;AAGF;AACF;AACA;AACE;AACE;AACE;AACkC;AAAA;AAAA;AAAA;AAAA;AADlC;AAEA;AACE;AACF;AACF;AACF;AACF;AAUF;AACA;AAQE;AACE;AACE;AAAqB;AAAQ;AAC7B;AAA+C;AAAU;AACzD;AACE;AAIF;AACF;AACF;AACA;AACE;AACE;AAAoB;AAAc;AAClC;AAA+C;AAAU;AACzD;AACF;AACF;AACF;AAgCA;AACE;AAAyB;AAAa;AACtC;AAA6C;AAAA;AAAA;AAAA;AAAA;AAA7C;AAEF;AAEA;AAeF;AACF;AACF;AACF;AACF;;;;;AArIS;AAAA;AAsB6B;AAAA;AAChB;AAAA;AAsCK;AAAA;AACmB;AAAA;AAoD5B;AAAA;;;;;;AAyDI;AACE;AACF;;;;;AAF2C;AACzC;AAAA;;;;;;;;AAuBR;AACE;AACE;AACF;AACA;AACE;AACF;AACA;AACE;AACE;AACG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAmC;AACxC;AACF;AACF;;;;;AAXI;AAAA;AAGA;AAAA;;;;;;;;AAlEpB;AACE;AACE;AAEE;AACmI;AACrI;AACF;AACA;AAEE;AAEE;AACA;AACE;AACE;AACE;AACE;AACE;AACE;AAAgB;AAAa;AAC7B;AACE;AAAkB;AAAyC;AAAU;AACvE;AACA;AACE;AAA0B;AAC1B;AAAmK;AAAiC;AACtM;AACF;AACF;AACA;AAGE;AACE;AAEE;AACE;AAAkB;AAAoB;AACtC;AAGF;AACF;AACA;AACE;AAEF;AACA;AAGE;AAA0D;AAAA;AAAA;AAAA;AAAA;AACxD;AACF;AACF;AACF;AAGF;AAEF;AACA;AACE;AACE;AAcF;AACF;AACF;AACF;AACF;AACF;AACF;AACF;;;;;AA7ES;AAAA;AAgC0C;AAAA;AAwBd;AAAA;;;;;;AA2Df;AACE;AA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","sources":["./$_lazy_route_resources|lazy|groupOptions: {}|namespace object","./src/app/Common/Components/confirm-dialog/confirm-dialog.component.ts","./src/app/Common/Components/confirm-dialog/confirm-dialog.component.html","./src/app/Common/Components/side-filter-be/side-filter.component.ts","./src/app/Common/Components/side-filter-be/side-filter.component.html","./src/app/Common/Components/side-filter/side-filter.component.ts","./src/app/Common/Components/side-filter/side-filter.component.html","./src/app/Common/Components/top-filter/top-filter.component.ts","./src/app/Common/Components/top-filter/top-filter.component.html","./src/app/Common/Constants/Constants.ts","./src/app/Common/Material.module.ts","./src/app/Common/Pipe/amount-to-words.pipe.ts","./src/app/Common/Pipe/common-filter.pipe.ts","./src/app/Common/Pipe/date-ago.pipe.ts","./src/app/Common/Pipe/date-format.pipe.ts","./src/app/Common/Pipe/date-range-filter.pipe.ts","./src/app/Common/Pipe/filter-pipe.pipe.ts","./src/app/Common/Shared.module.ts","./src/app/Communication/approve/approve.component.ts","./src/app/Communication/approve/approve.component.html","./src/app/Communication/complete/complete.component.ts","./src/app/Communication/complete/complete.component.html","./src/app/Communication/invite-attorney/invite-attorney.component.ts","./src/app/Communication/invite-attorney/invite-attorney.component.html","./src/app/Communication/invite/invite.component.ts","./src/app/Communication/invite/invite.component.html","./src/app/Communication/messages/messages.component.ts","./src/app/Communication/messages/messages.component.html","./src/app/Communication/notifications/notifications.component.ts","./src/app/Communication/notifications/notifications.component.html","./src/app/Communication/reject/reject.component.ts","./src/app/Communication/reject/reject.component.html","./src/app/Communication/rejectby-attorney/rejectby-attorney.component.ts","./src/app/Communication/rejectby-attorney/rejectby-attorney.component.html","./src/app/Communication/reopen/reopen.component.ts","./src/app/Communication/reopen/reopen.component.html","./src/app/Communication/withdraw/withdraw.component.ts","./src/app/Communication/withdraw/withdraw.component.html","./src/app/Idle/idle-dialog/idle-dialog.component.ts","./src/app/Idle/idle-dialog/idle-dialog.component.html","./src/app/Idle/idle/idle.component.ts","./src/app/ach/connect-ach/connect-ach.component.ts","./src/app/ach/connect-ach/connect-ach.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/appearance/appearance-card/appearance-card.component.ts","./src/app/appearance/appearance-card/appearance-card.component.html","./src/app/appearance/appearance-doc/appearance-doc.component.ts","./src/app/appearance/appearance-doc/appearance-doc.component.html","./src/app/appearance/appearance-entry/appearance-entry.component.ts","./src/app/appearance/appearance-entry/appearance-entry.component.html","./src/app/appearance/appearance-info/appearance-info.component.ts","./src/app/appearance/appearance-info/appearance-info.component.html","./src/app/appearance/appearance-list-be/appearance-list.component.ts","./src/app/appearance/appearance-list-be/appearance-list.component.html","./src/app/appearance/appearance-list/appearance-list.component.ts","./src/app/appearance/appearance-list/appearance-list.component.html","./src/app/appearance/appearance-routing.module.ts","./src/app/appearance/appearance-view/appearance-view.component.ts","./src/app/appearance/appearance-view/appearance-view.component.html","./src/app/appearance/appearance.module.ts","./src/app/appearance/application-card/application-card.component.ts","./src/app/appearance/application-card/application-card.component.html","./src/app/appearance/application-list/application-list.component.ts","./src/app/appearance/application-list/application-list.component.html","./src/app/appearance/apply-appearance/apply-appearance.component.ts","./src/app/appearance/apply-appearance/apply-appearance.component.html","./src/app/appearance/cancel-appearance/cancel-appearance.component.ts","./src/app/appearance/cancel-appearance/cancel-appearance.component.html","./src/app/attorney/attorney-card/attorney-card.component.ts","./src/app/attorney/attorney-card/attorney-card.component.html","./src/app/attorney/attorney-info/attorney-info.component.ts","./src/app/attorney/attorney-info/attorney-info.component.html","./src/app/attorney/attorney-list/attorney-list.component.ts","./src/app/attorney/attorney-list/attorney-list.component.html","./src/app/attorney/attorney-routing.module.ts","./src/app/attorney/attorney-view/attorney-view.component.ts","./src/app/attorney/attorney-view/attorney-view.component.html","./src/app/attorney/attorney.module.ts","./src/app/basic-pages/about-us/about-us.component.ts","./src/app/basic-pages/about-us/about-us.component.html","./src/app/basic-pages/disclaimer/disclaimer.component.ts","./src/app/basic-pages/disclaimer/disclaimer.component.html","./src/app/basic-pages/faqs/faqs.component.ts","./src/app/basic-pages/faqs/faqs.component.html","./src/app/basic-pages/how-it-works/how-it-works.component.ts","./src/app/basic-pages/how-it-works/how-it-works.component.html","./src/app/basic-pages/privacy/privacy.component.ts","./src/app/basic-pages/privacy/privacy.component.html","./src/app/basic-pages/terms/terms.component.ts","./src/app/basic-pages/terms/terms.component.html","./src/app/dashboard/dashboard.component.ts","./src/app/dashboard/dashboard.component.html","./src/app/footer-menu/footer-menu.component.ts","./src/app/footer-menu/footer-menu.component.html","./src/app/home/home.component.ts","./src/app/home/home.component.html","./src/app/invoice/invocie-list/invocie-list.component.ts","./src/app/invoice/invocie-list/invocie-list.component.html","./src/app/invoice/invoice-card/invoice-card.component.ts","./src/app/invoice/invoice-card/invoice-card.component.html","./src/app/invoice/invoice-entry/invoice-entry.component.ts","./src/app/invoice/invoice-entry/invoice-entry.component.html","./src/app/invoice/invoice-routing.module.ts","./src/app/invoice/invoice-view/invoice-view.component.ts","./src/app/invoice/invoice-view/invoice-view.component.html","./src/app/invoice/invoice.module.ts","./src/app/invoice/rate/rate.component.ts","./src/app/invoice/rate/rate.component.html","./src/app/masters/court-entry/court-entry.component.ts","./src/app/masters/court-entry/court-entry.component.html","./src/app/models/address.ts","./src/app/models/appearance.ts","./src/app/models/user.ts","./src/app/nav-menu/nav-menu.component.ts","./src/app/nav-menu/nav-menu.component.html","./src/app/pages/contact-us/contact-us.component.ts","./src/app/pages/contact-us/contact-us.component.html","./src/app/services/Common/confirm-dialog.service.ts","./src/app/services/ContactUs.service.ts","./src/app/services/Court.service.ts","./src/app/services/alertify.service.ts","./src/app/services/appearance.service.ts","./src/app/services/attorney.service.ts","./src/app/services/auth-interceptor.service.ts","./src/app/services/auth.service.ts","./src/app/services/common.service.ts","./src/app/services/communication.service.ts","./src/app/services/data.service.ts","./src/app/services/invoice.service.ts","./src/app/services/notifications.service.ts","./src/app/services/route-gaurd-for-home.service.ts","./src/app/services/route-gaurd-for-profile-check.service.ts","./src/app/services/route-gaurd-for-verified-account.service.ts","./src/app/services/route-guard.service.ts","./src/app/services/user.service.ts","./src/app/stripe/pay-invoice/pay-invoice.component.ts","./src/app/stripe/pay-invoice/pay-invoice.component.html","./src/app/stripe/payment-receipt/payment-receipt.component.ts","./src/app/stripe/payment-receipt/payment-receipt.component.html","./src/app/stripe/payment-success/payment-success.component.ts","./src/app/stripe/payment-success/payment-success.component.html","./src/app/stripe/select-payment-method/select-payment-method.component.ts","./src/app/stripe/select-payment-method/select-payment-method.component.html","./src/app/user/change-password/change-password.component.ts","./src/app/user/change-password/change-password.component.html","./src/app/user/forgot-password/forgot-password.component.ts","./src/app/user/forgot-password/forgot-password.component.html","./src/app/user/settings/settings.component.ts","./src/app/user/settings/settings.component.html","./src/app/user/sub-users/sub-users.component.ts","./src/app/user/sub-users/sub-users.component.html","./src/app/user/user-login/user-login.component.ts","./src/app/user/user-login/user-login.component.html","./src/app/user/user-profile/user-profile.component.ts","./src/app/user/user-profile/user-profile.component.html","./src/app/user/user-registration/user-registration.component.ts","./src/app/user/user-registration/user-registration.component.html","./src/app/user/user-wallet/user-wallet.component.ts","./src/app/user/user-wallet/user-wallet.component.html","./src/app/user/verification/verification.component.ts","./src/app/user/verification/verification.component.html","./src/environments/environment.prod.ts","./src/main.ts"],"sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(() => {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = () => ([]);\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = 8255;\nmodule.exports = webpackEmptyAsyncContext;","import { Component, OnInit } from '@angular/core';\r\nimport { ConfirmDialogService } from 'src/app/services/Common/confirm-dialog.service';\r\n\r\n@Component({\r\n selector: 'app-confirm-dialog',\r\n templateUrl: './confirm-dialog.component.html',\r\n styleUrls: ['./confirm-dialog.component.css']\r\n})\r\nexport class ConfirmDialogComponent implements OnInit {\r\n\r\n message: any; \r\n constructor( \r\n private confirmDialogService: ConfirmDialogService \r\n ) { } \r\n\r\n ngOnInit(): any { \r\n /** \r\n * This function waits for a message from alert service, it gets \r\n * triggered when we call this from any other component \r\n */ \r\n this.confirmDialogService.getMessage().subscribe(message => { \r\n this.message = message; \r\n }); \r\n } \r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

{{message.text}}

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

\r\n \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 { Options } from '@angular-slider/ngx-slider';\r\nimport { ChangeDetectorRef, Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { Subscription } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { FilterModel } from 'src/app/models/common';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { CommonService } from 'src/app/services/common.service';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { CommonFilterPipe } from '../../Pipe/common-filter.pipe';\r\nimport { DateRangeFilterPipe } from '../../Pipe/date-range-filter.pipe';\r\n\r\n@Component({\r\n selector: 'app-side-filter-be',\r\n templateUrl: './side-filter.component.html',\r\n styleUrls: ['./side-filter.component.css']\r\n})\r\nexport class SideFilterBEComponent implements OnInit {\r\n @Input() CalledFor: string;\r\n @Input() List: any;\r\n @Input() CurrentURL: string = '';\r\n @Output() FilteredList: EventEmitter = new EventEmitter();\r\n public states: any;\r\n public counties: any;\r\n public selectedState = [];\r\n public selectedCounty = [];\r\n public selectedPracticeArea = [];\r\n public appearList: any;\r\n public appearListCopy: any;\r\n public listCopyForRateRange: any;\r\n public value: number = 0;\r\n public highValue: number = 3000;\r\n public casetypes: any[];\r\n public selectedCaseType = [];\r\n public selectedAppearanceType = [];\r\n public selectedStatus = [];\r\n public appearancetypes: any[];\r\n public statuses: any[];\r\n public DateFrom: string;\r\n public status: string = '';\r\n public statusApplication: string = '';\r\n public DateTo: string;\r\n public Languages: any[];\r\n public selectedStateText: any[];\r\n public selectedCaseTypeText: any[];\r\n selectedLanguage = [];\r\n public options: Options = {\r\n floor: 0,\r\n ceil: 3000\r\n };\r\n\r\n public placeHolder: string;\r\n public caption: string;\r\n subscription: Subscription;\r\n AppearanceId: number;\r\n\r\n constructor(private userService: UserService, private route: ActivatedRoute, private authService: AuthService, private commonService: CommonService, private dataService: DataService, private filterPipe: CommonFilterPipe, private appearanceService: AppearanceService,\r\n private dateRangePipe: DateRangeFilterPipe) {\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.GetCaseTypes();\r\n this.GetAllStatus();\r\n this.GetAllState();\r\n this.GetMinMaxValue();\r\n this.getLanguage();\r\n this.appearList = this.List;\r\n this.appearListCopy = this.List; \r\n localStorage.setItem('copy', JSON.stringify(this.appearListCopy));\r\n this.GetDynamicCaseType();\r\n this.GetCountyByStateIds();\r\n if (this.selectedCaseType) {\r\n this.GetAppearanceTypes(this.selectedCaseType);\r\n }\r\n if(this.CalledFor == \"Application\" || this.CalledFor == \"Attorney\"){\r\n this.LoadExternalData();\r\n }\r\n if (this.CalledFor == \"Appearance\") {\r\n this.subscription = this.route.params.subscribe(routeParams => {\r\n this.status = routeParams.status;\r\n this.LoadExternalData();\r\n });\r\n }\r\n\r\n this.route.params.subscribe(routeParams => {\r\n this.statusApplication = routeParams.id; \r\n });\r\n }\r\n\r\n LoadExternalData() {\r\n if (this.authService.isLoggedIn()) {\r\n if (this.authService.currentUserValue.profileType == 'A' && this.CalledFor == \"Appearance\") {\r\n if (this.status == 'Open') {\r\n if (this.dataService.getOption().selectedLocation != null && this.dataService.getOption().selectedLocation != undefined && this.dataService.getOption().selectedLocation != '') {\r\n this.selectedState = this.dataService.getOption().selectedLocation;\r\n }\r\n if (this.dataService.getOption().casetypes != null && this.dataService.getOption().casetypes != undefined && this.dataService.getOption().casetypes != '') {\r\n this.selectedCaseType = this.dataService.getOption().casetypes;\r\n }\r\n\r\n } else if(this.status == 'Filled' || this.status == 'Completed'|| this.status =='Expired') {\r\n this.selectedState = (this.dataService.getOption().selectedLocation != null && this.dataService.getOption().selectedLocation != undefined) ? this.dataService.getOption().selectedLocation : [];\r\n this.selectedCaseType = (this.dataService.getOption().casetypes != null && this.dataService.getOption().casetypes != undefined) ? this.dataService.getOption().casetypes : [];\r\n } else {\r\n if (this.dataService.getOption().selectedLocation != null && this.dataService.getOption().selectedLocation != undefined && this.dataService.getOption().selectedLocation != '') {\r\n this.selectedState = this.dataService.getOption().selectedLocation;\r\n }\r\n if (this.dataService.getOption().casetypes != null && this.dataService.getOption().casetypes != undefined && this.dataService.getOption().casetypes != '') {\r\n this.selectedCaseType = this.dataService.getOption().casetypes;\r\n }\r\n }\r\n\r\n // this.GetCountyByStateIds();\r\n // if (this.selectedCaseType) {\r\n // this.GetAppearanceTypes(this.selectedCaseType);\r\n // }\r\n if ((this.dataService.getOption().selectedLocation != null && this.dataService.getOption().selectedLocation != undefined && this.dataService.getOption().selectedLocation.length >0) || (this.dataService.getOption().casetypes != null && this.dataService.getOption().casetypes != undefined && this.dataService.getOption().casetypes.length >0)) {\r\n //this.SearchFilter(this.selectedCaseType);\r\n }\r\n } else {\r\n this.selectedState = (this.dataService.getOption().selectedLocation != null && this.dataService.getOption().selectedLocation != undefined) ? this.dataService.getOption().selectedLocation : [];\r\n this.selectedCaseType = (this.dataService.getOption().casetypes != null && this.dataService.getOption().casetypes != undefined) ? this.dataService.getOption().casetypes : [];\r\n this.GetCountyByStateIds();\r\n // if (this.selectedCaseType) {\r\n // this.GetAppearanceTypes(this.selectedCaseType);\r\n // }\r\n if ((this.dataService.getOption().selectedLocation != null && this.dataService.getOption().selectedLocation != undefined) || (this.dataService.getOption().casetypes != null && this.dataService.getOption().casetypes != undefined)) {\r\n //this.SearchFilter(this.selectedCaseType);\r\n }\r\n }\r\n } else {\r\n this.selectedState = (this.dataService.getOption().selectedLocation != null && this.dataService.getOption().selectedLocation != undefined) ? this.dataService.getOption().selectedLocation : [];\r\n this.selectedCaseType = (this.dataService.getOption().casetypes != null && this.dataService.getOption().casetypes != undefined) ? this.dataService.getOption().casetypes : [];\r\n this.GetCountyByStateIds();\r\n // if (this.selectedCaseType) {\r\n // this.GetAppearanceTypes(this.selectedCaseType);\r\n // }\r\n if ((this.dataService.getOption().selectedLocation != null && this.dataService.getOption().selectedLocation != undefined && this.dataService.getOption().selectedLocation.length >0) || (this.dataService.getOption().casetypes != null && this.dataService.getOption().casetypes != undefined && this.dataService.getOption().casetypes.length >0)) {\r\n //this.SearchFilter(this.selectedCaseType);\r\n }\r\n }\r\n this.dataService.setOption('selectedLocation', '');\r\n this.dataService.setOption('casetypes', '');\r\n }\r\n\r\n async GetAllState() {\r\n await this.userService.getAllStates().then(x => {\r\n this.states = x.list;\r\n });\r\n }\r\n\r\n GetCaseTypes() {\r\n this.appearanceService.getCaseType().subscribe(x => {\r\n this.casetypes = x;\r\n });\r\n }\r\n\r\n GetDynamicCaseType() {\r\n if (this.CalledFor == 'Appearance' || (this.CalledFor == 'Application' && this.authService.currentUserValue.profileType =='A')) {\r\n this.placeHolder = 'Select Case Type';\r\n this.caption = 'Case Type';\r\n \r\n } \r\n else if (this.CalledFor == 'Attorney' || (this.CalledFor == 'Application' && this.authService.currentUserValue.profileType =='E')) {\r\n this.placeHolder = 'Select Practice Area';\r\n this.caption = 'Practice Area';\r\n }\r\n }\r\n\r\n GetMinMaxValue() {\r\n this.appearanceService.GetAppearanceMinMaxForFilter().subscribe(app => {\r\n this.options.floor = app.minRate;\r\n this.options.ceil = app.maxRate + 1;\r\n this.value = app.minRate;\r\n this.highValue = app.maxRate;\r\n });\r\n }\r\n GetCountyByStateIds() {\r\n if (this.selectedState.length > 0) {\r\n this.userService.getCountyByStateIds(this.selectedState.toString()).subscribe(x => {\r\n this.counties = x.list;\r\n });\r\n } else {\r\n this.counties = [];\r\n }\r\n }\r\n\r\n GetAppearanceTypes(caseTypeIds: any) {\r\n if (caseTypeIds != \"\") {\r\n let casetypeidsincomma = '';\r\n caseTypeIds.forEach((element: any) => {\r\n if (casetypeidsincomma != '') {\r\n casetypeidsincomma += ',' + element;\r\n } else {\r\n casetypeidsincomma += element;\r\n }\r\n });\r\n this.appearanceService.getAppearanceTypeByCasetypeIds(caseTypeIds).subscribe(x => {\r\n this.appearancetypes = x.list;\r\n });\r\n }\r\n }\r\n GetAllStatus() {\r\n this.appearanceService.getAllStatus().subscribe(x => { this.statuses = x; });\r\n }\r\n\r\n GetAllCounty() {\r\n this.userService.getAllCounty().subscribe(x => { this.counties = x.list; });\r\n }\r\n public array: Array = [];\r\n\r\n SearchFilter(event: any) {\r\n // this.GetAppearanceTypes(event);\r\n // this.GetCountyByStateIds();\r\n // let caches = new Map();\r\n // if (this.selectedState.length > 0) {\r\n // caches.set('stateMasterId', this.selectedState);\r\n // } if (this.selectedCounty.length > 0) {\r\n // caches.set('countyMasterId', this.selectedCounty);\r\n // } if (this.selectedCaseType.length > 0 && (this.CalledFor == 'Attorney' || (this.CalledFor == 'Application' && (this.authService.currentUserValue.profileType =='E' || this.authService.currentUserValue.profileType =='EA')))) {\r\n // caches.set('practiceAreaId', this.selectedCaseType);\r\n // } if (this.selectedCaseType.length > 0 && (this.CalledFor == 'Appearance' || (this.CalledFor == 'Application' && this.authService.currentUserValue.profileType =='A'))) {\r\n // caches.set('caseTypeId', this.selectedCaseType);\r\n // } if (this.selectedStatus.length > 0) {\r\n // caches.set('recordStatus', this.selectedStatus);\r\n // } if (this.selectedLanguage.length > 0) {\r\n // caches.set('languages', this.selectedLanguage);\r\n // }\r\n\r\n // // This code is for temp fix need to check why this.appearListCopy not getting original array - Bug 462\r\n // if(this.appearListCopy?.length > 0 && this.CalledFor == \"Application\"){\r\n // this.appearListCopy = JSON.parse(localStorage.getItem('copy') || '');\r\n // // localStorage.removeItem('copy');\r\n // }\r\n // //\r\n // this.appearList = this.filterPipe.transform(this.appearListCopy, caches, this.CalledFor);\r\n // this.selectedStateText = this.commonService.getDropDownText(this.selectedState, this.states);\r\n // this.selectedCaseTypeText = this.commonService.getDropDownText(this.selectedCaseType, this.casetypes);\r\n // this.listCopyForRateRange = this.appearList;\r\n // this.FilteredList.emit({ list: this.appearList, selectedStateText: this.selectedStateText, selectedCaseTypeText: this.selectedCaseTypeText });\r\n this.FilteredList.emit({ list: this.appearList, selectedStateText: this.selectedState, selectedCaseTypeText: this.selectedCaseType });\r\n \r\n }\r\n\r\n onDateFromChange(fieldName: string) {\r\n var DateFrom = null;\r\n var DateTo = null;\r\n if (this.DateFrom) {\r\n DateFrom = new Date(this.DateFrom);\r\n }\r\n if (this.DateTo) {\r\n DateTo = new Date(this.DateTo);\r\n }\r\n this.appearList = this.dateRangePipe.transform(this.listCopyForRateRange, DateFrom ? DateFrom.toDateString() : \"\", DateTo ? DateTo.toDateString() : \"\", fieldName,this.CalledFor, this.authService.currentUserValue.profileType || '');\r\n this.FilteredList.emit({ list: this.appearList, selectedStateText: this.selectedStateText, selectedCaseTypeText: this.selectedCaseTypeText });\r\n }\r\n\r\n onUserChangeStart(event: any) {\r\n // if (this.CalledFor == 'Appearance') {\r\n // this.appearList = Array.from(this.appearList).filter((x: any) => x.appearance.minRate >= event.value && x.appearance.maxRate <= event.highValue);\r\n // } else {\r\n // this.appearList = Array.from(this.appearList).filter((x: any) => x.minRate >= event.value && x.maxRate <= event.highValue);\r\n // }\r\n // this.FilteredList.emit({ list: this.appearList, selectedStateText: this.selectedStateText, selectedCaseTypeText: this.selectedCaseTypeText });\r\n }\r\n onUserChangeEnd(event: any) {\r\n if(this.appearListCopy?.length > 0 && this.CalledFor == \"Application\"){\r\n this.appearListCopy = JSON.parse(localStorage.getItem('copy') || '');\r\n // localStorage.removeItem('copy');\r\n }\r\n if (this.CalledFor == 'Appearance') {\r\n this.appearList = Array.from(this.listCopyForRateRange).filter((x: any) => x.appearance.minRate >= event.value && x.appearance.maxRate <= event.highValue);\r\n } else if(this.appearListCopy[0]?.attorneyRDTO?.length > 0 && this.CalledFor == \"Application\"){\r\n this.appearList = [];\r\n Array.from(this.appearListCopy).forEach((element: any) => {\r\n if (Array.from(element.attorneyRDTO).filter((x: any) => x.bidAmount >= event.value).length > 0) {\r\n element.attorneyRDTO = Array.from(element.attorneyRDTO).filter((x: any) => x.bidAmount >= event.value && x.bidAmount <= event.highValue);\r\n if(element.attorneyRDTO.length > 0){\r\n this.appearList.push(element);\r\n }\r\n } else {\r\n this.appearList = [];\r\n }\r\n })\r\n \r\n } else {\r\n this.appearList = Array.from(this.appearListCopy).filter((x: any) => x.minRate >= event.value && x.maxRate <= event.highValue);\r\n }\r\n this.FilteredList.emit({ list: this.appearList, selectedStateText: this.selectedStateText, selectedCaseTypeText: this.selectedCaseTypeText });\r\n }\r\n onUserChange(event: any) {\r\n // if (this.CalledFor == 'Appearance') {\r\n // this.appearList = Array.from(this.appearListCopy).filter((x: any) => x.appearance.minRate >= event.value && x.appearance.maxRate <= event.highValue);\r\n // } else {\r\n // this.appearList = Array.from(this.appearList).filter((x: any) => x.minRate >= event.value && x.maxRate <= event.highValue);\r\n // }\r\n // this.FilteredList.emit({ list: this.appearList, selectedStateText: this.selectedStateText, selectedCaseTypeText: this.selectedCaseTypeText });\r\n }\r\n\r\n selectedRating = [1];\r\n Ratings = [\r\n { id: 1, name: '*' },\r\n { id: 2, name: '**' },\r\n { id: 3, name: '***' },\r\n { id: 4, name: '****' },\r\n { id: 5, name: '*****' },\r\n ];\r\n\r\n getLanguage() {\r\n this.appearanceService.getLanguage().subscribe(lang => {\r\n this.Languages = lang.list;\r\n });\r\n }\r\n // ngOnDestroy() {\r\n // this.subscription.unsubscribe()\r\n // }\r\n}\r\n"," \r\n
\r\n
Filters
\r\n
\r\n
\r\n \r\n
\r\n
By {{caption}}:
\r\n
\r\n \r\n \r\n {{casetype.practiceArea}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
By Location:
\r\n
\r\n
\r\n \r\n \r\n {{state.stateName}}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n {{county.countyName}}\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n
By Date:
\r\n
\r\n Date From\r\n
\r\n \r\n
\r\n\r\n Date To\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n
\r\n\r\n \r\n \r\n\r\n \r\n \r\n \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 { Options } from '@angular-slider/ngx-slider';\r\nimport { ChangeDetectorRef, Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { Subscription } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { FilterModel } from 'src/app/models/common';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { CommonService } from 'src/app/services/common.service';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { CommonFilterPipe } from '../../Pipe/common-filter.pipe';\r\nimport { DateRangeFilterPipe } from '../../Pipe/date-range-filter.pipe';\r\n\r\n@Component({\r\n selector: 'app-side-filter',\r\n templateUrl: './side-filter.component.html',\r\n styleUrls: ['./side-filter.component.css']\r\n})\r\nexport class SideFilterComponent implements OnInit {\r\n @Input() CalledFor: string;\r\n @Input() List: any;\r\n @Input() CurrentURL: string = '';\r\n @Output() FilteredList: EventEmitter = new EventEmitter();\r\n public states: any;\r\n public counties: any;\r\n public selectedState = [];\r\n public selectedCounty = [];\r\n public selectedPracticeArea = [];\r\n public appearList: any;\r\n public appearListCopy: any;\r\n public listCopyForRateRange: any;\r\n public value: number = 0;\r\n public highValue: number = 3000;\r\n public casetypes: any[];\r\n public selectedCaseType = [];\r\n public selectedAppearanceType = [];\r\n public selectedStatus = [];\r\n public appearancetypes: any[];\r\n public statuses: any[];\r\n public DateFrom: string;\r\n public status: string = '';\r\n public statusApplication: string = '';\r\n public DateTo: string;\r\n public Languages: any[];\r\n public selectedStateText: any[];\r\n public selectedCaseTypeText: any[];\r\n selectedLanguage = [];\r\n public options: Options = {\r\n floor: 0,\r\n ceil: 3000\r\n };\r\n\r\n public placeHolder: string;\r\n public caption: string;\r\n subscription: Subscription;\r\n AppearanceId: number;\r\n\r\n constructor(private userService: UserService, private route: ActivatedRoute, private authService: AuthService, private commonService: CommonService, private dataService: DataService, private filterPipe: CommonFilterPipe, private appearanceService: AppearanceService,\r\n private dateRangePipe: DateRangeFilterPipe) {\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.GetCaseTypes();\r\n this.GetAllStatus();\r\n this.GetAllState();\r\n this.GetMinMaxValue();\r\n this.getLanguage();\r\n this.appearList = this.List;\r\n this.appearListCopy = this.List;\r\n localStorage.setItem('copy', JSON.stringify(this.appearListCopy));\r\n this.GetDynamicCaseType();\r\n this.GetCountyByStateIds();\r\n if (this.selectedCaseType) {\r\n this.GetAppearanceTypes(this.selectedCaseType);\r\n }\r\n if (this.CalledFor == \"Application\" || this.CalledFor == \"Attorney\") {\r\n this.LoadExternalData();\r\n }\r\n if (this.CalledFor == \"Appearance\") {\r\n this.subscription = this.route.params.subscribe(routeParams => {\r\n this.status = routeParams.status;\r\n this.LoadExternalData();\r\n });\r\n }\r\n\r\n this.route.params.subscribe(routeParams => {\r\n this.statusApplication = routeParams.id;\r\n });\r\n }\r\n // method to prefill side filter after login\r\n LoadExternalData() {\r\n if (this.authService.isLoggedIn()) {\r\n if (this.authService.currentUserValue.profileType == 'A' && this.CalledFor == \"Appearance\") {\r\n if (this.status == 'Open') {\r\n if (this.dataService.getOption().selectedLocation != null && this.dataService.getOption().selectedLocation != undefined && this.dataService.getOption().selectedLocation != '') {\r\n this.selectedState = this.dataService.getOption().selectedLocation;\r\n }\r\n if (this.dataService.getOption().casetypes != null && this.dataService.getOption().casetypes != undefined && this.dataService.getOption().casetypes != '') {\r\n this.selectedCaseType = this.dataService.getOption().casetypes;\r\n }\r\n\r\n } else if (this.status == 'Filled' || this.status == 'Completed' || this.status == 'Expired') {\r\n this.selectedState = (this.dataService.getOption().selectedLocation != null && this.dataService.getOption().selectedLocation != undefined) ? this.dataService.getOption().selectedLocation : [];\r\n this.selectedCaseType = (this.dataService.getOption().casetypes != null && this.dataService.getOption().casetypes != undefined) ? this.dataService.getOption().casetypes : [];\r\n } else {\r\n if (this.dataService.getOption().selectedLocation != null && this.dataService.getOption().selectedLocation != undefined && this.dataService.getOption().selectedLocation != '') {\r\n this.selectedState = this.dataService.getOption().selectedLocation;\r\n }\r\n if (this.dataService.getOption().casetypes != null && this.dataService.getOption().casetypes != undefined && this.dataService.getOption().casetypes != '') {\r\n this.selectedCaseType = this.dataService.getOption().casetypes;\r\n }\r\n }\r\n\r\n // this.GetCountyByStateIds();\r\n // if (this.selectedCaseType) {\r\n // this.GetAppearanceTypes(this.selectedCaseType);\r\n // }\r\n if ((this.dataService.getOption().selectedLocation != null && this.dataService.getOption().selectedLocation != undefined && this.dataService.getOption().selectedLocation.length > 0) || (this.dataService.getOption().casetypes != null && this.dataService.getOption().casetypes != undefined && this.dataService.getOption().casetypes.length > 0)) {\r\n this.SearchFilter(this.selectedCaseType);\r\n }\r\n } else {\r\n this.selectedState = (this.dataService.getOption().selectedLocation != null && this.dataService.getOption().selectedLocation != undefined) ? this.dataService.getOption().selectedLocation : [];\r\n this.selectedCaseType = (this.dataService.getOption().casetypes != null && this.dataService.getOption().casetypes != undefined) ? this.dataService.getOption().casetypes : [];\r\n this.GetCountyByStateIds();\r\n \r\n if ((this.dataService.getOption().selectedLocation != null && this.dataService.getOption().selectedLocation != undefined) || (this.dataService.getOption().casetypes != null && this.dataService.getOption().casetypes != undefined)) {\r\n this.SearchFilter(this.selectedCaseType);\r\n }\r\n }\r\n } else {\r\n this.selectedState = (this.dataService.getOption().selectedLocation != null && this.dataService.getOption().selectedLocation != undefined) ? this.dataService.getOption().selectedLocation : [];\r\n this.selectedCaseType = (this.dataService.getOption().casetypes != null && this.dataService.getOption().casetypes != undefined) ? this.dataService.getOption().casetypes : [];\r\n this.GetCountyByStateIds();\r\n \r\n if ((this.dataService.getOption().selectedLocation != null && this.dataService.getOption().selectedLocation != undefined && this.dataService.getOption().selectedLocation.length > 0) || (this.dataService.getOption().casetypes != null && this.dataService.getOption().casetypes != undefined && this.dataService.getOption().casetypes.length > 0)) {\r\n this.SearchFilter(this.selectedCaseType);\r\n }\r\n }\r\n this.dataService.setOption('selectedLocation', '');\r\n this.dataService.setOption('casetypes', '');\r\n }\r\n\r\n async GetAllState() {\r\n await this.userService.getAllStates().then(x => {\r\n this.states = x.list;\r\n });\r\n }\r\n\r\n GetCaseTypes() {\r\n this.appearanceService.getCaseType().subscribe(x => {\r\n this.casetypes = x;\r\n });\r\n }\r\n\r\n GetDynamicCaseType() {\r\n if (this.CalledFor == 'Appearance' || (this.CalledFor == 'Application' && this.authService.currentUserValue.profileType == 'A')) {\r\n this.placeHolder = 'Select Case Type';\r\n this.caption = 'Case Type';\r\n } else if (this.CalledFor == 'Attorney' || (this.CalledFor == 'Application' &&(this.authService.currentUserValue.profileType == 'E' || this.authService.currentUserValue.profileType =='EA'))) {\r\n this.placeHolder = 'Select Practice Area';\r\n this.caption = 'Practice Area';\r\n } \r\n }\r\n\r\n GetMinMaxValue() {\r\n this.appearanceService.GetAppearanceMinMaxForFilter().subscribe(app => {\r\n this.options.floor = app.minRate;\r\n this.options.ceil = app.maxRate + 1;\r\n this.value = app.minRate;\r\n this.highValue = app.maxRate;\r\n });\r\n }\r\n GetCountyByStateIds() {\r\n if (this.selectedState.length > 0) {\r\n this.userService.getCountyByStateIds(this.selectedState.toString()).subscribe(x => {\r\n this.counties = x.list;\r\n });\r\n } else {\r\n this.counties = [];\r\n }\r\n }\r\n\r\n GetAppearanceTypes(caseTypeIds: any) {\r\n if (caseTypeIds != \"\") {\r\n let casetypeidsincomma = '';\r\n caseTypeIds.forEach((element: any) => {\r\n if (casetypeidsincomma != '') {\r\n casetypeidsincomma += ',' + element;\r\n } else {\r\n casetypeidsincomma += element;\r\n }\r\n });\r\n this.appearanceService.getAppearanceTypeByCasetypeIds(caseTypeIds).subscribe(x => {\r\n this.appearancetypes = x.list;\r\n });\r\n }\r\n }\r\n GetAllStatus() {\r\n this.appearanceService.getAllStatus().subscribe(x => { this.statuses = x; });\r\n }\r\n\r\n GetAllCounty() {\r\n this.userService.getAllCounty().subscribe(x => { this.counties = x.list; });\r\n }\r\n public array: Array = [];\r\n\r\n // called on any side filter changes\r\n SearchFilter(event: any) {\r\n this.GetAppearanceTypes(event);\r\n this.GetCountyByStateIds();\r\n let caches = new Map();\r\n if (this.selectedState.length > 0) {\r\n caches.set('stateMasterId', this.selectedState);\r\n } if (this.selectedCounty.length > 0) {\r\n caches.set('countyMasterId', this.selectedCounty);\r\n } if (this.selectedCaseType.length > 0 && (this.CalledFor == 'Attorney' || (this.CalledFor == 'Application' && (this.authService.currentUserValue.profileType == 'E' || this.authService.currentUserValue.profileType == 'EA')))) {\r\n caches.set('practiceAreaId', this.selectedCaseType);\r\n } if (this.selectedCaseType.length > 0 && (this.CalledFor == 'Appearance' || (this.CalledFor == 'Application' && this.authService.currentUserValue.profileType == 'A'))) {\r\n caches.set('caseTypeId', this.selectedCaseType);\r\n } if (this.selectedStatus.length > 0) {\r\n caches.set('recordStatus', this.selectedStatus);\r\n } if (this.selectedLanguage.length > 0) {\r\n caches.set('languages', this.selectedLanguage);\r\n }\r\n\r\n // This code is for temp fix need to check why this.appearListCopy not getting original array - Bug 462\r\n if (this.appearListCopy?.length > 0 && this.CalledFor == \"Application\") {\r\n this.appearListCopy = JSON.parse(localStorage.getItem('copy') || '');\r\n // localStorage.removeItem('copy');\r\n }\r\n //\r\n this.appearList = this.filterPipe.transform(this.appearListCopy, caches, this.CalledFor);\r\n this.selectedStateText = this.commonService.getDropDownText(this.selectedState, this.states);\r\n this.selectedCaseTypeText = this.commonService.getDropDownText(this.selectedCaseType, this.casetypes);\r\n this.listCopyForRateRange = this.appearList;\r\n // this.FilteredList.emit({ list: this.appearList, selectedStateText: this.selectedStateText, selectedCaseTypeText: this.selectedCaseTypeText });\r\n this.FilteredList.emit({ list: this.appearList, selectedStateText: this.selectedState, selectedCaseTypeText: this.selectedCaseType });\r\n\r\n }\r\n// Called on date change from side filter\r\n onDateFromChange(fieldName: string) {\r\n var DateFrom = null;\r\n var DateTo = null;\r\n if (this.DateFrom) {\r\n DateFrom = new Date(this.DateFrom);\r\n }\r\n if (this.DateTo) {\r\n DateTo = new Date(this.DateTo);\r\n }\r\n this.appearList = this.dateRangePipe.transform(this.listCopyForRateRange?.length > 0 ? this.listCopyForRateRange : this.appearListCopy, DateFrom ? DateFrom.toDateString() : \"\", DateTo ? DateTo.toDateString() : \"\", fieldName, this.CalledFor, this.authService.currentUserValue.profileType || '');\r\n this.FilteredList.emit({ list: this.appearList, selectedStateText: this.selectedStateText, selectedCaseTypeText: this.selectedCaseTypeText });\r\n }\r\n\r\n onUserChangeStart(event: any) {\r\n \r\n }\r\n\r\n //Called on range changes from side filter\r\n onUserChangeEnd(event: any) {\r\n if (this.appearListCopy?.length > 0 && this.CalledFor == \"Application\") {\r\n this.appearListCopy = JSON.parse(localStorage.getItem('copy') || '');\r\n // localStorage.removeItem('copy');\r\n }\r\n if (this.CalledFor == 'Appearance') {\r\n this.appearList = Array.from(this.listCopyForRateRange).filter((x: any) => x.appearance.minRate >= event.value && x.appearance.maxRate <= event.highValue);\r\n } else if (this.appearListCopy[0]?.attorneyRDTO?.length > 0 && this.CalledFor == \"Application\") {\r\n this.appearList = [];\r\n Array.from(this.appearListCopy).forEach((element: any) => {\r\n if (Array.from(element.attorneyRDTO).filter((x: any) => x.bidAmount >= event.value).length > 0) {\r\n element.attorneyRDTO = Array.from(element.attorneyRDTO).filter((x: any) => x.bidAmount >= event.value && x.bidAmount <= event.highValue);\r\n if (element.attorneyRDTO.length > 0) {\r\n this.appearList.push(element);\r\n }\r\n } else {\r\n this.appearList = [];\r\n }\r\n })\r\n\r\n } else {\r\n this.appearList = Array.from(this.appearListCopy).filter((x: any) => x.minRate >= event.value && x.maxRate <= event.highValue);\r\n }\r\n this.FilteredList.emit({ list: this.appearList, selectedStateText: this.selectedStateText, selectedCaseTypeText: this.selectedCaseTypeText });\r\n }\r\n onUserChange(event: any) {\r\n \r\n }\r\n\r\n selectedRating = [1];\r\n Ratings = [\r\n { id: 1, name: '*' },\r\n { id: 2, name: '**' },\r\n { id: 3, name: '***' },\r\n { id: 4, name: '****' },\r\n { id: 5, name: '*****' },\r\n ];\r\n\r\n getLanguage() {\r\n this.appearanceService.getLanguage().subscribe(lang => {\r\n this.Languages = lang.list;\r\n });\r\n }\r\n}\r\n"," \r\n
\r\n
Filters
\r\n
\r\n
\r\n \r\n
\r\n
By {{caption}}:
\r\n
\r\n \r\n \r\n {{casetype.practiceArea}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
By Location:
\r\n
\r\n
\r\n \r\n \r\n {{state.stateName}}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n {{county.countyName}}\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n
By Date:
\r\n
\r\n Date From\r\n
\r\n \r\n
\r\n\r\n Date To\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n
\r\n\r\n \r\n \r\n\r\n \r\n \r\n \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, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\n\r\n@Component({\r\n selector: 'app-top-filter',\r\n templateUrl: './top-filter.component.html',\r\n styleUrls: ['./top-filter.component.css']\r\n})\r\nexport class TopFilterComponent implements OnInit {\r\n\r\n @Input() CalledFor: string;\r\n selectedPracticeArea = [];\r\n selectedState = [];\r\n public caseList: any;\r\n public currentURL: string;\r\n public locations: any;\r\n Placeholder: string = '';\r\n @Input() displayat: string = 'N';\r\n constructor(private appearanceService: AppearanceService, private authService: AuthService, private alertify: AlertifyService, private router: Router, public dataService: DataService, private userService: UserService) {\r\n this.getCurrentURL();\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.authService.isLoggedIn()) {\r\n if (this.authService.currentUserValue.profileType == 'E') {\r\n this.Placeholder = 'Select Practice Area';\r\n } else {\r\n this.Placeholder = 'Select Case Type';\r\n }\r\n } else {\r\n if (this.CalledFor == 'Attorney') {\r\n this.Placeholder = 'Select Practice Area';\r\n } else {\r\n this.Placeholder = 'Select Case Type';\r\n }\r\n }\r\n this.getCaseTypeList();\r\n this.getLocation();\r\n }\r\n\r\n getCurrentURL() {\r\n this.router.events.subscribe((url: any) => this.currentURL = url.url);\r\n }\r\n getCaseTypeList() {\r\n this.appearanceService.getCaseType().subscribe(casetype => {\r\n this.caseList = casetype;\r\n });\r\n }\r\n\r\n getLocation() {\r\n this.userService.getAllState().subscribe(loc => {\r\n this.locations = loc.list;\r\n });\r\n }\r\n\r\n SearchFilter() {\r\n this.getCurrentURL();\r\n this.dataService.setOption('casetypes', '');\r\n this.dataService.setOption('selectedLocation', '');\r\n if (this.selectedPracticeArea.length > 0 || this.selectedState.length > 0) {\r\n if (this.selectedPracticeArea.length > 0) {\r\n this.dataService.setOption('casetypes', this.selectedPracticeArea);\r\n }\r\n if (this.selectedState.length > 0) {\r\n this.dataService.setOption('selectedLocation', this.selectedState);\r\n }\r\n if (this.authService.isLoggedIn()) {\r\n if (this.authService.currentUserValue.profileType == 'E' || this.authService.currentUserValue.profileType == 'I' || (this.authService.currentUserValue.profileType == '' && this.authService.currentUserValue.parentUserId != null)) {\r\n this.router.navigate(['/']).then(() => { this.router.navigate(['attorney-list']); });\r\n } else if (this.authService.currentUserValue.profileType == 'A') {\r\n this.router.navigate(['/']).then(() => { this.router.navigate(['appearance-list']); });\r\n } else if (this.authService.currentUserValue.profileType == 'EA') {\r\n this.router.navigate(['/']).then(() => { this.router.navigate(['attorney-list']); });\r\n } else if (this.authService.currentUserValue.profileType == \"\" && this.authService.currentUserValue.parentUserId == null && this.authService.currentUserValue.recordStatus != 'I') {\r\n this.alertify.warning('Please complete your profile first.');\r\n this.router.navigate(['profile']);\r\n } else if (this.authService.currentUserValue.profileType == \"\" && this.authService.currentUserValue.recordStatus == 'I') {\r\n this.router.navigate(['verification']);\r\n }\r\n } else {\r\n if (this.CalledFor == 'Attorney') {\r\n this.router.navigate(['/']).then(() => { this.router.navigate(['attorney-list']); });\r\n } else if (this.CalledFor == 'Appearance') {\r\n this.router.navigate(['/']).then(() => { this.router.navigate(['appearance-list']); });\r\n }\r\n }\r\n\r\n this.selectedState = [];\r\n this.selectedPracticeArea = [];\r\n } else {\r\n this.alertify.error('Please select at least one option.');\r\n }\r\n }\r\n\r\n SaveSearchLog(){\r\n \r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n \r\n \r\n {{case?.practiceArea}}\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{loc?.stateName}}\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n","export const CommonConstant = {\r\n FILE_LENGTH: 5,\r\n\r\n ALLOWED_FILE_TYPES: ['docx', 'xlsx', 'pdf', 'jpeg', 'zip', 'jpg', 'png', 'doc', 'txt'],\r\n\r\n RESPONSE_MESSAGES: {\r\n FILE_TYPE_ERROR: 'This file type is not supported.',\r\n FIEL_LENGTH_ERROR: 'You cannot upload more than 5 files.',\r\n FILE_SIZE_ERROR: 'File size should be less than 10 MB.',\r\n MB_SIZE : 10485760 // for 10 MB\r\n },\r\n PROFILE_MESSAGES:{\r\n SELECT_PAYMENT_ERROR: 'Please select a Payment Method Type.',\r\n SELECT_BUSINESS_ERROR:'Please select Business Type.',\r\n ALL_REQUIRED_ERROR: 'Please fill in all required fields.',\r\n SELECT_BARNO_ERROR: 'Please enter at least one bar number.'\r\n }\r\n}","import { CommonModule } from \"@angular/common\";\r\n\r\nimport { NgModule } from \"@angular/core\";\r\n\r\n// import { MatButtonModule } from \"@angular/material/button\";\r\n\r\n// import { MatCardModule } from \"@angular/material/card\";\r\n\r\n// import { MatCheckboxModule } from \"@angular/material/checkbox\";\r\n\r\nimport { MatDialogModule } from \"@angular/material/dialog\";\r\n\r\n// import { MatDividerModule } from \"@angular/material/divider\";\r\n\r\n// import { MatExpansionModule } from \"@angular/material/expansion\";\r\n\r\n// import { MatFormFieldModule } from \"@angular/material/form-field\";\r\n\r\n import { MatIconModule } from \"@angular/material/icon\";\r\n\r\n// import { MatInputModule } from \"@angular/material/input\";\r\n\r\n// import { MatListModule } from \"@angular/material/list\";\r\n\r\n// import { MatProgressBarModule } from \"@angular/material/progress-bar\";\r\n\r\n// import { MatProgressSpinnerModule } from \"@angular/material/progress-spinner\";\r\n\r\n// import { MatSidenavModule } from \"@angular/material/sidenav\";\r\n\r\n// import { MatStepperModule } from \"@angular/material/stepper\";\r\n\r\n// import { MatToolbarModule } from \"@angular/material/toolbar\";\r\n\r\n \r\n\r\n@NgModule({\r\n\r\n declarations: [],\r\n\r\n imports: [CommonModule, MatIconModule],\r\n\r\n exports: [\r\n\r\n // MatStepperModule,\r\n\r\n // MatCheckboxModule,\r\n\r\n // MatInputModule,\r\n\r\n // MatFormFieldModule,\r\n\r\n MatIconModule,\r\n\r\n // MatButtonModule,\r\n\r\n // MatCardModule,\r\n\r\n // MatDividerModule,\r\n\r\n // MatExpansionModule,\r\n\r\n // MatListModule,\r\n\r\n // MatToolbarModule,\r\n\r\n // MatSidenavModule,\r\n\r\n // MatProgressSpinnerModule,\r\n\r\n // MatProgressBarModule,\r\n\r\n MatDialogModule\r\n\r\n ]\r\n\r\n})\r\n\r\nexport class MaterialModule {}\r\n\r\n ","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'amountToWords'\r\n})\r\nexport class AmountToWordsPipe implements PipeTransform {\r\n transform(value: number): string {\r\n if (isNaN(value)) {\r\n return 'Invalid amount';\r\n }\r\n\r\n const units = ['Zero', 'One', 'Two', 'Three', 'Four', 'Five', 'Six', 'Seven', 'Eight', 'Nine'];\r\n const tens = [\r\n '', 'Ten', 'Twenty', 'Thirty', 'Forty', 'Fifty', 'Sixty', 'Seventy', 'Eighty', 'Ninety'\r\n ];\r\n const scales = [\r\n '', 'Thousand', 'Million', 'Billion', 'Trillion'\r\n ];\r\n\r\n let amount = Math.abs(value);\r\n let decimal = Math.round((amount - Math.floor(amount)) * 100);\r\n let numWords = '';\r\n\r\n if (amount === 0) {\r\n numWords = units[0];\r\n } else {\r\n let scaleCounter = 0;\r\n while (amount > 0) {\r\n let threeDigits = amount % 1000;\r\n if (threeDigits !== 0) {\r\n let digitWords = '';\r\n\r\n if (threeDigits >= 100) {\r\n digitWords += units[Math.floor(threeDigits / 100)] + ' Hundred ';\r\n threeDigits %= 100;\r\n }\r\n\r\n if (threeDigits >= 10 && threeDigits <= 19) {\r\n digitWords += units[threeDigits] + ' ';\r\n } else {\r\n digitWords += tens[Math.floor(threeDigits / 10)] + ' ';\r\n threeDigits %= 10;\r\n\r\n if (threeDigits > 0) {\r\n digitWords += units[threeDigits] + ' ';\r\n }\r\n }\r\n\r\n numWords = digitWords + scales[scaleCounter] + ' ' + numWords;\r\n }\r\n\r\n scaleCounter++;\r\n amount = Math.floor(amount / 1000);\r\n }\r\n }\r\n\r\n let decimalWords = '';\r\n if (decimal > 0) {\r\n if (decimal >= 10 && decimal <= 19) {\r\n decimalWords = units[decimal] + ' ';\r\n } else {\r\n decimalWords = tens[Math.floor(decimal / 10)] + ' ';\r\n decimal %= 10;\r\n\r\n if (decimal > 0) {\r\n decimalWords += units[decimal] + ' ';\r\n }\r\n }\r\n\r\n numWords += (value < 0 ? 'Minus ' : '') + 'and ' + decimalWords + 'Cents';\r\n } else if (value === 0) {\r\n numWords = 'Zero';\r\n }\r\n\r\n return (value < 0 ? 'Minus ' : '') + \"dollar \" + numWords.trim().replace(\"undefined \", \"\") + \" only\";\r\n }\r\n}\r\n\r\n// return (value < 0 ? 'Minus ' : '') + \"dollar \" + numWords.trim()+ \" only\";\r\n// }\r\n// }\r\n\r\n// return \"dollar \" + numWords.trim()+ \" only\";\r\n// }\r\n// }\r\n\r\n// return \"dollar \" + result.trim() + \" only\";\r\n// }\r\n// }\r\n// }\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'commonFilter'\r\n})\r\nexport class CommonFilterPipe implements PipeTransform {\r\n\r\n\r\n transform(items: any[], searchText: Map, targetObject?: string): any[] {\r\n let resultArray: any[] = [];\r\n let i = 0;\r\n // return empty array if array is falsy\r\n if (!items) { return []; }\r\n\r\n if (items) {\r\n if (searchText.size > 0) {\r\n if (targetObject == 'Appearance') {\r\n for (let key of searchText.keys()) {\r\n i = i + 1;\r\n if (i > 1) {\r\n resultArray = Array.from(resultArray).filter((x: any) => Array.from(searchText.get(key)).includes(x.appearance[key]));\r\n } else {\r\n resultArray = Array.from(items).filter((x: any) => Array.from(searchText.get(key)).includes(x.appearance[key]));\r\n }\r\n }\r\n }\r\n else if (items[0]?.attorneyRDTO?.length > 0 && targetObject == \"Application\") {\r\n for (let key of searchText.keys()) {\r\n i = i + 1;\r\n if (key == 'languages' || key == 'practiceAreaId') {\r\n if (i > 1) {\r\n Array.from(resultArray).forEach(element => {\r\n if (Array.from(element.attorneyRDTO).filter((x: any) => Array.from(searchText.get(key)).some(r => x[key].includes(r))).length > 0) {\r\n element.attorneyRDTO = Array.from(element.attorneyRDTO).filter((x: any) => Array.from(searchText.get(key)).some(r => x[key].includes(r)));\r\n resultArray.push(element);\r\n } else {\r\n resultArray = [];\r\n }\r\n })\r\n } else {\r\n Array.from(items).forEach(element => {\r\n if (Array.from(element.attorneyRDTO).filter((x: any) => Array.from(searchText.get(key)).some(r => x[key].includes(r))).length > 0) {\r\n element.attorneyRDTO = Array.from(element.attorneyRDTO).filter((x: any) => Array.from(searchText.get(key)).some(r => x[key].includes(r)));\r\n resultArray.push(element);\r\n } else {\r\n resultArray = [];\r\n }\r\n })\r\n }\r\n } else {\r\n if (i > 1) {\r\n Array.from(resultArray).forEach(element => {\r\n if (Array.from(element.attorneyRDTO).filter((x: any) => Array.from(searchText.get(key)).includes(x[key])).length > 0) {\r\n resultArray.push(element);\r\n }\r\n })\r\n } else {\r\n Array.from(items).forEach(element => {\r\n if (Array.from(element.attorneyRDTO).filter((x: any) => Array.from(searchText.get(key)).includes(x[key])).length > 0) {\r\n resultArray.push(element);\r\n }\r\n })\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n for (let key of searchText.keys()) {\r\n i = i + 1;\r\n if (key == 'languages' || key == 'practiceAreaId') {\r\n if (i > 1) {\r\n resultArray = Array.from(resultArray).filter((x: any) => Array.from(searchText.get(key)).some(r => x[key].includes(r)));\r\n } else {\r\n resultArray = Array.from(items).filter((x: any) => Array.from(searchText.get(key)).some(r => x[key].includes(r)));\r\n }\r\n } else {\r\n if (i > 1) {\r\n resultArray = Array.from(resultArray).filter((x: any) => Array.from(searchText.get(key)).includes(x[key]));\r\n } else {\r\n resultArray = Array.from(items).filter((x: any) => Array.from(searchText.get(key)).includes(x[key]));\r\n }\r\n }\r\n }\r\n }\r\n } else {\r\n resultArray = items;\r\n }\r\n return resultArray;\r\n }\r\n return [];\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'dateAgo'\r\n})\r\nexport class DateAgoPipe implements PipeTransform {\r\n\r\n transform(value: any, ...args: unknown[]): unknown {\r\n var date = new Date();\r\n if (!value) { return 'a long time ago'; }\r\n const d1:Date = new Date(); \r\n const utcDate:any = new Date( d1.getUTCFullYear(), d1.getUTCMonth(), d1.getUTCDate(), d1.getUTCHours(), d1.getUTCMinutes(), d1.getUTCSeconds() );\r\n //for change it to pst.\r\n utcDate.setHours(utcDate.getHours()-7);\r\n // currentDate.setMinutes(currentDate.getMinutes() + currentDate.getTimezoneOffset());\r\n // currentDate.tim\r\n let time = (utcDate - Date.parse(value)) / 1000 ;\r\n if (time < 10) {\r\n return 'just now';\r\n } else if (time < 60) {\r\n return 'a moment ago';\r\n }\r\n const divider = [60, 60, 24, 30, 12];\r\n const string = [' second', ' minute', ' hour', ' day', ' month', ' year'];\r\n let i;\r\n for (i = 0; Math.floor(time / divider[i]) > 0; i++) {\r\n time /= divider[i];\r\n }\r\n const plural = Math.floor(time) > 1 ? 's' : '';\r\n return Math.floor(time) + string[i] + plural + ' ago';\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n import { DatePipe } from '@angular/common';\r\n \r\n @Pipe({\r\n name: 'DateFormat'\r\n })\r\n export class DateFormatPipe extends \r\n DatePipe implements PipeTransform {\r\n transform(value: any, args?: any): any {\r\n return super.transform(value, \"d MMMM y h:mm a\");\r\n }\r\n }","import { DatePipe } from '@angular/common';\r\nimport { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'dateRangeFilter'\r\n})\r\nexport class DateRangeFilterPipe implements PipeTransform {\r\n\r\n transform(items: any[], DateFrom: string, DateTo: string, fieldName: string, calledFor: string, profileType: string) {\r\n\r\n if (items && items.length) {\r\n var datePipe = new DatePipe(\"en-US\");\r\n DateFrom = DateFrom != null ? datePipe.transform(DateFrom, 'yyyy-MM-dd') || '' : '';\r\n DateTo = DateTo != null ? datePipe.transform(DateTo, 'yyyy-MM-dd') || '' : '';\r\n if(calledFor=='Appearance'){\r\n if (DateFrom != null && DateTo == \"\") {\r\n return items.filter(x => (datePipe.transform(x.appearance[fieldName], 'yyyy-MM-dd') || '') >= DateFrom);\r\n }\r\n if (DateFrom == \"\" && DateTo != null) {\r\n return items.filter(x => (datePipe.transform(x.appearance[fieldName], 'yyyy-MM-dd') || '') <= DateTo);\r\n }\r\n if (DateFrom != null && DateTo != null) {\r\n return items.filter(x => (datePipe.transform(x.appearance[fieldName], 'yyyy-MM-dd') || '') >= DateFrom && (datePipe.transform(x.appearance[fieldName], 'yyyy-MM-dd') || '') <= DateTo);\r\n }\r\n } else if(calledFor=='Application' && (profileType=='E' || profileType=='EA' || profileType =='I')) {\r\n if (DateFrom != null && DateTo == \"\") {\r\n return items.filter(x => (datePipe.transform(x.appearanceRDTO[fieldName], 'yyyy-MM-dd') || '') >= DateFrom);\r\n }\r\n if (DateFrom == \"\" && DateTo != null) {\r\n return items.filter(x => (datePipe.transform(x.appearanceRDTO[fieldName], 'yyyy-MM-dd') || '') <= DateTo);\r\n }\r\n if (DateFrom != null && DateTo != null) {\r\n return items.filter(x => (datePipe.transform(x.appearanceRDTO[fieldName], 'yyyy-MM-dd') || '') >= DateFrom && (datePipe.transform(x.appearanceRDTO[fieldName], 'yyyy-MM-dd') || '') <= DateTo);\r\n }\r\n } else if(calledFor=='Application' && profileType=='A') {\r\n if (DateFrom != null && DateTo == \"\") {\r\n return items.filter(x => (datePipe.transform(x[fieldName], 'yyyy-MM-dd') || '') >= DateFrom);\r\n }\r\n if (DateFrom == \"\" && DateTo != null) {\r\n return items.filter(x => (datePipe.transform(x[fieldName], 'yyyy-MM-dd') || '') <= DateTo);\r\n }\r\n if (DateFrom != null && DateTo != null) {\r\n return items.filter(x => (datePipe.transform(x[fieldName], 'yyyy-MM-dd') || '') >= DateFrom && (datePipe.transform(x[fieldName], 'yyyy-MM-dd') || '') <= DateTo);\r\n }\r\n }\r\n return items;\r\n }\r\n else {\r\n return items;\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'filterPipe'\r\n})\r\nexport class FilterPipePipe implements PipeTransform {\r\n\r\n transform(items: any[], searchText: any[], fieldName: string, targetObject?: string): any[] {\r\n\r\n // return empty array if array is falsy\r\n if (!items) { return []; }\r\n\r\n // return the original array if search text is empty\r\n if (!searchText) { return items; }\r\n\r\n // convert the searchText to lower case\r\n //searchText = searchText.toLowerCase();\r\n\r\n // retrun the filtered array\r\n //return items.filter(item => {\r\n if (items) {\r\n //return item[fieldName].includes(searchText);\r\n if (targetObject == 'Appearance') {\r\n return Array.from(items).filter((x: any) => Array.from(searchText).includes(x.appearance[fieldName]));\r\n } else {\r\n return Array.from(items).filter((x: any) => Array.from(searchText).includes(x[fieldName]));\r\n }\r\n //return Array.from(items).filter((x: any) => Array.from(searchText).some(r => x[fieldName].includes(r)));\r\n }\r\n return [];\r\n //});\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { SideFilterComponent } from './Components/side-filter/side-filter.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AppearanceRoutingModule } from '../appearance/appearance-routing.module';\r\nimport { NgxSliderModule } from '@angular-slider/ngx-slider';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { CommonFilterPipe } from './Pipe/common-filter.pipe';\r\nimport { TopFilterComponent } from './Components/top-filter/top-filter.component';\r\nimport { NgIdleModule } from '@ng-idle/core';\r\nimport { IdleDialogComponent } from '../Idle/idle-dialog/idle-dialog.component';\r\nimport { IdleComponent } from '../Idle/idle/idle.component';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatIcon } from '@angular/material/icon';\r\nimport { MaterialModule } from './Material.module';\r\nimport { DateFormatPipe } from './Pipe/date-format.pipe';\r\nimport { SideFilterBEComponent } from './Components/side-filter-be/side-filter.component';\r\nimport { AmountToWordsPipe } from './Pipe/amount-to-words.pipe';\r\n\r\n@NgModule({\r\n declarations: [\r\n SideFilterComponent,\r\n SideFilterBEComponent,\r\n CommonFilterPipe,\r\n TopFilterComponent,\r\n IdleComponent,\r\n IdleDialogComponent,\r\n DateFormatPipe,\r\n AmountToWordsPipe\r\n ],\r\n imports: [\r\n CommonModule,\r\n AppearanceRoutingModule,\r\n NgxSliderModule,\r\n BrowserModule,\r\n NgbModule,\r\n NgxSliderModule,\r\n NgSelectModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MaterialModule,\r\n NgIdleModule,\r\n NgIdleModule.forRoot()\r\n ],\r\n exports:[SideFilterComponent,SideFilterBEComponent, TopFilterComponent, IdleComponent, IdleDialogComponent,DateFormatPipe,AmountToWordsPipe],\r\n providers: [\r\n CommonFilterPipe\r\n ]\r\n})\r\nexport class SharedModule { }\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { approveattorney } from 'src/app/models/attorney';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AttorneyService } from 'src/app/services/attorney.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-approve',\r\n templateUrl: './approve.component.html',\r\n styleUrls: ['./approve.component.css']\r\n})\r\nexport class ApproveComponent implements OnInit {\r\n\r\n @Input() src: any;\r\n @Input() appearanceId: any;\r\n public Message: string;\r\n constructor(public activeModal: NgbActiveModal,\r\n public modalService: NgbModal,\r\n private alertify: AlertifyService,\r\n private attorneyService: AttorneyService,\r\n private authService: AuthService,\r\n private router: Router) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ApproveAttorney() {\r\n // if (this.Message != null) {\r\n const attorney: approveattorney = {\r\n appearanceId: this.appearanceId,\r\n approvedById: this.authService.currentUserValue.id || 0,\r\n attorneyId: this.src.userMasterId,\r\n message: this.Message\r\n }\r\n\r\n this.attorneyService.approveAttorney(attorney).subscribe(result => {\r\n if (result.isSuccess) {\r\n this.alertify.success(result.message);\r\n this.activeModal.dismiss('Cross click');\r\n this.router.navigate(['appearance-list','Filled']);\r\n }\r\n });\r\n // }else{\r\n // this.alertify.error(\"Please Enter message to approve !\");\r\n // }\r\n }\r\n}\r\n","
\r\n
\r\n
Approve Attorney
\r\n \r\n
\r\n \r\n
\r\n \r\n
You are approving {{src.firstName}} *****!
\r\n
\r\n

All other applications will be automatically marked as \"Not Selected.\"

\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { CompleteAppearance } from 'src/app/models/appearance';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-complete',\r\n templateUrl: './complete.component.html',\r\n styleUrls: ['./complete.component.css']\r\n})\r\nexport class CompleteComponent implements OnInit {\r\n\r\n @Input() src: any;\r\n @Output() passEntry: EventEmitter = new EventEmitter();\r\n public Message: string;\r\n constructor(public activeModal: NgbActiveModal,\r\n public modalService: NgbModal,\r\n private alertify: AlertifyService,\r\n private appearanceService: AppearanceService,\r\n private authService: AuthService,\r\n private router: Router) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n CompleteAppearance(){\r\n const complete: CompleteAppearance={\r\n attorneyId:this.authService.currentUserValue.id || 0,\r\n message: this.Message\r\n }\r\n\r\n this.appearanceService.CompleteAppearance(complete, this.src).subscribe(appearance => {\r\n if (appearance.isSuccess) {\r\n this.alertify.success(appearance.message);\r\n // this.passEntry.emit();\r\n this.activeModal.dismiss('Cross click');\r\n //Following 2 lines modified by atul on 3 oct 22 on mehul's request\r\n //this.router.navigate(['appearance-list','Completed']);\r\n this.router.navigate(['invoice-entry', this.src])\r\n }else{\r\n this.alertify.error(appearance.message);\r\n }\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
Marking Appearance Complete
\r\n \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, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { InviteAttorney } from 'src/app/models/attorney';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { AttorneyService } from 'src/app/services/attorney.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-invite-attorney',\r\n templateUrl: './invite-attorney.component.html',\r\n styleUrls: ['./invite-attorney.component.css']\r\n})\r\nexport class InviteAttorneyComponent implements OnInit {\r\n\r\n @Input() src: any;\r\n @Input() appearanceId: any;\r\n public Appearances: any;\r\n public appearanceIds: any = [];\r\n Message: string;\r\n constructor(public activeModal: NgbActiveModal,\r\n public modalService: NgbModal,\r\n private alertify: AlertifyService,\r\n private appearanceService: AppearanceService,\r\n private attorneyService: AttorneyService,\r\n private spinner: NgxSpinnerService,\r\n private authService: AuthService) { }\r\n\r\n ngOnInit(): void {\r\n this.GetAppearanceListForEmployer(this.authService.currentUserValue.id || 0, 'Open,Invited,Applied,ReOpen');\r\n }\r\n\r\n GetAppearanceListForEmployer(userId: Number, status: string) {\r\n this.spinner.show();\r\n this.appearanceService.getAppearanceListbyUserId(userId, status).subscribe(appearance => {\r\n this.spinner.hide();\r\n this.Appearances = appearance; \r\n });\r\n }\r\n\r\n SelectToInvite(event: any, appearance: any) {\r\n if (event.target.checked) {\r\n if (!this.appearanceIds.includes(appearance.appearance.autoId))\r\n this.appearanceIds.push(appearance.appearance.autoId);\r\n } else {\r\n let index = this.appearanceIds.indexOf(appearance.appearance.autoId);\r\n if (index > -1) {\r\n this.appearanceIds.splice(index, 1);\r\n }\r\n }\r\n }\r\n inviteAttorney() {\r\n const attorney: InviteAttorney = {\r\n appearanceId: this.appearanceIds,\r\n invitedAppliedId: this.authService.currentUserValue.id,\r\n attorneyId: this.src,\r\n message: this.Message\r\n }\r\n\r\n this.attorneyService.inviteAttorney(attorney).subscribe(attorney => {\r\n if (attorney.isSuccess) {\r\n if(attorney.model.alreadyPresentRecords.length >0){\r\n this.alertify.warning(attorney.model.alreadyPresentRecords.toString()+' has already been invited!');\r\n }else {\r\n this.alertify.success(attorney.message);\r\n }\r\n this.activeModal.dismiss('Cross click');\r\n }\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
Invite Attorney
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Case No.Case TitleAppearance DateCourt Name
{{appearance.appearance.caseNo}}{{appearance.appearance.caseTitle}}{{appearance.appearance.appearanceDateTime | DateFormat}}{{appearance.appearance.courtName}}
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n\r\n\r\n \r\n
You don't have Appearances to invite, Please create before inviting.
\r\n \r\n

Loading...

\r\n
\r\n
\r\n
","import { Component, Input, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { attorney } from 'src/app/models/attorney';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AttorneyService } from 'src/app/services/attorney.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-invite',\r\n templateUrl: './invite.component.html',\r\n styleUrls: ['./invite.component.css']\r\n})\r\nexport class InviteComponent implements OnInit {\r\n\r\n @Input() src: any;\r\n @Input() appearanceId : any;\r\n @Input() AttorneyList: any;\r\n Message: string;\r\n constructor(public activeModal: NgbActiveModal,\r\n public modalService: NgbModal,\r\n private alertify: AlertifyService,\r\n private spinner: NgxSpinnerService,\r\n private attorneyService: AttorneyService,\r\n private authService: AuthService,\r\n private route: ActivatedRoute, \r\n private router: Router) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n inviteAttorney(){\r\n this.spinner.show();\r\n const attorney: attorney={\r\n appearanceId: this.appearanceId,\r\n invitedAppliedId: this.authService.currentUserValue.id,\r\n attorneyId:this.src,\r\n message: this.Message\r\n }\r\n this.attorneyService.inviteAttorney(attorney).subscribe(attorney => {\r\n this.spinner.hide();\r\n if (attorney.isSuccess) {\r\n if(attorney.model.alreadyPresentRecords.length >0){\r\n this.alertify.warning(attorney.model.alreadyPresentRecords.toString()+' has already been invited!');\r\n }else {\r\n this.alertify.success(attorney.message);\r\n }\r\n \r\n this.activeModal.dismiss('Cross click');\r\n this.router.navigate(['applications','Invited']);\r\n }\r\n });\r\n }\r\n\r\n DeleteAttornies(attorney: any){\r\n let index = this.AttorneyList.indexOf(attorney);\r\n if (index > -1) {\r\n this.AttorneyList.splice(index, 1);\r\n this.src.splice(index,1);\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
Invite Attorney
\r\n \r\n
\r\n
\r\n
1\" class=\"attorney-list\">\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Selected AttorneyAction
{{attorney.firstName}} *****
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n

Loading...

","import { Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AddMessage } from 'src/app/models/message';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { CommunicationService } from 'src/app/services/communication.service';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\n\r\n@Component({\r\n selector: 'app-messages',\r\n templateUrl: './messages.component.html',\r\n styleUrls: ['./messages.component.css']\r\n})\r\nexport class MessagesComponent implements OnInit {\r\n\r\n @Input() src: any;\r\n @Input() appearanceId: any;\r\n @ViewChild('chatHistory') private chatHistory: ElementRef;\r\n\r\n public Message: string;\r\n public currentUser: Number;\r\n public Messages: any;\r\n\r\n constructor(\r\n public activeModal: NgbActiveModal,\r\n public modalService: NgbModal,\r\n private alertify: AlertifyService,\r\n private communicationService: CommunicationService,\r\n private authService: AuthService,\r\n private router: Router,\r\n private spinner: NgxSpinnerService,\r\n ) { }\r\n\r\n ngAfterViewInit() {\r\n // Scroll to bottom when the view is initially loaded\r\n this.scrollToBottom();\r\n }\r\n\r\n ngAfterViewChecked() {\r\n // Scroll to bottom after any view changes (e.g., new messages)\r\n this.scrollToBottom();\r\n }\r\n\r\n scrollToBottom(): void {\r\n try {\r\n this.chatHistory.nativeElement.scrollTop = this.chatHistory.nativeElement.scrollHeight;\r\n } catch (err) {\r\n console.error('Error while scrolling to bottom', err);\r\n }\r\n }\r\n ngOnInit() {\r\n this.currentUser = this.authService.currentUserValue.id || 0;\r\n this.GetAllMessageByAppearanceId();\r\n }\r\n\r\n AddMessage() {\r\n this.spinner.show();\r\n const addMessage: AddMessage = {\r\n parentMessageId: 0,\r\n appearanceId: this.appearanceId,\r\n fromId: this.authService.currentUserValue.id || 0,\r\n toId: this.src,\r\n message: this.Message,\r\n fromIdRole: this.authService.currentUserValue.profileType || ''\r\n }\r\n\r\n this.communicationService.addMessage(addMessage).subscribe(msg => {\r\n if (msg.isSuccess) {\r\n this.GetAllMessageByAppearanceId();\r\n this.alertify.success(msg.message);\r\n this.Message = '';\r\n this.spinner.hide();\r\n setTimeout(() => this.scrollToBottom(), 100);\r\n }\r\n });\r\n }\r\n reply(msg: any) {\r\n this.Message = msg.fromFirstName + ':';\r\n this.src = msg.fromId;\r\n }\r\n GetAllMessageByAppearanceId() {\r\n //this.authService.currentUserValue.id\r\n this.communicationService.getMessageByAppearanceId(this.appearanceId, this.src).subscribe(msg => {\r\n this.Messages = msg//.reverse();\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
Messages
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
    \r\n
  • \r\n
    \r\n {{msg.createdDateTime | DateFormat}}    \r\n {{msg.fromFirstName}} \r\n
    \r\n
    \r\n {{msg.createdDateTime | DateFormat}}    \r\n {{msg.fromFirstName}} \r\n \r\n
    \r\n
    \r\n {{msg.message}}\r\n
    \r\n\r\n
    \r\n {{msg.message}}\r\n
    \r\n
  • \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n

Sending...

\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { NotificationsService } from 'src/app/services/notifications.service';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\n@Component({\r\n selector: 'app-notifications',\r\n templateUrl: './notifications.component.html',\r\n styleUrls: ['./notifications.component.css']\r\n})\r\nexport class NotificationsComponent implements OnInit {\r\n\r\n public notifications: any\r\n public selectAll: boolean = false;\r\n constructor(private notificationService: NotificationsService, private domSanitizer: DomSanitizer, private authService: AuthService,private alertify: AlertifyService) { }\r\n\r\n ngOnInit(): void {\r\n const UserId = this.authService.currentUserValue.id;\r\n this.GetNotifications(UserId);\r\n }\r\n\r\n GetNotifications(UserId: any) {\r\n this.selectAll =false;\r\n this.notificationService.getAllNotifications(UserId).subscribe(notification => {\r\n notification.model.forEach((element: any) => {\r\n element.formattedtriggerContent = this.domSanitizer.bypassSecurityTrustHtml(element.triggerContent);\r\n element.selected =false;\r\n if(element.recordStatus==\"R\")\r\n element.class =\"notification-readed\";\r\n else\r\n element.class =\"notification-unreaded\";\r\n });\r\n this.notifications = notification.model;\r\n });\r\n }\r\n\r\n CheckAll(){\r\n //this.selectAll = !this.selectAll;\r\n if(this.selectAll)\r\n {\r\n this.notifications.forEach((element: any) => { \r\n element.selected =true;\r\n });\r\n }\r\n else{\r\n this.notifications.forEach((element: any) => { \r\n element.selected =false;\r\n });\r\n }\r\n\r\n }\r\n\r\n DeleteNotification(notificationId:number){\r\n var autoIds: number[]= [];\r\n if(notificationId> 0)\r\n {\r\n autoIds.push(notificationId);\r\n }\r\n else{\r\n Array.from(this.notifications).filter((x:any)=>x.selected).forEach((x:any) =>{ \r\n autoIds.push(x.autoId);\r\n }); \r\n }\r\n Array.from(this.notifications).filter((x:any)=>x.selected).forEach((x:any) =>{ \r\n autoIds.push(x.autoId);\r\n });\r\n this.notificationService.deleteNotifications(autoIds).subscribe(res => {\r\n if(res.isSuccess)\r\n {\r\n if(notificationId> 0){\r\n var index = this.notifications.indexOf(this.notifications.find((x:any)=>x.autoId == notificationId)); \r\n if(index>-1)\r\n {\r\n this.notifications.splice(index, 1);\r\n this.alertify.success(res.message);\r\n }\r\n }\r\n else{\r\n this.alertify.success(res.message);\r\n const UserId = this.authService.currentUserValue.id;\r\n this.GetNotifications(UserId);\r\n }\r\n }\r\n });\r\n }\r\n\r\n MarkReadNotification(notificationId:number){\r\n var autoIds: number[]= [];\r\n if(notificationId> 0)\r\n {\r\n autoIds.push(notificationId);\r\n }\r\n else{\r\n Array.from(this.notifications).filter((x:any)=>x.selected).forEach((x:any) =>{ \r\n autoIds.push(x.autoId);\r\n }); \r\n }\r\n this.notificationService.markReadNotifications(autoIds).subscribe(res => {\r\n if(res.isSuccess)\r\n {\r\n if(notificationId> 0){\r\n var index = this.notifications.indexOf(this.notifications.find((x:any)=>x.autoId == notificationId)); \r\n if(index>-1)\r\n {\r\n this.notifications[index].class =\"notification-readed\";\r\n }\r\n }\r\n else{\r\n this.alertify.success(res.message);\r\n const UserId = this.authService.currentUserValue.id;\r\n this.GetNotifications(UserId);\r\n }\r\n }\r\n });\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n

Notifications

\r\n
    \r\n
  1. Home
  2. \r\n
  3. Notifications
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Showing {{notifications?.length}} notifications

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
Select All\r\n \r\n Mark read | \r\n \r\n Delete
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\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, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { attorneyreject } from 'src/app/models/attorney';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AttorneyService } from 'src/app/services/attorney.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-reject',\r\n templateUrl: './reject.component.html',\r\n styleUrls: ['./reject.component.css']\r\n}) //Following class modified by atul on 17 jun 22 on mehul's request\r\nexport class RejectComponent implements OnInit {\r\n\r\n @Input() src: any;\r\n @Input() appearanceId: any;\r\n public RejectReason: string;\r\n\r\n constructor(public activeModal: NgbActiveModal,\r\n public modalService: NgbModal,\r\n public authService: AuthService,\r\n private alertify: AlertifyService,\r\n private attorneyService: AttorneyService,\r\n private router: Router) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n RejectAttorney() {\r\n if (this.RejectReason != null) {\r\n const attorney: attorneyreject = {\r\n appearanceId: this.appearanceId,\r\n attorneyId: this.src.userMasterId,\r\n message: this.RejectReason\r\n }\r\n if(this.authService.currentUserValue.profileType == 'A'){ \r\n this.attorneyService.rejectAttorneyByAttorney(attorney).subscribe(result => {\r\n if (result.isSuccess) {\r\n this.alertify.success(result.message);\r\n this.activeModal.dismiss('Cross click');\r\n this.router.navigate(['/applications','Rejected']);\r\n }\r\n });\r\n }\r\n else{\r\n this.attorneyService.rejectAttorneyByEmp(attorney).subscribe(result => {\r\n if (result.isSuccess) {\r\n this.alertify.success(result.message);\r\n this.activeModal.dismiss('Cross click');\r\n this.router.navigate(['applications','UnApproved']);\r\n }\r\n });\r\n }\r\n } else {\r\n if(this.authService.currentUserValue.profileType == 'A'){ \r\n this.alertify.error(\"Please provide a reason for the decline.\");\r\n }\r\n else{\r\n this.alertify.error(\"Please provide a reason for the rejection.\");\r\n }\r\n }\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
{{this.authService.currentUserValue.profileType == 'A'? 'Declining Invitation' : 'Reject Attorney'}}
\r\n \r\n
\r\n \r\n
\r\n \r\n
You are {{this.authService.currentUserValue.profileType == 'A'? 'Declining' : 'Rejecting'}} {{src.firstName}} *****!
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { attorneyreject } from 'src/app/models/attorney';\r\nimport { RejectReason } from 'src/app/models/invoice';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AttorneyService } from 'src/app/services/attorney.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { InvoiceService } from 'src/app/services/invoice.service';\r\n\r\n@Component({\r\n selector: 'app-rejectby-attorney',\r\n templateUrl: './rejectby-attorney.component.html',\r\n styleUrls: ['./rejectby-attorney.component.css']\r\n})\r\nexport class RejectbyAttorneyComponent implements OnInit {\r\n\r\n @Input() src: any;\r\n @Input() appearanceId?:any;\r\n\r\n public RejectReason: string;\r\n public IsFromInvoice: boolean;\r\n\r\n constructor(public activeModal: NgbActiveModal,\r\n public modalService: NgbModal,\r\n private alertify: AlertifyService,\r\n private attorneyService: AttorneyService,\r\n private invoiceService: InvoiceService,\r\n private authService: AuthService,\r\n private router: Router) { }\r\n\r\n ngOnInit() {\r\n if (this.src.hasOwnProperty('invoiceNo')) {\r\n this.IsFromInvoice = true;\r\n } else {\r\n this.IsFromInvoice = false;\r\n }\r\n }\r\n\r\n RejectByAttorney() {\r\n if (!this.IsFromInvoice) {\r\n if (this.RejectReason != null) {\r\n const attorney: attorneyreject = {\r\n appearanceId: this.src.autoId != 0 && this.src.autoId != undefined?this.src.autoId: this.appearanceId,\r\n attorneyId: this.authService.currentUserValue.id || 0,\r\n message: this.RejectReason\r\n }\r\n\r\n this.attorneyService.rejectAttorneyByAttorney(attorney).subscribe(result => {\r\n if (result.isSuccess) {\r\n this.alertify.success(result.message);\r\n this.activeModal.dismiss('Cross click');\r\n if(this.authService.currentUserValue.profileType !=\"E\" && this.authService.currentUserValue.profileType !=\"EA\"){\r\n this.router.navigate(['applications','Rejected']);\r\n }\r\n }\r\n });\r\n } else {\r\n this.alertify.error(\"Please provide a reason for the rejection.\");\r\n }\r\n } else {\r\n if (this.RejectReason != null) {\r\n const rejectinvoice: RejectReason = {\r\n remarks: this.RejectReason,\r\n rejectedById: this.authService.currentUserValue.id || 0\r\n }\r\n\r\n this.invoiceService.RejectInvoice(this.src.autoId, rejectinvoice).subscribe(result => {\r\n if (result.isSuccess) {\r\n this.alertify.success(result.message);\r\n //Following line added by atul on 26 apr 22 for refresh page\r\n setTimeout(()=>{document.location.reload();},2000);\r\n this.activeModal.dismiss('Cross click');\r\n }\r\n });\r\n } else {\r\n this.alertify.error(\"Please provide a reason for the rejection.\");\r\n }\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
Reject Attorney
\r\n
Reject Invoice
\r\n \r\n
\r\n \r\n
\r\n
You are Rejecting this application!
\r\n
You are Rejecting this Invoice!
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n ","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ReOpen } from 'src/app/models/appearance';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-reopen',\r\n templateUrl: './reopen.component.html',\r\n styleUrls: ['./reopen.component.css']\r\n})\r\nexport class ReopenComponent implements OnInit {\r\n\r\n @Input() src: any;\r\n message: string;\r\n constructor(public activeModal: NgbActiveModal,\r\n public modalService: NgbModal,\r\n private appearanceService: AppearanceService,\r\n private authService: AuthService,\r\n private alertify: AlertifyService,\r\n private router: Router) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n Reopen() {\r\n const reason: ReOpen = {\r\n remarks: this.message,\r\n userMasterId: this.authService.currentUserValue.id || 0\r\n }\r\n if (this.message != null) {\r\n this.appearanceService.ReOpenAppearance(this.src, reason)\r\n .subscribe(event => {\r\n if (event.isSuccess) {\r\n this.alertify.success('Appearance has been successfully reopened!');\r\n this.router.navigate(['/appearance-list', 'Open']);\r\n this.activeModal.dismiss('Cross click');\r\n }\r\n });\r\n\r\n } else {\r\n this.alertify.error(\"Please enter a message.\")\r\n }\r\n\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
Re-open Appearance
\r\n \r\n
\r\n
\r\n

An automatic invitation will be sent to all the attorneys who were invited/applied along with the message.

\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { Withdraw } from 'src/app/models/attorney';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AttorneyService } from 'src/app/services/attorney.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-withdraw',\r\n templateUrl: './withdraw.component.html',\r\n styleUrls: ['./withdraw.component.css']\r\n})\r\nexport class WithdrawComponent implements OnInit {\r\n\r\n @Input() src: any;\r\n @Input() appearanceStatus: any;\r\n Message: string;\r\n\r\n constructor(public activeModal: NgbActiveModal,\r\n public modalService: NgbModal,\r\n private alertify: AlertifyService,\r\n private attorneyService: AttorneyService,\r\n private authService: AuthService,\r\n private router: Router) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n WithdrawByAttorney(){\r\n const withdraw: Withdraw = {\r\n appearanceId: this.src,\r\n message: this.Message,\r\n attorneyId:this.authService.currentUserValue.id || 0,\r\n }\r\n\r\n this.attorneyService.WithdrawByAttorney(withdraw).subscribe(msg => {\r\n if (msg.isSuccess) {\r\n this.alertify.success(msg.message);\r\n this.Message = '';\r\n this.router.navigate(['/applications','Withdraw']);\r\n this.activeModal.dismiss('Cross click');\r\n }else{\r\n this.alertify.error(msg.message);\r\n }\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
Withdraw Attorney
\r\n \r\n
\r\n \r\n
\r\n
You have been approved for this application! Are you sure you want to withdraw the application?
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n","import { Component, OnInit, Inject, OnDestroy } from \"@angular/core\";\r\n\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from \"@angular/material/dialog\";\r\n\r\nimport { Idle } from \"@ng-idle/core\";\r\n\r\nimport { Subscription } from \"rxjs\";\r\n\r\n\r\n@Component({\r\n selector: 'app-idle-dialog',\r\n templateUrl: './idle-dialog.component.html',\r\n styleUrls: ['./idle-dialog.component.scss']\r\n})\r\n\r\nexport class IdleDialogComponent implements OnInit,OnDestroy {\r\n\r\n idleState = \"\";\r\n\r\n partnerName = \"T-Mobile\";\r\n\r\n isPatner = false;\r\n\r\n private _onTimeoutWarning$: Subscription;\r\n constructor(\r\n\r\n private _userIdle: Idle,\r\n\r\n private _dialogRef: MatDialogRef,\r\n\r\n @Inject(MAT_DIALOG_DATA) public data: DialogData\r\n\r\n ) { }\r\n\r\n \r\n\r\n ngOnInit(): void {\r\n\r\n this._onTimeoutWarning$ = this._userIdle.onTimeoutWarning.subscribe(\r\n\r\n (countdown) => {\r\n\r\n this.idleState = `in: ${countdown}`;\r\n\r\n if (countdown <= 1) {\r\n\r\n this._dialogRef?.close(\"logout\");\r\n\r\n }\r\n\r\n }\r\n\r\n );\r\n\r\n }\r\n\r\n \r\n\r\n ngOnDestroy(): void {\r\n\r\n this._onTimeoutWarning$?.unsubscribe();\r\n\r\n }\r\n\r\n \r\n\r\n closeDialog(): void {\r\n\r\n this._dialogRef?.close(\"reset\");\r\n\r\n }\r\n\r\n \r\n\r\n confirmDialog() {\r\n\r\n this._dialogRef?.close(\"logout\");\r\n\r\n }\r\n\r\n\r\n}\r\n\r\nexport interface DialogData {\r\n\r\n title: string;\r\n\r\n modalID: string;\r\n\r\n message?: string;\r\n\r\n}","
\r\n\r\n \r\n \r\n

{{ data?.title }}

\r\n \r\n \r\n \r\n X\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n

Due to inactivity, you will be automatically logged out from your current session {{ idleState }}

\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n Keep me logged in\r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MatDialog } from \"@angular/material/dialog\";\r\nimport { Router } from '@angular/router';\r\nimport { IdleDialogComponent } from '../idle-dialog/idle-dialog.component';\r\nimport { Idle, DEFAULT_INTERRUPTSOURCES } from \"@ng-idle/core\";\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-idle',\r\n templateUrl: './idle.component.html',\r\n styleUrls: ['./idle.component.css']\r\n})\r\nexport class IdleComponent implements OnInit {\r\n\r\n _dialogRef: MatDialogRef;\r\n\r\n constructor(\r\n private _router: Router,\r\n private _dialog: MatDialog,\r\n private _userIdle: Idle,\r\n private authService: AuthService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n if (this.authService.isLoggedIn()) {\r\n if (environment.feature.Idle.enable === false) {\r\n\r\n return;\r\n\r\n }\r\n // Activity Monitor settings\r\n this._userIdle.setIdle(environment.feature.Idle.idleTimeSeconds); // Executes when inactive for predefined interval\r\n this._userIdle.setTimeout(environment.feature.Idle.timeOutSeconds); // Executes a countdown prior to Timeout\r\n\r\n this._userIdle.onIdleStart.subscribe(() => {\r\n this._userIdle.clearInterrupts();\r\n this._dialogRef = this._dialog.open(IdleDialogComponent, {\r\n\r\n width: \"600px\",\r\n\r\n height: \"293px\",\r\n\r\n panelClass: \"modalClass\",\r\n\r\n disableClose: false,\r\n\r\n data: {\r\n\r\n title: \"Your session is about to time out\"\r\n\r\n }\r\n\r\n });\r\n\r\n this._dialogRef?.afterClosed().subscribe((action) => {\r\n\r\n if (action === \"reset\") {\r\n\r\n this.reset();\r\n\r\n return\r\n\r\n }\r\n\r\n if (action === \"logout\") {\r\n\r\n this.authService.logout();\r\n this._router.navigate(['/']);\r\n }\r\n\r\n });\r\n\r\n });\r\n\r\n\r\n\r\n this._userIdle.onIdleEnd.subscribe(() => {\r\n\r\n this._dialogRef?.close(\"reset\");\r\n\r\n });\r\n\r\n\r\n\r\n this._userIdle.onTimeout.subscribe(() => {\r\n\r\n this._dialogRef?.close(\"logout\");\r\n\r\n });\r\n this.reset();\r\n }\r\n }\r\n reset() {\r\n\r\n this._userIdle.setInterrupts(DEFAULT_INTERRUPTSOURCES);\r\n\r\n this._userIdle.watch();\r\n\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-connect-ach',\r\n templateUrl: './connect-ach.component.html',\r\n styleUrls: ['./connect-ach.component.css']\r\n})\r\nexport class ConnectAchComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","

connect-ach works!

\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { AboutUsComponent } from './basic-pages/about-us/about-us.component';\r\nimport { DisclaimerComponent } from './basic-pages/disclaimer/disclaimer.component';\r\nimport { FaqsComponent } from './basic-pages/faqs/faqs.component';\r\nimport { HowItWorksComponent } from './basic-pages/how-it-works/how-it-works.component';\r\nimport { PrivacyComponent } from './basic-pages/privacy/privacy.component';\r\nimport { TermsComponent } from './basic-pages/terms/terms.component';\r\nimport { NotificationsComponent } from './Communication/notifications/notifications.component';\r\nimport { DashboardComponent } from './dashboard/dashboard.component';\r\nimport { HomeComponent } from './home/home.component';\r\nimport { ContactUsComponent } from './pages/contact-us/contact-us.component';\r\nimport { RouteGaurdForHomeService } from './services/route-gaurd-for-home.service';\r\nimport { RouteGaurdForProfileCheckService } from './services/route-gaurd-for-profile-check.service';\r\nimport { RouteGaurdForVerifiedAccountService } from './services/route-gaurd-for-verified-account.service';\r\nimport { RouteGuardService } from './services/route-guard.service';\r\nimport { PaymentSuccessComponent } from './stripe/payment-success/payment-success.component';\r\nimport { ChangePasswordComponent } from './user/change-password/change-password.component';\r\nimport { SettingsComponent } from './user/settings/settings.component';\r\nimport { SubUsersComponent } from './user/sub-users/sub-users.component';\r\nimport { UserProfileComponent } from './user/user-profile/user-profile.component';\r\nimport { VerificationComponent } from './user/verification/verification.component';\r\nimport { UserWalletComponent } from './user/user-wallet/user-wallet.component';\r\n\r\nconst routes: Routes = [\r\n { path: '', component: HomeComponent, pathMatch: 'full', canActivate: [RouteGaurdForHomeService] },\r\n { path: 'contact-us', component: ContactUsComponent },\r\n { path: 'dashboard', component: DashboardComponent, canActivate: [RouteGaurdForVerifiedAccountService] },\r\n { path: 'profile', component: UserProfileComponent, canActivate: [RouteGaurdForProfileCheckService] },\r\n { path: 'about-us', component: AboutUsComponent },\r\n { path: 'how-It-works', component: HowItWorksComponent },\r\n { path: 'disclaimer', component: DisclaimerComponent },\r\n { path: 'faqs', component: FaqsComponent },\r\n { path: 'privacy', component: PrivacyComponent },\r\n { path: 'terms', component: TermsComponent },\r\n {\r\n path: 'appearance',\r\n loadChildren: () => import('./appearance/appearance.module').then(m => m.AppearanceModule)\r\n },\r\n {\r\n path: 'attorney',\r\n loadChildren: () => import('./attorney/attorney.module').then(m => m.AttorneyModule)\r\n },\r\n // { path: 'attorney-list', component: AttorneyListComponent },\r\n // { path: 'invoice-entry', component: InvoiceEntryComponent },\r\n // { path: 'invoice-list', component: InvocieListComponent },\r\n {\r\n path: 'invoice',\r\n loadChildren: () => import('./invoice/invoice.module').then(m => m.InvoiceModule)\r\n },\r\n { path: 'change-password', component: ChangePasswordComponent },\r\n { path: 'change-password/:emailtoken', component: ChangePasswordComponent },\r\n { path: 'sub-users', component: SubUsersComponent },\r\n { path: 'verification', component: VerificationComponent },\r\n { path: 'verification/:emailtoken', component: VerificationComponent },\r\n { path: 'notifications', component: NotificationsComponent },\r\n { path: 'success', component: PaymentSuccessComponent },\r\n { path: 'settings', component: SettingsComponent },\r\n { path: 'user-wallet/:userMasterId', component: UserWalletComponent }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","import { Component } from '@angular/core';\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 {\r\n title = 'Videtur';\r\n}\r\n","\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { NavMenuComponent } from './nav-menu/nav-menu.component';\r\nimport { FooterMenuComponent } from './footer-menu/footer-menu.component';\r\nimport { UserLoginComponent } from './user/user-login/user-login.component';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { HomeComponent } from './home/home.component';\r\nimport { ContactUsComponent } from './pages/contact-us/contact-us.component';\r\nimport { AuthService } from './services/auth.service';\r\nimport { ForgotPasswordComponent } from './user/forgot-password/forgot-password.component';\r\nimport { UserRegistrationComponent } from './user/user-registration/user-registration.component';\r\nimport { UserService } from './services/user.service';\r\nimport { AlertifyService } from './services/alertify.service';\r\nimport { DashboardComponent } from './dashboard/dashboard.component';\r\nimport { UserProfileComponent } from './user/user-profile/user-profile.component';\r\nimport { ChangePasswordComponent } from './user/change-password/change-password.component';\r\nimport { SubUsersComponent } from './user/sub-users/sub-users.component';\r\nimport { VerificationComponent } from './user/verification/verification.component';\r\nimport { NgxSliderModule } from '@angular-slider/ngx-slider';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { AppearanceModule } from './appearance/appearance.module';\r\nimport { AttorneyModule } from './attorney/attorney.module';\r\nimport { InvoiceModule } from './invoice/invoice.module';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { FilterPipePipe } from './Common/Pipe/filter-pipe.pipe';\r\nimport { DateRangeFilterPipe } from './Common/Pipe/date-range-filter.pipe';\r\nimport { MessagesComponent } from './Communication/messages/messages.component';\r\nimport { InviteComponent } from './Communication/invite/invite.component';\r\nimport { ApproveComponent } from './Communication/approve/approve.component';\r\nimport { RejectComponent } from './Communication/reject/reject.component';\r\nimport { WithdrawComponent } from './Communication/withdraw/withdraw.component';\r\nimport { ReopenComponent } from './Communication/reopen/reopen.component';\r\nimport { CompleteComponent } from './Communication/complete/complete.component';\r\nimport { RejectbyAttorneyComponent } from './Communication/rejectby-attorney/rejectby-attorney.component';\r\nimport { CourtEntryComponent } from './masters/court-entry/court-entry.component';\r\nimport { NotificationsComponent } from './Communication/notifications/notifications.component';\r\nimport { DateAgoPipe } from './Common/Pipe/date-ago.pipe';\r\nimport { ConfirmDialogComponent } from './Common/Components/confirm-dialog/confirm-dialog.component';\r\nimport { ConfirmDialogService } from './services/Common/confirm-dialog.service';\r\nimport { SharedModule } from './Common/Shared.module';\r\nimport { InviteAttorneyComponent } from './Communication/invite-attorney/invite-attorney.component';\r\nimport { PaymentSuccessComponent } from './stripe/payment-success/payment-success.component';\r\nimport { NgxSpinnerModule } from 'ngx-spinner';\r\nimport {NgxPrintModule} from 'ngx-print';\r\nimport { SelectPaymentMethodComponent } from './stripe/select-payment-method/select-payment-method.component';\r\nimport { SettingsComponent } from './user/settings/settings.component';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { ConnectAchComponent } from './ach/connect-ach/connect-ach.component';\r\nimport { AuthInterceptorService } from './services/auth-interceptor.service';\r\nimport { AboutUsComponent } from './basic-pages/about-us/about-us.component';\r\nimport { HowItWorksComponent } from './basic-pages/how-it-works/how-it-works.component';\r\nimport { PrivacyComponent } from './basic-pages/privacy/privacy.component';\r\nimport { TermsComponent } from './basic-pages/terms/terms.component';\r\nimport { DisclaimerComponent } from './basic-pages/disclaimer/disclaimer.component';\r\nimport { FaqsComponent } from './basic-pages/faqs/faqs.component';\r\nimport {\r\n SocialLoginModule,\r\n SocialAuthServiceConfig,\r\n FacebookLoginProvider,\r\n} from 'angularx-social-login';\r\nimport { GoogleLoginProvider } from 'angularx-social-login';\r\nimport { PaymentReceiptComponent } from './stripe/payment-receipt/payment-receipt.component';\r\nimport { NgxCaptchaModule } from 'ngx-captcha';\r\nimport { PayInvoiceComponent } from './stripe/pay-invoice/pay-invoice.component';\r\nimport { UserWalletComponent } from './user/user-wallet/user-wallet.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n NavMenuComponent,\r\n FooterMenuComponent,\r\n UserLoginComponent,\r\n HomeComponent,\r\n ContactUsComponent,\r\n ForgotPasswordComponent,\r\n UserRegistrationComponent,\r\n UserProfileComponent,\r\n ChangePasswordComponent,\r\n SubUsersComponent,\r\n VerificationComponent,\r\n DashboardComponent,\r\n FilterPipePipe,\r\n DateRangeFilterPipe,\r\n DateAgoPipe,\r\n MessagesComponent,\r\n InviteComponent,\r\n ApproveComponent,\r\n RejectComponent,\r\n WithdrawComponent,\r\n ReopenComponent,\r\n CompleteComponent,\r\n RejectbyAttorneyComponent,\r\n CourtEntryComponent,\r\n NotificationsComponent,\r\n //DateFormatPipe,\r\n ConfirmDialogComponent,\r\n InviteAttorneyComponent,\r\n PaymentSuccessComponent,\r\n SelectPaymentMethodComponent,\r\n SettingsComponent,\r\n // IdleComponent,\r\n // IdleDialogComponent\r\n ConnectAchComponent,\r\n AboutUsComponent,\r\n HowItWorksComponent,\r\n PrivacyComponent,\r\n TermsComponent,\r\n DisclaimerComponent,\r\n FaqsComponent,\r\n PaymentReceiptComponent,\r\n PayInvoiceComponent,\r\n UserWalletComponent,\r\n ],\r\n imports: [\r\n AppearanceModule,\r\n BrowserModule,\r\n AppRoutingModule,\r\n NgbModule,\r\n NgxSliderModule,\r\n NgSelectModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n AppearanceModule,\r\n AttorneyModule,\r\n InvoiceModule,\r\n HttpClientModule,\r\n SharedModule,\r\n NgxSpinnerModule,\r\n NgxPrintModule,\r\n BrowserAnimationsModule,\r\n SharedModule,\r\n SocialLoginModule,\r\n NgxCaptchaModule\r\n ],\r\n providers: [\r\n AuthService,\r\n UserService,\r\n AlertifyService,\r\n FilterPipePipe,\r\n DateRangeFilterPipe,\r\n DateAgoPipe,\r\n ConfirmDialogService,\r\n {provide: HTTP_INTERCEPTORS,\r\n useClass: AuthInterceptorService,\r\n multi: true\r\n },\r\n {\r\n provide: 'SocialAuthServiceConfig',\r\n useValue: {\r\n autoLogin: false,\r\n providers: [\r\n {\r\n id: GoogleLoginProvider.PROVIDER_ID,\r\n provider: new GoogleLoginProvider('674121832406-qlqlh16ogbi6kj80k7v281junm7338jr.apps.googleusercontent.com'),\r\n },\r\n {\r\n id: FacebookLoginProvider.PROVIDER_ID,\r\n provider: new FacebookLoginProvider(\r\n '571888531134471'\r\n )\r\n }\r\n ],\r\n } as SocialAuthServiceConfig,\r\n },\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { UserLoginComponent } from 'src/app/user/user-login/user-login.component';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { AppearanceDocComponent } from '../appearance-doc/appearance-doc.component';\r\nimport { AppearanceViewComponent } from '../appearance-view/appearance-view.component';\r\nimport { MessagesComponent } from 'src/app/Communication/messages/messages.component';\r\nimport { AppearanceInfoComponent } from '../appearance-info/appearance-info.component';\r\nimport { CancelAppearanceComponent } from '../cancel-appearance/cancel-appearance.component';\r\nimport { ApplyAppearanceComponent } from '../apply-appearance/apply-appearance.component';\r\nimport { WithdrawComponent } from 'src/app/Communication/withdraw/withdraw.component';\r\nimport { ReopenComponent } from 'src/app/Communication/reopen/reopen.component';\r\nimport { CompleteComponent } from 'src/app/Communication/complete/complete.component';\r\nimport { RejectbyAttorneyComponent } from 'src/app/Communication/rejectby-attorney/rejectby-attorney.component';\r\nimport { DatePipe } from '@angular/common';\r\nimport { AttorneyCardComponent } from 'src/app/attorney/attorney-card/attorney-card.component';\r\nimport { InvoiceService } from 'src/app/services/invoice.service';\r\nimport { InvoiceCardComponent } from 'src/app/invoice/invoice-card/invoice-card.component';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { AttorneyViewComponent } from 'src/app/attorney/attorney-view/attorney-view.component';\r\n\r\n\r\n@Component({\r\n selector: 'app-appearance-card',\r\n templateUrl: './appearance-card.component.html',\r\n styleUrls: ['./appearance-card.component.css']\r\n})\r\nexport class AppearanceCardComponent implements OnInit {\r\n\r\n @Input() Appearance: any = 0;\r\n @Input() status: any;\r\n @Output() RefreshList: EventEmitter = new EventEmitter();\r\n public language: any;\r\n public profileType: string;\r\n public currentUserId: Number;\r\n public passedCurrentDate: boolean = false;\r\n public dynamicClass: string;\r\n public dynamicBtnClass: string;\r\n public thumbsUpTitle: string;\r\n public showInvoice: boolean;\r\n public Invoice: any;\r\n\r\n //Cards visibility fields\r\n\r\n FindAttorneyBtn: boolean = false;\r\n EditBtn: boolean = false;\r\n CancelBtn: boolean = false;\r\n Messagebtn: boolean = false;\r\n ApproveBtn: boolean = false;\r\n WithdrawBtn: boolean = false;\r\n ReopenBtn: boolean = false;\r\n CompleteBtn: boolean = false;\r\n DocumentsBtn: boolean = false;\r\n InvoiceBtn: boolean = false;\r\n InfoBtn: boolean = false;\r\n MaskedFirmName: string = '';\r\n MaskedBarNo: string = '';\r\n disableLink: boolean = false;\r\n constructor(public modalService: NgbModal, private appearanceService: AppearanceService, private invoiceService: InvoiceService, private datePipe: DatePipe, public authService: AuthService, private router: Router) { }\r\n\r\n ngOnInit() {\r\n this.profileType = this.authService.currentUserValue.profileType || \"\";\r\n this.currentUserId = this.authService.currentUserValue.id || 0;\r\n this.checkCancelDateCalculation();\r\n this.checkHeadercolorClass();\r\n this.TitleChangeByProfileType();\r\n this.ButtonHideShow();\r\n if (!this.authService.isLoggedIn()) {\r\n this.MaskedFirmName = this.Appearance.appearance.firmName != null ? this.Appearance.appearance.firmName.substring(0, 3) + '*****' : 'Ind*****';\r\n this.MaskedBarNo = this.Appearance.appearance.userBarNumber != null ? this.Appearance.appearance.userBarNumber.substring(0, 3) + '*****' : 'Ind*****';\r\n }\r\n if (this.status == 'Open' || this.status == undefined) {\r\n this.disableLink = true;\r\n this.Appearance.appearance.firmName = this.Appearance.appearance.firmName != null ? this.Appearance.appearance.firmName.substring(0, 3) + '*****' : 'Ind*****';\r\n }\r\n }\r\n\r\n //Method to check appearance date based upton this method we make read only back dated appearances\r\n checkCancelDateCalculation() {\r\n var date = new Date();\r\n if ((this.datePipe.transform(this.Appearance.appearance.appearanceDateTime, 'yyyy-MM-dd') || '') < (this.datePipe.transform(date, 'yyyy-MM-dd') || '')) {\r\n this.passedCurrentDate = true;\r\n }\r\n }\r\n\r\n getInvoiceById(AppearanceId: any) {\r\n this.invoiceService.getInvoiceByAppearanceId(AppearanceId).subscribe(inv => {\r\n if (inv.model != null) {\r\n //this.Invoice = inv.model;\r\n const modalRef = this.modalService.open(InvoiceCardComponent);\r\n modalRef.componentInstance.invoice = inv.model;\r\n modalRef.componentInstance.callingFrom = 'Appearance';\r\n }\r\n });\r\n }\r\n\r\n ShowInvoices(AppearanceId: any) {\r\n this.getInvoiceById(AppearanceId);\r\n\r\n }\r\n\r\n //View Profile to see attorney details\r\n ViewProfile(AppearanceId: any, AttorneyId: any) {\r\n // this.appearanceService.GetApprovedAttorneyDetails(AppearanceId, AttorneyId).subscribe(attorney => {\r\n // const modalRef = this.modalService.open(AttorneyCardComponent);\r\n // modalRef.componentInstance.attorney = attorney.model;\r\n // modalRef.componentInstance.IsAppearanceSearch = false;\r\n // modalRef.componentInstance.IsSelectedAll = false;\r\n // });\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(AttorneyViewComponent, { size: 'lg', backdrop: 'static' });\r\n modalRef.componentInstance.src = AttorneyId;\r\n }\r\n\r\n // Method to check header colors\r\n checkHeadercolorClass() {\r\n if (this.Appearance.appearance.recordStatus == \"Open\" || this.Appearance.appearance.recordStatus == \"ReOpen\") {\r\n this.dynamicClass = \"card card-warning\";\r\n this.dynamicBtnClass = \"btn border-warning btn-sm me-1\"\r\n } else if (this.Appearance.appearance.recordStatus == \"Filled\" || this.Appearance.appearance.recordStatus == \"Approved\") {\r\n this.dynamicClass = \"card card-success\";\r\n this.dynamicBtnClass = \"btn border-success btn-sm me-1\"\r\n } else if (this.Appearance.appearance.recordStatus == \"Invited\") {\r\n this.dynamicClass = \"card card-orange\";\r\n this.dynamicBtnClass = \"btn border-orange btn-sm me-1\"\r\n } else if (this.Appearance.appearance.recordStatus == \"Applied\") {\r\n this.dynamicClass = \"card card-orange\";\r\n this.dynamicBtnClass = \"btn border-orange btn-sm me-1\"\r\n } else if (this.Appearance.appearance.recordStatus == \"Completed\") {\r\n this.dynamicClass = \"card card-primary\";\r\n this.dynamicBtnClass = \"btn border-primary btn-sm me-1\"\r\n } else if (this.Appearance.appearance.recordStatus == \"Closed\") {\r\n this.dynamicClass = \"card card-primary-dark\";\r\n this.dynamicBtnClass = \"btn border-primary-dark btn-sm me-1\"\r\n } else if (this.Appearance.appearance.recordStatus == \"Cancelled\" || this.Appearance.appearance.recordStatus == \"Expired\" || this.Appearance.appearance.recordStatus == 'Withdraw') {\r\n this.dynamicClass = \"card card-danger\";\r\n this.dynamicBtnClass = \"btn border-danger btn-sm me-1\"\r\n } else if (this.Appearance.appearance.recordStatus == \"Cancelled\" || this.Appearance.appearance.recordStatus == \"Expired\" || this.Appearance.appearance.recordStatus == 'Withdraw') {\r\n this.dynamicClass = \"card card-danger\";\r\n this.dynamicBtnClass = \"btn border-danger btn-sm me-1\"\r\n }\r\n }\r\n\r\n loggedin() {\r\n return this.authService.isLoggedIn();\r\n }\r\n openLoginPopup(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(UserLoginComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n Update(id: any) {\r\n this.router.navigate(['appearance-entry', id])\r\n }\r\n InvitedApplicates(id: any) {\r\n this.router.navigate(['applications', id]);\r\n // const modalRef = this.modalService.open(ApplicationListComponent);\r\n // modalRef.componentInstance.src = Appearance;\r\n }\r\n SearchAttorney(Id: any) {\r\n this.router.navigate(['attorney-list', Id])\r\n }\r\n //Document Popup Show Method\r\n openAppearanceDoc(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(AppearanceDocComponent, { size: 'md', backdrop: 'static' });\r\n modalRef.componentInstance.src = link;\r\n }\r\n //Appearance View Popup Show Method\r\n openAppearanceView(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n // const modalRef = this.modalService.open(AppearanceViewComponent, { size: 'lg', backdrop: 'static' });\r\n // modalRef.componentInstance.Appearance = link;\r\n\r\n this.appearanceService.GetAppearanceById(link).subscribe(appearance => {\r\n if (appearance.isSuccess) {\r\n const modalRef = this.modalService.open(AppearanceViewComponent, { size: 'lg', backdrop: 'static' });\r\n modalRef.componentInstance.Appearance = appearance.model;\r\n }\r\n });\r\n }\r\n\r\n openEmployerDetails(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n // const modalRef = this.modalService.open(AppearanceViewComponent, { size: 'lg', backdrop: 'static' });\r\n // modalRef.componentInstance.Appearance = link;\r\n const modalRef = this.modalService.open(AttorneyViewComponent, { size: 'lg', backdrop: 'static' });\r\n modalRef.componentInstance.src = link;\r\n }\r\n //Message Popup Show Method\r\n openMessage(link: any) {\r\n let toId: number;\r\n if (this.profileType == 'A') {\r\n toId = link.userMasterId;\r\n } else {\r\n toId = link.approvedAttorneyId;\r\n }\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(MessagesComponent);\r\n modalRef.componentInstance.src = toId;\r\n modalRef.componentInstance.appearanceId = this.Appearance.appearance.autoId;\r\n }\r\n\r\n //Invoice Entry\r\n\r\n InvoiceEntry(Id: any) {\r\n this.router.navigate(['invoice-entry', Id])\r\n }\r\n //Message Popup Show Method\r\n openReject(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(RejectbyAttorneyComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n //Cancel Appearance Popup Show Method\r\n openCancelAppearance(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(CancelAppearanceComponent);\r\n modalRef.componentInstance.src = link;\r\n modalRef.result.then((result) => {\r\n if (result === 'success') {\r\n this.RefreshAppearance(); // Refresh Data in table grid\r\n }\r\n }, (reason) => {\r\n });\r\n }\r\n //Apply Appearance Popup Show Method\r\n openApplyAppearance(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(ApplyAppearanceComponent);\r\n modalRef.componentInstance.src = link;\r\n modalRef.componentInstance.minMaxRate = this.Appearance.appearance.minRate + '-' + this.Appearance.appearance.maxRate;\r\n modalRef.componentInstance.HeaderText = 'Apply for Appearance';\r\n }\r\n //Appearance Information Popup Show Method\r\n openAppearanceInfo(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n\r\n //Here we need to open it in medium width but that option is not present so open in lg screen \r\n const modalRef = this.modalService.open(AppearanceInfoComponent, { size: 'lg', backdrop: 'static' });\r\n\r\n modalRef.componentInstance.src = link;\r\n }\r\n //Withdraw Applicaiton Popup Show Method\r\n openWithdraw(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(WithdrawComponent);\r\n modalRef.componentInstance.appearanceStatus = this.Appearance.appearance.recordStatus;\r\n modalRef.componentInstance.src = link;\r\n }\r\n //Appearance Re-Open Popup Show Method\r\n openReOpenAppearance(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(ReopenComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n //Appearance Re-Open Popup Show Method\r\n openCompleteAppearance(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(CompleteComponent);\r\n modalRef.componentInstance.src = link;\r\n modalRef.componentInstance.passEntry.subscribe((receivedEntry: any) => {\r\n this.RefreshAppearance();\r\n })\r\n }\r\n\r\n RefreshAppearance() {\r\n this.RefreshList.emit();\r\n }\r\n\r\n ButtonHideShow() {\r\n if (this.profileType != 'A'\r\n && (this.Appearance.appearance.recordStatus == 'Open' || this.Appearance.appearance.recordStatus == 'ReOpen')) {\r\n this.FindAttorneyBtn = true;\r\n }\r\n\r\n if (this.authService.isLoggedIn() && this.profileType != 'A' && (this.Appearance.appearance.recordStatus == 'Open' || this.Appearance.appearance.recordStatus == 'ReOpen'\r\n || this.Appearance.appearance.recordStatus == 'Approved' || this.Appearance.appearance.recordStatus == 'Completed' || this.Appearance.appearance.recordStatus == 'Closed' || this.Appearance.appearance.recordStatus == 'WITHDRAW')) {\r\n this.DocumentsBtn = true;\r\n }\r\n if (this.authService.isLoggedIn() && this.profileType == 'A' && (this.Appearance.appearance.recordStatus == 'Approved' || this.Appearance.appearance.recordStatus == 'Completed' || this.Appearance.appearance.recordStatus == 'Closed')) {\r\n this.DocumentsBtn = true;\r\n }\r\n\r\n if (\r\n (this.Appearance.appearance.userMasterId === this.currentUserId || this.authService.currentUserValue.parentUserId == null)\r\n && this.profileType !== 'A'\r\n && this.Appearance.appearance.noOfApplied == 0\r\n && this.Appearance.appearance.noOfInvited == 0\r\n && (this.Appearance.appearance.recordStatus == 'Open' || this.Appearance.appearance.recordStatus == 'ReOpen')) {\r\n this.EditBtn = true;\r\n }\r\n\r\n if (this.profileType != 'A' && (this.Appearance.appearance.recordStatus == 'Open' || this.Appearance.appearance.recordStatus == 'ReOpen' || this.Appearance.appearance.recordStatus == 'Approved' || this.Appearance.appearance.recordStatus == 'Withdraw')) {\r\n this.CancelBtn = true;\r\n }\r\n\r\n if (this.authService.isLoggedIn()) {\r\n if ((this.Appearance.appearance.recordStatus == 'Approved' || this.Appearance.appearance.recordStatus == 'Cancelled' || this.Appearance.appearance.recordStatus == 'Completed' || this.Appearance.appearance.recordStatus == 'Closed')) {\r\n this.Messagebtn = true;\r\n }\r\n }\r\n\r\n if (this.authService.isLoggedIn() && (this.profileType == 'A' && (this.Appearance.appearance.recordStatus == 'Open' || this.Appearance.appearance.recordStatus == 'ReOpen'))) {\r\n this.ApproveBtn = true;\r\n } else {\r\n this.ApproveBtn = false;\r\n }\r\n\r\n if (this.authService.isLoggedIn() && this.profileType == 'A' && this.Appearance.appearance.recordStatus == 'Approved') {\r\n this.WithdrawBtn = true;\r\n }\r\n //@Sumit - You have missed dual role condition in this button and due to it. The Re-Open Button was not working - Bug Raised by mehul Bhai 418\r\n // Nirav Added / Update if (this.authService.isLoggedIn() && this.Appearance.appearance.recordStatus == 'Withdraw' && this.profileType == 'E') { To\r\n // if (this.authService.isLoggedIn() && this.Appearance.appearance.recordStatus == 'Withdraw' && (this.profileType == 'E' || this.profileType == 'EA')) {\r\n //Date: 07-Mar-2022 at 15:59\r\n if (this.authService.isLoggedIn() && this.Appearance.appearance.recordStatus == 'Withdraw' && this.profileType != 'A') {\r\n this.ReopenBtn = true;\r\n }\r\n if (this.authService.isLoggedIn() && this.profileType == 'A' && this.Appearance.appearance.recordStatus == 'Approved') {\r\n this.CompleteBtn = true;\r\n this.passedCurrentDate = false;\r\n }\r\n //Following 6 line condition changed by atul on 24 jun 22 on Mehul's request \r\n //Following 3 line condition changed by atul on 9 jun 22 on Mehul's request removed ( ... || this.profileType == 'I')\r\n if (this.authService.isLoggedIn() && (((this.Appearance.appearance.recordStatus == 'Completed' || this.Appearance.appearance.recordStatus == 'Closed') && this.profileType == 'A') || (this.Appearance.appearance.recordStatus == 'Cancelled' && this.profileType == 'A' && this.Appearance.appearance.invoiceNumber != '0' && this.Appearance.appearance.invoiceNumber != null))) {\r\n this.InvoiceBtn = true;\r\n }\r\n // if ((this.Appearance.appearance.recordStatus == 'Completed' || this.Appearance.appearance.recordStatus == 'Closed') && this.profileType == 'A') {\r\n // this.InvoiceBtn = true;\r\n // }\r\n\r\n if (this.authService.isLoggedIn()) {\r\n this.InfoBtn = true;\r\n }\r\n }\r\n\r\n // Hide/Show find attorney button\r\n ShowFindAttorney() {\r\n if (this.Appearance.appearance.userMasterId === this.currentUserId && this.profileType != 'A'\r\n && (this.Appearance.appearance.recordStatus == 'Open' || this.Appearance.appearance.recordStatus == 'ReOpen')) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n// Hide/Show edit button\r\n ShowEdit() {\r\n if (this.Appearance.appearance.userMasterId === this.currentUserId && this.profileType != 'A'\r\n && this.Appearance.appearance.noOfApplied == 0 && this.Appearance.appearance.noOfInvited == 0) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n// Hide/Show cancel button\r\n ShowCancelBtn() {\r\n if (this.profileType != 'A') {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n // Hide/Show Message button\r\n ShowMessagebtn() {\r\n if (this.authService.isLoggedIn()) {\r\n if (this.profileType == 'A' || (this.profileType == 'E' && (this.Appearance.appearance.recordStatus == 'Approved' || this.Appearance.appearance.recordStatus == 'CAN' || this.Appearance.appearance.recordStatus == 'Completed' || this.Appearance.appearance.recordStatus == 'Closed'))) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n } else {\r\n return true;\r\n }\r\n }\r\n\r\n ShowApproveBtn() {\r\n if (this.profileType == 'A' || this.Appearance.appearance.recordStatus == 'Open') {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n ShowInfoBtn() {\r\n if (this.authService.isLoggedIn()) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n TitleChangeByProfileType() {\r\n if (this.profileType == 'A' && this.Appearance.appearance.firmName != null) {\r\n this.thumbsUpTitle = 'Apply';\r\n } else if (this.profileType == 'A' && this.Appearance.appearance.firmName == null) {\r\n this.thumbsUpTitle = 'Submit';\r\n } else {\r\n this.thumbsUpTitle = 'Approve';\r\n }\r\n }\r\n\r\n ShowRejectBtn() {\r\n if (this.profileType == 'E') {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n ShowWithdrawBtn() {\r\n if (this.profileType == 'A' || this.profileType == 'EA') {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n showInvoiceLink() {\r\n //following line changed by atul on 24 jun 22 on mehul's request(added Cancelled)\r\n if ((this.Appearance.appearance.recordStatus == 'Completed' || this.Appearance.appearance.recordStatus == 'Closed' || this.Appearance.appearance.recordStatus == 'Cancelled') && this.Appearance.appearance.invoiceNumber != '0' && this.Appearance.appearance.invoiceNumber != null) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n ShowReopenBtn() {\r\n if (this.Appearance.appearance.recordStatus == 'Withdraw' && (this.profileType == 'E' || this.profileType == 'EA')) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n ShowInvoiceBtn() {\r\n //Following 3 line condition changed by atul on 9 jun 22 on Mehul's request removed ( ... || this.profileType == 'I')\r\n if (((this.Appearance.appearance.recordStatus == 'Completed' || this.Appearance.appearance.recordStatus == 'Closed') && this.profileType == 'A') || (this.Appearance.appearance.recordStatus == 'Cancelled' && this.profileType == 'A' && this.Appearance.appearance.invoiceNumber != '0' && this.Appearance.appearance.invoiceNumber != null))\r\n {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n ShowCompleteBtn() {\r\n if (this.profileType == 'A' || this.profileType == 'EA') {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n}\r\n\r\n\r\n","
\r\n
\r\n
\r\n
\r\n

\r\n {{Appearance.appearance.courtName}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{Appearance.appearance.appearanceDateTime | date: 'MMM d, y, h:mm a'}}\r\n \r\n \r\n ${{Appearance.appearance.maxRate == 99999 ? 'neg':Appearance.appearance.maxRate }}/hr\r\n
\r\n
\r\n
\r\n
\r\n
\r\n   {{Appearance.appearance.practiceArea }} | {{Appearance.appearance.appearanceType }}\r\n
\r\n
\r\n   Case # {{Appearance.appearance.caseNo}}\r\n
\r\n
  {{Appearance.appearance.stateName}}-{{Appearance.appearance.countyName}}
\r\n
\r\n \r\n
\r\n  \r\n   Individual
\r\n
\r\n
\r\n
\r\n   {{MaskedFirmName}}
\r\n
\r\n {{MaskedBarNo}}
\r\n
  Individual
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{Appearance.appearance.recordStatus == 'ReOpen' ? 'ReOpened' : Appearance.appearance.recordStatus}}
\r\n
\r\n Applications/Invitations: \r\n {{Appearance.appearance.noOfApplied +Appearance.appearance.noOfInvited}}\r\n
\r\n
\r\n Applications/Invitations: {{Appearance.appearance.noOfApplied +Appearance.appearance.noOfInvited}}\r\n
\r\n
\r\n ${{Appearance.appearance.approvedBidAmount}}/hr\r\n {{Appearance.appearance.approvedFirstName}} {{Appearance.appearance.approvedLastName}}\r\n
\r\n
\r\n ${{Appearance.appearance.approvedBidAmount}}/hr\r\n {{Appearance.appearance.approvedFirstName}} {{Appearance.appearance.approvedLastName}}\r\n
\r\n
${{Appearance.appearance.approvedBidAmount}}/hr
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \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, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { saveAs } from 'file-saver';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { CommonConstant } from 'src/app/Common/Constants/Constants';\r\nimport { CommonService } from 'src/app/services/common.service';\r\n\r\n@Component({\r\n selector: 'app-appearance-doc',\r\n templateUrl: './appearance-doc.component.html',\r\n styleUrls: ['./appearance-doc.component.css']\r\n})\r\nexport class AppearanceDocComponent implements OnInit {\r\n\r\n @Input() src: any;\r\n public DocList: any = [];\r\n public DoctoUpload: any = [];\r\n public selectedFiles: any = [];\r\n public id: number;\r\n public fileNames: any = [];\r\n public profileType: string;\r\n public finalFormData = new FormData();\r\n constructor(public activeModal: NgbActiveModal,\r\n public modalService: NgbModal,\r\n private appearanceService: AppearanceService,\r\n private authService: AuthService,\r\n private spinner: NgxSpinnerService,\r\n private commonService: CommonService,\r\n private alertify: AlertifyService,\r\n private router: Router) { }\r\n\r\n ngOnInit() {\r\n this.GetAppearanceDocById();\r\n this.profileType = this.authService.currentUserValue.profileType || '';\r\n }\r\n\r\n GetAppearanceDocById() {\r\n this.spinner.show();\r\n this.appearanceService.GetAppearanceDocById(this.src).subscribe(doc => {\r\n this.DocList = doc;\r\n this.spinner.hide();\r\n });\r\n }\r\n uploadDocument(event: any) {\r\n if (event.target.files.length === 0) {\r\n return;\r\n }\r\n if (event.target.files.length <= CommonConstant.FILE_LENGTH && this.DocList.length < CommonConstant.FILE_LENGTH) {\r\n Array.from(event.target.files).forEach((element: any) => {\r\n if (element.size < CommonConstant.RESPONSE_MESSAGES.MB_SIZE) {\r\n if (CommonConstant.ALLOWED_FILE_TYPES.includes(element.name.split('.')[1])) {\r\n this.DocList.push(element);\r\n } else {\r\n this.alertify.error(CommonConstant.RESPONSE_MESSAGES.FILE_TYPE_ERROR);\r\n }\r\n } else {\r\n this.alertify.error(CommonConstant.RESPONSE_MESSAGES.FILE_SIZE_ERROR);\r\n }\r\n });\r\n } else {\r\n this.alertify.error(CommonConstant.RESPONSE_MESSAGES.FIEL_LENGTH_ERROR);\r\n }\r\n }\r\n DeleteFile(file: any) {\r\n this.DocList = Array.from(this.DocList).filter((x: any) => x.name != file.name);\r\n }\r\n RetriveFileNames() {\r\n Array.from(this.DocList).forEach((element: any) => {\r\n //following 1 lines modified by atul on 9 apr 22 for fix bug 415 Doc upload feature not working on Mozilla browser\r\n const checkFiles = ('lastModifiedDate' in element) || ('lastModified' in element);\r\n if (!checkFiles) {\r\n this.fileNames.push(element.relativePath);\r\n this.DocList = Array.from(this.DocList).filter((x: any) => x.name != element.name);\r\n }\r\n })\r\n }\r\n DownloadDocs(relativePath: string, docname: string) {\r\n this.appearanceService.DownloadDocs(relativePath)\r\n .subscribe(response => {\r\n saveAs(response, docname)\r\n });\r\n }\r\n Save() {\r\n this.spinner.show();\r\n this.RetriveFileNames();\r\n this.finalFormData.append('UserMasterId', JSON.stringify(this.authService.currentUserValue.id));\r\n if (this.fileNames) {\r\n for (let index = 0; index < this.fileNames.length; index++) {\r\n this.finalFormData.append('FileNames', this.fileNames[index])\r\n\r\n }\r\n }\r\n if (this.DocList) {\r\n for (var i = 0; i < this.DocList.length; i++) {\r\n // Store form name as \"file\" with file data\r\n this.finalFormData.append(\"Files\", this.DocList[i], this.DocList[i].name);\r\n }\r\n }\r\n this.appearanceService.UpdateAppearanceDoc(this.src, this.finalFormData)\r\n .subscribe(event => {\r\n if (event.isSuccess) {\r\n\r\n this.alertify.success(event.message);\r\n this.spinner.hide();\r\n //this.router.navigate(['/appearance-list', 'Open']);\r\n this.activeModal.dismiss('Cross click');\r\n } else {\r\n this.alertify.error(event.message);\r\n }\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
Documents
\r\n \r\n
\r\n
\r\n
\r\n
\r\n 0\" class=\"table table-bordered\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
File NameFile TypeAction

{{doc.name}}

{{doc.name.split(\".\").pop()}}
\r\n
\r\n
\r\n
\r\n   \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
No document Available !
\r\n
\r\n Allowed Types: doc, docx, xlsx, pdf, jpg, jpeg, zip, png, txt\r\n
\r\n
\r\n\r\n
\r\n\r\n

Loading...

","import { HttpEventType } from '@angular/common/http';\r\nimport { ValueConverter } from '@angular/compiler/src/render3/view/template';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { first } from 'rxjs/operators';\r\nimport { Appearance } from 'src/app/models/appearance';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { DatePipe } from '@angular/common'\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { CourtEntryComponent } from 'src/app/masters/court-entry/court-entry.component';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { CommonConstant } from 'src/app/Common/Constants/Constants';\r\n\r\n@Component({\r\n selector: 'app-appearance-entry',\r\n templateUrl: './appearance-entry.component.html',\r\n styleUrls: ['./appearance-entry.component.css']\r\n})\r\nexport class AppearanceEntryComponent implements OnInit {\r\n\r\n public stateList: any;\r\n public countyList: any;\r\n public appearanceList: any;\r\n public caseList: any;\r\n public courtList: any;\r\n public progress: any;\r\n public fileNames: any = [];\r\n appearanceForm: FormGroup;\r\n public selectedFiles: any = [];\r\n public languages: any;\r\n public submitted: Boolean = false;\r\n public addappear: Appearance = new Appearance();\r\n public finalFormData = new FormData();\r\n public lang: Array;\r\n public isAddMode: boolean;\r\n public selectedCounty: any;\r\n public id: number;\r\n public buttonText: string = 'Save';\r\n public ProfileType: string;\r\n public currentDate: Date;\r\n public formgroup: FormGroup;\r\n constructor(private userService: UserService, private spinner: NgxSpinnerService, private datePipe: DatePipe, private router: Router, public datepipe: DatePipe, private route: ActivatedRoute, private authService: AuthService, private appearanceService: AppearanceService, private alertify: AlertifyService, private formBuilder: FormBuilder,\r\n public modalService: NgbModal) { }\r\n\r\n ngOnInit() {\r\n //this.currentDate = this.datepipe.transform(new Date(), 'dd-mm-yyyy') || new Date('14-01-2022');\r\n this.currentDate = new Date('14-01-2022');\r\n this.ProfileType = this.authService.currentUserValue.profileType || '';\r\n this.id = this.route.snapshot.params['id'];\r\n this.isAddMode = !this.id;\r\n this.appearanceForm = this.formBuilder.group({\r\n caseType: ['', Validators.required],\r\n appearanceType: ['', Validators.required],\r\n caseNumber: ['', Validators.required],\r\n locationState: ['', Validators.required],\r\n locationCounty: ['', Validators.required],\r\n courtHouse: ['', Validators.required],\r\n appearanceDate: [Date.now, Validators.required],\r\n appearanceTime: ['', Validators.required],\r\n minRate: [0, Validators.required],\r\n maxRate: ['', Validators.required],\r\n caseTitle: [''],\r\n minExp: [''],\r\n languageReq: [''],\r\n description: [''],\r\n note: ['']\r\n });\r\n\r\n if (!this.isAddMode) {\r\n this.appearanceService.getById(this.id)\r\n .pipe(first())\r\n .subscribe(x => {\r\n this.getCountyByState(x.model.stateMasterId);\r\n this.getAppearanceType(x.model.caseTypeId);\r\n this.getCourtType(x.model.countyMasterId);\r\n \r\n this.appearanceForm.patchValue({\r\n caseType: x.model.caseTypeId,\r\n appearanceType: x.model.appearanceTypeId,\r\n caseNumber: x.model.caseNo == null ? '' : x.model.caseNo,\r\n locationState: x.model.stateMasterId,\r\n locationCounty: x.model.countyMasterId,\r\n courtHouse: x.model.courtId,\r\n appearanceDate: this.datepipe.transform(x.model.appearanceDateTime, 'yyyy-MM-dd'),\r\n appearanceTime: this.datepipe.transform(x.model.appearanceDateTime, 'HH:mm'),\r\n minRate: x.model.minRate,\r\n maxRate: x.model.maxRate == 99999 ? '' : x.model.maxRate,\r\n caseTitle: x.model.caseTitle == null ? '' : x.model.caseTitle,\r\n minExp: x.model.minExp == 0 ? '' : x.model.minExp,\r\n languageReq: x.model.languages,\r\n description: x.model.description,\r\n note: x.model.notes\r\n\r\n })\r\n this.selectedFiles = x.model.files;\r\n });\r\n this.buttonText = 'Update';\r\n }\r\n this.getAllState();\r\n this.getCaseType();\r\n this.getLanguage();\r\n if (this.ProfileType == 'I') {\r\n this.onRemoveValidationClick();\r\n this.appearanceForm.patchValue({\r\n caseNumber: Math.random().toString(36).substr(2, 5)\r\n });\r\n }\r\n }\r\n\r\n // CheckMinMax(MinRate: string, MaxRate: string): Validators {\r\n // return (formGroup: FormGroup) => {\r\n // const MinRateControl = formGroup.controls[MinRate];\r\n // const MaxRateControl = formGroup.controls[MaxRate];\r\n\r\n // if (MinRateControl.value < MaxRateControl.value)\r\n // MaxRateControl.setErrors(null);\r\n // else\r\n // MaxRateControl.setErrors({ maxRateisLess: true });\r\n // }\r\n // }\r\n onRemoveValidationClick() {\r\n this.appearanceForm.controls[\"caseNumber\"].clearValidators();\r\n this.appearanceForm.controls[\"caseNumber\"].updateValueAndValidity();\r\n this.appearanceForm.controls[\"appearanceType\"].clearValidators();\r\n this.appearanceForm.controls[\"appearanceType\"].updateValueAndValidity();\r\n this.appearanceForm.controls[\"courtHouse\"].clearValidators();\r\n this.appearanceForm.controls[\"courtHouse\"].updateValueAndValidity();\r\n }\r\n // convenience getter for easy access to form fields\r\n get f() { return this.appearanceForm.controls; }\r\n getAllState() {\r\n this.userService.getAllState().subscribe(state => {\r\n this.stateList = state.list;\r\n });\r\n }\r\n\r\n\r\n onSelectedState(Id: any) {\r\n if (parseInt(Id.value) > 0) {\r\n this.getCountyByState(Id.value);\r\n }\r\n }\r\n OnSelectedCaseType(Id: any) {\r\n if (parseInt(Id.value) > 0) {\r\n this.getAppearanceType(Id.value);\r\n }\r\n }\r\n\r\n OnSelectedCounty(Id: any) {\r\n if (parseInt(Id.value) > 0) {\r\n this.selectedCounty = Id.value;\r\n this.getCourtType(Id.value);\r\n }\r\n }\r\n getCountyByState(Id: number) {\r\n this.userService.getAllCountyByState(Id).subscribe(county => {\r\n this.countyList = county.list;\r\n });\r\n }\r\n\r\n getAppearanceType(caseTypeId: any) {\r\n this.appearanceService.getAppearanceTypeByCasetypeId(caseTypeId).subscribe(appear => {\r\n this.appearanceList = appear.list;\r\n });\r\n }\r\n\r\n decimalFilter(event: any) {\r\n const reg = /^-?\\d*(\\.\\d{0,2})?$/;\r\n let input = event.target.value + String.fromCharCode(event.charCode);\r\n\r\n if (event.charCode == \"46\") {\r\n event.preventDefault();\r\n }\r\n else if (!reg.test(input)) {\r\n event.preventDefault();\r\n }\r\n }\r\n\r\n getCaseType() {\r\n this.appearanceService.getCaseType().subscribe(casetype => {\r\n this.caseList = casetype;\r\n });\r\n }\r\n\r\n getCourtType(CountyId: any) {\r\n this.appearanceService.getCourtTypeByCounty(CountyId).subscribe(court => {\r\n this.courtList = court.list;\r\n });\r\n }\r\n\r\n getLanguage() {\r\n this.appearanceService.getLanguage().subscribe(lang => {\r\n this.languages = lang.list;\r\n });\r\n }\r\n\r\n\r\n uploadDocument(event: any) {\r\n //const types = ['docx', 'xlsx', 'pdf', 'jpeg', 'zip', 'jpg', 'png', 'doc'];\r\n\r\n if (event.target.files.length === 0) {\r\n return;\r\n }\r\n if (event.target.files.length <= CommonConstant.FILE_LENGTH && this.selectedFiles.length < CommonConstant.FILE_LENGTH) {\r\n Array.from(event.target.files).forEach((element: any) => {\r\n if (element.size < CommonConstant.RESPONSE_MESSAGES.MB_SIZE) {\r\n if (CommonConstant.ALLOWED_FILE_TYPES.includes(element.name.split('.')[1])) {\r\n this.selectedFiles.push(element);\r\n } else {\r\n this.alertify.error(CommonConstant.RESPONSE_MESSAGES.FILE_TYPE_ERROR);\r\n }\r\n } else {\r\n this.alertify.error(CommonConstant.RESPONSE_MESSAGES.FILE_SIZE_ERROR);\r\n }\r\n });\r\n } else {\r\n this.alertify.error(CommonConstant.RESPONSE_MESSAGES.FIEL_LENGTH_ERROR);\r\n }\r\n // this.selectedFiles.push(event.target.files);\r\n }\r\n DeleteFile(file: any) {\r\n this.selectedFiles = Array.from(this.selectedFiles).filter((x: any) => x.name != file.name);\r\n //this.fileNames.push(file.relativePath);\r\n }\r\n\r\n RetriveFileNames() {\r\n Array.from(this.selectedFiles).forEach((element: any) => {\r\n const checkFiles = 'lastModifiedDate' in element;\r\n if (!checkFiles) {\r\n this.fileNames.push(element.relativePath);\r\n this.selectedFiles = Array.from(this.selectedFiles).filter((x: any) => x.name != element.name);\r\n }\r\n })\r\n }\r\n public formData = new FormData();\r\n RemoveRate() {\r\n\r\n }\r\n onSubmit() {\r\n this.submitted = true;\r\n if ((this.appearanceForm.get('minRate')?.value === undefined || this.appearanceForm.get('minRate')?.value === null) && this.ProfileType == 'I') {\r\n this.appearanceForm.patchValue({ minRate: 0 });\r\n }\r\n if ((this.appearanceForm.get('maxRate')?.value === undefined || this.appearanceForm.get('maxRate')?.value === null) && this.ProfileType == 'I') {\r\n this.appearanceForm.patchValue({ maxRate: '' });\r\n }\r\n if (this.ProfileType == 'I' && (this.appearanceForm.get('maxRate')?.value == 0 || this.appearanceForm.get('maxRate')?.value == '')) {\r\n this.appearanceForm.patchValue({ maxRate: 99999 });\r\n }\r\n if (this.isAddMode) {\r\n this.spinner.show();\r\n if (this.appearanceForm.valid) {\r\n // if (this.appearanceForm.get('minRate')?.value < this.appearanceForm.get('maxRate')?.value) {\r\n this.finalFormData = new FormData(); \r\n this.finalFormData.append('caseTypeId', JSON.stringify(+this.appearanceForm.get('caseType')?.value));\r\n this.finalFormData.append('appearanceTypeId', JSON.stringify(+this.appearanceForm.get('appearanceType')?.value));\r\n this.finalFormData.append('caseNo', this.appearanceForm.get('caseNumber')?.value);\r\n this.finalFormData.append('StateMasterId', JSON.stringify(+this.appearanceForm.get('locationState')?.value));\r\n this.finalFormData.append('CityMasterId', JSON.stringify(0));\r\n this.finalFormData.append('countryCode', \"USA\");\r\n this.finalFormData.append('countyMasterId', JSON.stringify(+this.appearanceForm.get('locationCounty')?.value));\r\n this.finalFormData.append('courtHouseId', JSON.stringify(+this.appearanceForm.get('courtHouse')?.value));\r\n this.finalFormData.append('AppearanceDateTime', this.appearanceForm.get('appearanceDate')?.value + ' ' + this.appearanceForm.get('appearanceTime')?.value);\r\n this.finalFormData.append('MinRate', JSON.stringify(this.appearanceForm.get('minRate')?.value));\r\n this.finalFormData.append('MaxRate', JSON.stringify(this.appearanceForm.get('maxRate')?.value));\r\n this.finalFormData.append('CaseTitle', this.appearanceForm.get('caseTitle')?.value);\r\n this.finalFormData.append('MinExp', JSON.stringify(this.appearanceForm.get('minExp')?.value == '' ? 0 : this.appearanceForm.get('minExp')?.value));\r\n this.finalFormData.append('Languages', this.appearanceForm.get('languageReq')?.value);\r\n this.finalFormData.append('Description', this.appearanceForm.get('description')?.value);\r\n this.finalFormData.append('Notes', this.appearanceForm.get('note')?.value);\r\n this.finalFormData.append('UserMasterId', JSON.stringify(this.authService.currentUserValue.id));\r\n if (this.selectedFiles) {\r\n for (var i = 0; i < this.selectedFiles.length; i++) {\r\n // Store form name as \"file\" with file data\r\n this.finalFormData.append(\"Files\", this.selectedFiles[i], this.selectedFiles[i].name);\r\n }\r\n }\r\n\r\n this.appearanceService.Addappearance(this.finalFormData)\r\n .subscribe(event => {\r\n this.spinner.hide();\r\n if (event.isSuccess) {\r\n this.alertify.success(event.message);\r\n this.router.navigate(['/appearance-list', 'Open']);\r\n } else {\r\n this.alertify.error(event.message);\r\n }\r\n });\r\n // } else {\r\n // this.alertify.error('Max rate can not be less than min Rate!');\r\n // this.spinner.hide();\r\n // }\r\n } else {\r\n this.alertify.error('Invalid data provided.');\r\n this.spinner.hide();\r\n if (this.ProfileType == 'I' && (this.appearanceForm.get('maxRate')?.value == 99999)) {\r\n this.appearanceForm.patchValue({ maxRate: '' });\r\n }\r\n this.appearanceForm.controls[\"maxRate\"].clearValidators();\r\n this.appearanceForm.controls[\"maxRate\"].updateValueAndValidity();\r\n }\r\n } else {\r\n this.spinner.show();\r\n if (this.appearanceForm.valid) {\r\n //if (this.CheckCurrentDateGreater(this.appearanceForm.get('appearanceDate')?.value)) {\r\n //if (this.appearanceForm.get('minRate')?.value < this.appearanceForm.get('maxRate')?.value) {\r\n \r\n this.finalFormData = new FormData(); \r\n this.RetriveFileNames();\r\n this.finalFormData.append('caseTypeId', JSON.stringify(+this.appearanceForm.get('caseType')?.value));\r\n this.finalFormData.append('appearanceTypeId', JSON.stringify(+this.appearanceForm.get('appearanceType')?.value));\r\n this.finalFormData.append('caseNo', this.appearanceForm.get('caseNumber')?.value);\r\n this.finalFormData.append('StateMasterId', JSON.stringify(+this.appearanceForm.get('locationState')?.value));\r\n this.finalFormData.append('CityMasterId', JSON.stringify(0));\r\n this.finalFormData.append('countryCode', \"USA\");\r\n this.finalFormData.append('countyMasterId', JSON.stringify(+this.appearanceForm.get('locationCounty')?.value));\r\n this.finalFormData.append('courtHouseId', JSON.stringify(+this.appearanceForm.get('courtHouse')?.value));\r\n this.finalFormData.append('AppearanceDateTime', this.appearanceForm.get('appearanceDate')?.value + ' ' + this.appearanceForm.get('appearanceTime')?.value);\r\n this.finalFormData.append('MinRate', JSON.stringify(this.appearanceForm.get('minRate')?.value));\r\n this.finalFormData.append('MaxRate', JSON.stringify(this.appearanceForm.get('maxRate')?.value));\r\n this.finalFormData.append('CaseTitle', this.appearanceForm.get('caseTitle')?.value);\r\n this.finalFormData.append('MinExp', JSON.stringify(this.appearanceForm.get('minExp')?.value == '' ? 0 : this.appearanceForm.get('minExp')?.value));\r\n this.finalFormData.append('Languages', this.appearanceForm.get('languageReq')?.value);\r\n this.finalFormData.append('Description', this.appearanceForm.get('description')?.value);\r\n this.finalFormData.append('Notes', this.appearanceForm.get('note')?.value);\r\n this.finalFormData.append('UserMasterId', JSON.stringify(this.authService.currentUserValue.id));\r\n if (this.fileNames) {\r\n for (let index = 0; index < this.fileNames.length; index++) {\r\n this.finalFormData.append('FileNames', this.fileNames[index])\r\n\r\n }\r\n }\r\n if (this.selectedFiles) {\r\n for (var i = 0; i < this.selectedFiles.length; i++) {\r\n // Store form name as \"file\" with file data\r\n this.finalFormData.append(\"Files\", this.selectedFiles[i], this.selectedFiles[i].name);\r\n }\r\n }\r\n this.appearanceService.Updateappearance(this.id, this.finalFormData)\r\n .subscribe(event => {\r\n this.spinner.hide();\r\n if (event.isSuccess) {\r\n this.alertify.success(event.message);\r\n this.router.navigate(['/appearance-list', 'Open']);\r\n } else {\r\n this.alertify.error(event.message);\r\n }\r\n });\r\n // } else {\r\n // this.alertify.error('Max rate can not be less than min Rate!');\r\n // this.spinner.hide();\r\n // }\r\n // } else {\r\n // this.alertify.error('Appearance date should be greater than or equal to the current date.');\r\n // this.spinner.hide();\r\n // }\r\n } else {\r\n this.alertify.error('Invalid data provided.');\r\n this.spinner.hide();\r\n if (this.ProfileType == 'I' && (this.appearanceForm.get('maxRate')?.value == 99999)) {\r\n this.appearanceForm.patchValue({ maxRate: '' });\r\n }\r\n this.appearanceForm.controls[\"maxRate\"].clearValidators();\r\n this.appearanceForm.controls[\"maxRate\"].updateValueAndValidity();\r\n }\r\n }\r\n }\r\n //Code Added By Nirav for Court Data Entry\r\n openAddCourt(link: any) {\r\n const modalRef = this.modalService.open(CourtEntryComponent);\r\n modalRef.componentInstance.autoId = link;\r\n modalRef.result.then((result) => {\r\n if (result === 'success') {\r\n this.getCourtType(this.selectedCounty); // Refresh Data in table grid\r\n }\r\n }, (reason) => {\r\n });\r\n }\r\n\r\n CheckCurrentDateGreater(appearanceDate: Date) {\r\n var date = new Date();\r\n if ((this.datePipe.transform(appearanceDate, 'yyyy-MM-dd') || '') >= (this.datePipe.transform(date, 'yyyy-MM-dd') || '')) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n //Code added by nirav to show back button user clicks find attorney button on appearance card.\r\n //@Sumit You have to hide / Unhide this button when normal list is displayed.\r\n back() {\r\n this.router.navigate(['/appearance-list', 'Open']);\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n

Appearance Entry

\r\n
    \r\n
  1. Home
  2. \r\n
  3. Appearance
  4. \r\n
  5. Appearance Entry
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Appearance Details

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Case Type is Required.
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Appearance Type is Required.
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Case Number is Required.
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Location State is Required.
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Location County is Required.
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Court House is Required.
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Appearance Date is Required.
\r\n
\r\n
\r\n
\r\n  \r\n \r\n \r\n
\r\n
Appearance Time is Required.
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
Min Rate is Required.
\r\n
\r\n
\r\n
Max Rate is Required.
\r\n
\r\n \r\n Max rate should be greater than min rate.\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{lang.recordName}}\r\n \r\n \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\" class=\"form-group\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
File NameFile TypeAction
{{file.name}}{{file.name.split(\".\").pop()}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n A fee will be applicable if the appearance is cancelled within 24 hrs of appearance date.\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Loading...

","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { InvoiceService } from 'src/app/services/invoice.service';\r\n\r\n@Component({\r\n selector: 'app-appearance-info',\r\n templateUrl: './appearance-info.component.html',\r\n styleUrls: ['./appearance-info.component.css']\r\n})\r\nexport class AppearanceInfoComponent implements OnInit {\r\n\r\n @Input() src: any;\r\n @Input() attorneyId: Number =0;\r\n @Input() isInvoiceCard: boolean = false;\r\n public AppearanceInfo: any;\r\n public popupTitle:string ; \r\n public UserId: Number = 0;\r\n \r\n constructor(public activeModal: NgbActiveModal,\r\n public modalService: NgbModal,\r\n private authService: AuthService,\r\n private alertify: AlertifyService,\r\n private appearanceService: AppearanceService,\r\n private invoiceService :InvoiceService,\r\n private router: Router) { }\r\n\r\n ngOnInit() {\r\n if (this.authService.currentUserValue.profileType == 'A') {\r\n this.UserId = this.authService.currentUserValue.id || 0;\r\n } else {\r\n this.UserId = this.attorneyId;\r\n }\r\n if(this.isInvoiceCard) {\r\n this.GetInvoiceInfo();\r\n this.popupTitle =\"Invoice Info\";\r\n }\r\n else {\r\n this.GetAppearanceInfo();\r\n }\r\n }\r\n\r\n GetAppearanceInfo() {\r\n if(this.UserId == 0)\r\n {\r\n this.popupTitle =\"Appearance Info\"\r\n }\r\n else{\r\n this.popupTitle =\"Application Info\"\r\n }\r\n this.appearanceService.getAppearanceInfoById(this.src,this.UserId).subscribe(info => {\r\n this.AppearanceInfo = info;\r\n //following 3 lines added by atul on 11 apr 22 for fix bug 475: Attorney view - Info icon keeps showing loader for Open appearances \r\n if(this.AppearanceInfo ==null){\r\n this.AppearanceInfo =[];\r\n }\r\n });\r\n }\r\n GetInvoiceInfo() {\r\n this.invoiceService.getInvoiceInfo(this.src,this.UserId).subscribe(info => {\r\n this.AppearanceInfo = info;\r\n //following 3 lines added by atul on 11 apr 22 for fix bug 475: Attorney view - Info icon keeps showing loader for Open appearances \r\n if(this.AppearanceInfo ==null){\r\n this.AppearanceInfo =[];\r\n }\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
{{popupTitle}}
\r\n \r\n
\r\n
\r\n
\r\n
    \r\n
  • \r\n {{info.appearanceInfo1}}: {{info.createdDate | date: 'MMM d, y, h:mm a'}} \r\n - {{info.remarks | currency:'USD':'symbol'}}\r\n /hr \r\n - {{info.createdBy}} \r\n
  • \r\n
\r\n
\r\n \r\n
\r\n \"HTML5\r\n
\r\n \r\n
\r\n
    \r\n
  • \r\n No Info Available. \r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n","import { AfterContentChecked, AfterViewChecked, ChangeDetectorRef, Component, OnChanges, OnInit } from '@angular/core';\r\nimport * as $ from 'jquery';\r\nimport { Options } from '@angular-slider/ngx-slider';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { FilterPipePipe } from '../../Common/Pipe/filter-pipe.pipe';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { DateRangeFilterPipe } from '../../Common/Pipe/date-range-filter.pipe';\r\nimport { DatePipe } from '@angular/common';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { first, take } from 'lodash';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { CommonService } from 'src/app/services/common.service';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { SearchLog } from 'src/app/models/appearance';\r\n\r\n\r\n@Component({\r\n selector: 'app-appearance-list-be',\r\n templateUrl: './appearance-list.component.html',\r\n styleUrls: ['./appearance-list.component.css']\r\n})\r\nexport class AppearanceListBEComponent implements OnInit, OnChanges {\r\n mobileMedia: any = window.matchMedia(\"(max-width:768px)\");\r\n\r\n public appearList: any;\r\n public CallingFor: string = '';\r\n public appearListCopy: any;\r\n public value: number = 0;\r\n public highValue: number = 3000;\r\n public casetypes: any[];\r\n public selectedCaseType:any = [];\r\n public selectedState:any = [];\r\n public states: any;\r\n public selectedAppearanceType = [];\r\n public selectedStatus = [];\r\n public appearancetypes: any[];\r\n showFilter: boolean = true;\r\n public statuses: any[];\r\n public selectedCounty = [];\r\n public counties: any;\r\n public DateFrom: string;\r\n public status: string = '';\r\n public DateTo: string;\r\n searchFromTop: any;\r\n public RefreshSideFilter: boolean = false;\r\n private isSearchfromTop: boolean;\r\n public options: Options = {\r\n floor: 0,\r\n ceil: 3000\r\n };\r\n selectedstateText: any = [];\r\n selectedCaseTypeText: any = [];\r\n currentURL: string;\r\n public items: any[] = [1, 2, 3, 4, 5];\r\n emailtoken: any;\r\n Id: string[];\r\n selectedstatesArray: any[];\r\n selectedCaseTypesArray: any[];\r\n public userInfo: any;\r\n public pageNumber:any=1;\r\n public pageTotalItems:any=1;\r\n\r\n constructor(private appearanceService: AppearanceService,\r\n private commonService: CommonService,\r\n public authService: AuthService,\r\n private route: ActivatedRoute,\r\n private spinner: NgxSpinnerService,\r\n private dataService: DataService,\r\n private userService: UserService) {\r\n }\r\n\r\n subscription: Subscription;\r\n ngOnChanges() {\r\n }\r\n\r\n ngOnInit() {\r\n // if(this.authService.currentUserValue.profileType =='EA' && this.authService.isDualRoleFirstTime){\r\n // this.authService.currentUser.subscribe(data => {\r\n // this.userInfo = data;\r\n // });\r\n // this.userInfo.profileType = \"E\";\r\n // this.authService.currentUserValues(this.userInfo);\r\n // }\r\n //Following 3 lines added by atul on 5 may 22 for hide side filter on smaller screens\r\n if (this.mobileMedia.matches) {\r\n this.showFilter = false;\r\n }\r\n this.CallingFor = 'Appearance';\r\n this.emailtoken = this.route.snapshot.params.emailtoken;\r\n if (this.emailtoken != undefined && this.emailtoken != null) {\r\n this.Id = atob(this.emailtoken).split('***');\r\n }\r\n this.searchFromTop = this.dataService.getOption();\r\n if ((this.searchFromTop.casetypes != undefined && this.searchFromTop.casetypes != null && this.searchFromTop.casetypes != \"\") || (this.searchFromTop.selectedLocation != \"\" && this.searchFromTop.selectedLocation != undefined && this.searchFromTop.selectedLocation != null)) {\r\n // this.isSearchfromTop = true;\r\n this.selectedCaseType = this.searchFromTop.casetypes;\r\n //this.GetAppearanceTypes(this.selectedCaseType);\r\n //Next 6 lines modified by atul for fix bug that . If I am searching appearance from top search than 'Reopen' appearances are not coming. 2. In search appearance those appearance are also coming for which attorney itself is in invited/applied state\r\n if (this.authService.currentUserValue.profileType == 'A') {\r\n this.GetAllAppearanceList('Open,Invited,Applied,ReOpen', this.searchFromTop.casetypes.toString(), this.searchFromTop.selectedLocation, \r\n this.authService.currentUserValue.id);\r\n }\r\n else {\r\n this.GetAllAppearanceList('Open,Invited,Applied,ReOpen', this.searchFromTop.casetypes.toString(), this.searchFromTop.selectedLocation, null);\r\n }\r\n // this.dataService.setOption('casetypes', '');\r\n \r\n }\r\n var observable$ = this.route.params;\r\n this.subscription = this.route.params.subscribe(routeParams => {\r\n this.status = routeParams.status;\r\n if (this.status) {\r\n this.GetAppearanceList();\r\n // if (this.authService.currentUserValue.profileType == 'A' && this.status == 'Open') {\r\n // this.dataService.setOption('casetypes', this.authService.currentUserValue.practiceAreaIds);\r\n // this.dataService.setOption('selectedLocation', this.authService.currentUserValue.stateIds);\r\n // }\r\n }\r\n this.currentURL = this.status;\r\n });\r\n\r\n this.GetCaseTypes();\r\n // this.GetAllStatus();\r\n this.GetAllState();\r\n // this.GetMinMaxValue();\r\n //this.GetAllCounty();\r\n\r\n //Toggle Click Function\r\n // $(\"#menu-toggle\").click(function (e: any) {\r\n // e.preventDefault();\r\n // $(\"#wrapper\").toggleClass(\"toggled\");\r\n // });\r\n }\r\n RefreshAppearancelist() {\r\n this.GetAppearanceList();\r\n }\r\n GetMinMaxValue() {\r\n this.appearanceService.GetAppearanceMinMaxForFilter().subscribe(app => {\r\n this.options.floor = app.minRate;\r\n this.options.ceil = app.maxRate + 1;\r\n this.value = app.minRate;\r\n this.highValue = app.maxRate;\r\n });\r\n }\r\n //Next 3 lines modified by atul for fix bug that . If I am searching appearance from top search than 'Reopen' appearances are not coming. 2. In search appearance those appearance are also coming for which attorney itself is in invited/applied state\r\n GetAllAppearanceList(recordStatus: any, casetypes: any, state: any, attorneyId: any) {\r\n this.spinner.show();\r\n this.appearanceService.getAllAppearanceList(recordStatus, casetypes ? casetypes : '', state ? state : '', attorneyId).subscribe(appearance => {\r\n this.spinner.hide();\r\n if (appearance != null) {\r\n appearance.forEach((element: any) => {\r\n if (element.appearance.recordStatus == 'Open' || element.appearance.recordStatus == 'Invited' || element.appearance.recordStatus == 'Applied') {\r\n element.appearance.recordStatus = 'Open';\r\n }\r\n // else if (element.appearance.recordStatus == 'ReOpen') {\r\n // element.appearance.recordStatus = 'Re-Opened';\r\n // }\r\n else {\r\n element.appearance.recordStatus = element.appearance.recordStatus;\r\n }\r\n });\r\n }\r\n this.appearList = appearance;\r\n this.appearListCopy = appearance;\r\n this.addSearchLog(this.searchFromTop.selectedLocation.toString(),this.selectedCaseType.toString());\r\n });\r\n }\r\n\r\n\r\n ShowFilterPane() {\r\n this.showFilter = !this.showFilter;\r\n }\r\n\r\n GetAppearanceList() {\r\n this.selectedCaseTypeText = [];\r\n this.selectedstateText = [];\r\n let userId = this.authService.currentUserValue.id || 0;\r\n const profileType = this.authService.currentUserValue.profileType == 'EA' ? 'E' : this.authService.currentUserValue.profileType;\r\n let status = '';\r\n if (this.status != '' && this.status != 'Open' && this.status != 'Filled') {\r\n status = this.status;\r\n if (profileType != \"A\") {\r\n this.GetAppearanceListForEmployer(userId, status);\r\n } else if (profileType == \"A\") {\r\n this.GetAppearanceListForAttorney(userId, status);\r\n }\r\n } else if (this.status == 'Open') {\r\n status = 'Open,Invited,Applied,ReOpen';\r\n if (profileType != \"A\") {\r\n this.GetAppearanceListForEmployer(userId, status);\r\n } else if (profileType == \"A\") {\r\n this.GetOpenAppearanceListForAttorney(status);\r\n }\r\n } else if (this.status == 'Filled') {\r\n status = 'Approved,WITHDRAW';\r\n if (profileType != \"A\") {\r\n this.GetAppearanceListForEmployer(userId, status);\r\n } else if (profileType == \"A\") {\r\n this.GetAppearanceListForAttorney(userId, status);\r\n }\r\n }\r\n // else if (this.status == 'Expired') {\r\n // status = 'EXP,CAN'\r\n // if (profileType == \"E\" || profileType == \"I\") {\r\n // this.GetAppearanceListForEmployer(userId, status);\r\n // } else if (profileType == \"A\") {\r\n // this.GetAppearanceListForAttorney(userId, status);\r\n // }\r\n // }\r\n }\r\n\r\n GetAppearanceListForEmployer(userId: Number, status: string) {\r\n this.appearList = [];\r\n this.spinner.show();\r\n const date = new Date();\r\n this.appearanceService.getAppearanceListbyUserId(userId, status).subscribe(appearance => {\r\n this.spinner.hide();\r\n if (appearance != null) {\r\n appearance.forEach((element: any) => {\r\n if (element.appearance.recordStatus == 'Open' || element.appearance.recordStatus == 'Invited' || element.appearance.recordStatus == 'WITHDRAW') {\r\n element.appearance.recordStatus = 'Open';\r\n } \r\n else {\r\n element.appearance.recordStatus = element.appearance.recordStatus;\r\n }\r\n });\r\n }\r\n\r\n this.appearList = appearance;\r\n this.appearListCopy = appearance;\r\n });\r\n }\r\n\r\n GetAppearanceListForAttorney(userId: Number, status: string) {\r\n this.spinner.show();\r\n this.showFilter = false;\r\n this.appearanceService.getAppearanceListbyUserIdForAttorney(userId, status).subscribe(appearance => {\r\n this.showFilter = true;\r\n this.spinner.hide();\r\n //if (appearance != null) {\r\n this.appearList = appearance;\r\n this.appearListCopy = appearance;\r\n //}\r\n });\r\n }\r\n\r\n GetOpenAppearanceListForAttorney(status: string) {\r\n this.spinner.show();\r\n this.showFilter = false;\r\n console.log(this.selectedCaseType.toString());\r\n console.log(this.selectedState.toString());\r\n\r\n this.appearanceService.getAppearanceListPaging(status, this.selectedCaseType.toString(), this.selectedState.toString(), this.authService.currentUserValue.id || 0, this.pageNumber).subscribe(appearance => {\r\n this.spinner.hide();\r\n if(appearance != null)\r\n {\r\n this.pageTotalItems = appearance.count ??1;\r\n appearance = appearance.items;\r\n }\r\n else{\r\n this.pageTotalItems =1;\r\n }\r\n if (appearance != null) {\r\n appearance.forEach((element: any) => {\r\n if (element.appearance.recordStatus == 'Open' || element.appearance.recordStatus == 'Invited' || element.appearance.recordStatus == 'Applied') {\r\n element.appearance.recordStatus = 'Open';\r\n }\r\n // else if (element.appearance.recordStatus == 'ReOpen') {\r\n // element.appearance.recordStatus = 'Re-Opened';\r\n // }\r\n else {\r\n element.appearance.recordStatus = element.appearance.recordStatus;\r\n }\r\n });\r\n }\r\n this.appearList = appearance;\r\n this.appearListCopy = appearance;\r\n //We may need to update this to fetch default search value.\r\n // this.dataService.setOption('casetypes', this.authService.currentUserValue.practiceAreaIds);\r\n // this.dataService.setOption('selectedLocation', this.authService.currentUserValue.stateIds);\r\n this.dataService.setOption('casetypes', this.selectedCaseType);\r\n this.dataService.setOption('selectedLocation', this.selectedState);\r\n this.showFilter = true;\r\n });\r\n }\r\n \r\n onPageChange(event: any){\r\n this.pageNumber =event;\r\n this.RefreshAppearancelist();\r\n }\r\n GetCaseTypes() {\r\n this.appearanceService.getCaseType().subscribe(x => {\r\n this.casetypes = x;\r\n // if (this.selectedCaseType) {\r\n // this.casetypes.filter((x: any) => this.selectedCaseType.some(y => y == x.autoId)).forEach((element: any) => {\r\n // this.selectedCaseTypeText.push(element.practiceArea);\r\n // });\r\n // }\r\n });\r\n }\r\n\r\n GetAllState() {\r\n this.userService.getAllState().subscribe(x => {\r\n this.states = x.list;\r\n });\r\n }\r\n\r\n\r\n Filter(event: any) {\r\n this.appearList = event.list;\r\n if (event.selectedStateText) {\r\n this.selectedstateText = [];\r\n this.selectedState=[];\r\n this.selectedstatesArray = this.commonService.getDropDownText(event.selectedStateText, this.states);\r\n this.selectedstatesArray.forEach((element: any) => {\r\n if (!this.selectedstateText.includes(element.stateName)){\r\n this.selectedstateText.push(element.stateName);\r\n this.selectedState.push(element.autoId);\r\n }\r\n });\r\n }\r\n if (event.selectedCaseTypeText) {\r\n this.selectedCaseTypeText = [];\r\n this.selectedCaseType = [];\r\n this.selectedCaseTypesArray = this.commonService.getDropDownText(event.selectedCaseTypeText, this.casetypes);\r\n this.selectedCaseTypesArray.forEach((element: any) => {\r\n if (!this.selectedCaseTypeText.includes(element.practiceArea)){\r\n this.selectedCaseTypeText.push(element.practiceArea);\r\n this.selectedCaseType.push(element.autoId);\r\n }\r\n });\r\n }\r\n this.RefreshAppearancelist();\r\n }\r\n trackAutoId(index: any, information: { autoId: any; }) {\r\n return information ? information.autoId : undefined;\r\n }\r\n\r\n addSearchLog(selectedState: any, selectedCasetypes: any) {\r\n let log: SearchLog = {\r\n userMasterId: this.authService.currentUserValue.id || 0,\r\n searchFor: 'APPR',\r\n stateMasterId: selectedState,\r\n caseTypePracticeAreaId: selectedCasetypes,\r\n resultCount: this.appearList?.length || 0\r\n };\r\n\r\n this.appearanceService.AddSearchLog(log)\r\n .subscribe(event => {\r\n console.log(event);\r\n });\r\n }\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe()\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n

{{status}} Appearances

\r\n
    \r\n
  1. Home
  2. \r\n
  3. Home
  4. \r\n
  5. {{status}} Appearances
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n

Loading...

\r\n\r\n","import { AfterContentChecked, AfterViewChecked, ChangeDetectorRef, Component, OnChanges, OnInit } from '@angular/core';\r\nimport * as $ from 'jquery';\r\nimport { Options } from '@angular-slider/ngx-slider';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { FilterPipePipe } from '../../Common/Pipe/filter-pipe.pipe';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { DateRangeFilterPipe } from '../../Common/Pipe/date-range-filter.pipe';\r\nimport { DatePipe } from '@angular/common';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { first, take } from 'lodash';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { CommonService } from 'src/app/services/common.service';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { SearchLog } from 'src/app/models/appearance';\r\n\r\n\r\n@Component({\r\n selector: 'app-appearance-list',\r\n templateUrl: './appearance-list.component.html',\r\n styleUrls: ['./appearance-list.component.css']\r\n})\r\nexport class AppearanceListComponent implements OnInit, OnChanges {\r\n mobileMedia: any = window.matchMedia(\"(max-width:768px)\");\r\n headerText: any = 0;\r\n public appearList: any;\r\n public CallingFor: string = '';\r\n public appearListCopy: any;\r\n public value: number = 0;\r\n public highValue: number = 3000;\r\n public casetypes: any[];\r\n public selectedCaseType = [];\r\n public selectedState = [];\r\n public states: any;\r\n public selectedAppearanceType = [];\r\n public selectedStatus = [];\r\n public appearancetypes: any[];\r\n showFilter: boolean = true;\r\n public statuses: any[];\r\n public selectedCounty = [];\r\n public counties: any;\r\n public DateFrom: string;\r\n public status: string = '';\r\n public DateTo: string;\r\n searchFromTop: any;\r\n profileType: any;\r\n public RefreshSideFilter: boolean = false;\r\n private isSearchfromTop: boolean;\r\n public options: Options = {\r\n floor: 0,\r\n ceil: 3000\r\n };\r\n selectedstateText: any = [];\r\n selectedCaseTypeText: any = [];\r\n currentURL: string;\r\n public items: any[] = [1, 2, 3, 4, 5];\r\n emailtoken: any;\r\n Id: string[];\r\n selectedstatesArray: any[];\r\n selectedCaseTypesArray: any[];\r\n public userInfo: any;\r\n public topSearch: boolean = false;\r\n constructor(private appearanceService: AppearanceService,\r\n private commonService: CommonService,\r\n public authService: AuthService,\r\n private route: ActivatedRoute,\r\n private spinner: NgxSpinnerService,\r\n private dataService: DataService,\r\n private userService: UserService) {\r\n }\r\n\r\n subscription: Subscription;\r\n ngOnChanges() {\r\n }\r\n\r\n ngOnInit() {\r\n this.profileType = this.authService.currentUserValue.profileType == \"EA\"?\"E\":this.authService.currentUserValue.profileType;\r\n //Following 3 lines added by atul on 5 may 22 for hide side filter on smaller screens\r\n if (this.mobileMedia.matches) {\r\n this.showFilter = false;\r\n }\r\n this.CallingFor = 'Appearance';\r\n this.emailtoken = this.route.snapshot.params.emailtoken;\r\n if (this.emailtoken != undefined && this.emailtoken != null) {\r\n this.Id = atob(this.emailtoken).split('***');\r\n }\r\n var observable$ = this.route.params;\r\n this.subscription = this.route.params.subscribe(routeParams => {\r\n this.topSearch = false;\r\n this.status = routeParams.status;\r\n if (this.status) {\r\n this.GetAppearanceList();\r\n }\r\n this.currentURL = this.status;\r\n });\r\n this.searchFromTop = this.dataService.getOption();\r\n if ((this.searchFromTop.casetypes != undefined && this.searchFromTop.casetypes != null && this.searchFromTop.casetypes != \"\") || (this.searchFromTop.selectedLocation != \"\" && this.searchFromTop.selectedLocation != undefined && this.searchFromTop.selectedLocation != null)) {\r\n this.selectedCaseType = this.searchFromTop.casetypes;\r\n this.selectedState = this.searchFromTop.selectedLocation;\r\n this.topSearch = true;\r\n //Next 6 lines modified by atul for fix bug that . If I am searching appearance from top search than 'Reopen' appearances are not coming. 2. In search appearance those appearance are also coming for which attorney itself is in invited/applied state\r\n if (this.authService.currentUserValue.profileType == 'A') {\r\n this.GetAllAppearanceList('Open,Invited,Applied,ReOpen', this.searchFromTop.casetypes.toString(), this.searchFromTop.selectedLocation,\r\n this.authService.currentUserValue.id);\r\n }\r\n else {\r\n this.GetAllAppearanceList('Open,Invited,Applied,ReOpen', this.searchFromTop.casetypes.toString(), this.searchFromTop.selectedLocation, null);\r\n }\r\n }\r\n\r\n this.GetCaseTypes();\r\n this.GetAllState();\r\n }\r\n RefreshAppearancelist() {\r\n this.GetAppearanceList();\r\n }\r\n\r\n GetMinMaxValue() {\r\n this.appearanceService.GetAppearanceMinMaxForFilter().subscribe(app => {\r\n this.options.floor = app.minRate;\r\n this.options.ceil = app.maxRate + 1;\r\n this.value = app.minRate;\r\n this.highValue = app.maxRate;\r\n });\r\n }\r\n //Next 3 lines modified by atul for fix bug that . If I am searching appearance from top search than 'Reopen' appearances are not coming. 2. In search appearance those appearance are also coming for which attorney itself is in invited/applied state\r\n GetAllAppearanceList(recordStatus: any, casetypes: any, state: any, attorneyId: any) {\r\n this.spinner.show();\r\n this.appearanceService.getAllAppearanceList(recordStatus, casetypes ? casetypes : '', state ? state : '', attorneyId).subscribe(appearance => {\r\n this.spinner.hide();\r\n if (appearance != null) {\r\n appearance.forEach((element: any) => {\r\n if (element.appearance.recordStatus == 'Open' || element.appearance.recordStatus == 'Invited' || element.appearance.recordStatus == 'Applied') {\r\n element.appearance.recordStatus = 'Open';\r\n }\r\n // else if (element.appearance.recordStatus == 'ReOpen') {\r\n // element.appearance.recordStatus = 'Re-Opened';\r\n // }\r\n else {\r\n element.appearance.recordStatus = element.appearance.recordStatus;\r\n }\r\n });\r\n }\r\n this.appearList = appearance;\r\n this.appearListCopy = appearance;\r\n this.addSearchLog(this.searchFromTop.selectedLocation.toString(), this.selectedCaseType.toString());\r\n });\r\n }\r\n\r\n\r\n ShowFilterPane() {\r\n this.showFilter = !this.showFilter;\r\n }\r\n\r\n GetAppearanceList() {\r\n this.selectedCaseTypeText = [];\r\n this.selectedstateText = [];\r\n let userId = this.authService.currentUserValue.id || 0;\r\n const profileType = this.authService.currentUserValue.profileType == 'EA' ? 'E' : this.authService.currentUserValue.profileType;\r\n let status = '';\r\n if (this.status != '' && this.status != 'Open' && this.status != 'Filled') {\r\n status = this.status;\r\n if (profileType != \"A\") {\r\n this.GetAppearanceListForEmployer(userId, status);\r\n } else if (profileType == \"A\") {\r\n this.GetAppearanceListForAttorney(userId, status);\r\n }\r\n this.dataService.setOption('casetypes', \"\");\r\n this.dataService.setOption('selectedLocation', \"\");\r\n } else if (this.status == 'Open') {\r\n this.topSearch = true;\r\n status = 'Open,Invited,Applied,ReOpen';\r\n if (profileType != \"A\") {\r\n this.GetAppearanceListForEmployer(userId, status);\r\n } else if (profileType == \"A\") {\r\n this.GetOpenAppearanceListForAttorney(status);\r\n }\r\n } else if (this.status == 'Filled') {\r\n status = 'Approved,WITHDRAW';\r\n if (profileType != \"A\") {\r\n this.GetAppearanceListForEmployer(userId, status);\r\n } else if (profileType == \"A\") {\r\n this.GetAppearanceListForAttorney(userId, status);\r\n }\r\n this.dataService.setOption('casetypes', \"\");\r\n this.dataService.setOption('selectedLocation', \"\");\r\n }\r\n // else if (this.status == 'Expired') {\r\n // status = 'EXP,CAN'\r\n // if (profileType == \"E\" || profileType == \"I\") {\r\n // this.GetAppearanceListForEmployer(userId, status);\r\n // } else if (profileType == \"A\") {\r\n // this.GetAppearanceListForAttorney(userId, status);\r\n // }\r\n // }\r\n }\r\n\r\n GetAppearanceListForEmployer(userId: Number, status: string) {\r\n this.appearList = [];\r\n this.spinner.show();\r\n this.showFilter = false;\r\n this.appearanceService.getAppearanceListbyUserId(userId, status).subscribe(appearance => {\r\n this.spinner.hide();\r\n this.showFilter = true;\r\n if (appearance != null) {\r\n appearance.forEach((element: any) => {\r\n if (element.appearance.recordStatus == 'Open' || element.appearance.recordStatus == 'Invited' || element.appearance.recordStatus == 'WITHDRAW') {\r\n element.appearance.recordStatus = 'Open';\r\n }\r\n else {\r\n element.appearance.recordStatus = element.appearance.recordStatus;\r\n }\r\n });\r\n }\r\n\r\n this.appearList = appearance;\r\n this.appearListCopy = appearance;\r\n });\r\n }\r\n\r\n GetAppearanceListForAttorney(userId: Number, status: string) {\r\n this.appearList = [];\r\n this.spinner.show();\r\n this.showFilter = false;\r\n this.appearanceService.getAppearanceListbyUserIdForAttorney(userId, status).subscribe(appearance => {\r\n this.showFilter = true;\r\n this.spinner.hide();\r\n this.appearList = appearance;\r\n this.appearListCopy = appearance;\r\n });\r\n }\r\n\r\n GetOpenAppearanceListForAttorney(status: string) {\r\n this.spinner.show();\r\n this.showFilter = false;\r\n this.appearanceService.getAppearanceList(status, '', '', this.authService.currentUserValue.id || 0).subscribe(appearance => {\r\n this.spinner.hide();\r\n if (appearance != null) {\r\n appearance.forEach((element: any) => {\r\n if (element.appearance.recordStatus == 'Open' || element.appearance.recordStatus == 'Invited' || element.appearance.recordStatus == 'Applied') {\r\n element.appearance.recordStatus = 'Open';\r\n }\r\n // else if (element.appearance.recordStatus == 'ReOpen') {\r\n // element.appearance.recordStatus = 'Re-Opened';\r\n // }\r\n else {\r\n element.appearance.recordStatus = element.appearance.recordStatus;\r\n }\r\n });\r\n }\r\n this.appearList = appearance;\r\n this.appearListCopy = appearance;\r\n this.dataService.setOption('casetypes', this.authService.currentUserValue.practiceAreaIds);\r\n this.dataService.setOption('selectedLocation', this.authService.currentUserValue.stateIds);\r\n this.showFilter = true;\r\n });\r\n }\r\n GetCaseTypes() {\r\n this.appearanceService.getCaseType().subscribe(x => {\r\n this.casetypes = x;\r\n if (this.selectedCaseType) {\r\n this.casetypes.filter((x: any) => this.selectedCaseType.some(y => y == x.autoId)).forEach((element: any) => {\r\n this.selectedCaseTypeText.push(element.practiceArea);\r\n });\r\n }\r\n });\r\n }\r\n\r\n GetAllState() {\r\n\r\n this.userService.getAllState().subscribe(x => {\r\n this.states = x.list\r\n if (this.selectedState) {\r\n this.states.filter((x: any) => this.selectedState.some(y => y == x.autoId)).forEach((element: any) => {\r\n this.selectedstateText.push(element.stateName);\r\n });\r\n }\r\n });\r\n }\r\n\r\n\r\n Filter(event: any) {\r\n this.appearList = event.list;\r\n if (event.selectedStateText) {\r\n this.selectedstateText = [];\r\n this.selectedstatesArray = this.commonService.getDropDownText(event.selectedStateText, this.states);\r\n this.selectedstatesArray.forEach((element: any) => {\r\n if (!this.selectedstateText.includes(element.stateName))\r\n this.selectedstateText.push(element.stateName);\r\n });\r\n }\r\n if (event.selectedCaseTypeText) {\r\n this.selectedCaseTypeText = [];\r\n this.selectedCaseTypesArray = this.commonService.getDropDownText(event.selectedCaseTypeText, this.casetypes);\r\n this.selectedCaseTypesArray.forEach((element: any) => {\r\n if (!this.selectedCaseTypeText.includes(element.practiceArea))\r\n this.selectedCaseTypeText.push(element.practiceArea);\r\n });\r\n }\r\n }\r\n trackAutoId(index: any, information: { autoId: any; }) {\r\n return information ? information.autoId : undefined;\r\n }\r\n\r\n addSearchLog(selectedState: any, selectedCasetypes: any) {\r\n let log: SearchLog = {\r\n userMasterId: this.authService.currentUserValue.id || 0,\r\n searchFor: 'APPR',\r\n stateMasterId: selectedState,\r\n caseTypePracticeAreaId: selectedCasetypes,\r\n resultCount: this.appearList?.length || 0\r\n };\r\n\r\n this.appearanceService.AddSearchLog(log)\r\n .subscribe(event => {\r\n console.log(event);\r\n });\r\n }\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe()\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n

{{status}} Appearances

\r\n
    \r\n
  1. Home
  2. \r\n
  3. Home
  4. \r\n
  5. {{status}} Appearances
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \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\">Showing\r\n {{appearList?.length}} appearances 0 || selectedstateText.length >0\">matching\r\n 0\"> Case Type:\r\n {{selectedCaseTypeText}}0\">,\r\n Location: {{selectedstateText.toString()}}

\r\n

No\r\n Appearances matching0\"> Case Type:\r\n {{selectedCaseTypeText}}0\">,\r\n Location: {{selectedstateText.toString()}}

\r\n \r\n\r\n \r\n Please note: we are expanding our services and will soon be able to offer more Appearances in your region!\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n

Loading...

\r\n
\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { RouteGaurdForVerifiedAccountService } from '../services/route-gaurd-for-verified-account.service';\r\nimport { RouteGuardService } from '../services/route-guard.service';\r\nimport { AppearanceEntryComponent } from './appearance-entry/appearance-entry.component';\r\nimport { AppearanceListBEComponent } from './appearance-list-be/appearance-list.component';\r\nimport { AppearanceListComponent } from './appearance-list/appearance-list.component';\r\nimport { ApplicationListComponent } from './application-list/application-list.component';\r\n\r\n\r\nconst routes: Routes = [\r\n { path: 'appearance-entry', component: AppearanceEntryComponent, canActivate: [RouteGuardService] },\r\n { path: 'appearance-entry/:id', component: AppearanceEntryComponent, canActivate: [RouteGuardService] },\r\n { path: 'appearance-list', component: AppearanceListComponent, canActivate: [RouteGaurdForVerifiedAccountService] },\r\n { path: 'appearance-list/:status', component: AppearanceListComponent, canActivate: [RouteGuardService] },\r\n { path: 'appearance-list/:status/:emailtoken', component: AppearanceListComponent, canActivate: [RouteGuardService] },\r\n { path: 'appearance-list-be', component: AppearanceListBEComponent, canActivate: [RouteGaurdForVerifiedAccountService] },\r\n { path: 'appearance-list-be/:status', component: AppearanceListBEComponent, canActivate: [RouteGuardService] },\r\n { path: 'appearance-list-be/:status/:emailtoken', component: AppearanceListBEComponent, canActivate: [RouteGuardService] },\r\n { path: 'applications', component: ApplicationListComponent, canActivate: [RouteGuardService] },\r\n { path: 'applications/:id', component: ApplicationListComponent, canActivate: [RouteGuardService] },\r\n { path: 'applications/:id/:emailtoken', component: ApplicationListComponent, canActivate: [RouteGuardService] }\r\n];\r\n\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class AppearanceRoutingModule { }\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { saveAs } from 'file-saver';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-appearance-view',\r\n templateUrl: './appearance-view.component.html',\r\n styleUrls: ['./appearance-view.component.css']\r\n})\r\nexport class AppearanceViewComponent implements OnInit {\r\n\r\n @Input() Appearance: any;\r\n constructor(public activeModal: NgbActiveModal,\r\n public modalService: NgbModal,\r\n private authService: AuthService,\r\n private appearanceService: AppearanceService) { }\r\n public currentUser: Number;\r\n\r\n ngOnInit() {\r\n this.currentUser = this.authService.currentUserValue.id || 0;\r\n console.log(\"user,\",this.authService.currentUserValue);\r\n }\r\n\r\n DownloadDocs(docname: string, name: string) {\r\n this.appearanceService.DownloadDocs(docname)\r\n .subscribe(response => {\r\n saveAs(response, name)\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n \r\n\r\n
{{Appearance.courtName}}\r\n {{Appearance.appearanceDateTime | date}} {{Appearance.maxRate == 99999 ? \"$neg\" : \"$\" + Appearance.maxRate}}/hr
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\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\" class=\"col-md-6\">\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
File NameFile Type
{{item.name}}{{item.type}}
\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 { CommonModule, DatePipe } from '@angular/common';\r\n\r\nimport { AppearanceRoutingModule } from './appearance-routing.module';\r\nimport { AppearanceCardComponent } from './appearance-card/appearance-card.component';\r\nimport { AppearanceEntryComponent } from './appearance-entry/appearance-entry.component';\r\nimport { AppearanceListComponent } from './appearance-list/appearance-list.component';\r\nimport { NgxSliderModule } from '@angular-slider/ngx-slider';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { AppearanceDocComponent } from './appearance-doc/appearance-doc.component';\r\nimport { AppearanceViewComponent } from './appearance-view/appearance-view.component';\r\nimport { AppearanceInfoComponent } from './appearance-info/appearance-info.component';\r\nimport { CancelAppearanceComponent } from './cancel-appearance/cancel-appearance.component';\r\nimport { ApplyAppearanceComponent } from './apply-appearance/apply-appearance.component';\r\nimport { ApplicationListComponent } from './application-list/application-list.component';\r\nimport { ApplicationCardComponent } from './application-card/application-card.component';\r\nimport { SharedModule } from '../Common/Shared.module';\r\nimport { NgxSpinnerModule } from 'ngx-spinner';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { DateFormatPipe } from '../Common/Pipe/date-format.pipe';\r\nimport { AppearanceListBEComponent } from './appearance-list-be/appearance-list.component';\r\n// import {NgxPaginationModule} from 'ngx-pagination'\r\n@NgModule({\r\n declarations: [\r\n AppearanceCardComponent,\r\n AppearanceEntryComponent,\r\n AppearanceListComponent,\r\n AppearanceListBEComponent,\r\n AppearanceDocComponent,\r\n AppearanceViewComponent,\r\n AppearanceInfoComponent,\r\n CancelAppearanceComponent,\r\n ApplyAppearanceComponent,\r\n ApplicationListComponent,\r\n ApplicationCardComponent,\r\n //DateFormatPipe\r\n ],\r\n imports: [\r\n CommonModule,\r\n SharedModule,\r\n AppearanceRoutingModule,\r\n NgxSliderModule,\r\n BrowserModule,\r\n NgbModule,\r\n NgxSliderModule,\r\n NgSelectModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n NgxSpinnerModule,\r\n BrowserAnimationsModule,\r\n //DateFormatPipe\r\n // NgxPaginationModule\r\n ],\r\n \r\n providers: [DatePipe, NgbModule]\r\n})\r\nexport class AppearanceModule { }\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { UserLoginComponent } from 'src/app/user/user-login/user-login.component';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MessagesComponent } from 'src/app/Communication/messages/messages.component';\r\nimport { WithdrawComponent } from 'src/app/Communication/withdraw/withdraw.component';\r\nimport { ReopenComponent } from 'src/app/Communication/reopen/reopen.component';\r\nimport { CompleteComponent } from 'src/app/Communication/complete/complete.component';\r\nimport { RejectbyAttorneyComponent } from 'src/app/Communication/rejectby-attorney/rejectby-attorney.component';\r\nimport { DatePipe } from '@angular/common';\r\nimport { AppearanceInfoComponent } from 'src/app/appearance/appearance-info/appearance-info.component';\r\nimport { ApplyAppearanceComponent } from 'src/app/appearance/apply-appearance/apply-appearance.component';\r\nimport { CancelAppearanceComponent } from 'src/app/appearance/cancel-appearance/cancel-appearance.component';\r\nimport { AppearanceViewComponent } from 'src/app/appearance/appearance-view/appearance-view.component';\r\nimport { AppearanceDocComponent } from 'src/app/appearance/appearance-doc/appearance-doc.component';\r\nimport { ApproveComponent } from 'src/app/Communication/approve/approve.component';\r\nimport { AttorneyViewComponent } from 'src/app/attorney/attorney-view/attorney-view.component';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { RejectComponent } from 'src/app/Communication/reject/reject.component';\r\n\r\n\r\n@Component({\r\n selector: 'app-application-card',\r\n templateUrl: './application-card.component.html',\r\n styleUrls: ['./application-card.component.css']\r\n})\r\nexport class ApplicationCardComponent implements OnInit {\r\n\r\n @Input() Applicant: any = 0;\r\n @Input() AppearanceId: any = 0;\r\n public language: any;\r\n public profileType: string;\r\n public currentUserId: Number;\r\n public passedCurrentDate: boolean = false;\r\n public dynamicClass: string;\r\n public dynamicBtnClass: string;\r\n public status: string;\r\n public Approvetitle: string;\r\n\r\n\r\n constructor(public modalService: NgbModal, private spinner: NgxSpinnerService, private appearanceService: AppearanceService, private route: ActivatedRoute, private datePipe: DatePipe, public authService: AuthService, private router: Router) {\r\n this.route.paramMap.subscribe(paramMap => {\r\n this.status = paramMap.get('id') || '';\r\n })\r\n }\r\n\r\n ngOnInit() {\r\n this.ChangesStatus();\r\n this.profileType = this.authService.currentUserValue.profileType || \"\";\r\n this.currentUserId = this.authService.currentUserValue.id || 0;\r\n if (this.profileType == 'E') {\r\n this.Approvetitle = 'Approve';\r\n } else {\r\n this.Approvetitle = 'Apply';\r\n }\r\n }\r\n\r\n //Following function modified by atul on 17 jun 22 on mehul's request\r\n ChangesStatus() {\r\n if (this.authService.currentUserValue.profileType != 'A') {\r\n //this.Applicant.attorneyStatus = this.Applicant.attorneyStatus == 'Rejected' ? 'Declined' : this.Applicant.attorneyStatus;\r\n } else {\r\n this.Applicant.applicationStatus = this.Applicant.applicationStatus=='Withdraw'?'Withdrawn':this.Applicant.applicationStatus;\r\n //this.Applicant.applicationStatus = this.Applicant.applicationStatus=='Rejected'?'Declined':this.Applicant.applicationStatus;\r\n }\r\n }\r\n\r\n loggedin() {\r\n return this.authService.isLoggedIn();\r\n }\r\n openLoginPopup(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(UserLoginComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n Update(id: any) {\r\n this.router.navigate(['appearance-entry', id])\r\n }\r\n\r\n SearchAttorney(Id: any) {\r\n this.router.navigate(['attorney-list', Id])\r\n }\r\n //Document Popup Show Method\r\n openAppearanceDoc(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(AppearanceDocComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n\r\n reviseBidAmount() {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(ApplyAppearanceComponent);\r\n modalRef.componentInstance.src = this.AppearanceId;\r\n modalRef.componentInstance.minMaxRate = this.Applicant.minRate + '-' + this.Applicant.maxRate;\r\n modalRef.componentInstance.HeaderText = 'Revise Application';\r\n }\r\n\r\n //Appearance View Popup Show Method\r\n openAppearanceView(link: any, callingFrom?: string) {\r\n this.spinner.show();\r\n if (this.authService.currentUserValue.profileType == 'A' && callingFrom != 'P') {\r\n this.openAppearView();\r\n } else {\r\n const modalRef = this.modalService.open(AttorneyViewComponent, { size: 'lg', backdrop: 'static' });\r\n modalRef.componentInstance.src = link;\r\n modalRef.componentInstance.attorneyStatus=callingFrom;\r\n this.spinner.hide();\r\n }\r\n }\r\n\r\n //Appearance View Popup Show Method\r\n openAppearView() {\r\n this.appearanceService.GetAppearanceById(this.AppearanceId).subscribe(appearance => {\r\n this.spinner.hide();\r\n if (appearance.isSuccess) {\r\n const modalRef = this.modalService.open(AppearanceViewComponent, { size: 'lg', backdrop: 'static' });\r\n modalRef.componentInstance.Appearance = appearance.model;\r\n\r\n }\r\n });\r\n\r\n }\r\n //Message Popup Show Method\r\n openMessage(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(MessagesComponent);\r\n console.log(\"Applicant.userMasterId\", link);\r\n console.log(\"current id\",this.authService.currentUserValue.id);\r\n \r\n if(this.profileType == 'A'){\r\n modalRef.componentInstance.src = this.authService.currentUserValue.id;//link;\r\n }\r\n else {\r\n modalRef.componentInstance.src = link;\r\n }\r\n modalRef.componentInstance.appearanceId = this.AppearanceId;\r\n }\r\n\r\n //Invoice Entry\r\n\r\n InvoiceEntry(Id: any) {\r\n this.router.navigate(['invoice-entry', Id])\r\n }\r\n //Message Popup Show Method\r\n openReject(link: any) {\r\n //link.autoId = link.userMasterId;\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(RejectComponent);\r\n modalRef.componentInstance.src = link;\r\n modalRef.componentInstance.appearanceId = this.AppearanceId;\r\n }\r\n //Cancel Appearance Popup Show Method\r\n openCancelAppearance(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(CancelAppearanceComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n //Approve Application Popup Show Method\r\n ApproveApplication(link: any) {\r\n if (this.profileType != 'A') {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(ApproveComponent);\r\n modalRef.componentInstance.src = this.Applicant;\r\n modalRef.componentInstance.appearanceId = this.AppearanceId;\r\n } else {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(ApplyAppearanceComponent);\r\n modalRef.componentInstance.src = this.AppearanceId;\r\n modalRef.componentInstance.minMaxRate = this.Applicant.minRate + '-' + this.Applicant.maxRate;\r\n modalRef.componentInstance.HeaderText = 'Apply for Appearance';\r\n }\r\n }\r\n //Appearance Information Popup Show Method\r\n openAppearanceInfo(link: any, attorneyId: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n //Here we need to open it in medium width but that option is not present so open in lg screen \r\n const modalRef = this.modalService.open(AppearanceInfoComponent, { size: 'lg', backdrop: 'static' });\r\n modalRef.componentInstance.src = link;\r\n console.log(\"attorneyId\",attorneyId);\r\n modalRef.componentInstance.attorneyId = attorneyId;\r\n }\r\n //Withdraw Applicaiton Popup Show Method\r\n openWithdraw(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(WithdrawComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n\r\n ShowApproveBtn() {\r\n if ((this.profileType == 'E' || this.profileType == 'EA' || this.profileType == 'I') && this.Applicant.attorneyStatus == 'Applied') {\r\n return true;\r\n }\r\n else if ((this.profileType == 'A') && (this.status == 'Invited' || this.status == 'Withdraw' ||this.status == 'Withdrawn' || this.status == 'Rejected' || this.status == 'Declined')) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n ShowDocumentBtn() {\r\n if (this.profileType == 'A' && (this.Applicant.applicationStatus == 'Invited')) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n ShowRejectBtn() {\r\n //Following 3 lines modified by atul on 17 jun 22 on mehul's request\r\n if(this.status != 'Applied' && this.status != 'Invited')\r\n return false;\r\n if ((this.profileType == 'E' || this.profileType == 'EA' || this.profileType == 'I') && (this.status == 'Invited' || this.status == 'Applied')) {\r\n return true;\r\n } else if ((this.profileType == 'E' || this.profileType == 'EA' || this.profileType == 'I') && this.status != 'Applied' && this.status != 'Invited' && this.status != 'Rejected' && this.status != 'Declined' && this.status != 'Cancelled' && this.status != 'UnApproved') {\r\n return true;\r\n } else if (this.profileType == 'A' && this.status == 'Invited') {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n }\r\n ShowWithdrawBtn() {\r\n if (this.profileType == 'A' && this.status == 'Applied') {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n //Appearance Re-Open Popup Show Method\r\n openReOpenAppearance(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(ReopenComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n //Appearance Re-Open Popup Show Method\r\n openCompleteAppearance(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(CompleteComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n

\r\n {{Applicant.firstName}} {{Applicant.attorneyStatus == \"Invited\" || Applicant.attorneyStatus == \"Applied\" || Applicant.attorneyStatus == \"Not Selected\" || Applicant.attorneyStatus == \"Rejected\" || Applicant.attorneyStatus == \"Declined\" ? \"*****\": Applicant.lastName}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n BAR # {{Applicant.attorneyStatus == \"Invited\" || Applicant.attorneyStatus == \"Applied\" || Applicant.attorneyStatus == \"Not Selected\" || Applicant.attorneyStatus == \"Rejected\" || Applicant.attorneyStatus == \"Declined\" ? \"*****\": Applicant?.barDetails[0]?.barNo}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
  {{Applicant.practiceType.join(', ')}}
\r\n \r\n \r\n
\r\n
\r\n
0 && Applicant.languages != null && Applicant.languages != ''\">  Bilingual: {{Applicant.languages}}
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
{{Applicant.attorneyStatus}}   ${{Applicant.bidAmount}}/hr
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

\r\n {{Applicant?.courtName}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{Applicant?.appearanceDateTime | DateFormat }} ${{Applicant?.maxRate == 99999 ? 'neg':Applicant?.maxRate}}/hr\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
  {{Applicant.practiceArea}} | {{Applicant.appearanceType}}
\r\n
  {{Applicant?.stateName}}-{{Applicant?.countyName}}
\r\n
\r\n \r\n
\r\n
\r\n  \r\n   Individual\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{Applicant.applicationStatus}} ${{Applicant.bidAmount}}/hr \r\n  Revise
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n

Loading...

\r\n","import { AfterViewChecked, AfterViewInit, Component, OnInit } from '@angular/core';\r\nimport * as $ from 'jquery';\r\nimport { Options } from '@angular-slider/ngx-slider';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { DateRangeFilterPipe } from 'src/app/Common/Pipe/date-range-filter.pipe';\r\nimport { FilterPipePipe } from 'src/app/Common/Pipe/filter-pipe.pipe';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { DataService } from 'src/app/services/data.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-application-list',\r\n templateUrl: './application-list.component.html',\r\n styleUrls: ['./application-list.component.css']\r\n})\r\nexport class ApplicationListComponent implements OnInit {\r\n mobileMedia:any = window.matchMedia(\"(max-width:768px)\");\r\n\r\n public appearList: any;\r\n public appearListCopy: any;\r\n public value: number = 0;\r\n public highValue: number = 5;\r\n public casetypes: any[];\r\n showFilter: boolean = true;\r\n public selectedCaseType = [];\r\n public selectedState = [];\r\n selectedLanguage = [];\r\n public Languages: any[];\r\n public states: any;\r\n public selectedAppearanceType = [];\r\n public selectedStatus = [];\r\n public appearancetypes: any[];\r\n public statuses: any[];\r\n public selectedCounty = [];\r\n public counties: any;\r\n public DateFrom: string;\r\n public status: any = '';\r\n public DateTo: string;\r\n public ProfileType: string;\r\n searchFromTop: any;\r\n public options: Options = {\r\n floor: 0,\r\n ceil: 3000\r\n };\r\n public userInfo: any;\r\n public AppearanceDetails: any;\r\n public items: any[] = [1, 2, 3, 4, 5];\r\n public AppearanceId: any;\r\n public fromApplication: Boolean;\r\n //Following 2 lines added by atul on 13 apr 22 for showing correct header\r\n public headerPrefix: string = \"\";\r\n public Appearance: any = null;\r\n\r\n constructor(private appearanceService: AppearanceService,\r\n private filterPipe: FilterPipePipe,\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n private dataService : DataService,\r\n private authService: AuthService,\r\n private dateRangePipe: DateRangeFilterPipe,\r\n private spinner: NgxSpinnerService,\r\n private userService: UserService) {\r\n\r\n }\r\n\r\n\r\n ngOnInit() {\r\n //Following 4 lines added by atul on 6 apr 22 for show correct page header\r\n // this.route.params.subscribe(routeParams => {\r\n\r\n // this.status = routeParams.id;\r\n // if (this.authService.currentUserValue.profileType == 'A') {\r\n // if (isNaN(this.status)) {\r\n // this.headerPrefix = this.status == 'Rejected' ? 'Declined Appearances' : this.status +' Appearances';\r\n // this.headerPrefix = this.status == 'Withdraw' ? 'Withdrawn Appearances' : this.status +' Appearances';\r\n // }\r\n // } else {\r\n // if (isNaN(this.status)) {\r\n // this.headerPrefix = this.status == 'Rejected' ? 'Invitations Declined' : this.status+ ' Attorneys';\r\n // }\r\n // }\r\n // });\r\n // this code is for dual role to assign default role as 'E' on initial load\r\n // if(this.authService.currentUserValue.profileType =='EA' && this.authService.isDualRoleFirstTime){\r\n // this.authService.currentUser.subscribe(data => {\r\n // this.userInfo = data;\r\n // });\r\n // this.userInfo.profileType = \"E\";\r\n // this.authService.currentUserValues(this.userInfo);\r\n // }\r\n \r\n this.ProfileType = this.authService.currentUserValue.profileType || \"\";\r\n this.route.paramMap.subscribe(paramMap => {\r\n this.status = paramMap.get('id') || '';\r\n if (this.authService.currentUserValue.profileType == 'A') {\r\n if (isNaN(this.status)) {\r\n if(this.status =='Rejected'){\r\n this.headerPrefix = 'Declined Appearances';\r\n } else if(this.status == 'Withdraw'){\r\n this.headerPrefix ='Withdrawn Appearances';\r\n //Following 3 lines modified by atul on 17 jun 22 on mehul's request\r\n } else if(this.status == 'UnApproved') {\r\n this.headerPrefix = 'Not Approved Appearances';\r\n }else {\r\n this.headerPrefix = this.status+ ' Appearances';\r\n }\r\n }\r\n } else {\r\n if (isNaN(this.status)) {\r\n this.headerPrefix = this.status == 'Rejected' ? 'Invitations Declined' : (this.status == 'UnApproved' ? 'Not Approved Attorneys' : this.status + ' Attorneys');\r\n } else {\r\n this.headerPrefix = 'Invited/Applicants';\r\n }\r\n }\r\n this.AppearanceId = paramMap.get('id') || '';\r\n if (this.AppearanceId === \"Invited\" || this.AppearanceId === \"Applied\" || this.AppearanceId === \"Cancelled\" || this.AppearanceId === \"Rejected\" || this.AppearanceId === \"UnApproved\" || this.AppearanceId === \"Withdraw\") {\r\n this.fromApplication = true;\r\n if (this.ProfileType == \"A\") {\r\n this.GetApplicationCardForAttorney();\r\n } else {\r\n this.GetAppearanceByGroup();\r\n }\r\n this.dataService.setOption('casetypes', \"\");\r\n this.dataService.setOption('selectedLocation', \"\");\r\n } else {\r\n this.fromApplication = false;\r\n this.GetApplicationList();\r\n }\r\n })\r\n this.GetCaseTypes();\r\n this.GetAllStatus();\r\n this.GetAllState();\r\n this.GetAllCounty();\r\n this.getLanguage();\r\n // if (!this.fromApplication) {\r\n // this.GetApplicationList();\r\n // }\r\n //this.GetAppearanceDetails();\r\n //Toggle Click Function\r\n $(\"#menu-toggle\").click(function (e: any) {\r\n e.preventDefault();\r\n $(\"#wrapper\").toggleClass(\"toggled\");\r\n });\r\n //Following 3 lines added by atul on 5 may 22 for hide side filter on smaller screens\r\n if(this.mobileMedia.matches){\r\n this.showFilter=false;\r\n }\r\n }\r\n GetApplicationList() {\r\n this.spinner.show();\r\n this.appearanceService.GetAppearanceById(this.AppearanceId).subscribe(appearance => {\r\n if (appearance.isSuccess) {\r\n this.Appearance = appearance.model;\r\n }\r\n });\r\n\r\n this.appearanceService.GetInvitedAppliedAttoney(this.AppearanceId).subscribe(appearance => {\r\n this.spinner.hide();\r\n this.appearList = appearance.list;\r\n this.appearListCopy = appearance.list;\r\n });\r\n }\r\n ShowFilterPane() {\r\n this.showFilter = !this.showFilter;\r\n }\r\n back() {\r\n this.router.navigate(['/appearance-list', 'Open']);\r\n }\r\n\r\n GetAppearanceDetails() {\r\n this.appearanceService.getById(this.AppearanceId).subscribe(appearance => {\r\n this.AppearanceDetails = appearance.model;\r\n });\r\n }\r\n\r\n GetApplicationCardForAttorney() {\r\n this.spinner.show();\r\n this.showFilter = false;\r\n const UserId = this.authService.currentUserValue.id || 0;\r\n //Following 8 lines modified by atul on 17 jun 22 on mehul's request\r\n let status = this.AppearanceId;\r\n if(status == 'Rejected'){\r\n status = 'Declined';\r\n }\r\n else if(status == 'UnApproved'){\r\n status = 'NotSelected,Rejected';\r\n } \r\n this.appearanceService.GetApplicationForAttorney(UserId, status).subscribe(appearance => {\r\n this.showFilter = true;\r\n //Following 3 lines added by atul on 5 may 22 for hide side filter on smaller screens\r\n if(this.mobileMedia.matches){\r\n this.showFilter=false;\r\n }\r\n this.spinner.hide();\r\n this.appearList = appearance.list;\r\n this.appearListCopy = appearance.list;\r\n });\r\n }\r\n\r\n GetAppearanceByGroup() {\r\n this.spinner.show();\r\n const UserId = this.authService.currentUserValue.id || 0;\r\n //Following 8 lines modified by atul on 17 jun 22 on mehul's request\r\n let status = this.AppearanceId;\r\n if(status == 'Rejected'){\r\n status = 'Declined';\r\n }\r\n else if(status == 'UnApproved'){\r\n status = 'NotSelected,Rejected';\r\n }\r\n this.appearanceService.GetAppearanceByGroup(UserId, status).subscribe(appearance => {\r\n this.spinner.hide();\r\n this.appearList = appearance.list;\r\n this.appearListCopy = appearance.list;\r\n });\r\n }\r\n GetCaseTypes() {\r\n this.appearanceService.getCaseType().subscribe(x => { this.casetypes = x; });\r\n }\r\n Filter(event: any) {\r\n this.appearList = event.list;\r\n }\r\n GetAllStatus() {\r\n this.appearanceService.getAllStatus().subscribe(x => { this.statuses = x; });\r\n }\r\n GetAllState() {\r\n this.userService.getAllState().subscribe(x => { this.states = x.list; });\r\n }\r\n\r\n GetAllCounty() {\r\n this.userService.getAllCounty().subscribe(x => { this.counties = x.list; });\r\n }\r\n\r\n GetAppearanceTypes(caseTypeIds: any) {\r\n let casetypeidsincomma = '';\r\n caseTypeIds.forEach((element: any) => {\r\n if (casetypeidsincomma != '') {\r\n casetypeidsincomma += ',' + element;\r\n } else {\r\n casetypeidsincomma += element;\r\n }\r\n });\r\n this.appearanceService.getAppearanceTypeByCasetypeIds(caseTypeIds).subscribe(x => {\r\n this.appearancetypes = x.list;\r\n });\r\n }\r\n\r\n SearchFilter(filter: any, fieldName: string) {\r\n this.GetAppearanceTypes(filter);\r\n this.appearList = this.filterPipe.transform(this.appearListCopy, filter, fieldName, '');\r\n if (Array.from(this.appearList).length == 0 && filter.length == 0) {\r\n this.appearList = this.appearListCopy;\r\n }\r\n }\r\n getLanguage() {\r\n this.appearanceService.getLanguage().subscribe(lang => {\r\n this.Languages = lang.list;\r\n });\r\n }\r\n selectedRating = [1];\r\n Ratings = [\r\n { id: 1, name: '*' },\r\n { id: 2, name: '**' },\r\n { id: 3, name: '***' },\r\n { id: 4, name: '****' },\r\n { id: 5, name: '*****' },\r\n ];\r\n}\r\n","\r\n
\r\n
\r\n
\r\n

{{headerPrefix}}

\r\n
    \r\n
  1. Home
  2. \r\n
  3. {{headerPrefix}}
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \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\">Showing {{appearList?.length}} result(s) for: {{Appearance?.stateName}}-{{Appearance?.countyName}} {{Appearance?.courtName}} \r\n {{Appearance?.appearanceDateTime | DateFormat}} ${{Appearance?.maxRate ==99999 ? 'neg':Appearance?.maxRate}}/hr\r\n

\r\n

No Record Found

\r\n \r\n

\r\n {{Appearance?.stateName}}-{{Appearance?.countyName}} {{Appearance?.courtName}} \r\n {{Appearance?.appearanceDateTime | DateFormat}} ${{Appearance?.maxRate==99999 ? 'neg':Appearance?.maxRate}}/hr\r\n

\r\n
\r\n
\r\n
Back
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

\r\n \r\n

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

Loading...

\r\n\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { BidAppearance } from 'src/app/models/appearance';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-apply-appearance',\r\n templateUrl: './apply-appearance.component.html',\r\n styleUrls: ['./apply-appearance.component.css']\r\n})\r\nexport class ApplyAppearanceComponent implements OnInit {\r\n\r\n @Input() src: any;\r\n @Input() minMaxRate : string ='';\r\n @Input() HeaderText: string ='';\r\n BidAmount: number;\r\n MessageEmployer: string;\r\n maxRate: string;\r\n constructor(public activeModal: NgbActiveModal,\r\n public modalService: NgbModal,\r\n private appearanceService: AppearanceService,\r\n private authService: AuthService,\r\n private alertify: AlertifyService,\r\n private router: Router) { }\r\n\r\n ngOnInit() {\r\n this.GetBidById();\r\n this.maxRate = this.minMaxRate.split('-')[1];\r\n }\r\n\r\n BidApperance() {\r\n if( parseInt(this.minMaxRate.split('-')[1])>= this.BidAmount){\r\n const bid: BidAppearance = {\r\n appearanceId: this.src,\r\n attorneyId: this.authService.currentUserValue.id,\r\n bidAmount: this.BidAmount,\r\n message: this.MessageEmployer\r\n }\r\n this.appearanceService.BidAppearance(bid)\r\n .subscribe(event => {\r\n if (event.isSuccess) {\r\n this.alertify.success('Appearance successfully submitted!');\r\n this.router.navigate(['/applications','Applied']);\r\n this.activeModal.dismiss('Cross click')\r\n } \r\n });\r\n } else{\r\n this.alertify.error('Hourly rate cannot exceed the maximum rate of '+this.minMaxRate.split('-')[1]);\r\n }\r\n }\r\n\r\n decimalFilter(event: any) {\r\n const reg = /^-?\\d*(\\.\\d{0,2})?$/;\r\n let input = event.target.value + String.fromCharCode(event.charCode);\r\n\r\n if (event.charCode == \"46\") {\r\n event.preventDefault();\r\n }\r\n else if (!reg.test(input)) {\r\n event.preventDefault();\r\n }\r\n }\r\n GetBidById(){\r\n this.appearanceService.GetAppearanceBidById(this.authService.currentUserValue.id || 0,this.src)\r\n .subscribe(event => {\r\n if (event.isSuccess) {\r\n this.BidAmount = event.model.bidAmount;\r\n this.MessageEmployer = event.model.message;\r\n } \r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
{{HeaderText}}
\r\n \r\n
\r\n
\r\n
\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, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { CancelAppearance } from 'src/app/models/appearance';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-cancel-appearance',\r\n templateUrl: './cancel-appearance.component.html',\r\n styleUrls: ['./cancel-appearance.component.css']\r\n})\r\nexport class CancelAppearanceComponent implements OnInit {\r\n\r\n @Input() src: any;\r\n reason: string;\r\n remarks: string;\r\n reasons: any;\r\n GetAppearanceDueInHrs:number =-1;\r\n constructor(public activeModal: NgbActiveModal,\r\n public modalService: NgbModal,\r\n public authService: AuthService,\r\n private appearanceService: AppearanceService,\r\n private alertify: AlertifyService,\r\n private router: Router) { }\r\n\r\n ngOnInit() {\r\n //following code added by atul on 24 jun 22 for task 544\r\n this.appearanceService.GetAppearanceDueInHrs(this.src)\r\n .subscribe(event => {\r\n if (event.isSuccess) {\r\n this.GetAppearanceDueInHrs= event.model;\r\n console.log(this.GetAppearanceDueInHrs);\r\n }\r\n });\r\n this.getCancelreasons();\r\n }\r\n\r\n getCancelreasons(){\r\n this.appearanceService.GetCancelReasons()\r\n .subscribe(data => {\r\n this.reasons = data.list;\r\n })\r\n }\r\n CancelAppearance() {\r\n const reason: CancelAppearance = {\r\n userMasterId: this.authService.currentUserValue.id || 0,\r\n reasons: this.reason,\r\n remarks: this.remarks\r\n }\r\n if (this.reason != null) {\r\n if (this.reason == \"Others\" && this.remarks == null) {\r\n this.alertify.error('Please enter remarks as you have selected \"Others\" as the reason.');\r\n } else {\r\n this.appearanceService.CancelAppearance(this.src, reason)\r\n .subscribe(event => {\r\n if (event.isSuccess) {\r\n this.alertify.success('Appearance successfully cancelled!');\r\n this.router.navigate(['/appearance-list','Cancelled']);\r\n this.activeModal.close('success');\r\n }\r\n });\r\n }\r\n } else {\r\n this.alertify.error(\"Please select a reason.\")\r\n }\r\n\r\n }\r\n}\r\n","
\r\n
\r\n
Cancel Appearance
\r\n \r\n
\r\n
\r\n
\r\n -1 && GetAppearanceDueInHrs < 24\" style=\"color: red;\">You are cancelling a filled appearance that is due in 24 hrs. An invoice of 1 hr will still be generated.
\r\n 23\" style=\"color: orange;\">You are cancelling a filled appearance.
\r\n Are you sure you want to cancel the Appearance request?
\r\n

A notification will be sent to all the attorneys who have applied / have been invited.

\r\n
\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, EventEmitter, Input, OnInit, Output, SimpleChanges } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AppearanceDocComponent } from 'src/app/appearance/appearance-doc/appearance-doc.component';\r\nimport { ApproveComponent } from 'src/app/Communication/approve/approve.component';\r\nimport { MessagesComponent } from 'src/app/Communication/messages/messages.component';\r\nimport { RejectComponent } from 'src/app/Communication/reject/reject.component';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { UserLoginComponent } from 'src/app/user/user-login/user-login.component';\r\nimport { AttorneyInfoComponent } from '../attorney-info/attorney-info.component';\r\nimport { AttorneyViewComponent } from '../attorney-view/attorney-view.component';\r\n\r\n@Component({\r\n selector: 'app-attorney-card',\r\n templateUrl: './attorney-card.component.html',\r\n styleUrls: ['./attorney-card.component.css']\r\n})\r\nexport class AttorneyCardComponent implements OnInit {\r\n @Input() IsAppearanceSearch: boolean;\r\n @Input() IsSelectedAll: boolean;\r\n @Input() attorney: any;\r\n // @Input() AttorneyList: any;\r\n @Output() SelectedToInvite: EventEmitter = new EventEmitter();\r\n @Output() OpentoInvite: EventEmitter = new EventEmitter();\r\n\r\n private selectedAttorney: any[] = [];\r\n public formattedAttorney: number[];\r\n public AppearanceId: any;\r\n public selectAttorney: any;\r\n public check: boolean = false;\r\n public MaskedFirstNames: string;\r\n public MaskedLastNames: string;\r\n public MaskedBarNo: string;\r\n public isLoggedin: boolean;\r\n public InviteBtn: boolean = false;\r\n constructor(public modalService: NgbModal,private router: Router, private route: ActivatedRoute, private authService: AuthService) { }\r\n ngOnChanges(): void {\r\n this.check = this.IsSelectedAll;\r\n }\r\n\r\n ngOnInit() {\r\n this.AppearanceId = parseInt(this.route.snapshot.params['Id']);\r\n const currentURL = this.router.url;\r\n if(this.AppearanceId || currentURL =='/attorney-list'){\r\n this.InviteBtn = true;\r\n }\r\n this.MaskedLastNames = '*****';\r\n this.MaskedBarNo ='*****';\r\n this.check = this.IsSelectedAll;\r\n this.isLoggedin = this.authService.isLoggedIn();\r\n }\r\n\r\n SelectToInvite(event: any, attorney: any) {\r\n this.check = !this.check;\r\n this.SelectedToInvite.emit({ SelectedAttorney: attorney, Selected: event.target.checked });\r\n }\r\n //Invite Attorney Popup Show Method\r\n openInvite() {\r\n this.OpentoInvite.emit({ AppearanceId: this.AppearanceId });\r\n }\r\n closeModel(){\r\n this.modalService.dismissAll();\r\n }\r\n //Approval Attorney Popup Show Method\r\n openApprove() {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(ApproveComponent);\r\n modalRef.componentInstance.src = this.attorney;\r\n modalRef.componentInstance.appearanceId = this.AppearanceId;\r\n }\r\n //Reject Attorney Popup Show Method\r\n openReject() {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(RejectComponent);\r\n modalRef.componentInstance.src = this.attorney;\r\n modalRef.componentInstance.appearanceId = this.AppearanceId;\r\n }\r\n //Message Popup Show Method\r\n openMessage(link: any) {\r\n if (this.authService.isLoggedIn()) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(MessagesComponent);\r\n modalRef.componentInstance.src = link;\r\n } else {\r\n const modalRef = this.modalService.open(UserLoginComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n }\r\n //Document Popup Show Method\r\n openToorneyDoc(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(AppearanceDocComponent);\r\n modalRef.componentInstance.src = link;\r\n modalRef.componentInstance.appearanceId = this.AppearanceId;\r\n }\r\n //Attorneye Information Popup Show Method\r\n openAttorneyInfo(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(AttorneyInfoComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n //Attorney Profile Popup Show Method\r\n openAttorneyView(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(AttorneyViewComponent, { size: 'lg', backdrop: 'static' });\r\n modalRef.componentInstance.src = link;\r\n }\r\n openLoginPopup(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(UserLoginComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n showApproveBtn() {\r\n if (this.authService.isLoggedIn()) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n showRejectBtn() {\r\n if (this.authService.isLoggedIn()) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n showDocumentBtn() {\r\n if (this.authService.isLoggedIn() && this.authService.currentUserValue.profileType !='E' && this.authService.currentUserValue.profileType !='EA') {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n showInviteBtn() {\r\n if (this.authService.isLoggedIn() && this.InviteBtn) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n ShowMaskedName(){\r\n if (this.authService.isLoggedIn() && !this.IsAppearanceSearch) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n ShowInfoBtn(){\r\n if(this.authService.isLoggedIn()){\r\n return true;\r\n }else{\r\n return false;\r\n }\r\n }\r\n // Below Code added by nirav for Avatar Coding\r\n getInitials(firstName:string, lastName:string) {\r\n return firstName[0].toUpperCase() + lastName[0].toUpperCase();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n

\r\n \r\n
{{getInitials(attorney.firstName,attorney.lastName)}}
\r\n {{attorney.firstName}} {{MaskedLastNames}}
(BAR # {{MaskedBarNo}})\r\n

\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
  {{attorney.stateName}}-{{attorney.countyName}}
\r\n \r\n\r\n
\r\n
\r\n
  {{attorney.practiceType.join(', ')}}
\r\n \r\n \r\n \r\n
\r\n
\r\n
Avg. rating:
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \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, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\n\r\n@Component({\r\n selector: 'app-attorney-info',\r\n templateUrl: './attorney-info.component.html',\r\n styleUrls: ['./attorney-info.component.css']\r\n})\r\nexport class AttorneyInfoComponent implements OnInit {\r\n\r\n @Input() src: any;\r\n\r\n constructor(public activeModal: NgbActiveModal,\r\n public modalService: NgbModal,\r\n private router: Router) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
Attorney Info
\r\n \r\n
\r\n
\r\n
\r\n
    \r\n
  • Created: Sep/30/2021 By : Nirav
  • \r\n
  • Invited: Sep/30/2021 By : Nirav
  • \r\n
  • Approved: Sep/30/2021 By : Nirav
  • \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport * as $ from 'jquery';\r\nimport { Options } from '@angular-slider/ngx-slider';\r\nimport { AttorneyService } from 'src/app/services/attorney.service';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { FilterPipePipe } from 'src/app/Common/Pipe/filter-pipe.pipe';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { InviteComponent } from 'src/app/Communication/invite/invite.component';\r\nimport { InviteAttorneyComponent } from 'src/app/Communication/invite-attorney/invite-attorney.component';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { CommonService } from 'src/app/services/common.service';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { SearchLog } from 'src/app/models/appearance';\r\n\r\n@Component({\r\n selector: 'app-attorney-list',\r\n templateUrl: './attorney-list.component.html',\r\n styleUrls: ['./attorney-list.component.css']\r\n})\r\nexport class AttorneyListComponent implements OnInit {\r\n mobileMedia:any = window.matchMedia(\"(max-width:768px)\");\r\n\r\n public attorneyList: any=null;\r\n public attorneyListCopy: any;\r\n title = 'angularbootstrap';\r\n value: number = 0;\r\n showFilter: boolean = true;\r\n highValue: number = 500;\r\n public states: any;\r\n selectedCaseType: any[] = [];\r\n public selectAll: boolean;\r\n public selectedAppearanceType = [];\r\n public selectedStatus = [];\r\n public appearancetypes: any[];\r\n public statuses: any[];\r\n selectedstateText: any = [];\r\n selectedCaseTypeText: any = [];\r\n public selectedCounty: any[] = [];\r\n public counties: any;\r\n public casetypes: any[];\r\n public Languages: any[];\r\n public AppearanceId: number;\r\n public IsAppearanceSearch: boolean;\r\n public Appearance: any;\r\n selectedLanguage = [];\r\n public selectedAttorney: number[] = [];\r\n public SelectedAttorneyList: any[] = [];\r\n public searchedStateName: string;\r\n public countyList: any;\r\n selectedState: any[] = [];\r\n searchFromTop: any;\r\n options: Options = {\r\n floor: 0,\r\n ceil: 5000,\r\n animate: true\r\n };\r\n public userInfo: any;\r\n selectedstatesArray: any[];\r\n selectedCaseTypesArray: any;\r\n constructor(private attoryneyService: AttorneyService, private appearanceService: AppearanceService,\r\n private filterPipe: FilterPipePipe,\r\n public modalService: NgbModal,\r\n // private dateRangePipe: DateRangeFilterPipe,\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n public commonService: CommonService,\r\n private dataService: DataService,\r\n // private datePipe: DatePipe,\r\n private spinner: NgxSpinnerService,\r\n public authService: AuthService,\r\n private userService: UserService) {\r\n }\r\n\r\n ngOnInit() {\r\n // this code is for dual role to assign default role as 'E' on initial load\r\n // if(this.authService.currentUserValue.profileType =='EA' && this.authService.isDualRoleFirstTime){\r\n // this.authService.currentUser.subscribe(data => {\r\n // this.userInfo = data;\r\n // });\r\n // this.userInfo.profileType = \"E\";\r\n // this.authService.currentUserValues(this.userInfo);\r\n // }\r\n //Following 3 lines added by atul on 5 may 22 for hide side filter on smaller screens\r\n if(this.mobileMedia.matches){\r\n this.showFilter=false;\r\n }\r\n this.AppearanceId = parseInt(this.route.snapshot.params['Id']);\r\n this.IsAppearanceSearch = this.AppearanceId ? true : false;\r\n if (this.IsAppearanceSearch) {\r\n this.FindAttorneyByAppearance();\r\n this.GetAppearance();\r\n }\r\n //Toggle Click Function\r\n $(\"#menu-toggle\").click(function (e: any) {\r\n e.preventDefault();\r\n $(\"#wrapper\").toggleClass(\"toggled\");\r\n });\r\n this.searchFromTop = this.dataService.getOption();\r\n // if (this.searchFromTop.casetypes != undefined && this.searchFromTop.casetypes != null) {\r\n // this.isSearchfromTop = true;\r\n this.selectedCaseType = this.searchFromTop.casetypes;\r\n // this.GetAttorneyListFromTop(this.searchFromTop.casetypes.toString(), this.searchFromTop.selectedLocation);\r\n\r\n // }\r\n // if (this.searchFromTop.selectedLocation != undefined && this.searchFromTop.selectedLocation != null) {\r\n // this.isSearchfromTop = true;\r\n this.selectedState = this.searchFromTop.selectedLocation;\r\n // this.GetAttorneyListFromTop(this.searchFromTop.casetypes, this.searchFromTop.selectedLocation);\r\n // }\r\n if (!this.IsAppearanceSearch) {\r\n this.GetAttorneyList();\r\n }\r\n this.GetCaseTypes();\r\n this.GetAppearanceTypes();\r\n this.GetAllStatus();\r\n this.GetAllState();\r\n this.GetAllCounty();\r\n this.getLanguage();\r\n this.GetMinMaxValue();\r\n }\r\n\r\n\r\n GetAppearance() {\r\n this.spinner.show('spinner1');\r\n this.showFilter = false;\r\n const apearanceState: any[] = [];\r\n // const apearanceCounty: any[] = [];\r\n const apearancePracticeArea: any[] = [];\r\n this.appearanceService.GetAppearanceById(this.AppearanceId).subscribe(apperance => {\r\n if (apperance.isSuccess) {\r\n this.Appearance = apperance.model;\r\n apearanceState.push(apperance.model.stateMasterId);\r\n // apearanceCounty.push(apperance.model.countyName);\r\n apearancePracticeArea.push(apperance.model.caseTypeId);\r\n // this.selectedState = apearanceState;\r\n // this.selectedCounty = apearanceCounty;\r\n // this.selectedCaseType = apearancePracticeArea;\r\n this.dataService.setOption('casetypes', apearancePracticeArea);\r\n this.dataService.setOption('selectedLocation', apearanceState);\r\n //this.attorneyList = this.attorneyList.filter((x: { stateMasterId: any; countyMasterId: any; practiceAreaId: any; }) => x.stateMasterId == this.Appearance.stateMasterId && x.practiceAreaId.includes(this.Appearance.caseTypeId));\r\n this.showFilter = true;\r\n this.spinner.hide('spinner1');\r\n }\r\n });\r\n }\r\n ShowFilterPane() {\r\n this.showFilter = !this.showFilter;\r\n }\r\n\r\n GetMinMaxValue() {\r\n this.attoryneyService.GetAttorneyMinMaxForFilter().subscribe(att => {\r\n this.options.floor = att.hourlyRateMin;\r\n this.options.ceil = att.hourlyRateMax + 1;\r\n this.value = att.hourlyRateMin;\r\n this.highValue = att.hourlyRateMax;\r\n });\r\n }\r\n\r\n onSelectedState(Id: any) {\r\n if (parseInt(Id.value) > 0) {\r\n this.getCountyByState(Id.value);\r\n }\r\n }\r\n getCountyByState(Id: number) {\r\n this.userService.getAllCountyByState(Id).subscribe(county => {\r\n this.countyList = county.list;\r\n });\r\n }\r\n GetAttorneyList() {\r\n this.attoryneyService.getAttoryneyListNew().subscribe(attorney => {\r\n if (attorney.isSuccess) {\r\n this.attorneyList = attorney.list;\r\n this.attorneyListCopy = attorney.list;\r\n }\r\n this.addSearchLog(this.searchFromTop.selectedLocation.toString(),this.searchFromTop.casetypes.toString());\r\n });\r\n }\r\n\r\n FindAttorneyByAppearance() {\r\n this.spinner.show('spinner2');\r\n this.attoryneyService.findAttorneyByAppearanceId(this.AppearanceId).subscribe(attorney => {\r\n if (attorney.isSuccess) {\r\n this.attorneyList = attorney.list;\r\n this.attorneyListCopy = attorney.list;\r\n this.spinner.hide('spinner2');\r\n }\r\n });\r\n }\r\n\r\n GetAttorneyListFromTop(caseTypes: any, state: any) {\r\n this.attoryneyService.getAttoryneyListLatest(caseTypes, state).subscribe(attorney => {\r\n if (attorney.isSuccess) {\r\n this.attorneyList = attorney.list;\r\n this.attorneyListCopy = attorney.list;\r\n }\r\n });\r\n }\r\n\r\n CheckAll() {\r\n this.selectAll = !this.selectAll;\r\n this.selectedAttorney = [];\r\n this.SelectedAttorneyList = [];\r\n if(this.selectAll){\r\n this.SelectedAttorneyList = [...this.attorneyList];\r\n this.selectedAttorney = this.attorneyList.map((x: { userMasterId: any; })=>x.userMasterId);\r\n }\r\n }\r\n GetCaseTypes() {\r\n this.appearanceService.getCaseType().subscribe(x => {\r\n this.casetypes = x;\r\n if (this.selectedCaseType) {\r\n this.casetypes.filter((x: any) => this.selectedCaseType.some(y => y == x.autoId)).forEach((element: any) => {\r\n this.selectedCaseTypeText.push(element.practiceArea);\r\n });\r\n }\r\n });\r\n }\r\n\r\n AttorneytoInvite(event: any) {\r\n if (event.Selected) {\r\n if (!this.selectedAttorney.includes(event.SelectedAttorney.userMasterId)) {\r\n this.selectedAttorney.push(event.SelectedAttorney.userMasterId);\r\n this.SelectedAttorneyList.push(event.SelectedAttorney);\r\n }\r\n } else if(this.selectAll){\r\n \r\n if(!event.Selected){\r\n let index = this.selectedAttorney.indexOf(event.SelectedAttorney.userMasterId);\r\n if (index > -1) {\r\n this.selectedAttorney.splice(index,1);\r\n this.SelectedAttorneyList.splice(index,1);\r\n }\r\n }\r\n } else {\r\n let index = this.selectedAttorney.indexOf(event.SelectedAttorney.userMasterId);\r\n if (index > -1) {\r\n this.selectedAttorney.splice(index, 1);\r\n this.SelectedAttorneyList.splice(index, 1);\r\n }\r\n }\r\n }\r\n Filter(event: any) {\r\n this.attorneyList = event.list;\r\n if (event.selectedStateText) {\r\n this.selectedstateText = [];\r\n this.selectedstatesArray = this.commonService.getDropDownText(event.selectedStateText, this.states);\r\n this.selectedstatesArray.forEach((element: any) => {\r\n if (!this.selectedstateText.includes(element.stateName))\r\n this.selectedstateText.push(element.stateName);\r\n });\r\n }\r\n if (event.selectedCaseTypeText) {\r\n this.selectedCaseTypeText = [];\r\n this.selectedCaseTypesArray = this.commonService.getDropDownText(event.selectedCaseTypeText, this.casetypes);\r\n this.selectedCaseTypesArray.forEach((element: any) => {\r\n if (!this.selectedCaseTypeText.includes(element.practiceArea))\r\n this.selectedCaseTypeText.push(element.practiceArea);\r\n });\r\n }\r\n }\r\n openInvite(event: any) {\r\n const appearanceIds = [];\r\n appearanceIds.push(event.AppearanceId);\r\n if (this.IsAppearanceSearch) {\r\n // if (this.selectAll) {\r\n // this.SelectedAttorneyList = this.attorneyList;\r\n // }\r\n const modalRef = this.modalService.open(InviteComponent);\r\n modalRef.componentInstance.src = this.selectedAttorney;\r\n modalRef.componentInstance.AttorneyList = this.SelectedAttorneyList;\r\n modalRef.componentInstance.appearanceId = appearanceIds;\r\n } else {\r\n const modalrefs = this.modalService.open(InviteAttorneyComponent, { size: 'lg', backdrop: 'static' });\r\n modalrefs.componentInstance.src = this.selectedAttorney;\r\n modalrefs.componentInstance.appearanceId = event.AppearanceId;\r\n }\r\n }\r\n GetAllStatus() {\r\n this.appearanceService.getAllStatus().subscribe(x => { this.statuses = x });\r\n }\r\n GetAllState() {\r\n this.userService.getAllState().subscribe(x => {\r\n this.states = x.list\r\n if (this.selectedState) {\r\n this.states.filter((x: any) => this.selectedState.some(y => y == x.autoId)).forEach((element: any) => {\r\n this.selectedstateText.push(element.stateName);\r\n });\r\n }\r\n });\r\n }\r\n\r\n GetAllCounty() {\r\n this.userService.getAllCounty().subscribe(x => { this.counties = x.list });\r\n }\r\n GetAppearanceTypes() {\r\n this.appearanceService.getAppearanceType().subscribe(x => {\r\n this.appearancetypes = x;\r\n });\r\n }\r\n\r\n getLanguage() {\r\n this.appearanceService.getLanguage().subscribe(lang => {\r\n this.Languages = lang.list;\r\n });\r\n }\r\n\r\n SearchFilter(filter: any, fieldName: string) {\r\n this.attorneyList = this.filterPipe.transform(this.attorneyListCopy, filter, fieldName, 'attorney');\r\n if (Array.from(this.attorneyList).length == 0 && filter.length == 0) {\r\n this.attorneyList = this.attorneyListCopy;\r\n }\r\n }\r\n selectedRating = [1];\r\n Ratings = [\r\n { id: 1, name: '*' },\r\n { id: 2, name: '**' },\r\n { id: 3, name: '***' },\r\n { id: 4, name: '****' },\r\n { id: 5, name: '*****' },\r\n ];\r\n\r\n onUserChangeStart(event: any) {\r\n this.attorneyList = Array.from(this.attorneyListCopy).filter((x: any) => x.hourlyRate >= event.value && x.hourlyRate <= event.highValue);\r\n }\r\n onUserChangeEnd(event: any) {\r\n \r\n }\r\n onUserChange(event: any) {\r\n this.attorneyList = Array.from(this.attorneyListCopy).filter((x: any) => x.hourlyRate >= event.value && x.hourlyRate <= event.highValue);\r\n }\r\n //Code added by nirav to show back button user clicks find attorney button on appearance card.\r\n //@Sumit You have to hide / Unhide this button when normal list is displayed.\r\n back() {\r\n if(this.authService.isLoggedIn()){\r\n this.router.navigate(['/appearance-list', 'Open']);\r\n }else {\r\n this.router.navigate(['/']);\r\n }\r\n }\r\n addSearchLog(selectedState: any, selectedCasetypes: any) {\r\n let log: SearchLog = {\r\n userMasterId: this.authService.currentUserValue.id || 0,\r\n searchFor: 'ATTR',\r\n stateMasterId: selectedState,\r\n caseTypePracticeAreaId: selectedCasetypes,\r\n resultCount: this.attorneyList?.length || 0\r\n };\r\n\r\n this.appearanceService.AddSearchLog(log)\r\n .subscribe(event => {\r\n console.log(event);\r\n });\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n

Attorney List

\r\n
    \r\n
  1. Home
  2. \r\n
  3. Home
  4. \r\n
  5. Attorney List
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\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\">Showing {{attorneyList?.length}} results matching 0\">PracticeArea: {{selectedCaseTypeText}}0 && selectedCaseTypeText.length>0\">, 0\"> Location: {{selectedstateText}}

\r\n \r\n

No Attorneys matching 0\">PracticeArea: {{selectedCaseTypeText}}0 && selectedCaseTypeText.length>0\">, 0\">Location: {{selectedstateText}}

\r\n \r\n Please note: we are expanding our services and will soon be able to offer more Attorneys in your region!\r\n
\r\n
Back
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
0\">\r\n Showing {{attorneyList?.length}} results matching {{Appearance?.stateName}}-{{Appearance?.countyName}} {{Appearance?.courtName}}\r\n {{Appearance?.appearanceDateTime | DateFormat}} ${{Appearance?.maxRate == 99999 ? 'neg':Appearance?.maxRate}}\r\n
\r\n
\r\n No Attorney matching {{Appearance?.stateName}}-{{Appearance?.countyName}} {{Appearance?.courtName}}\r\n {{Appearance?.appearanceDateTime | DateFormat}} ${{Appearance?.maxRate == 99999 ? 'neg':Appearance?.maxRate}}\r\n
\r\n
Please note: we are expanding our services and will soon be able to offer more Attorneys in your region!
\r\n
\r\n 0\" class=\"form-check-input\" (click)=\"CheckAll()\" [(ngModel)]=\"selectAll\" type=\"checkbox\" id=\"SelectAllAttorney\"> \r\n  
Back
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n

Loading...

\r\n

Loading...

\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { RouteGaurdForVerifiedAccountService } from '../services/route-gaurd-for-verified-account.service';\r\nimport { RouteGuardService } from '../services/route-guard.service';\r\nimport { AttorneyListComponent } from './attorney-list/attorney-list.component';\r\n\r\nconst routes: Routes = [\r\n { path: 'attorney-list', component: AttorneyListComponent, canActivate: [RouteGaurdForVerifiedAccountService] },\r\n { path: 'attorney-list/:Id', component: AttorneyListComponent, canActivate: [RouteGuardService] },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class AttorneyRoutingModule { }\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\n\r\n@Component({\r\n selector: 'app-attorney-view',\r\n templateUrl: './attorney-view.component.html',\r\n styleUrls: ['./attorney-view.component.css']\r\n})\r\nexport class AttorneyViewComponent implements OnInit {\r\n\r\n @Input() src: any;\r\n @Input() attorneyStatus: any;\r\n public Attorney: any;\r\n public PracticeAreas: any;\r\n public Bars: any;\r\n constructor(public activeModal: NgbActiveModal,\r\n public modalService: NgbModal,\r\n private userService: UserService,\r\n private alertify: AlertifyService,\r\n private spinner: NgxSpinnerService,\r\n private router: Router) { }\r\n\r\n ngOnInit() {\r\n this.GetAttorneyDetails();\r\n this.GetPracticeAreas();\r\n this.GetBarDetails();\r\n console.log(\"attorneyStatus\", this.attorneyStatus)\r\n }\r\n\r\n GetAttorneyDetails() {\r\n this.spinner.show();\r\n this.userService.getUser(this.src).subscribe(user => {\r\n this.Attorney = user.model;\r\n this.spinner.hide();\r\n });\r\n }\r\n\r\n GetPracticeAreas() {\r\n this.userService.GetPracticeAreaByUserId(this.src).subscribe(practice => {\r\n this.PracticeAreas = practice.list;\r\n });\r\n }\r\n\r\n GetBarDetails() {\r\n this.userService.GetBarDetaislByUserId(this.src).subscribe(bar => {\r\n this.Bars = bar.list;\r\n });\r\n }\r\n // Below Code added by nirav for Avatar Coding\r\n getInitials(firstName:string, lastName:string) {\r\n return firstName[0].toUpperCase() + lastName[0].toUpperCase();\r\n }\r\n}\r\n","
\r\n
\r\n
{{Attorney?.firstName}} {{attorneyStatus == \"Invited\" || attorneyStatus == \"Applied\" || attorneyStatus == \"Not Selected\" || attorneyStatus == \"Rejected\" || attorneyStatus == \"Declined\" ? \"*****\": Attorney?.lastName}}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n {{getInitials(Attorney?.firstName,Attorney?.lastName)}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

\r\n \r\n

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

\r\n \r\n

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

\r\n \r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Practice AreaBrief Description (optional)\r\n
\r\n {{practice.practiceArea}}\r\n \r\n {{practice.briefDescription}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
StateBar #Action
\r\n {{bar.stateName}}\r\n \r\n {{bar.barNo}}\r\n \r\n Verify Bar #\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n

Loading...

\r\n
","import { NgModule } from '@angular/core';\r\nimport { CommonModule, DatePipe } from '@angular/common';\r\n\r\nimport { AttorneyRoutingModule } from './attorney-routing.module';\r\nimport { AttorneyListComponent } from './attorney-list/attorney-list.component';\r\nimport { AttorneyCardComponent } from './attorney-card/attorney-card.component';\r\nimport { NgxSliderModule } from '@angular-slider/ngx-slider';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { AttorneyInfoComponent } from './attorney-info/attorney-info.component';\r\nimport { AttorneyViewComponent } from './attorney-view/attorney-view.component';\r\nimport { SharedModule } from '../Common/Shared.module';\r\nimport { NgxSpinnerModule } from 'ngx-spinner';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\n\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n AttorneyListComponent,\r\n AttorneyCardComponent,\r\n AttorneyInfoComponent,\r\n AttorneyViewComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n AttorneyRoutingModule,\r\n CommonModule,\r\n NgxSliderModule,\r\n BrowserModule,\r\n NgbModule,\r\n NgxSliderModule,\r\n NgSelectModule,\r\n FormsModule,\r\n SharedModule,\r\n ReactiveFormsModule,\r\n NgxSpinnerModule,\r\n BrowserAnimationsModule\r\n ],\r\n \r\n providers: [DatePipe]\r\n})\r\nexport class AttorneyModule { }\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-about-us',\r\n templateUrl: './about-us.component.html',\r\n styleUrls: ['./about-us.component.css']\r\n})\r\nexport class AboutUsComponent 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

About Us

\r\n
    \r\n
  1. Home
  2. \r\n
  3. About Us
  4. \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n

What We Are All About

\r\n

We exist to become the most utilized, most trusted and most efficient web-based appearance facilitator around. We achieve this by empowering you, either the hiring attorney or the job seeker, with complete visibility around the hiring process.

\r\n

Our founder, a practicing attorney herself, believes in making the process of contracting with an attorney on an engagement-by-engagement basis as simple as possible.

\r\n

That's why at Videtur, we are all about transparency in allowing you, the practitioner, to identify the best candidates and opportunities so that you can quickly get back to serving your clients' needs. There are no \"black boxes\" here. We provide the means for connecting, and you and your team identify the best fit.

\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-disclaimer',\r\n templateUrl: './disclaimer.component.html',\r\n styleUrls: ['./disclaimer.component.css']\r\n})\r\nexport class DisclaimerComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","

disclaimer works!

\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-faqs',\r\n templateUrl: './faqs.component.html',\r\n styleUrls: ['./faqs.component.css']\r\n})\r\nexport class FaqsComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n

FREQUENTLY ASKED QUESTIONS

\r\n
    \r\n
  1. Home
  2. \r\n
  3. FREQUENTLY ASKED QUESTIONS
  4. \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n

GENERAL

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

\r\n \r\n

\r\n
\r\n
\r\n
\r\n Videtur lets you do the choosing! Most web-based appearance facilitator platforms have a “black box” approach to finding and verifying attorneys. But Videtur puts you in control, letting you scan our database for the right fit. Our roster of capable attorneys is growing rapidly, so it pays to check our site often!\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n There are no fees to sign up. Upon fulfillment of a posted assignment, we do charge a small finder's fee to the hiring attorney or manager (typically equal to 25% of the set payment to the hired attorney).\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n Videtur would love to hear from you! Please email us with your questions at info@videturpro.com \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n

HIRING ATTORNEYS and OTHER INTERESTED HIRING MANAGERS

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

\r\n \r\n

\r\n
\r\n
\r\n
\r\n In addition to appearances, requests can be made for depositions as well as more long-term freelance engagements.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n Unlike other web-based appearance facilitator services, Videtur does not charge any upfront fees to sign up. You don’t get charged until an assignment is completed. You set the hourly rate, and Videtur charges a small finder’s fee (typically equal to 25% of the set payment to the hired attorney).\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n You will be notified by the hired attorney when the assignment is completed.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n

JOB SEEKERS

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

\r\n \r\n

\r\n
\r\n
\r\n
\r\n Upon signing up, you can search posted assignments to see what fits. Additionally, hiring attorneys and managers can reach out to you directly when they feel, based upon your completed profile, that you are a 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 Upon fulfillment of an assignment, you will update the posting through Videtur’s platform to show the job was completed. This will generate an invoice for the hiring attorney or manager to promptly pay you by the due date listed on the invoice. Assignments are hourly-based (with a minimum of one hour) with rates set by the hiring attorney or manager. Finder’s fees charged by Videtur only apply to hiring attorneys and managers.\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-how-it-works',\r\n templateUrl: './how-it-works.component.html',\r\n styleUrls: ['./how-it-works.component.css']\r\n})\r\nexport class HowItWorksComponent 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

How it works

\r\n
    \r\n
  1. Home
  2. \r\n
  3. How it works
  4. \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n
\r\n
    \r\n
  1. Open a standard web browser such as Chrome, Edge or Firefox and type Videtur URL https://www.videturpro.com
  2. \r\n
  3. \r\n On the Videtur home page click on 'Signup' option on the top Right corner.\r\n
    \r\n
  4. \r\n
  5. On the signup window, provide name, email address and password to signup
  6. \r\n
  7. Check and accept the Terms and Conditions.
  8. \r\n
  9. \r\n Complete the signup. You will be logged in to the application.\r\n
    \r\n
  10. \r\n
  11. \r\n On login, you will be asked to complete your profile.\r\n
    \r\n
  12. \r\n
  13. \r\n Kindly login to the email account you provided on Videtur and click on the link to verify the email.\r\n
    \r\n
  14. \r\n
  15. \r\n On clicking the link in the email, your email id is verified.\r\n
    \r\n
  16. \r\n
  17. \r\n On login, you will be asked to complete your profile.\r\n
    \r\n
  18. \r\n
  19. \r\n To complete your profile-\r\n
      \r\n
    • Begin by selecting your role: either a Hiring Attorney or an Attorney seeking Appearances.
    • \r\n
    • The required profile information will vary based on the chosen role.
    • \r\n
    • You have the option to select both roles if applicable, and provide information relevant to each.
    • \r\n
    • Expand each section to view and complete the details.
    • \r\n
    • Certain fields are mandatory, while others are marked as 'Optional'.
    • \r\n
    \r\n
    \r\n
  20. \r\n
  21. \r\n Final step of the profile is setting up a payment account.\r\n


    If you are signing up as an Employer, you just need to set up a payment method so that Attorney fees can be auto-debited from your account on completion of appearance.

    \r\n
    \r\n

    Select Auto debit payment settings and click \"Start Setup\", You will be asked to enter your card details.

    \r\n
    \r\n

    Enter the credit card details and click \"Add\" button to complete auto debit payment settings.

    \r\n
    \r\n
  22. \r\n
  23. \r\n If you are signing up as an Attorney seeking Appearances, you need to set up a Nomad account to be able to accept payments for the appearances.\r\n
    \r\n
  24. \r\n
  25. \r\n Once you click \"Create Wallet\", Your Nomad Wallet creation is in-progress. Nomad sent your an email Please open that email and complete you wallet creation.\r\n
    \r\n
  26. \r\n
  27. \r\n Once the payment setup is completed, Your Profile is now completed.\r\n
    \r\n
  28. \r\n
  29. \r\n The Employer can now post an appearance by clicking on the 'New Appearance' option on the 'Appearances' menu.\r\n
    \r\n
  30. \r\n
  31. \r\n On the '+ New Appearance' page, fill the required details and 'Save' to create a new appearance.\r\n
    \r\n
  32. \r\n
  33. \r\n As soon as the appearance is created, it will show up on the 'Open appearance' page.\r\n
    \r\n
  34. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
    \r\n
  1. \r\n Employers can search for available attorneys in any of the two ways -\r\n
      \r\n
    • Open search (through Top search bar)
    • \r\n
    • Searching Attorneys matching Appearance criteria
    • \r\n
    \r\n\r\n

    Open search -
    Employers can use Open search (through Top search bar) to find Attorneys based on Practice areas and/or State. At least one search criteria (State or Practice area) must be provided, but both can be provided as well.

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

    Searching Attorneys matching Appearance criteria -
    Employers can search for Attorneys by using the ‘Find Attorney’ button on the Appearance card. This will show Attorneys matching the Appearance State and Case type.

    \r\n\r\n
    \r\n
  2. \r\n
  3. \r\n In both the above cases, the search results show Attorneys matching search criteria. The employer can further narrow down or broaden the search criteria using the filters on the left.\r\n
    \r\n
  4. \r\n
  5. \r\n Search will show Attorneys matching the specified criteria. The Employer can invite one or more attorneys to apply for the appearance.\r\n
    \r\n
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
    \r\n
  1. \r\n Attorneys can find appearance opportunities in any of the following ways -\r\n
      \r\n
    • Searching for Appearances using top search bar
    • \r\n
    • Open Appearances page
    • \r\n
    • Invited Appearances page
    • \r\n
    \r\n

    Searching for Appearances using top search bar -
    Top search bar allows the Attorney to search for appearances based on Case type and/or State.

    \r\n
    \r\n

    \r\n Open Appearances page -
    This shows open appearances matching Attorney’s Practice areas and State of residence (as per the profile information).\r\n
    From here the Attorney can apply for the appearance.\r\n

    \r\n
    \r\n

    Invited Appearances page -
    This lets the Attorney review the Appearances for which s/he is invited to apply for. On the invited appearance, the Attorney can Apply for the appearance, Decline the invitation, Message the Employer and view the Appearance documentation attached.

    \r\n
    \r\n
  2. \r\n
  3. \r\n Once applied, the Attorney can revise the charges (until the application is open, i.e. not approved / canceled / withdrawn / rejected). The Attorney can also message the Employer or withdraw the application.\r\n
    \r\n
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
    \r\n
  1. \r\n The employer can communicate with potential matched Attorneys by inviting them to apply or messaging them once they have invited or have applied for the appearance or approving/rejecting their application.\r\n
    \r\n
  2. \r\n
  3. \r\n The Msg button on the application lets the Employer chat with the Attorney.\r\n
    \r\n
  4. \r\n
  5. \r\n The employer can use the chat functionality to negotiate rates or discuss appearance with the attorney.\r\n
    \r\n
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
    \r\n
  1. \r\n After communicating with the applied attorneys, the employer can finalize and engage the attorney by approving her/his application.\r\n
    \r\n
  2. \r\n
  3. \r\n While approving, the employer can optionally add a message to the attorney.\r\n
    \r\n
  4. \r\n
  5. \r\n The attorney is now approved.
    Application status, final Hourly rate and link to Attorney profile are now shown on the Filled Appearance card. The employer can further chat with the attorney, share appearance documents or cancel the attorney (up to appearance date).\r\n
    \r\n
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
    \r\n
  1. \r\n The approved attorney would mark the appearance as complete, message the employer, upload appearance documents and raise invoice.\r\n
    \r\n

    Marking appearance complete -

    \r\n
    \r\n

    Uploading appearance documents -

    \r\n
    \r\n

    Raising the invoice -

    \r\n
    \r\n
  2. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
    \r\n
  1. \r\n The Dashboard highlights Due invoices for the employer or s/he can use the menu to go to Due invoices page.\r\n
    \r\n
  2. \r\n
  3. \r\n Due invoices will be auto-debited from the employer's account on the due date (auto-debit payment method is required to be set up in the profile immediately on signing up on Videtur).\r\n
    \r\n
  4. \r\n
  5. \r\n The invoice will then be marked as paid.\r\n
    \r\n
  6. \r\n
  7. \r\n If for any reason the auto-debit fails, the employer can pay the invoice manually as well.\r\n
    \r\n
  8. \r\n
  9. \r\n System allows the employer to make payment using standard payment methods of Cards.\r\n
    \r\n
  10. \r\n
  11. \r\n The attorney is notified of the payment and can see paid invoices via the dashboard or paid invoice menu page.\r\n
    \r\n
  12. \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 }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n

Privacy Policy

\r\n
    \r\n
  1. Home
  2. \r\n
  3. Privacy Policy
  4. \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n

Last updated: December 21, 2023

\r\n

This Privacy Policy describes Videtur LLC’s policies and procedures on the collection, use and disclosure of Your information when You use the Service and tells You about Your privacy rights and how the law protects You.

\r\n

Videtur LLC uses Your Personal data to provide and improve the Service. By using the Service, You agree to the collection and use of information in accordance with this Privacy Policy.

\r\n

Definitions

\r\n
\r\n

For the purposes of this Privacy Policy:

\r\n

\r\n Account means a unique account created for You to access Videtur LLC’s Service or parts of Videtur LLC’s Service
\r\n Business for the purpose of the CCPA (California Consumer Privacy Act), refers to the Company as the legal entity that collects Consumers' personal information and determines the purposes and means of the processing of Consumers' personal information, or on behalf of which such information is collected and that alone, or jointly with others, determines the purposes and means of the processing of consumers' personal information, that does business in the State of California.
\r\n Company (referred to as either \"the Company\", \"We\", \"Us\" or \"Our\" in this Agreement) refers to Videtur LLC, 95 Third Street, 2nd Floor, San Francisco, CA 94103.
\r\n Cookies are small files that are placed on Your computer, mobile device or any other device by a website, containing the details of Your browsing history on that website among its many uses.
\r\n Country refers to: United States
\r\n Data Controller refers to the Company as the legal person which alone or jointly with others determines the purposes and means of the processing of Personal Data.
\r\n Device means any device that can access the Service such as a computer, a cellphone or a digital tablet.
\r\n Do Not Track (DNT) is a concept that has been promoted by US regulatory authorities, in particular the U.S. Federal Trade Commission (FTC), for the Internet industry to develop and implement a mechanism for allowing internet users to control the tracking of their online activities across websites.
\r\n Personal Data is any information that relates to an identified or identifiable individual. Personal Data means any information relating to You such as a name, an identification number, location data and online identifier.
\r\n For the purposes of the CCPA, Personal Data means any information that identifies, relates to, describes or is capable of being associated with, or could reasonably be linked, directly or indirectly, with You.
\r\n Service refers to the Website.
\r\n Service Provider means any natural or legal person who processes the data on behalf of the Company. It refers to third-party companies or individuals employed by the Company to facilitate the Service, to provide the Service on behalf of the Company, to perform services related to the Service or to assist the Company in analyzing how the Service is used.
\r\n Third-party Social Media Service refers to any website or any social network website through which a User can log in or create an account to use the Service.
\r\n Usage Data refers to data collected automatically, either generated by the use of the Service or from the Service infrastructure itself (for example, the duration of a page visit).
\r\n Website refers to Videtur LLC, accessible from www.videturpro.com
\r\n You means the individual accessing or using the Service, or the company, or other legal entity on behalf of which such individual is accessing or using the Service, as applicable.\r\n

\r\n

Collecting and Using Your Personal Data

\r\n
\r\n
Types of Data Collected
\r\n

Personal Data

\r\n

While using Our Service, We may ask You to provide Us with certain personally identifiable information that can be used to contact or identify You. Personally identifiable information may include, but is not limited to:

\r\n

\r\n Email address
\r\n First name and last name
\r\n Phone number
\r\n Address, State, Province, ZIP/Postal code, City
\r\n photo (optional)
\r\n Usage Data\r\n

\r\n

Usage Data

\r\n

Usage Data is collected automatically when using the Service.

\r\n

Usage Data may include information such as Your Device's Internet Protocol address (e.g. IP address), browser type, browser version, the pages of our Service that You visit, the time and date of Your visit, the time spent on those pages, unique device identifiers and other diagnostic data.

\r\n

When You access the Service by or through a mobile device, We may collect certain information automatically, including, but not limited to, the type of mobile device You use, Your mobile device unique ID, the IP address of Your mobile device, Your mobile operating system, the type of mobile Internet browser You use, unique device identifiers and other diagnostic data.

\r\n

We may also collect information that Your browser sends whenever You visit our Service or when You access the Service by or through a mobile device.

\r\n

Information from Third-Party Social Media Services

\r\n

The Company allows You to create an account and log in to use the Service through the following Third-party Social Media Services:

\r\n
    \r\n
  • Google
  • \r\n
  • Facebook
  • \r\n
  • Twitter
  • \r\n
  • LinkedIn
  • \r\n
\r\n

If You decide to register through or otherwise grant us access to a Third-Party Social Media Service, We may collect Personal data that is already associated with Your Third-Party Social Media Service's account, such as Your name, Your email address, Your activities or Your contact list associated with that account.

\r\n

You may also have the option of sharing additional information with the Company through Your Third-Party Social Media Service's account. If You choose to provide such information and Personal Data, during registration or otherwise, You are giving the Company permission to use, share, and store it in a manner consistent with this Privacy Policy.

\r\n

Tracking Technologies and Cookies

\r\n

We use Cookies and similar tracking technologies to track the activity on Our Service and store certain information. Tracking technologies used are beacons, tags, and scripts to collect and track information and to improve and analyze Our Service. The technologies We use may include:

\r\n
    \r\n
  • Cookies or Browser Cookies. A cookie is a small file placed on Your Device. You can instruct Your browser to refuse all Cookies or to indicate when a Cookie is being sent. However, if You do not accept Cookies, You may not be able to use some parts of our Service. Unless you have adjusted Your browser setting so that it will refuse Cookies, our Service may use Cookies.
  • \r\n
  • Flash Cookies. Certain features of our Service may use local stored objects (or Flash Cookies) to collect and store information about Your preferences or Your activity on our Service. Flash Cookies are not managed by the same browser settings as those used for Browser Cookies. For more information on how You can delete Flash Cookies, please read \"Where can I change the settings for disabling, or deleting local shared objects?\" available at https://helpx.adobe.com/flash-player/kb/disable-local-shared-objects-flash.html#main_Where_can_I_change_the_settings_for_disabling__or_deleting_local_shared_objects_
  • \r\n
  • Web Beacons. Certain sections of our Service and our emails may contain small electronic files known as web beacons (also referred to as clear gifs, pixel tags, and single-pixel gifs) that permit the Company, for example, to count users who have visited those pages or opened an email and for other related website statistics (for example, recording the popularity of a certain section and verifying system and server integrity).
  • \r\n
\r\n

Cookies can be \"Persistent\" or \"Session\" Cookies. Persistent Cookies remain on Your personal computer or mobile device when You go offline, while Session Cookies are deleted as soon as You close Your web browser. Learn more about cookies on the Privacy Policies website article.

\r\n

We use both Session and Persistent Cookies for the purposes set out below:

\r\n

\r\n Necessary / Essential Cookies
\r\n Type: Session Cookies
\r\n Administered by: Us
\r\n Purpose: These Cookies are essential to provide You with services available through the Website and to enable You to use some of its features. They help to authenticate users and prevent fraudulent use of user accounts. Without these Cookies, the services that You have asked for cannot be provided, and We only use these Cookies to provide You with those services.
\r\n Cookies Policy / Notice Acceptance Cookies
\r\n Type: Persistent Cookies
\r\n Administered by: Us
\r\n Purpose: These Cookies identify if users have accepted the use of cookies on the Website.
\r\n Functionality Cookies
\r\n Type: Persistent Cookies
\r\n Administered by: Us
\r\n Purpose: These Cookies allow us to remember choices You make when You use the Website, such as remembering your login details or language preference. The purpose of these Cookies is to provide You with a more personal experience and to avoid You having to re-enter your preferences every time You use the Website.\r\n

\r\n

For more information about the cookies we use and your choices regarding cookies, please visit our Cookies Policy or the Cookies section of our Privacy Policy.

\r\n
Use of Your Personal Data
\r\n

The Company may use Personal Data for the following purposes:

\r\n

\r\n To provide and maintain our Service, including to monitor the usage of our Service.
\r\n To manage Your Account: to manage Your registration as a user of the Service. The Personal Data You provide can give You access to different functionalities of the Service that are available to You as a registered user.
\r\n For the performance of a contract: the development, compliance and undertaking of the services You have purchased or of any other contract with Us through the Service.
\r\n To contact You: To contact You by email, telephone calls, SMS, or other equivalent forms of electronic communication, such as a mobile application's push notifications regarding updates or informative communications related to the functionalities, products or contracted services, including the security updates, when necessary or reasonable for their implementation.
\r\n To provide You with news, special offers and general information about other goods, services and events which we offer that are similar to those that you have already purchased or enquired about unless You have opted not to receive such information.
\r\n To manage Your requests: To attend and manage Your requests to Us.
\r\n For business transfers: We may use Your information to evaluate or conduct a merger, divestiture, restructuring, reorganization, dissolution, or other sale or transfer of some or all of Our assets, whether as a going concern or as part of bankruptcy, liquidation, or similar proceeding, in which Personal Data held by Us about our Service users is among the assets transferred.
\r\n For other purposes: We may use Your information for other purposes, such as data analysis, identifying usage trends, determining the effectiveness of our promotional campaigns and to evaluate and improve our Service, products, services, marketing and your experience.\r\n

\r\n

We may share Your personal information in the following situations:

\r\n
    \r\n
  • With Service Providers: We may share Your personal information with Service Providers to monitor and analyze the use of our Service, for payment processing, to contact You.
  • \r\n
  • For business transfers: We may share or transfer Your personal information in connection with, or during negotiations of, any merger, sale of Company assets, financing, or acquisition of all or a portion of Our business to another company.
  • \r\n
  • With Affiliates: We may share Your information with Our affiliates, in which case we will require those affiliates to honor this Privacy Policy. Affiliates include Our parent company and any other subsidiaries, joint venture partners or other companies that We control or that are under common control with Us.
  • \r\n
  • With business partners: We may share Your information with Our business partners to offer You certain products, services or promotions.
  • \r\n
  • With other users: when You share personal information or otherwise interact in the public areas with other users, such information may be viewed by all users and may be publicly distributed outside. If You interact with other users or register through a Third-Party Social Media Service, Your contacts on the Third-Party Social Media Service may see Your name, profile, pictures and description of Your activity. Similarly, other users will be able to view descriptions of Your activity, communicate with You and view Your profile.
  • \r\n
  • With Your consent: We may disclose Your personal information for any other purpose with Your consent.
  • \r\n
\r\n
Retention of Your Personal Data
\r\n

Videtur LLC will retain Your Personal Data only for as long as is necessary for the purposes set out in this Privacy Policy. We will retain and use Your Personal Data to the extent necessary to comply with our legal obligations (for example, if we are required to retain your data to comply with applicable laws), resolve disputes, and enforce our legal agreements and policies.

\r\n

Videtur LLC will also retain Usage Data for internal analysis purposes. Usage Data is generally retained for a shorter period of time, except when this data is used to strengthen the security or to improve the functionality of Our Service, or We are legally obligated to retain this data for longer time periods.

\r\n
Transfer of Your Personal Data
\r\n

Your information, including Personal Data, is processed at the Videtur LLC’s operating offices and in any other places where the parties involved in the processing are located. It means that this 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 than those from Your jurisdiction.

\r\n

Your consent to this Privacy Policy followed by Your submission of such information represents Your agreement to that transfer.

\r\n

Videtur LLC will take all steps reasonably necessary to ensure that Your data is treated securely and in accordance with this Privacy Policy and no transfer of Your Personal Data will take place to an organization or a country unless there are adequate controls in place including the security of Your data and other personal information.

\r\n
Disclosure of Your Personal Data
\r\n

Business Transactions

\r\n

If Videtur LLC is involved in a merger, acquisition or asset sale, Your Personal Data may be transferred. We will provide notice before Your Personal Data is transferred and becomes subject to a different Privacy Policy.

\r\n

Law enforcement

\r\n

Under certain circumstances, Videtur LLC may be required to disclose Your Personal Data if required to do so by law or in response to valid requests by public authorities (e.g. a court or a government agency).

\r\n

Other legal requirements

\r\n

Videtur LLC may disclose Your Personal Data in the good faith belief that such action is necessary to:

\r\n
    \r\n
  • Comply with a legal obligation
  • \r\n
  • Protect and defend the rights or property of the Company
  • \r\n
  • Prevent or investigate possible wrongdoing in connection with the Service
  • \r\n
  • Protect the personal safety of Users of the Service or the public
  • \r\n
  • Protect against legal liability
  • \r\n
\r\n

Security of Your Personal Data

\r\n

The security of Your Personal Data is important to Us but remember that no method of transmission over the Internet, or method of electronic storage is 100% secure. While We strive to use commercially acceptable means to protect Your Personal Data, We cannot guarantee its absolute security.

\r\n

Detailed Information on the Processing of Your Personal Data

\r\n
\r\n

The Service Providers We use may have access to Your Personal Data. These third-party vendors collect, store, use, process and transfer information about Your activity on Our Service in accordance with their Privacy Policies.

\r\n
Email Marketing
\r\n

We may use Your Personal Data to contact You with newsletters, marketing or promotional materials and other information that may be of interest to You. You may opt-out of receiving any, or all, of these communications from Us by following the unsubscribe link or instructions provided in any email We send or by contacting Us.

\r\n

We may use Email Marketing Service Providers to manage and send emails to You.

\r\n

\r\n SendGrid
\r\n Their Privacy Policy can be viewed at https://sendgrid.com/\r\n

\r\n
Payments
\r\n

We are in the business of providing Services. In that case, we may use third-party services for payment processing (e.g. payment processors).

\r\n

We will not store or collect Your payment card details. That information is provided directly to Our third-party payment processors whose use of Your personal information is governed by their Privacy Policy. These payment processors adhere to the standards set by PCI-DSS as managed by the PCI Security Standards Council, which is a joint effort of brands like Visa, Mastercard, American Express and Discover. PCI-DSS requirements help ensure the secure handling of payment information.

\r\n

\r\n Complete Merchant Solutions (“CMS”)- Nexio
\r\n Their Privacy Policy can be viewed at https://cmsonline.com/privacy-policy-2/\r\n

\r\n

\r\n i-Payout CTS
\r\n Their Privacy Policy can be viewed at https://i-payout.com/\r\n

\r\n

CCPA Privacy

\r\n
\r\n

This privacy notice section for California residents supplements the information contained in Our Privacy Policy and it applies solely to all visitors, users, and others who reside in the State of California.

\r\n
Categories of Personal Information Collected
\r\n

We collect information that identifies, relates to, describes, references, is capable of being associated with, or could reasonably be linked, directly or indirectly, with a particular Consumer or Device. The following is a list of categories of personal information which we may collect or may have been collected from California residents within the last twelve (12) months.

\r\n

Please note that the categories and examples provided in the list below are those defined in the CCPA. This does not mean that all examples of that category of personal information were in fact collected by Us, but reflects our good faith belief to the best of our knowledge that some of that information from the applicable category may be and may have been collected. For example, certain categories of personal information would only be collected if You provided such personal information directly to Us.

\r\n

\r\n Category A: Identifiers.
\r\n Examples: A real name, alias, postal address, unique personal identifier, online identifier, Internet Protocol address, email address, account name, driver's license number, passport number, or other similar identifiers.
\r\n Collected: Yes.
\r\n Category B: Personal information categories listed in the California Customer Records statute (Cal. Civ. Code § 1798.80(e)).
\r\n Examples: A name, signature, Social Security number, physical characteristics or description, address, telephone number, passport number, driver's license or state identification card number, insurance policy number, education, employment, employment history, bank account number, credit card number, debit card number, or any other financial information, medical information, or health insurance information. Some personal information included in this category may overlap with other categories.
\r\n Collected: Yes.
\r\n Category C: Protected classification characteristics under California or federal law.
\r\n Examples: Age (40 years or older), race, color, ancestry, national origin, citizenship, religion or creed, marital status, medical condition, physical or mental disability, sex sexual orientation, veteran or military status, genetic information (including familial genetic information).
\r\n Collected: No.
\r\n Category D: Commercial information.
\r\n Examples: Records and history of services considered.
\r\n Collected: Yes.
\r\n Category E: Biometric information.
\r\n Examples: Genetic, physiological, behavioral, and biological characteristics, or activity patterns used to extract a template or other identifier or identifying information, such as, fingerprints, faceprints, and voiceprints, iris or retina scans, keystroke, gait, or other physical patterns, and sleep, health, or exercise data.
\r\n Collected: No.
\r\n Category F: Internet or other similar network activity.
\r\n Examples: Interaction with our Service or advertisement.
\r\n Collected: Yes.
\r\n Category G: Geolocation data.
\r\n Examples: Approximate physical location.
\r\n Collected: No.
\r\n Category H: Sensory data.
\r\n Examples: Audio, electronic, visual, thermal, olfactory, or similar information.
\r\n Collected: No.
\r\n Category I: Professional or employment-related information.
\r\n Examples: Current or past job history or performance evaluations.
\r\n Collected: No.
\r\n Category J: Non-public education information (per the Family Educational Rights and Privacy Act (20 U.S.C. Section 1232g, 34 C.F.R. Part 99)).
\r\n Examples: Education records directly related to a student maintained by an educational institution or party acting on its behalf, such as grades, transcripts, class lists, student schedules, student identification codes, student financial information, or student disciplinary records.
\r\n Collected: No.
\r\n Category K: Inferences drawn from other personal information.
\r\n Examples: Profile reflecting a person's preferences, characteristics, psychological trends, predispositions, behavior, attitudes, intelligence, abilities, and aptitudes.
\r\n Collected: No.
\r\n

\r\n

Under CCPA, personal information does not include:

\r\n
    \r\n
  • Publicly available information from government records
  • \r\n
  • Deidentified or aggregated consumer information
  • \r\n
  • Information excluded from the CCPA's scope, such as:
  • \r\n
  • Health or medical information covered by the Health Insurance Portability and Accountability Act of 1996 (HIPAA) and the California Confidentiality of Medical Information Act (CMIA) or clinical trial data
  • \r\n
  • Personal Information covered by certain sector-specific privacy laws, including the Fair Credit Reporting Act (FRCA), the Gramm-Leach-Bliley Act (GLBA) or California Financial Information Privacy Act (FIPA), and the Driver's Privacy Protection Act of 1994
  • \r\n
\r\n
Sources of Personal Information
\r\n

We obtain the categories of personal information listed above from the following categories of sources:

\r\n
    \r\n
  • Directly from You. For example, from the forms You complete on our Service, preferences You express or provide through our Service, or from Your purchases on our Service.
  • \r\n
  • Indirectly from You. For example, from observing Your activity on our Service.
  • \r\n
  • Automatically from You. For example, through cookies We or our Service Providers set on Your Device as You navigate through our Service.
  • \r\n
  • From Service Providers. For example, third-party vendors for payment processing, or other third-party vendors that We use to provide the Service to You.
  • \r\n
\r\n
Use of Personal Information for Business Purposes or Commercial Purposes
\r\n

We may use or disclose personal information We collect for \"business purposes\" or \"commercial purposes\" (as defined under the CCPA), which may include the following examples:

\r\n
    \r\n
  • To operate our Service and provide You with our Service.
  • \r\n
  • To provide You with support and to respond to Your inquiries, including to investigate and address Your concerns and monitor and improve our Service.
  • \r\n
  • To fulfill or meet the reason You provided the information. For example, if You share Your contact information to ask a question about our Service, We will use that personal information to respond to Your inquiry. If You provide Your personal information to purchase a product or service, We will use that information to process Your payment and facilitate delivery.
  • \r\n
  • To respond to law enforcement requests and as required by applicable law, court order, or governmental regulations.
  • \r\n
  • As described to You when collecting Your personal information or as otherwise set forth in the CCPA.
  • \r\n
  • For internal administrative and auditing purposes.
  • \r\n
  • To detect security incidents and protect against malicious, deceptive, fraudulent or illegal activity, including, when necessary, to prosecute those responsible for such activities.
  • \r\n
\r\n

Please note that the examples provided above are illustrative and not intended to be exhaustive. For more details on how we use this information, please refer to the \"Use of Your Personal Data\" section.

\r\n

If We decide to collect additional categories of personal information or use the personal information We collected for materially different, unrelated, or incompatible purposes We will update this Privacy Policy.

\r\n
Disclosure of Personal Information for Business Purposes or Commercial Purposes
\r\n

We may use or disclose and may have used or disclosed in the last twelve (12) months the following categories of personal information for business or commercial purposes:

\r\n
    \r\n
  • Category A: Identifiers
  • \r\n
  • Category B: Personal information categories listed in the California Customer Records statute (Cal. Civ. Code § 1798.80(e))
  • \r\n
  • Category D: Commercial information
  • \r\n
  • Category F: Internet or other similar network activity
  • \r\n
\r\n

Please note that the categories listed above are those defined in the CCPA. This does not mean that all examples of that category of personal information were in fact disclosed, but reflects our good faith belief to the best of our knowledge that some of that information from the applicable category may be and may have been disclosed.

\r\n

When We disclose personal information for a business purpose or a commercial purpose, We enter a contract that describes the purpose and requires the recipient to both keep that personal information confidential and not use it for any purpose except performing the contract.

\r\n
Sale of Personal Information
\r\n

As defined in the CCPA, \"sell\" and \"sale\" mean selling, renting, releasing, disclosing, disseminating, making available, transferring, or otherwise communicating orally, in writing, or by electronic or other means, a consumer's personal information by the business to a third party for valuable consideration. This means that We may have received some kind of benefit in return for sharing personal information, but not necessarily a monetary benefit.

\r\n

Please note that the categories listed below are those defined in the CCPA. This does not mean that all examples of that category of personal information were in fact sold, but reflects our good faith belief to the best of our knowledge that some of that information from the applicable category may be and may have been shared for value in return.

\r\n

We may sell and may have sold in the last twelve (12) months the following categories of personal information:

\r\n
    \r\n
  • Category A: Identifiers
  • \r\n
  • Category B: Personal information categories listed in the California Customer Records statute (Cal. Civ. Code § 1798.80(e))
  • \r\n
  • Category D: Commercial information
  • \r\n
  • Category F: Internet or other similar network activity
  • \r\n
\r\n
Share of Personal Information
\r\n

We may share Your personal information identified in the above categories with the following categories of third parties:

\r\n
    \r\n
  • Service Providers
  • \r\n
  • Payment processors
  • \r\n
  • Our affiliates
  • \r\n
  • Our business partners
  • \r\n
  • Third party vendors to whom You or Your agents authorize Us to disclose Your personal information in connection with products or services We provide to You
  • \r\n
\r\n
Your Rights under the CCPA
\r\n

The CCPA provides California residents with specific rights regarding their personal information. If You are a resident of California, You have the following rights:

\r\n
    \r\n
  • The right to notice. You have the right to be notified which categories of Personal Data are being collected and the purposes for which the Personal Data is being used.
  • \r\n
  • \r\n The right to request. Under CCPA, You have the right to request that We disclose information to You about Our collection, use, sale, disclosure for business purposes and share of personal information. Once We receive and confirm Your request, We will disclose to You:\r\n
      \r\n
    • The categories of personal information We collected about You
    • \r\n
    • The categories of sources for the personal information We collected about You
    • \r\n
    • Our business or commercial purpose for collecting or selling that personal information
    • \r\n
    • The categories of third parties with whom We share that personal information
    • \r\n
    • The specific pieces of personal information We collected about You
    • \r\n
    • \r\n If we sold Your personal information or disclosed Your personal information for a business purpose, We will disclose to You:\r\n
        \r\n
      • The categories of personal information categories sold
      • \r\n
      • The categories of personal information categories disclosed
      • \r\n
      \r\n
    • \r\n
    \r\n
  • \r\n
  • The right to say no to the sale of Personal Data (opt-out). You have the right to direct Us to not sell Your personal information. To submit an opt-out request please contact Us.
  • \r\n
  • \r\n The right to delete Personal Data. You have the right to request the deletion of Your Personal Data, subject to certain exceptions. Once We receive and confirm Your request, We will delete (and direct Our Service Providers to delete) Your personal information from our records, unless an exception applies. We may deny Your deletion request if retaining the information is necessary for Us or Our Service Providers to:\r\n
      \r\n
    • Complete the transaction for which We collected the personal information, provide a good or service that You requested, take actions reasonably anticipated within the context of our ongoing business relationship with You, or otherwise perform our contract with You.
    • \r\n
    • Detect security incidents, protect against malicious, deceptive, fraudulent, or illegal activity, or prosecute those responsible for such activities.
    • \r\n
    • Debug products to identify and repair errors that impair existing intended functionality.
    • \r\n
    • Exercise free speech, ensure the right of another consumer to exercise their free speech rights, or exercise another right provided for by law.
    • \r\n
    • Comply with the California Electronic Communications Privacy Act (Cal. Penal Code § 1546 et. seq.).
    • \r\n
    • Engage in public or peer-reviewed scientific, historical, or statistical research in the public interest that adheres to all other applicable ethics and privacy laws, when the information's deletion may likely render impossible or seriously impair the research's achievement, if You previously provided informed consent.
    • \r\n
    • Enable solely internal uses that are reasonably aligned with consumer expectations based on Your relationship with Us.
    • \r\n
    • Comply with a legal obligation.
    • \r\n
    • Make other internal and lawful uses of that information that are compatible with the context in which You provided it.
    • \r\n
    \r\n
  • \r\n
  • \r\n The right not to be discriminated against. You have the right not to be discriminated against for exercising any of Your consumer's rights, including by:\r\n
      \r\n
    • Denying goods or services to You
    • \r\n
    • Charging different prices or rates for goods or services, including the use of discounts or other benefits or imposing penalties
    • \r\n
    • Providing a different level or quality of goods or services to You
    • \r\n
    • Suggesting that You will receive a different price or rate for goods or services or a different level or quality of goods or services
    • \r\n
    \r\n
  • \r\n
\r\n
Exercising Your CCPA Data Protection Rights
\r\n

In order to exercise any of Your rights under the CCPA, and if You are a California resident, You can contact Us:

\r\n

\r\n By email: info@videturpro.com
\r\n By visiting this page on our website: www.videturpro.com/contact\r\n

\r\n

Only You, or a person registered with the California Secretary of State that You authorize to act on Your behalf, may make a verifiable request related to Your personal information.

\r\n

Your request to Us must:

\r\n
    \r\n
  • Provide sufficient information that allows Us to reasonably verify You are the person about whom We collected personal information or an authorized representative
  • \r\n
  • Describe Your request with sufficient detail that allows Us to properly understand, evaluate, and respond to it
  • \r\n
\r\n

We cannot respond to Your request or provide You with the required information if we cannot:

\r\n
    \r\n
  • Verify Your identity or authority to make the request
  • \r\n
  • And confirm that the personal information relates to You
  • \r\n
\r\n

We will disclose and deliver the required information free of charge within 45 days of receiving Your verifiable request. The time period to provide the required information may be extended once by an additional 45 days when reasonably necessary and with prior notice.

\r\n

Any disclosures We provide will only cover the 12-month period preceding the verifiable request's receipt.

\r\n

For data portability requests, We will select a format to provide Your personal information that is readily usable and should allow You to transmit the information from one entity to another entity without hindrance.

\r\n
Do Not Sell My Personal Information
\r\n

You have the right to opt-out of the sale of Your personal information. Once We receive and confirm a verifiable consumer request from You, we will stop selling Your personal information. To exercise Your right to opt-out, please contact Us.

\r\n

\"Do Not Track\" Policy as Required by California Online Privacy Protection Act (CalOPPA)

\r\n
\r\n

Our Service does not respond to Do Not Track signals.

\r\n

However, some third party websites do keep track of Your browsing activities. If You are visiting such websites, You can set Your preferences in Your web browser to inform websites that You do not want to be tracked. You can enable or disable DNT by visiting the preferences or settings page of Your web browser.

\r\n

Children's Privacy

\r\n
\r\n

Our Service does not address anyone under the age of 18. We do not knowingly collect personally identifiable information from anyone under the age of 18. If You are a parent or guardian and You are aware that Your child has provided Us with Personal Data, please contact Us. If We become aware that We have collected Personal Data from anyone under the age of 18 without verification of parental consent, We take steps to remove that information from Our servers.

\r\n

If We need to rely on consent as a legal basis for processing Your information and Your country requires consent from a parent, We may require Your parent's consent before We collect and use that information.

\r\n

Your California Privacy Rights (California's Shine the Light law)

\r\n
\r\n

Under California Civil Code Section 1798 (California's Shine the Light law), California residents with an established business relationship with us can request information once a year about sharing their Personal Data with third parties for the third parties' direct marketing purposes.

\r\n

If you'd like to request more information under the California Shine the Light law, and if You are a California resident, You can contact Us using the contact information provided below.

\r\n

Links to Other Websites

\r\n
\r\n

Our Service 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 visit.

\r\n

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

Changes to this Privacy Policy

\r\n
\r\n

We may update Our Privacy Policy from time to time. We will notify You of any changes by posting the new Privacy Policy on this page.

\r\n

We will let You know via email and/or a prominent notice on Our Service, prior to the change becoming effective and update the \"Last updated\" date at the top of this Privacy Policy.

\r\n

You are advised to review this Privacy Policy periodically for any changes. Changes to this Privacy Policy are effective when they are posted on this page.

\r\n

Contact Us

\r\n
\r\n

If you have any questions about this Privacy Policy, You can contact us:

\r\n

\r\n By email: info@videturpro.com
\r\n By visiting this page on our website: www.videturpro.com/contact\r\n

\r\n
\r\n
\r\n
\r\n \r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\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 @Input() fromSignUp? : boolean = false;\r\n constructor(public activeModal: NgbActiveModal) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n

Terms of Service

\r\n
    \r\n
  1. Home
  2. \r\n
  3. Terms of Service
  4. s\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n

Last updated: December 21, 2023

\r\n

Please read these Terms of Service carefully before using Our Service.

\r\n

Definitions

\r\n
\r\n

For the purposes of these Terms of Service:

\r\n

\r\n Account means a unique account created for You to access our Service or parts of our Service.
\r\n Country refers to United States
\r\n Company (referred to as either \"the Company\", \"We\", \"Us\" or \"Our\" in this Agreement) refers to Videtur LLC, Videtur, Videtur Pro, 75 Broadway Ste 202, San Francisco, CA 94111.
\r\n Device means any device that can access the Service such as a computer, a cellphone or a digital tablet.
\r\n Service refers to the Website.
\r\n Terms of Service (also referred as \"Terms\") mean these Terms of Service that form the entire agreement between You and the Company regarding the use of the Service.
\r\n Third-party Social Media Service means any services or content (including data, information, products or services) provided by a third-party that may be displayed, included or made available by the Service.
\r\n Website refers to Videtur LLC or Videtur, accessible from www.videturpro.com
\r\n You is the individual accessing or using the Service, business, or other legal entity on behalf of which such individual is accessing or using the Service, as applicable.
\r\n User Any individual, Attorney, or business accessing or using the Service.
\r\n Appearance Occurs when a licensed attorney physically or remotely appears in court on behalf of a party to a lawsuit, or to a formal act.
\r\n A Hiring Attorney is the individual who has a valid retainer agreement executed with the client for which an appearance is at issue.
\r\n Attorney An actively licensed attorney who is a member in good standing with a state bar, who is available and/or has agreed to make the subject appearance, on behalf of the attorney of record to participate in the court process.\r\n

\r\n

Acknowledgment

\r\n
\r\n

These are the Terms of Service governing the use of this Service and the agreement that operates between You and the Company. These Terms of Service set out the rights and obligations of all users regarding the use of the Service.

\r\n

Your access to and use of the Service is conditioned on Your acceptance of and compliance with these Terms of Service. These Terms of Service apply to all visitors, users and others who access or use the Service.

\r\n

By accessing or using the Service You agree to be bound by these Terms of Service. If You disagree with any part of these Terms of Service, then You may not access the Service.

\r\n

You represent that you are over the age of 18, An attorney admitted to practice in good standing with your respective bar or a legal professional in good standing, a law firm, legal department, and/ or a business entity wishing to use this service to retain or be hired for an appearance in accordance with this Terms of Service Agreement. Videtur LLC does not permit those under 18 to use the Service.

\r\n

ONLY ACTIVE LICENSED ATTORNEYS WHO ARE MEMBERS IN GOOD STANDING WITH THEIR RESPECTIVE STATE LICENSING AUTHORITY ARE ELIGIBLE TO REGISTER AS ATTORNEYS.

\r\n

Should Attorney become sanctioned or disciplined by any licensing authority or becomes ineligible to practice law for any reason, Attorney must proactively update any pending disciplinary action User’s account and not accept any posted Appearance by the Hiring Attorney.

\r\n

User is responsible for performing obligations as specified by this Terms of Service and agreements that User enter into through this website when not in conflict with this Terms of Service or prohibited by law. User acknowledges that Videtur LLC shall have no liability to User for any conduct, statements or representations made by the User as a result of use of Videtur LLC’s Service(s).

\r\n

You MAY NOT USE the Service if You are a recruiter or a staffing agency, including attorneys that are engaged in the businesses of staffing employees, or otherwise a third party to the retaining or hiring of attorneys unless expressly permitted by Videtur LLC. Legal actions and damages will be pursued for violations of this term.

\r\n

For the duration of this agreement and for six (6) months following User’s most recent visit to Videutur's website, User is not allowed to directly or indirectly contact, solicit, or induce other Users to engage in services unrelated to the provided services, unless specifically permitted by these terms. Any User who violates this agreement and contacts another User during the prohibited period will be required to pay a fee of $3000.

\r\n

Your access to and use of the Service is also conditioned on Your acceptance of and compliance with the Privacy Policy of the Company. Our Privacy Policy describes Our policies and procedures on the collection, use and disclosure of Your personal information when You use the Application or the Website and tells You about Your privacy rights and how the law protects You. Please read Our Privacy Policy carefully before using Our Service.

\r\n

User MUST NOT:

\r\n
    \r\n
  • Use this Service to explore the software Service for the purpose of reproducing, replicating, selling, or exploiting any portion of the Service, or otherwise copying the software Service and business model.
  • \r\n
  • Register to use this Service if the Attorney is disbarred for disciplinary action.
  • \r\n
  • Post or transmit unsolicited e-mail, SMS, Instant Messenger, Twitter or other spam messages, or viruses.
  • \r\n
  • Use this service for any illegal or unauthorized purpose.
  • \r\n
\r\n

About The Service

\r\n
\r\n

By using Videtur LLC’s website and related services, You warrant that You are legally capable of entering into binding contracts.

\r\n

Videtur LLC is a software as a service (SaaS) platform that enables individuals, businesses, law firms, and attorneys to connect instantaneously to complete specific legal services for each other. Nothing on this site shall be construed as legal advice from Videtur LLC. Videtur LLC is not authorized to provide legal advice.

\r\n

User Accounts

\r\n

When You create an account with Videtur LLC , You must provide information that is accurate, complete, and current at all times. Failure to do so constitutes a breach of the Terms of Service, which may result in immediate termination of Your account on Our Service.

\r\n

You are responsible for safeguarding the password that You use to access the Service and for any activities or actions under Your password, whether Your password is with Our Service or a Third-Party Social Media Service.

\r\n

You agree not to disclose Your password to any third party. You must notify Us immediately upon becoming aware of any breach of security or unauthorized use of Your account.

\r\n

You may not use as a username the name of another person or entity or that is not lawfully available for use, a name or trademark that is subject to any rights of another person or entity other than You without appropriate authorization, or a name that is otherwise offensive, vulgar or obscene.

\r\n

Your Information

\r\n

If You wish to place an appearance using this Service through Videtur LLC’s Website, You may be asked to supply certain information relevant to Your posing including, without limitation, Your name, Your email, Your phone number, Your physical and mailing address, Your state bar license information, Your credit card number, the expiration date of Your credit card, and Your billing address.

\r\n

You represent and warrant that: (i) You have the legal right to use any credit or debit card(s) or other payment method(s) including Automated Clearing House (ACH) in connection with any Service; and that (ii) the information You supply to us is true, correct and complete.

\r\n

By submitting such information, You grant us the right to provide the information to payment processing third parties for purposes of facilitating the completion of Your Service request(s).

\r\n

Service Cancellation

\r\n

Videtur LLC reserves the right to refuse or cancel Your Service Request at any time for certain reasons including but not limited to fraud or an unauthorized or illegal transaction is suspected.

\r\n

Users can cancel a Service request or Appearance that is not yet completed. Any posted Appearance that is cancelled by the Hiring Attorney is subject to at least a minimum one hourly rate of the full contracting Service charge if cancelled within 24 clock hours on a day before the date of the hearing, including Videtur LLC’s finder’s fee and costs of the Service charge.

\r\n

Any Attorney, upon acceptance of Appearance assignment shall be solely responsible for their performance and conduct in carrying out their assigned Appearance. User agrees to indemnify and hold Videtur LLC harmless from all alleged claims in the event of Attorney’s failure to complete the Appearance assignment, as well as any error or mistake on Attorney’s part.

\r\n

Communications

\r\n

Unless User otherwise opt-out from receiving notices, Videtur LLC will communicate with User by email or by posting communications on Videtur’s website. User consent to receive communications from Videtur LLC electronically and User agrees that these electronic communications satisfy any legal requirement that such communications be in writing. You will be considered to have received communication when Videtur LLC sends it to the email address you have provided on your User’s account in Videtur LLC’s site, or when Videtur LLC posts such communication on the site. User must keep your email address updated on this Site and you must regularly check this Site for postings.

\r\n

Payments

\r\n

Videtur LLC is in the business of providing Services. In that case, Videtur LC may use third-party services for payment processing (e.g. payment processors).

\r\n

Videtur LLC will not store or collect Your payment card details. That information is provided directly to Our third-party payment processors whose use of Your personal information is governed by their Privacy Policy. These payment processors adhere to the standards set by PCI-DSS as managed by the PCI Security Standards Council, which is a joint effort of brands like Visa, Mastercard, American Express and Discover. PCI-DSS requirements help ensure the secure handling of payment information.

\r\n

Videtur LLC does not charge advance fees to sign up. Hiring Attorneys set the hourly rate for each posted Appearance assignment. Upon completion of Appearance assignment, the Attorney will update the posting through Videtur’s platform to show the assignment was completed. An invoice will be generated for the Hiring Attorney. The Attorney will be paid within the specified due date on the invoice. The Hiring Attorney will be charged a nominal finder's fee by Videtur LLC. Videtur charges a finder's fee or costs of twenty-five percent (25%), which is paid by the Hiring Attorney on each assigned Appearance.

\r\n

Appearance assignments are hourly-based with a minimum of one (1) hour. The hourly rates are set by the Hiring Attorney.

\r\n

Videtur LLC reserves the right to revise its finder’s fee at any time by posting a notice on Videtur’s website or by sending You an email.

\r\n

By using our third-party services for payment processing, User authorizes Videtur LLC to electronically debit or credit User’s account for invoices on or after their due date and, if necessary, electronically credit User’s account to correct erroneous debits.

\r\n

All overdue invoices will be charged a reasonable interest rate at the sole discretion of Videtur LLC. If Your invoice is overdue by 45 or more days, Your User account may be disabled until your payment is received. Videtur LLC may refer any past due invoices to any collection agency or attorney, and User will be liable for the payment of all costs and expenses, including reasonable attorneys' fees, associated therewith.

\r\n

Intellectual Property

\r\n
\r\n

The Service and its original content (excluding Content provided by You or other Users), features and functionality are and will remain the exclusive property of Videtur LLC and its licensors.

\r\n

The Service is protected by copyright, trademark, and other laws of both the Country and foreign countries.

\r\n

Our trademarks and trade dress may not be used in connection with any product or service without the prior written consent of the Company.

\r\n

Links to Other Websites

\r\n
\r\n

Our Service may contain links to third-party web sites or services that are not owned or controlled by the Company.

\r\n

Videtur LLC has no control over, and assumes no responsibility for, the content, privacy policies, or practices of any third party web sites or services. You further acknowledge and agree that the Vidtur LLC shall not be responsible or liable, directly or indirectly, for any damage or loss caused or alleged to be caused by or in connection with the use of or reliance on any such content, goods or services available on or through any such web sites or services.

\r\n

We strongly advise You to read the Terms of Service and privacy policies of any third-party web sites or services that You visit.

\r\n

Termination

\r\n
\r\n

We may terminate or suspend Your Account immediately, without prior notice or liability, for any reason whatsoever, including without limitation if You breach these Terms of Service.

\r\n

Upon termination, Your right to use the Service will cease immediately. If You wish to terminate Your Account, You may simply discontinue using the Service.

\r\n

Limitation of Liability

\r\n
\r\n

Notwithstanding any damages that You might incur, the entire liability of the Company under any provision of this Terms and Your exclusive remedy for all of the foregoing shall be limited to the amount actually paid by You through the Service.

\r\n

To the maximum extent permitted by applicable law, in no event shall Videtur LLC be liable for any special, incidental, indirect, or consequential damages whatsoever (including, but not limited to, damages for loss of profits, loss of data or other information, for business interruption, for personal injury, loss of privacy arising out of or in any way related to the use of or inability to use the Service, third-party software and/or third-party hardware used with the Service, or otherwise in connection with any provision of this Terms), even if the Company has been advised of the possibility of such damages and even if the remedy fails of its essential purpose.

\r\n

Some states do not allow the exclusion of implied warranties or limitation of liability for incidental or consequential damages, which means that some of the above limitations may not apply. In these states, each party's liability will be limited to the greatest extent permitted by law.

\r\n

Governing Law

\r\n
\r\n

The laws of state of California, excluding its conflicts of law rules, shall govern this Terms and Your use of the Service. Your use of the Application may also be subject to other local, state, national, or international laws.

\r\n

Disputes Resolution

\r\n
\r\n

If You have any concern or dispute about the Service, You agree to first try to resolve the dispute by contacting Videtur LLC.

\r\n

Mandatory Arbitration

\r\n

Any controversy or claim between or among the parties, including those arising out of or relating to this Terms of Service or and any claim based on or arising from an alleged tort, shall at the request of any party be determined by arbitration. The arbitration shall be conducted in San Francisco, California, in accordance with the United States Arbitration Act (Title 9, U.S. Code), notwithstanding any choice of law provision in this Terms of Service, and under the Rules of the American Arbitration Association (the \"AAA\"). The arbitrator(s) shall give effect to statutes of limitation in determining any claim. Any controversy concerning whether an issue is arbitrable shall be determined by the arbitrator(s). Judgment upon the arbitration award may be entered in any court having jurisdiction. The institution and maintenance of an action for judicial relief or pursuit of a provisional or ancillary remedy shall not constitute a waiver of the right of any party, including the plaintiff, to submit the controversy or claim to arbitration if any other party contests such action for judicial relief.

\r\n

Severability and Waiver

\r\n
\r\n

Severability

\r\n

If any provision of these Terms is held to be unenforceable or invalid, such provision will be changed and interpreted to accomplish the objectives of such provision to the greatest extent possible under applicable law and the remaining provisions will continue in full force and effect.

\r\n

Waiver

\r\n

Except as provided herein, the failure to exercise a right or to require performance of an obligation under these Terms shall not effect a party's ability to exercise such right or require such performance at any time thereafter nor shall the waiver of a breach constitute a waiver of any subsequent breach.

\r\n

Translation Interpretation

\r\n
\r\n

These Terms of Service may have been translated if We have made them available to You on our Service. You agree that the original English text shall prevail in the case of a dispute.

\r\n

Changes to These Terms of Service

\r\n
\r\n

We reserve the right, at Our sole discretion, to modify or replace these Terms at any time. If a revision is material, We will make reasonable efforts to provide at least 30 days' notice prior to any new terms taking effect. What constitutes a material change will be determined at Our sole discretion.

\r\n

By continuing to access or use Our Service after those revisions become effective, You agree to be bound by the revised terms. If You do not agree to the new terms, in whole or in part, please stop using the website and the Service.

\r\n

Contact Us

\r\n
\r\n

If you have any questions about these Terms of Service, You can contact us:

\r\n

\r\n By email: info@videturpro.com
\r\n By visiting this page on our website: www.videturpro.com/contact\r\n

\r\n
\r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\n\r\n@Component({\r\n selector: 'app-dashboard',\r\n templateUrl: './dashboard.component.html',\r\n styleUrls: ['./dashboard.component.css']\r\n})\r\nexport class DashboardComponent implements OnInit {\r\n public profileType: string = \"\";\r\n public DashboardDetails:any = null;\r\n\r\n constructor(private authService: AuthService,private userService: UserService, private spinner: NgxSpinnerService) { }\r\n\r\n ngOnInit() {\r\n this.profileType = this.authService.currentUserValue.profileType || \"\";\r\n this.GetDashboardDetails();\r\n }\r\n\r\n GetDashboardDetails() {\r\n var userMasterId = this.authService.currentUserValue.id || 0;\r\n this.userService.GetDashboardDetails(userMasterId,this.profileType).subscribe(result => {\r\n if(result.isSuccess)\r\n {\r\n this.DashboardDetails =result.model;\r\n }\r\n });\r\n }\r\n}\r\n"," \r\n
\r\n
\r\n
\r\n

Dashboard

\r\n
    \r\n
  1. Home
  2. \r\n
  3. Dashboard
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n

Applications

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

Invoices

\r\n
\r\n \r\n \r\n
\r\n \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-footer-menu',\r\n templateUrl: './footer-menu.component.html',\r\n styleUrls: ['./footer-menu.component.css']\r\n})\r\nexport class FooterMenuComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n loggedin() {\r\n return localStorage.getItem('token');\r\n }\r\n}\r\n","\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n ©\r\n Videtur LLC  \r\n \r\n
\r\n
\r\n
\r\n Privacy | \r\n Terms of Service | \r\n \r\n \r\n FAQs\r\n
\r\n
\r\n
\r\n
\r\n Version 1.0.0\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n About Us | How It Works | Contact Us | Privacy Policy | Terms and Conditions | FAQs\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 { FormGroup, FormBuilder, Validators, FormControl } from '@angular/forms';\r\nimport { AppearanceService } from '../services/appearance.service';\r\nimport { UserService } from '../services/user.service';\r\nimport { DataService } from '../services/data.service';\r\nimport { AuthService } from '../services/auth.service'; // Code added by nirav on 02-Feb-2022\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.component.html',\r\n styleUrls: ['./home.component.css']\r\n})\r\nexport class HomeComponent implements OnInit {\r\n\r\n public caseList: any;\r\n casetypes: any;\r\n public locations: any;\r\n appearanceForm: FormGroup;\r\n attorneyForm: FormGroup;\r\n selectedlocation: any;\r\n isAttorney: boolean;\r\n constructor(public appearanceService: AppearanceService, private formBuilder: FormBuilder, private router: Router, public dataService: DataService, public userService: UserService,public authService: AuthService) { }\r\n\r\n ngOnInit() {\r\n // this.appearanceForm = this.formBuilder.group({\r\n // caseType: [''],\r\n // clocation: ['']\r\n // })\r\n\r\n // this.attorneyForm = this.formBuilder.group({\r\n // practiceType: [''],\r\n // plocation: ['']\r\n // })\r\n // this.getCaseTypeList();\r\n // this.getLocation();\r\n\r\n //Code added by nirav on 02-Feb-2022, This code will check, if user is logged in then he will see dashboard page and not home page.\r\n if (this.loggedin() )\r\n this.router.navigate(['/Dashboard']);\r\n }\r\n\r\n Check(event: any) {\r\n this.isAttorney = event;\r\n }\r\n //Code added by nirav on 02-Feb-2022, This code will check, if user is logged in then he will see dashboard page and not home page.\r\n loggedin() {\r\n return this.authService.isLoggedIn();\r\n }\r\n // onAppearanceSubmit() {\r\n // if (this.appearanceForm.valid) {\r\n // this.dataService.setOption('casetypes', this.caseType.value);\r\n // this.dataService.setOption('selectedLocation', this.clocation.value);\r\n // this.router.navigate(['appearance-list']);\r\n // }\r\n // }\r\n\r\n // onAttorneySubmit() {\r\n // if (this.attorneyForm.valid) {\r\n // this.dataService.setOption('casetypes', this.practiceType.value);\r\n // this.dataService.setOption('selectedLocation', this.plocation.value);\r\n // this.router.navigate(['attorney-list']);\r\n // }\r\n // }\r\n\r\n // getCaseTypeList() {\r\n // this.appearanceService.getCaseType().subscribe(casetype => {\r\n // this.caseList = casetype;\r\n // });\r\n // }\r\n\r\n // getLocation() {\r\n // this.userService.getAllCounty().subscribe(loc => {\r\n // this.locations = loc.list;\r\n // });\r\n // }\r\n\r\n // ------------------------------------\r\n // Getter methods for all form controls\r\n // ------------------------------------\r\n // get caseType() {\r\n // return this.appearanceForm.get('caseType') as FormControl;\r\n // }\r\n // get clocation() {\r\n // return this.appearanceForm.get('clocation') as FormControl;\r\n // }\r\n // get practiceType() {\r\n // return this.attorneyForm.get('practiceType') as FormControl;\r\n // }\r\n // get plocation() {\r\n // return this.attorneyForm.get('plocation') as FormControl;\r\n // }\r\n}\r\n","\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
    \r\n
  1. LOOKING FOR AN APPEARANCE ATTORNEY?
  2. \r\n
  3. LOOKING FOR A COURT APPEARANCE OPPORTUNITY?
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
SEARCH ATTORNEY
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

Schedule appearance coverage in minutes, whenever you need it, in just a few steps:

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

\r\n 1. Sign Up
\r\n
\r\n Create your account and set up payment information to get started\r\n

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

\r\n 2. Provide Case Details
\r\n
\r\n Choose the date, practice area, and location to get matched with the right attorney\r\n

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

\r\n 3. Connect with an Attorney
\r\n
\r\n Select the attorney of your choice to handle your court appearance\r\n

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

\r\n 4. Receive Confirmation
\r\n
\r\n Select the attorney of your choice to handle your court appearance\r\n

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

\r\n 5. Court Representation
\r\n
\r\n Select the attorney of your choice to handle your court appearance\r\n

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

\r\n 6. Appearance Update
\r\n
\r\n Receive report on the case outcome\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \"Search\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
SEARCH APPEARANCE
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n
\r\n

Discover court appearance opportunities in minutes, in just a few steps:

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

\r\n 1. Sign Up
\r\n
\r\n Create your account and share your details to match seamlessly with the right opportunities!\r\n

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

\r\n 2. Set Up Payment
\r\n
\r\n Add your payment details to ensure you get paid quickly and securely for your workp>\r\n

\r\n
\r\n

\r\n 3. Get Hired
\r\n
\r\n Review opportunities and get hired for appearances that match your skills and availability\r\n

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

\r\n 4. Attend the Appearance
\r\n
\r\n Appear in court\r\n

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

\r\n 5. Get Paid
\r\n
\r\n Once your appearance is complete, receive your payment quickly and securely\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \"Search\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { Subscription } from 'rxjs';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { InvoiceService } from 'src/app/services/invoice.service';\r\n\r\n@Component({\r\n selector: 'app-invocie-list',\r\n templateUrl: './invocie-list.component.html',\r\n styleUrls: ['./invocie-list.component.css']\r\n})\r\nexport class InvocieListComponent implements OnInit {\r\n\r\n public invoiceList: any;\r\n subscription: Subscription;\r\n public status: string\r\n public currentURL: string;\r\n public userInfo: any;\r\n constructor(private invoiceService: InvoiceService, private spinner: NgxSpinnerService, private route: ActivatedRoute, private authService: AuthService) { }\r\n\r\n ngOnInit() {\r\n // if(this.authService.currentUserValue.profileType =='EA' && this.authService.isDualRoleFirstTime){\r\n // this.authService.currentUser.subscribe(data => {\r\n // this.userInfo = data;\r\n // });\r\n // this.userInfo.profileType = \"E\";\r\n // this.authService.currentUserValues(this.userInfo);\r\n // }\r\n this.subscription = this.route.params.subscribe(routeParams => {\r\n this.status = routeParams.status;\r\n this.currentURL = routeParams.status;\r\n if (this.status) {\r\n if (this.status == 'Due') {\r\n //Following line changed by atul on 26 apr 22 because now we have new invoice status PR- In Progress\r\n this.status = 'IC,IR,PR'\r\n } else if (this.status == 'Paid') {\r\n this.status = 'IP'\r\n } else if (this.status == 'Rejected') {\r\n this.status = 'IREJ'\r\n //Following 3 line modified by atul on 17 may 22 for invoice draft feature\r\n } else if (this.status == 'Draft') {\r\n this.status = 'DR'\r\n }\r\n this.spinner.show();\r\n this.getInvoiceList(this.status);\r\n }\r\n });\r\n\r\n }\r\n\r\n getInvoiceList(status: string) {\r\n this.subscription = this.invoiceService.getInvoices(this.authService.currentUserValue.id, this.authService.currentUserValue.profileType || '', status).subscribe(invList => {\r\n this.spinner.hide(); \r\n if (invList.isSuccess) {\r\n this.invoiceList = invList.list;\r\n }\r\n //Following line added by atul on 30 apr 22 on mehul's request\r\n else{\r\n this.invoiceList =[];\r\n\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n }\r\n}\r\n"," \r\n
\r\n
\r\n
\r\n

Invoice List that is {{currentURL | lowercase}}

\r\n
    \r\n
  1. Home
  2. \r\n
  3. Invoice List that is {{currentURL | lowercase}}
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n

Loading...

\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { AppearanceInfoComponent } from 'src/app/appearance/appearance-info/appearance-info.component';\r\nimport { AppearanceViewComponent } from 'src/app/appearance/appearance-view/appearance-view.component';\r\nimport { AttorneyViewComponent } from 'src/app/attorney/attorney-view/attorney-view.component';\r\nimport { RejectbyAttorneyComponent } from 'src/app/Communication/rejectby-attorney/rejectby-attorney.component';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { InvoiceService } from 'src/app/services/invoice.service';\r\nimport { PaymentReceiptComponent } from 'src/app/stripe/payment-receipt/payment-receipt.component';\r\nimport { SelectPaymentMethodComponent } from 'src/app/stripe/select-payment-method/select-payment-method.component';\r\nimport { environment } from 'src/environments/environment';\r\nimport { InvoiceViewComponent } from '../invoice-view/invoice-view.component';\r\nimport { RateComponent } from '../rate/rate.component';\r\n\r\n@Component({\r\n selector: 'app-invoice-card',\r\n templateUrl: './invoice-card.component.html',\r\n styleUrls: ['./invoice-card.component.css']\r\n})\r\nexport class InvoiceCardComponent implements OnInit {\r\n\r\n @Input() invoice: any;\r\n @Input() callingFrom: any;\r\n public profileType:string;\r\n public AppearanceId:number =0;\r\n public apiPath: string = environment.apiUrl;\r\n public PaymentButtonVisible:boolean = false;\r\n public RejectButtonVisible:boolean = false;\r\n public UpdateButtonVisible:boolean = false;\r\n public PaymentButtonText:string ='';\r\n public dynamicClass: string;\r\n public dynamicBtnClass: string;\r\n public currentDate:Date = new Date(new Date().toDateString());;\r\n public invoiceDueDate:Date; \r\n// const date: Date = new Date();\r\n\r\n constructor(private modalService: NgbModal,public activeModal: NgbActiveModal, private invoiceService: InvoiceService,private http: HttpClient, public authService: AuthService , private alertify: AlertifyService, private router: Router, private spinner: NgxSpinnerService, private appearanceService: AppearanceService) { }\r\n\r\n ngOnInit() {\r\n console.log(this.invoice);\r\n this.invoiceDueDate = new Date(this.invoice.invoiceDueDate);\r\n this.profileType = this.authService.currentUserValue.profileType || \"\";\r\n //authService.currentUserValue?.profileType != 'A'\r\n //following 2 if block added by atul on 24 apr 22 for testing the auto debit from employer. On due invoice card, 'payment' button for attorney \r\n if((this.invoice.recordStatus == 'IC' || this.invoice.recordStatus == 'IR') )\r\n {\r\n if(this.authService.currentUserValue?.profileType == 'A'){\r\n this.PaymentButtonText = 'Request Payment';\r\n this.PaymentButtonVisible = false;\r\n }\r\n else{\r\n this.PaymentButtonText = 'Make payment';\r\n this.PaymentButtonVisible = true;\r\n }\r\n \r\n }\r\n if(this.authService.currentUserValue?.profileType != 'A' && (this.invoice.recordStatus == 'IC' || this.invoice.recordStatus == 'IR') && this.invoice.appearanceRecordStatus != 'CAN' )\r\n {\r\n this.RejectButtonVisible = true;\r\n }\r\n //Following 20 lines modified by atul on 17 may 22 for invoice draft feature\r\n if(this.authService.currentUserValue?.profileType == 'A' && this.invoice.recordStatus != 'DP' && this.invoice.recordStatus != 'IP'&& this.invoice.recordStatus != 'PR' && this.modalService.hasOpenModals() == false){\r\n this.UpdateButtonVisible = true;\r\n }\r\n this.AppearanceId = this.invoice.appearanceId;\r\n this.checkHeadercolorClass();\r\n }\r\n checkHeadercolorClass() {\r\n if (this.invoice.recordStatus == 'DR' || this.invoice.recordStatus == 'DP' ) {\r\n this.dynamicClass = \"card card-warning\";\r\n this.dynamicBtnClass = \"btn border-warning btn-sm me-1\"\r\n //} else if (this.invoice.recordStatus == 'IC' || this.invoice.recordStatus == 'IR') {\r\n // this.dynamicClass = \"card card-success\";\r\n // this.dynamicBtnClass = \"btn border-success btn-sm me-1\"\r\n } else if (this.invoice.recordStatus == 'IC' || this.invoice.recordStatus == 'IR' || this.invoice.recordStatus == 'PR') {\r\n this.dynamicClass = \"card card-orange\";\r\n this.dynamicBtnClass = \"btn border-orange btn-sm me-1\"\r\n } else if (this.invoice.recordStatus == \"IP\") {\r\n this.dynamicClass = \"card card-primary\";\r\n this.dynamicBtnClass = \"btn border-primary btn-sm me-1\"\r\n } else if (this.invoice.recordStatus == \"IREJ\") {\r\n this.dynamicClass = \"card card-danger\";\r\n this.dynamicBtnClass = \"btn border-danger btn-sm me-1\"\r\n }\r\n }\r\n loggedin() {\r\n return localStorage.getItem('token');\r\n }\r\n\r\n\r\n close(){\r\n this.activeModal.close();\r\n }\r\n //Message Popup Show Method\r\n openReject(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(RejectbyAttorneyComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n\r\n Rate(invoice: any){\r\n const modalRef = this.modalService.open(RateComponent);\r\n modalRef.componentInstance.appearanceId = invoice.appearanceId;\r\n modalRef.componentInstance.ToId = (this.authService.currentUserValue.profileType =='E' || this.authService.currentUserValue.profileType =='EA'|| this.authService.currentUserValue.profileType =='I')? this.invoice.attorneyId: this.invoice.userMasterId;\r\n }\r\n Receipt(invoice: any){\r\n const modalRef = this.modalService.open(PaymentReceiptComponent, { size: 'lg', backdrop: 'static' }); \r\n console.log(\"invoice from receipt fun\",invoice);\r\n modalRef.componentInstance.src = invoice;\r\n modalRef.componentInstance.invoiceId = invoice.autoId;\r\n //this.router.navigateByUrl('/success?get_payment_details='+invoice.autoId);\r\n }\r\n payInvoice(invoice: any){\r\n //following if section added by atul on 24 apr 22 for testing the auto debit from employer.On due invoice card, 'payment' button for attorney\r\n if(this.authService.currentUserValue?.profileType == \"A\"){\r\n this.invoiceService.ReceivePayment(invoice).subscribe(result => {\r\n if(result.model)\r\n this.alertify.success(result.message);\r\n else\r\n this.alertify.error(result.message);\r\n //Following line added by atul on 26 apr 22 for refresh page\r\n setTimeout(()=>{document.location.reload();},2000);\r\n });\r\n }\r\n else{\r\n const modalRef = this.modalService.open(SelectPaymentMethodComponent, { size: 'lg', backdrop: 'static' });\r\n modalRef.componentInstance.src = invoice;\r\n }\r\n }\r\n //Appearance Information Popup Show Method\r\n openInvoiceInfo(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n //Here we need to open it in medium width but that option is not present so open in lg screen \r\n const modalRef = this.modalService.open(AppearanceInfoComponent, { size: 'lg', backdrop: 'static' }); \r\n modalRef.componentInstance.src = link;\r\n modalRef.componentInstance.isInvoiceCard = true;\r\n }\r\n //Following 2 functions added by atul on 17 may 22 for invoice draft feature\r\n Update(id: any) {\r\n this.router.navigate(['invoice-entry', id]);\r\n }\r\n\r\n DeleteDraft(){\r\n this.spinner.show();\r\n this.invoiceService.DeleteDraft(this.invoice.autoId)\r\n .subscribe(event => {\r\n if (event.isSuccess) { \r\n this.alertify.success(event.message);\r\n //this.router.navigate(['/appearance-list', 'Open']);\r\n this.activeModal.dismiss('Cross click');\r\n } else {\r\n this.alertify.error(event.message);\r\n }\r\n setTimeout(()=>{document.location.reload();},2000);\r\n this.spinner.hide();\r\n\r\n });\r\n }\r\n //following 5 functions added by atul on 24 may 22 for appearance link\r\n openInvoiceView(link: any) {\r\n const modalRef = this.modalService.open(InvoiceViewComponent, { size: 'lg', backdrop: 'static' });\r\n modalRef.componentInstance.appearanceId = link;\r\n }\r\n openAppearanceView(link: any) {\r\n \r\n this.appearanceService.GetAppearanceById(link).subscribe(appearance => {\r\n if (appearance.isSuccess) {\r\n const modalRef = this.modalService.open(AppearanceViewComponent, { size: 'lg', backdrop: 'static' });\r\n modalRef.componentInstance.Appearance = appearance.model;\r\n }\r\n });\r\n }\r\n userLoggedin() {\r\n return this.authService.isLoggedIn();\r\n }\r\n\r\n openEmployerDetails(link: any) {\r\n const modalRef = this.modalService.open(AttorneyViewComponent, { size: 'lg', backdrop: 'static' });\r\n modalRef.componentInstance.src = link;\r\n }\r\n ViewProfile(AttorneyId: any) {\r\n const modalRef = this.modalService.open(AttorneyViewComponent, { size: 'lg', backdrop: 'static' });\r\n modalRef.componentInstance.src = AttorneyId;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

Invoice #: {{invoice.invoiceNo}}

\r\n
\r\n
\r\n
\r\n
Invoice Date : {{invoice.invoiceDate | date}}
\r\n
Due date: {{invoice.invoiceDueDate | date}}
\r\n
\r\n
\r\n
Version: {{invoice.version}}
\r\n
Hourly rate: {{invoice.hourlyRate | currency:'USD':'symbol'}}
\r\n
\r\n
\r\n
Hr: {{invoice.noHours}} Min: {{invoice.minutes}}
\r\n \r\n
Adjustments: {{invoice.adjustmentAmount | currency:'USD':'symbol'}}
\r\n
\r\n
\r\n\r\n
Total: {{invoice.totalAmount | currency:'USD':'symbol'}}
\r\n
\r\n
\r\n
Remarks: {{ (invoice.remarks.length>65)? (invoice.remarks | slice:0:65)+'...':(invoice.remarks) }}
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
{{invoice.recordStatus =='IC' || invoice.recordStatus =='IR'?(currentDate > invoiceDueDate ? 'Overdue': 'Due'): (invoice.recordStatus =='PR'? 'In Progress': (invoice.recordStatus =='IP' ? 'Paid' : (invoice.recordStatus =='DR' || invoice.recordStatus =='DP' ? 'Draft' : 'Rejected')))}}
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

\"Videtur\" \r\n
\r\n
\r\n
\r\n \r\n

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



\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n Contractor \r\n \r\n Time \r\n \r\n Rate \r\n \r\n To Contractors \r\n
\r\n
\r\n
\r\n {{invoice.attorneyName}} \r\n \r\n {{invoice.noHours}} hour, {{invoice.minutes}} min \r\n \r\n {{invoice.hourlyRate | currency:'USD':'symbol'}}/hr\r\n \r\n {{(invoice.totalAmount - invoice.adjustmentAmount) | currency:'USD':'symbol'}}\r\n



\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\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.0\" />\r\n
\r\n \r\n
\r\n \r\n



\r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { InvoiceEntry } from 'src/app/models/invoice';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { InvoiceService } from 'src/app/services/invoice.service';\r\nimport { DatePipe } from '@angular/common'\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\n\r\n@Component({\r\n selector: 'app-invoice-entry',\r\n templateUrl: './invoice-entry.component.html',\r\n styleUrls: ['./invoice-entry.component.css']\r\n})\r\nexport class InvoiceEntryComponent implements OnInit {\r\n\r\n invoiceForm: FormGroup;\r\n appearanceId: any;\r\n currentDate: Date;\r\n invoiceVersion: any;\r\n public SubmitButtonVisible:boolean = false;\r\n constructor(private invoiceService: InvoiceService, public datepipe: DatePipe,\r\n private authService: AuthService, private spinner: NgxSpinnerService, private route: ActivatedRoute, private router: Router,\r\n private alertify: AlertifyService, private formBuilder: FormBuilder) { }\r\n\r\n ngOnInit() {\r\n this.appearanceId = this.route.snapshot.params['Id'];\r\n this.invoiceForm = this.formBuilder.group({\r\n invoiceNo: [''],\r\n invoiceDate: [''],\r\n invoiceDueDate: [''],\r\n hourlyRate: [''],\r\n hours: [0],\r\n adjustment: [0],\r\n latePayment: [0],\r\n total: [0],\r\n remarks: [''],\r\n recordStatus: [''],\r\n minutes:[0]\r\n });\r\n // this.getInvoiceDetails();\r\n this.getInvoiceById();\r\n }\r\n\r\n getInvoiceDetails() {\r\n this.currentDate = new Date();\r\n this.invoiceService.getInvoiceDetail(this.appearanceId, this.authService.currentUserValue.id).subscribe(inv => {\r\n this.spinner.hide();\r\n if (inv.model != null) {\r\n this.invoiceForm.patchValue({\r\n invoiceNo: inv.model.invoiceNo,\r\n hourlyRate: inv.model.hourlyRate,\r\n invoiceDate: this.datepipe.transform(this.currentDate, 'yyyy-MM-dd'),\r\n invoiceDueDate: this.datepipe.transform(this.currentDate.setDate(this.currentDate.getDate() + 7), 'yyyy-MM-dd')\r\n })\r\n }\r\n });\r\n }\r\n BacktoCompleted() {\r\n this.router.navigate(['appearance-list', 'Completed']);\r\n }\r\n getInvoiceById() {\r\n this.spinner.show();\r\n \r\n //Following 1 line modified by atul on 17 may 22 for invoice draft feature\r\n this.invoiceService.getForInvoiceUpdate(this.appearanceId).subscribe(inv => {\r\n this.spinner.hide();\r\n if (inv.model != null) {\r\n this.invoiceForm.patchValue({\r\n invoiceNo: inv.model.invoiceNo,\r\n hourlyRate: inv.model.hourlyRate,\r\n invoiceDate: this.datepipe.transform(inv.model.invoiceDate, 'yyyy-MM-dd'),\r\n invoiceDueDate: this.datepipe.transform(inv.model.invoiceDueDate, 'yyyy-MM-dd'),\r\n hours: inv.model.noHours,\r\n adjustment: inv.model.adjustmentAmount,\r\n latePayment: [0],\r\n total: inv.model.totalAmount,\r\n remarks: inv.model.remarks,\r\n minutes: inv.model.minutes\r\n })\r\n if(inv.model.recordStatus != \"IP\" && inv.model.recordStatus != \"PR\")\r\n {\r\n this.SubmitButtonVisible=true;\r\n }\r\n this.invoiceVersion = inv.model.version;\r\n } else {\r\n this.getInvoiceDetails();\r\n this.SubmitButtonVisible=true;\r\n this.invoiceVersion = 1;\r\n }\r\n });\r\n }\r\n\r\n decimalFilter(event: any) {\r\n const reg = /^-?\\d*(\\.\\d{0,2})?$/;\r\n let input = event.target.value + String.fromCharCode(event.charCode);\r\n\r\n if (event.charCode == \"46\") {\r\n event.preventDefault();\r\n }\r\n else if (!reg.test(input)) {\r\n event.preventDefault();\r\n }\r\n }\r\n calculateTotal() {\r\n let minutes =parseInt(this.invoiceForm.get('minutes')?.value ? this.invoiceForm.get('minutes')?.value : 0);\r\n minutes = minutes/60.0;\r\n this.invoiceForm.patchValue({\r\n total: ((parseInt(this.invoiceForm.get('hours')?.value ? this.invoiceForm.get('hours')?.value : 0) + minutes)\r\n * parseInt(this.invoiceForm.get('hourlyRate')?.value ? this.invoiceForm.get('hourlyRate')?.value : 0)\r\n + parseInt(this.invoiceForm.get('adjustment')?.value ? this.invoiceForm.get('adjustment')?.value : 0)\r\n + parseInt(this.invoiceForm.get('latePayment')?.value ? this.invoiceForm.get('latePayment')?.value : 0))\r\n })\r\n }\r\n // convenience getter for easy access to form fields\r\n get f() { return this.invoiceForm.controls; }\r\n IsFormValid(){\r\n let hours = this.invoiceForm.get('hours')?.value ? this.invoiceForm.get('hours')?.value : 0;\r\n if(hours == 0)\r\n {\r\n this.alertify.error(\"Hours must be greater than 0.\");\r\n return false;\r\n }\r\n \r\n let totalAmount = this.invoiceForm.get('total')?.value ? this.invoiceForm.get('total')?.value : 0;\r\n if(totalAmount == 0)\r\n {\r\n this.alertify.error(\"Total amount must be greater than $0.\");\r\n return false;\r\n }\r\n \r\n return true;\r\n }\r\n onSubmit() {\r\n if(!this.IsFormValid())\r\n return;\r\n this.spinner.show();\r\n const invoice: InvoiceEntry = this.GetInvoiceDto();\r\n // {\r\n // invoiceNo: this.invoiceForm.get('invoiceNo')?.value,\r\n // appearanceId: this.appearanceId,\r\n // attorneyId: this.authService.currentUserValue.id || 0,\r\n // invoiceDate: this.invoiceForm.get('invoiceDate')?.value,// this.datepipe.transform(this.currentDate, 'yyyy-MM-dd') , \r\n // invoiceDueDate: this.invoiceForm.get('invoiceDueDate')?.value,\r\n // hourlyRate: this.invoiceForm.get('hourlyRate')?.value ? this.invoiceForm.get('hourlyRate')?.value : 0,\r\n // noHours: this.invoiceForm.get('hours')?.value ? this.invoiceForm.get('hours')?.value : 0,\r\n // latePayment: 0, //this.invoiceForm.get('latePayment')?.value,\r\n // adjustmentAmount: this.invoiceForm.get('adjustment')?.value ? this.invoiceForm.get('adjustment')?.value : 0,\r\n // totalAmount: this.invoiceForm.get('total')?.value ? this.invoiceForm.get('total')?.value : 0,\r\n // remarks: this.invoiceForm.get('remarks')?.value,\r\n // minutes: this.invoiceForm.get('minutes')?.value ? this.invoiceForm.get('minutes')?.value : 0,\r\n // }\r\n\r\n this.invoiceService.AddInvoice(invoice).subscribe(inv => {\r\n this.spinner.hide();\r\n if (inv.isSuccess) {\r\n this.alertify.success(inv.message);\r\n this.router.navigate(['invoice-list','Due']);\r\n }\r\n });\r\n }\r\n\r\n SaveDraft(){\r\n if(!this.IsFormValid())\r\n return;\r\n this.spinner.show();\r\n const invoice: InvoiceEntry = this.GetInvoiceDto();\r\n\r\n this.invoiceService.AddInvoiceDraft(invoice).subscribe(inv => {\r\n this.spinner.hide();\r\n if (inv.isSuccess) {\r\n this.alertify.success(inv.message);\r\n this.router.navigate(['invoice-list','Draft']);\r\n }\r\n });\r\n }\r\n\r\n GetInvoiceDto(){\r\n return {\r\n invoiceNo: this.invoiceForm.get('invoiceNo')?.value,\r\n appearanceId: this.appearanceId,\r\n attorneyId: this.authService.currentUserValue.id || 0,\r\n invoiceDate: this.invoiceForm.get('invoiceDate')?.value,// this.datepipe.transform(this.currentDate, 'yyyy-MM-dd') , \r\n invoiceDueDate: this.invoiceForm.get('invoiceDueDate')?.value,\r\n hourlyRate: this.invoiceForm.get('hourlyRate')?.value ? this.invoiceForm.get('hourlyRate')?.value : 0,\r\n noHours: this.invoiceForm.get('hours')?.value ? this.invoiceForm.get('hours')?.value : 0,\r\n latePayment: 0, //this.invoiceForm.get('latePayment')?.value,\r\n adjustmentAmount: this.invoiceForm.get('adjustment')?.value ? this.invoiceForm.get('adjustment')?.value : 0,\r\n totalAmount: this.invoiceForm.get('total')?.value ? this.invoiceForm.get('total')?.value : 0,\r\n remarks: this.invoiceForm.get('remarks')?.value,\r\n minutes: this.invoiceForm.get('minutes')?.value ? this.invoiceForm.get('minutes')?.value : 0,\r\n }\r\n }\r\n}\r\n"," \r\n
\r\n
\r\n
\r\n

Invoice Entry

\r\n
    \r\n
  1. Home
  2. \r\n
  3. Invoice
  4. \r\n
  5. Invoice Entry
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

Invoice Details                    \r\n Version: {{invoiceVersion}}

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

Loading...

\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { RouteGaurdForVerifiedAccountService } from '../services/route-gaurd-for-verified-account.service';\r\nimport { RouteGuardService } from '../services/route-guard.service';\r\nimport { InvocieListComponent } from './invocie-list/invocie-list.component';\r\nimport { InvoiceEntryComponent } from './invoice-entry/invoice-entry.component';\r\n\r\nconst routes: Routes = [\r\n { path: 'invoice-entry', component: InvoiceEntryComponent, canActivate: [RouteGuardService] },\r\n { path: 'invoice-entry/:Id', component: InvoiceEntryComponent, canActivate: [RouteGuardService] },\r\n { path: 'invoice-list/:status', component: InvocieListComponent, canActivate: [RouteGuardService] },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class InvoiceRoutingModule { }\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators, ReactiveFormsModule } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { InvoiceEntry } from 'src/app/models/invoice';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { InvoiceService } from 'src/app/services/invoice.service';\r\nimport { DatePipe } from '@angular/common'\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\n\r\n@Component({\r\n selector: 'app-invoice-view',\r\n templateUrl: './invoice-view.component.html',\r\n styleUrls: ['./invoice-view.component.css']\r\n})\r\nexport class InvoiceViewComponent implements OnInit {\r\n\r\n invoiceForm: FormGroup;\r\n @Input() appearanceId: any;\r\n invoiceVersion: any;\r\n\r\n constructor(private invoiceService: InvoiceService, public datepipe: DatePipe,\r\n private authService: AuthService, private spinner: NgxSpinnerService, private route: ActivatedRoute, private router: Router,\r\n private alertify: AlertifyService, private formBuilder: FormBuilder,public activeModal: NgbActiveModal,) { }\r\n\r\n ngOnInit() {\r\n //this.appearanceId = this.route.snapshot.params['Id'];\r\n this.invoiceForm = this.formBuilder.group({\r\n invoiceNo: [''],\r\n invoiceDate: [''],\r\n invoiceDueDate: [''],\r\n hourlyRate: [''],\r\n hours: [0],\r\n adjustment: [0],\r\n latePayment: [0],\r\n total: [0],\r\n remarks: [''],\r\n recordStatus: [''],\r\n minutes:[0]\r\n });\r\n // this.getInvoiceDetails();\r\n this.getInvoiceById();\r\n }\r\n\r\n \r\n onSubmit() {\r\n this.router.navigate(['appearance-list', 'Completed']);\r\n }\r\n getInvoiceById() {\r\n this.spinner.show();\r\n \r\n //Following 1 line modified by atul on 17 may 22 for invoice draft feature\r\n this.invoiceService.getForInvoiceUpdate(this.appearanceId).subscribe(inv => {\r\n this.spinner.hide();\r\n if (inv.model != null) {\r\n this.invoiceForm.patchValue({\r\n invoiceNo: inv.model.invoiceNo,\r\n hourlyRate: inv.model.hourlyRate,\r\n invoiceDate: this.datepipe.transform(inv.model.invoiceDate, 'yyyy-MM-dd'),\r\n invoiceDueDate: this.datepipe.transform(inv.model.invoiceDueDate, 'yyyy-MM-dd'),\r\n hours: inv.model.noHours,\r\n adjustment: inv.model.adjustmentAmount,\r\n latePayment: [0],\r\n total: inv.model.totalAmount,\r\n remarks: inv.model.remarks,\r\n minutes: inv.model.minutes\r\n })\r\n \r\n this.invoiceVersion = inv.model.version;\r\n this.calculateTotal();\r\n } \r\n });\r\n }\r\n calculateTotal() {\r\n let minutes =parseInt(this.invoiceForm.get('minutes')?.value ? this.invoiceForm.get('minutes')?.value : 0);\r\n minutes = minutes/60.0;\r\n this.invoiceForm.patchValue({\r\n total: ((parseInt(this.invoiceForm.get('hours')?.value ? this.invoiceForm.get('hours')?.value : 0) + minutes)\r\n * parseInt(this.invoiceForm.get('hourlyRate')?.value ? this.invoiceForm.get('hourlyRate')?.value : 0)\r\n + parseInt(this.invoiceForm.get('adjustment')?.value ? this.invoiceForm.get('adjustment')?.value : 0)\r\n + parseInt(this.invoiceForm.get('latePayment')?.value ? this.invoiceForm.get('latePayment')?.value : 0))\r\n })\r\n }\r\n \r\n get f() { return this.invoiceForm.controls; }\r\n \r\n}\r\n","\r\n
\r\n
\r\n

Invoice Details \r\n

\r\n \r\n \r\n \r\n Version: {{invoiceVersion}}\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \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 { CommonModule } from '@angular/common';\r\n\r\nimport { InvoiceRoutingModule } from './invoice-routing.module';\r\nimport { NgxSliderModule } from '@angular-slider/ngx-slider';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { NgbActiveModal, NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { InvoiceCardComponent } from './invoice-card/invoice-card.component';\r\nimport { InvoiceEntryComponent } from './invoice-entry/invoice-entry.component';\r\nimport { InvocieListComponent } from './invocie-list/invocie-list.component';\r\nimport { NgxSpinnerModule } from 'ngx-spinner';\r\nimport { SharedModule } from '../Common/Shared.module';\r\nimport { RateComponent } from './rate/rate.component';\r\nimport { InvoiceViewComponent } from './invoice-view/invoice-view.component';\r\nimport {NgxPrintModule} from 'ngx-print';\r\n\r\n@NgModule({\r\n declarations: [InvoiceCardComponent, InvoiceEntryComponent,InvoiceViewComponent, InvocieListComponent, RateComponent],\r\n imports: [\r\n CommonModule,\r\n SharedModule,\r\n InvoiceRoutingModule,\r\n NgxSliderModule,\r\n BrowserModule,\r\n NgbModule,\r\n NgxSliderModule,\r\n NgSelectModule,\r\n FormsModule,\r\n NgxSpinnerModule,\r\n ReactiveFormsModule,\r\n NgxPrintModule\r\n ],\r\n providers:[NgbActiveModal]\r\n})\r\nexport class InvoiceModule { }\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { Rating } from 'src/app/models/invoice';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { InvoiceService } from 'src/app/services/invoice.service';\r\n\r\n@Component({\r\n selector: 'app-rate',\r\n templateUrl: './rate.component.html',\r\n styleUrls: ['./rate.component.css']\r\n})\r\nexport class RateComponent implements OnInit {\r\n\r\n @Input() ToId: any;\r\n @Input() appearanceId: any;\r\n rating = 5;\r\n public headerText: any;\r\n public Message: string;\r\n constructor(public activeModal: NgbActiveModal, public authService: AuthService, private invoiceService: InvoiceService) { }\r\n\r\n ngOnInit(): void {\r\n this.headerText = this.authService.currentUserValue.profileType == 'E' || this.authService.currentUserValue.profileType == 'I' || this.authService.currentUserValue.profileType == 'EA' ? 'Attorney' : 'Employer';\r\n }\r\n\r\n Submit() {\r\n let rate: Rating = {\r\n userMasterId: this.ToId,\r\n ratingById: this.authService.currentUserValue.id || 0,\r\n ratingPoints: this.rating,\r\n ratingRemarks: this.Message,\r\n appearanceId: this.appearanceId,\r\n ratingByType: this.authService.currentUserValue.profileType == 'EA' ? 'E' : this.authService.currentUserValue.profileType || '',\r\n userMasterType: ''\r\n };\r\n this.invoiceService.AddRating(rate).subscribe(event => {\r\n this.activeModal.close();\r\n window.location.reload();\r\n })\r\n\r\n }\r\n}\r\n","
\r\n
\r\n
Rate {{headerText}}
\r\n \r\n
\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, FormGroup, Validators } from '@angular/forms';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { CourtService } from 'src/app/services/Court.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\n\r\n@Component({\r\n selector: 'app-court-entry',\r\n templateUrl: './court-entry.component.html',\r\n styleUrls: ['./court-entry.component.css']\r\n})\r\nexport class CourtEntryComponent implements OnInit {\r\n\r\n public CourtTypes: any;\r\n courtForm: FormGroup;\r\n stateList: any;\r\n countyList: any;\r\n public submitted: Boolean = false;\r\n cityList: any;\r\n constructor(public activeModal: NgbActiveModal,\r\n public modalService: NgbModal, private alertify: AlertifyService, private userService: UserService, private formBuilder: FormBuilder, public courtService: CourtService) { }\r\n\r\n ngOnInit() {\r\n this.courtForm = this.formBuilder.group({\r\n courtTypeId: ['', Validators.required],\r\n courtName: ['', Validators.required],\r\n address: ['', Validators.required],\r\n countryCode: ['USA'],\r\n stateMasterId: ['', Validators.required],\r\n countyMasterId: ['', Validators.required],\r\n cityMasterId: ['', Validators.required],\r\n zipCode: ['', Validators.required]\r\n });\r\n this.getCourtType();\r\n this.getAllState();\r\n }\r\n\r\n getCourtType() {\r\n this.courtService.getCourtType('CT').subscribe(courtypes => {\r\n this.CourtTypes = courtypes.list;\r\n });\r\n }\r\n getAllState() {\r\n this.userService.getAllState().subscribe(state => {\r\n this.stateList = state.list;\r\n });\r\n }\r\n\r\n onSelectedState(Id: any) {\r\n if (parseInt(Id.value) > 0) {\r\n this.getCountyByState(Id.value);\r\n }\r\n }\r\n getCountyByState(Id: number) {\r\n this.userService.getAllCountyByState(Id).subscribe(county => {\r\n this.countyList = county.list;\r\n });\r\n }\r\n onSelectedCounty(Id: any) {\r\n if (parseInt(Id.value) > 0) {\r\n this.getCityByCounty(Id.value);\r\n }\r\n }\r\n\r\n getCityByCounty(Id: number) {\r\n this.userService.getAllCityByCounty(Id).subscribe(city => {\r\n this.cityList = city.list;\r\n });\r\n }\r\n // convenience getter for easy access to form fields\r\n get f() { return this.courtForm.controls; }\r\n onSubmit() {\r\n this.submitted = true;\r\n if (this.courtForm.valid) {\r\n this.courtService.add(this.courtForm.value)\r\n .subscribe(event => {\r\n if (event.isSuccess) {\r\n this.alertify.success(event.message);\r\n this.activeModal.close('success');\r\n }else{\r\n this.alertify.error(event.message);\r\n }\r\n });\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
Court Entry
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
Please select court type.
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Please enter court name.
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
Please enter Address.
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
Please select state.
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
Please select county.
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Please select city.
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Please enter 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
","export interface AddressRequest {\r\n userMasterId: Number\r\n addressType: string;\r\n address1: string;\r\n address2: string;\r\n countryCode: string;\r\n stateMasterId: Number;\r\n cityMasterId: Number;\r\n countyMasterId: Number;\r\n zipCode: string;\r\n isPrimary: Boolean;\r\n\r\n}\r\n\r\nexport class AddressParams {\r\n userMasterId: Number\r\n addressType: string;\r\n address1: string;\r\n address2: string;\r\n countryCode: string;\r\n stateMasterId: Number;\r\n cityMasterId: Number;\r\n countyMasterId: Number;\r\n zipCode: string;\r\n isPrimary: Boolean;\r\n\r\n}\r\n\r\nexport class ActivityLog{\r\n activityName: string;\r\n activityData:string;\r\n}","export class Appearance {\r\n\r\n userMasterId: number;\r\n caseTypeId: number\r\n appearanceTypeId: number;\r\n caseNo: string;\r\n countryCode: string;\r\n stateMasterId: number;\r\n cityMasterId: number;\r\n countyMasterId: number;\r\n courtHouseId: number;\r\n appearanceDateTime: Date;\r\n minRate: number;\r\n maxRate: number;\r\n caseTitle: string;\r\n minExp: number;\r\n description: string;\r\n notes: string;\r\n appearanceDocs: Array;\r\n appearanceLanguages: Array;\r\n files: any;\r\n}\r\n\r\nexport interface AppearanceDoc {\r\n appearanceId: number;\r\n documentPath: string;\r\n}\r\n\r\nexport interface AppearanceLanguages {\r\n appearanceId: number;\r\n language: string;\r\n}\r\n\r\nexport interface Appearancelist {\r\n userMasterId: number;\r\n practiceArea: string;\r\n caseTypeDescription: string;\r\n appearanceType: string;\r\n apperanceTypeDescription: string;\r\n countryName: string;\r\n stateName: string;\r\n countyName: string;\r\n cityName: string;\r\n courtName: string;\r\n caseNo: string;\r\n appearanceDateTime: string;\r\n minRate: number;\r\n maxRate: number;\r\n caseTitle: string;\r\n minExp: number;\r\n description: string;\r\n notes: string;\r\n appearanceDocs: string;\r\n appearanceLanguages: Array;\r\n autoId: number;\r\n recordStatus: string\r\n}\r\n\r\nexport interface CancelAppearance {\r\n userMasterId: Number,\r\n reasons: string,\r\n remarks: string\r\n\r\n}\r\n\r\nexport interface ReOpen {\r\n remarks: string,\r\n userMasterId: Number\r\n}\r\n\r\nexport interface BidAppearance {\r\n\r\n appearanceId: number,\r\n attorneyId?: Number,\r\n bidAmount: number,\r\n message: string\r\n\r\n}\r\n\r\nexport interface CompleteAppearance {\r\n attorneyId: Number,\r\n message: string\r\n}\r\n\r\nexport interface SearchLog {\r\n userMasterId: Number,\r\n searchFor: string,\r\n stateMasterId: string,\r\n caseTypePracticeAreaId: string,\r\n resultCount: number\r\n }","export interface User {\r\n\r\n FirstName: string;\r\n LastName: string;\r\n LoginId: string;\r\n Password: string;\r\n ParentUserId?: Number;\r\n RoleName: string;\r\n ProfileType: string;\r\n IdentityProviderCode: string;\r\n}\r\n\r\nexport interface Login {\r\n LoginId: string;\r\n Password: string;\r\n IdentityProviderCode: string;\r\n}\r\nexport interface FBLogin {\r\n LoginId: string;\r\n Password: string;\r\n IdentityProviderCode: string;\r\n}\r\n\r\nexport interface LoginResponse {\r\n errorMessage: string;\r\n isSuccess: Boolean\r\n message: string;\r\n model: UserModel\r\n}\r\nexport interface UserModel {\r\n id?: Number;\r\n username?: string;\r\n token?: string;\r\n firstName?: string;\r\n lastName?: string;\r\n profileType?: string;\r\n barDetails?: Array;\r\n practiceAreas?: Array;\r\n profileDetails?: Array;\r\n recordStatus?: string;\r\n parentUserId?: Number;\r\n modifiedById?: Number;\r\n avgRatingAsAtt?:number;\r\n avgRatingAsEmp?: number;\r\n practiceAreaIds?:Array;\r\n stateIds?:Array;\r\n //Code added by atul on 8 apr 22 for fix bug 445 Subuser is not asked to complete profile (Mobile no which is mandatory field) on first login or after that\r\n mobileNo?: string; \r\n //Code added by atul on 13 may 22 for making stripe mandatory\r\n isStripeConnected?: boolean; \r\n isPaymentSetupCompleted?: boolean;\r\n}\r\nexport interface barDetails {\r\n autoId: number,\r\n barNo: string,\r\n isPrimary: boolean,\r\n recordStatus: string,\r\n stateMasterId: number,\r\n stateName: string,\r\n userMasterId: number\r\n}\r\n\r\nexport interface practiceAreas {\r\n autoId: number,\r\n briefDescription: string,\r\n practiceArea: string,\r\n practiceAreaId: number,\r\n recordStatus: string,\r\n userMasterId: number\r\n}\r\n\r\nexport interface profileDetails {\r\n autoId: number,\r\n briefDescription: string,\r\n briefResume: string,\r\n expYears: number,\r\n generalAvailibility: string,\r\n generalAvailibilityDays: string,\r\n generalAvailibilityNotes: string\r\n hourlyRateMax: number\r\n hourlyRateMin: number\r\n rateNegotiable: boolean\r\n recordStatus: string\r\n resumePath: string\r\n travelDistance: number\r\n userMasterId: number\r\n}\r\nexport interface UsergeneralInfo {\r\n autoId: Number,\r\n userMasterId: Number,\r\n firmName: string,\r\n firstName: string,\r\n middleName: string,\r\n lastName: string,\r\n mobileNo: string,\r\n businessNo: string,\r\n alternateEmail: string,\r\n website: string,\r\n profileImagePath: string,\r\n recordStatus: string,\r\n createdById: Number,\r\n createdDate: Date,\r\n createdIp: string,\r\n modifiedById: Number,\r\n modifiedDate: string,\r\n modifiedIp: string,\r\n userMaster: null\r\n}\r\n\r\nexport interface UserGenProfileRequest {\r\n addressType: string,\r\n address1: string,\r\n address2: string,\r\n countryCode: Number,\r\n stateMasterId: Number,\r\n cityMasterId: Number,\r\n countyMasterId: Number,\r\n zipCode: string,\r\n isPrimary: boolean\r\n}\r\n\r\nexport interface UpdateProfileRequest {\r\n\r\n userMasterId: Number;\r\n firmName: string;\r\n firstName: string;\r\n middleName: string;\r\n lastName: string;\r\n MobileNo: string;\r\n BusinessNo: string;\r\n alternateEmail: string;\r\n website: string;\r\n profileImagePath: string;\r\n profileType: string;\r\n}\r\n\r\nexport class UserBars {\r\n userMasterId: Number;\r\n stateMasterId: number;\r\n barNo: string;\r\n isPrimary: Boolean;\r\n stateName: string;\r\n stateVerifyLink: string;\r\n}\r\n\r\nexport interface AddUserBarsRequest {\r\n userMasterId: number,\r\n stateMasterId: number,\r\n barNo: string,\r\n isPrimary: Boolean\r\n}\r\n\r\nexport class UserPracticeArea {\r\n userMasterId: Number;\r\n practiceAreaId: number;\r\n briefDescription: string;\r\n practiceArea: string;\r\n}\r\n\r\nexport class UserProfileDetail {\r\n userMasterId: number;\r\n expYears: number;\r\n hourlyRate: number\r\n rateNegotiable: Boolean;\r\n travelDistance: number;\r\n generalAvailibility: string;\r\n generalAvailibilityNotes: string;\r\n briefResume: string;\r\n resumePath: string;\r\n briefDescription: string;\r\n}\r\n\r\nexport class VerifyEmailModel {\r\n auto_Id: number;\r\n recordStatus: string;\r\n}\r\n\r\nexport class Resendverification {\r\n userEmailId: string;\r\n}\r\n\r\nexport class ChangePasswordModel {\r\n userEmailId: string;\r\n currentPassword: string;\r\n newPassword: string;\r\n isTempPassword: boolean;\r\n}\r\n\r\nexport class forgetPassword {\r\n userEmailId: string;\r\n}\r\n\r\n\r\nexport class UserSettingDTO {\r\n UserMasterId: number|Number;\r\n SettingCode: string;\r\n IsEnabled: boolean;\r\n}\r\n\r\nexport class TemporaryUnavailable{\r\n UserMasterId: number|Number;\r\n TemporaryUnavailableTill: any;\r\n}","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AlertifyService } from '../services/alertify.service';\r\nimport { AppearanceService } from '../services/appearance.service';\r\nimport { AuthService } from '../services/auth.service';\r\nimport { DataService } from '../services/data.service';\r\nimport { NotificationsService } from '../services/notifications.service';\r\nimport { UserService } from '../services/user.service';\r\nimport { UserLoginComponent } from '../user/user-login/user-login.component';\r\nimport { UserRegistrationComponent } from '../user/user-registration/user-registration.component';\r\n\r\n@Component({\r\n selector: 'app-nav-menu',\r\n templateUrl: './nav-menu.component.html',\r\n styleUrls: ['./nav-menu.component.css']\r\n})\r\nexport class NavMenuComponent implements OnInit {\r\n\r\n public userInfo: any;\r\n public appearList: any;\r\n public appearListCopy: any;\r\n public notifications: any;\r\n caseList: any;\r\n locations: any;\r\n casetypes: any;\r\n EA: any;\r\n changeFromcheckBox: any = '';\r\n profile: string = '';\r\n selectedlocation: any;\r\n IsAppearance: boolean;\r\n isLoggedIn = false;\r\n currentUrl: string;\r\n searchFromTop: any;\r\n rateAsAttorney: number =0;\r\n rateAsEmployer: number =0;\r\n Calledfor: string = '';\r\n constructor(public modalService: NgbModal, private alertify: AlertifyService, public notificationService: NotificationsService, private router: Router,\r\n public dataService: DataService, public userService: UserService, public appearanceService: AppearanceService,\r\n public authService: AuthService) {\r\n this.searchFromTop = this.dataService.getOption();\r\n if (this.searchFromTop.casetypes != undefined && this.searchFromTop.casetypes != null) {\r\n this.casetypes = this.searchFromTop.casetypes;\r\n }\r\n if (this.searchFromTop.selectedLocation != undefined && this.searchFromTop.selectedLocation != null) {\r\n this.selectedlocation = this.searchFromTop.selectedLocation;\r\n }\r\n if (this.authService.isLoggedIn()) {\r\n const UserId = this.authService.currentUserValue.id;\r\n this.GetNotifications(UserId);\r\n }\r\n //this.GetNotifications(this.userInfo.Id);\r\n }\r\n\r\n ngOnInit() {\r\n this.rateAsAttorney = this.authService.currentUserValue.avgRatingAsAtt || 0;\r\n this.rateAsEmployer = this.authService.currentUserValue.avgRatingAsEmp || 0;\r\n this.Calledfor = this.authService.currentUserValue?.profileType == 'A' || this.authService.currentUserValue?.profileType == 'EA' ? 'Attorney' : 'Appearance';\r\n this.authService.currentUser.subscribe(data => {\r\n this.userInfo = data;\r\n if (data != null) {\r\n this.isLoggedIn = this.authService.isLoggedIn();\r\n }\r\n });\r\n this.setProfileType();\r\n //this.getCaseTypeList();\r\n //this.getLocation();\r\n this.changeFromcheckBox = localStorage.getItem('EA');\r\n if (this.changeFromcheckBox) {\r\n this.ChangeCheckboxes();\r\n\r\n }\r\n\r\n\r\n this.searchFromTop = this.dataService.getOption();\r\n if (this.searchFromTop.casetypes != undefined && this.searchFromTop.casetypes != null) {\r\n\r\n this.casetypes = this.searchFromTop.casetypes;\r\n //this.GetAttorneyListFromTop(this.searchFromTop.casetypes.toString(), this.searchFromTop.selectedLocation);\r\n //this.SearchFilter(this.searchFromTop.casetypes,'practiceType');\r\n }\r\n if (this.searchFromTop.selectedLocation != undefined && this.searchFromTop.selectedLocation != null) {\r\n // this.isSearchfromTop = true;\r\n this.selectedlocation = this.searchFromTop.selectedLocation;\r\n // this.GetAttorneyListFromTop(this.searchFromTop.casetypes, this.searchFromTop.selectedLocation);\r\n }\r\n }\r\n\r\n ChangeCheckboxes() {\r\n if (this.userInfo.profileType == \"A\") {\r\n this.EA = true;\r\n localStorage.setItem('EA', 'A');\r\n } else {\r\n this.EA = false;\r\n localStorage.setItem('EA', 'E');\r\n }\r\n }\r\n\r\n componentReload(page: string, status: string){\r\n this.router.navigate(['/']).then(() => { this.router.navigate([page, status]); });\r\n }\r\n setProfileType() {\r\n if (this.userInfo?.profileType == 'E') {\r\n this.profile = 'Employer';\r\n } else if (this.userInfo?.profileType == 'A') {\r\n this.profile = 'Attorney';\r\n } else if (this.userInfo?.profileType == 'EA') {\r\n this.profile = 'Employer & Attorney';\r\n } else if (this.userInfo?.profileType == 'I') {\r\n this.profile = 'Individual';\r\n } else {\r\n this.profile = '';\r\n }\r\n }\r\n GetNotifications(UserId: any) {\r\n this.notificationService.getNotifications(UserId).subscribe(notification => {\r\n this.notifications = notification.model;\r\n });\r\n }\r\n ChangeProfile(event: any) {\r\n\r\n if (event.target.checked) {\r\n this.userInfo.profileType = \"A\";\r\n localStorage.setItem('EA', 'A');\r\n } else {\r\n this.userInfo.profileType = \"E\";\r\n localStorage.setItem('EA', 'E');\r\n }\r\n this.authService.currentUserValues(this.userInfo);\r\n this.authService.isDualRoleFirstTime = false;\r\n this.router.navigate(['/dashboard'])\r\n .then(() => {\r\n window.location.reload();\r\n });\r\n }\r\n NewAppearanceClick() {\r\n if (this.userInfo.barDetails.length > 0 && this.userInfo.practiceAreas.length > 0 && (this.userInfo.profileType == \"E\" || this.userInfo.profileType == \"EA\")) {\r\n this.router.navigate(['appearance-entry']);\r\n } else if (this.userInfo.profileType == \"I\") {\r\n this.router.navigate(['appearance-entry']);\r\n }\r\n else {\r\n this.alertify.error('Please complete your profile first.');\r\n this.router.navigate(['profile']);\r\n }\r\n }\r\n NevigateAppearanceList(status: any) {\r\n this.router.navigate(['appearance-list', status]);\r\n }\r\n Search() {\r\n this.dataService.setOption('casetypes', this.casetypes);\r\n this.dataService.setOption('selectedLocation', this.selectedlocation);\r\n if (this.userInfo.profileType == 'A') {\r\n this.router.navigate(['appearance-list']);\r\n } else {\r\n this.router.navigate(['attorney-list']);\r\n }\r\n }\r\n ngOnChanges() {\r\n this.userInfo = JSON.parse(localStorage.getItem('currentUser') || '{}');\r\n }\r\n loggedin() {\r\n return this.authService.isLoggedIn();\r\n }\r\n\r\n // getCaseTypeList() {\r\n // this.appearanceService.getCaseType().subscribe(casetype => {\r\n // this.caseList = casetype;\r\n // });\r\n // }\r\n\r\n // getLocation() {\r\n // this.userService.getAllCounty().subscribe(loc => {\r\n // this.locations = loc.list;\r\n // });\r\n // }\r\n onSignOut() {\r\n this.authService.logout();\r\n }\r\n openLoginPopup(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(UserLoginComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n openRegisterPopup(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(UserRegistrationComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n // Below Code added by nirav for Avatar Coding\r\n getInitials(firstName:string, lastName:string) {\r\n return firstName[0].toUpperCase() + lastName[0].toUpperCase();\r\n }\r\n}\r\n","
\r\n \r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { CommonConstant } from 'src/app/Common/Constants/Constants';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { ContactUsService } from 'src/app/services/ContactUs.service';\r\n\r\n@Component({\r\n selector: 'app-contact-us',\r\n templateUrl: './contact-us.component.html',\r\n styleUrls: ['./contact-us.component.css']\r\n})\r\nexport class ContactUsComponent implements OnInit {\r\n public contactUsForm: FormGroup;\r\n public key:string ='6LfuH4IhAAAAAFsQ7eGhRaGg0_gL6ZaR7FmKLYWz';\r\n submitted = false;\r\n submitSuccess = false;\r\n finalFormDataUpdate: FormData;\r\n\r\n\r\n constructor(private fb: FormBuilder, private alertify: AlertifyService, private contactUsService: ContactUsService) { }\r\n\r\n ngOnInit() {\r\n this.contactUsForm = this.fb.group({\r\n name: ['', Validators.required],\r\n email: ['', Validators.required],\r\n mobileNo: ['', Validators.required],\r\n subject: ['', Validators.required],\r\n message: ['', Validators.required],\r\n recaptcha: ['', Validators.required]\r\n });\r\n }\r\n get f() { return this.contactUsForm.controls; }\r\n\r\n\r\n handleSuccess(params:any) {\r\n console.log(params);\r\n }\r\n\r\n //Following method added by atul on date 9 apr 22 for fix bug 473 Subuser created by Dual role user also gets dual role\r\n getFormValidationErrors() {\r\n //Code modified by atul on dated 20 apr 22 for bug 491: Profile - If any mandatory fields are pending, the page should be positioned to show the pending fields\r\n var iRow = 0;\r\n Object.keys(this.contactUsForm.controls).forEach(key => {\r\n \r\n const controlErrors = this.contactUsForm.get(key)?.errors;\r\n if (controlErrors != null && iRow==0) {\r\n iRow++;\r\n Object.keys(controlErrors).forEach(keyError => {\r\n if(key == 'recaptcha')\r\n this.alertify.error(\"Please verify the captcha.\"); \r\n else\r\n this.alertify.error(CommonConstant.PROFILE_MESSAGES.ALL_REQUIRED_ERROR);\r\n console.log('Key control: ' + key + ', keyError: ' + keyError + ', err value: ', controlErrors[keyError]);\r\n return;\r\n });\r\n return;\r\n }\r\n });\r\n }\r\n \r\n //Following all functions modified by atul on 12 may 22 for making stripe mandatory\r\n onSubmit() {\r\n this.submitted = true;\r\n //Following line added by atul on date 9 apr 22 for fix bug 473 Subuser created by Dual role user also gets dual role\r\n this.getFormValidationErrors();\r\n if (this.contactUsForm.valid) {\r\n console.log(\"asb\");\r\n \r\n this.finalFormDataUpdate = new FormData();\r\n this.finalFormDataUpdate.append('Name', this.contactUsForm.get('name')?.value);\r\n this.finalFormDataUpdate.append('Email', this.contactUsForm.get('email')?.value);\r\n this.finalFormDataUpdate.append('MobileNo', this.contactUsForm.get('mobileNo')?.value);\r\n this.finalFormDataUpdate.append('Subject', this.contactUsForm.get('subject')?.value);\r\n this.finalFormDataUpdate.append('Message', this.contactUsForm.get('message')?.value);\r\n \r\n this.contactUsService.add(this.finalFormDataUpdate)\r\n .subscribe(() => {\r\n this.submitSuccess = true;\r\n this.alertify.success('Form has been submitted successfully!');\r\n });\r\n }\r\n }\r\n \r\n}\r\n","\r\n
\r\n
\r\n
\r\n

Contact Us

\r\n
    \r\n
  1. Home
  2. \r\n
  3. Contact Us
  4. \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
Location:
\r\n

Videtur LLC, 95 Third Street, 2nd Floor, San Francisco, CA 94103

\r\n
\r\n
\r\n
 
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
Email:
\r\n

info@videturpro.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
Please enter your name.
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
Please enter your email.
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Please enter your mobile number.
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Please enter subject.
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Please enter message.
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n  \r\n
\r\n
\r\n
\r\n Thank you for contacting Videtur Pro.
Someone from our team will get back to you soon.\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 { Router, NavigationStart } from '@angular/router'; \r\nimport { Observable } from 'rxjs'; \r\nimport { Subject } from 'rxjs'; \r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ConfirmDialogService {\r\n\r\n private subject = new Subject(); \r\n \r\n confirmThis(message: string, yesFn: () => void, noFn: () => void): any { \r\n this.setConfirmation(message, yesFn, noFn); \r\n } \r\n\r\n setConfirmation(message: string, yesFn: () => void, noFn: () => void): any { \r\n const that = this; \r\n this.subject.next({ \r\n type: 'confirm', \r\n text: message, \r\n yesFn(): any { \r\n that.subject.next(); // This will close the modal \r\n yesFn(); \r\n }, \r\n noFn(): any { \r\n that.subject.next(); \r\n noFn(); \r\n } \r\n }); \r\n\r\n } \r\n\r\n getMessage(): Observable { \r\n return this.subject.asObservable(); \r\n } \r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { ContactUs } from '../models/ContactUs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ContactUsService {\r\n\r\n public apiPath: string = environment.apiUrl;\r\n\r\nconstructor(private http:HttpClient) { }\r\n\r\nadd(contactUs: any): Observable {\r\n return this.http.post(this.apiPath + 'ContactUs/Add', contactUs);\r\n}\r\n\r\n// get(CourtId: Number): Observable {\r\n// return this.http.get(this.apiPath + 'Courts/' + CourtId);\r\n// }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Court } from '../models/Court';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CourtService {\r\n\r\n public apiPath: string = environment.apiUrl;\r\nconstructor(private http:HttpClient) { }\r\nadd(court: Court): Observable {\r\n return this.http.post(this.apiPath + 'Courts/Add', court);\r\n}\r\nupdate(autoId: number, court: Court): Observable {\r\n return this.http.put(this.apiPath + 'Courts/update/' + autoId, court);\r\n}\r\nget(CourtId: Number): Observable {\r\n return this.http.get(this.apiPath + 'Courts/' + CourtId);\r\n}\r\ngetCourtType(Type: any){\r\n return this.http.get(this.apiPath + 'OtherMaster/GetByRecordType/' + Type);\r\n}\r\ngetAll(): Observable {\r\n return this.http.get(this.apiPath + 'Courts/');\r\n}\r\ndelete(autoId: number): Observable {\r\n return this.http.patch(this.apiPath + 'Courts/Delete/' + autoId, '');\r\n}\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport * as alertify from 'alertifyjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AlertifyService {\r\n\r\nconstructor() { }\r\n\r\nsuccess(message:string)\r\n{\r\n alertify.success(message);\r\n}\r\nwarning(message:string)\r\n{\r\n alertify.warning(message);\r\n}\r\nerror(message:string)\r\n{\r\n alertify.error(message);\r\n}\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Observable } from 'rxjs';\r\nimport { BidAppearance, CancelAppearance, CompleteAppearance, ReOpen, SearchLog } from '../models/appearance';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AppearanceService {\r\n\r\n public apiPath: string = environment.apiUrl;\r\n public appearanceDocSuffix: string = \"Azure\";\r\n constructor(private http: HttpClient) { }\r\n\r\n getAppearanceType(): Observable {\r\n return this.http.get(this.apiPath + 'AppearanceType');\r\n }\r\n\r\n getAppearanceTypeByCasetypeId(caseTypeId: number): Observable {\r\n return this.http.get(this.apiPath + 'AppearanceType/AppearanceTypebyCaseType/' + caseTypeId);\r\n }\r\n getAppearanceTypeByCasetypeIds(caseTypeIds: any): Observable {\r\n return this.http.get(this.apiPath + 'AppearanceType/AppearanceTypebyCaseTypes?CaseTypeIds=' + caseTypeIds);\r\n }\r\n getCaseType(): Observable {\r\n return this.http.get(this.apiPath + 'CaseTypePracticeArea');\r\n }\r\n\r\n getAllStatus(): Observable {\r\n return this.http.get(this.apiPath + 'Appearance/GetStatus');\r\n }\r\n getCourtType(): Observable {\r\n return this.http.get(this.apiPath + 'Courts');\r\n }\r\n getCourtTypeByCounty(CountyId: any): Observable {\r\n return this.http.get(this.apiPath + 'Courts/CourtsByCounty/' + CountyId);\r\n }\r\n\r\n getLanguage(): Observable {\r\n return this.http.get(this.apiPath + 'OtherMaster/GetByRecordType/L');\r\n }\r\n\r\n getAppearanceList(recordStatus: any, casetypes: any, state: any, AttorneyId: Number): Observable {\r\n return this.http.get(this.apiPath + 'Appearance?RecordStatus=' + recordStatus + '&CaseTypes=' + casetypes + '&States=' + state + '&AttorneyId=' + AttorneyId);\r\n }\r\n getAppearanceListPaging(recordStatus: any, casetypes: any, state: any, AttorneyId: Number, pageNumber:any): Observable {\r\n return this.http.get(this.apiPath + 'Appearance/GetAllPaging?RecordStatus=' + recordStatus + '&CaseTypes=' + casetypes + '&States=' + state + '&AttorneyId=' + AttorneyId + '&page=' + pageNumber);\r\n }\r\n getAllAppearanceList(recordStatus: any, casetypes: any, state: any, AttorneyId: any=null): Observable {\r\n //Next 4 lines modified by atul for fix bug that . If I am searching appearance from top search than 'Reopen' appearances are not coming. 2. In search appearance those appearance are also coming for which attorney itself is in invited/applied state\r\n var attorneyQuery = \"\";\r\n if(AttorneyId != undefined && AttorneyId != null)\r\n attorneyQuery = '&AttorneyId=' + AttorneyId\r\n return this.http.get(this.apiPath + 'Appearance?RecordStatus=' + recordStatus + '&CaseTypes=' + casetypes + '&States=' + state + attorneyQuery);\r\n }\r\n getAppearanceListbyUserId(userId: Number, status: string): Observable {\r\n return this.http.get(this.apiPath + 'Appearance/GetAppearanceByUserIdStatus?UserMasterId=' + userId + '&RecordStatus=' + status);\r\n }\r\n\r\n getAppearanceListbyUserIdForAttorney(userId: Number, status: string): Observable {\r\n return this.http.get(this.apiPath + 'Appearance/GetAppearanceByUserIdStatusForAttorney?UserMasterId=' + userId + '&RecordStatus=' + status);\r\n }\r\n getById(id: number): Observable {\r\n return this.http.get(this.apiPath + 'Appearance/' + id);\r\n }\r\n getAppearanceInfoById(id: number, AttorneyId: Number): Observable {\r\n //Api changed by atul on 17 mar 22 for fix the order by issue\r\n //return this.http.get(this.apiPath + 'AppearanceInfo/GetStatusInfoByAppearance/' + id + '?AttorneyId=' + AttorneyId);\r\n return this.http.get(this.apiPath + 'AppearanceInfo/GetByAppearance/' + id + '?AttorneyId=' + AttorneyId);\r\n }\r\n uploadAppearanceDoc(files: Array, Id: number): Observable {\r\n // Create form data\r\n const formData = new FormData();\r\n\r\n for (var i = 0; i < files.length; i++) {\r\n // Store form name as \"file\" with file data\r\n formData.append(\"file\", files[i], files[i].name);\r\n }\r\n\r\n // Make http post request over api\r\n // with formData as req\r\n return this.http.post(this.apiPath + 'AppearanceDoc' + this.appearanceDocSuffix + '/upload?UserMasterId=' + Id, formData, { reportProgress: true, observe: 'events' })\r\n }\r\n\r\n Addappearance(appearance: any) {\r\n return this.http.post(this.apiPath + 'Appearance/Add', appearance);\r\n }\r\n\r\n AddSearchLog(log: SearchLog) {\r\n return this.http.post(this.apiPath + 'SearchLog/add', log);\r\n }\r\n Updateappearance(Id: any, appearance: any) {\r\n return this.http.put(this.apiPath + 'Appearance/Update/' + Id, appearance);\r\n }\r\n\r\n GetAppearanceDocById(Id: any): Observable {\r\n return this.http.get(this.apiPath + 'AppearanceDoc' + this.appearanceDocSuffix + '/GetByAppearance/' + Id);\r\n }\r\n UpdateAppearanceDoc(ApperanceId: any, Appearance: any): Observable {\r\n console.log(\"uploading....\");\r\n return this.http.put(this.apiPath + 'AppearanceDoc' + this.appearanceDocSuffix + '/UpdateFiles/' + ApperanceId, Appearance);\r\n }\r\n DownloadDocs(docname: string): Observable {\r\n return this.http.get(this.apiPath + 'AppearanceDoc' + this.appearanceDocSuffix + '/getfile?fileName=' + docname, { responseType: 'blob' });\r\n }\r\n\r\n CancelAppearance(Id: number, cancelReason: CancelAppearance): Observable {\r\n return this.http.patch(this.apiPath + 'Appearance/UpdateCancel/' + Id, cancelReason);\r\n }\r\n ReOpenAppearance(Id: number, reopen: ReOpen): Observable {\r\n return this.http.patch(this.apiPath + 'Appearance/UpdateReOpen/' + Id, reopen);\r\n }\r\n\r\n BidAppearance(bid: BidAppearance): Observable {\r\n return this.http.post(this.apiPath + 'AppearanceBid/Add', bid);\r\n }\r\n\r\n GetCancelReasons(): Observable{\r\n return this.http.get(this.apiPath+'ImportExportData/GetCancelReasons');\r\n }\r\n GetAppearanceById(Id: any): Observable {\r\n return this.http.get(this.apiPath + 'Appearance/' + Id);\r\n }\r\n\r\n GetAppearanceBidById(AttorneyId: Number, AppearanceId: number) {\r\n return this.http.get(this.apiPath + 'AppearanceBid/GetByAttorneyAppearanceBid/' + AttorneyId + '?AppearanceId=' + AppearanceId);\r\n }\r\n\r\n CompleteAppearance(complete: CompleteAppearance, appearanceId: number): Observable {\r\n return this.http.patch(this.apiPath + 'Appearance/UpdateComplete/' + appearanceId, complete);\r\n }\r\n GetInvitedAppliedAttoney(appearanceId: number): Observable {\r\n return this.http.get(this.apiPath + 'AppearanceAttorney/GetInvitedAppliedApplicationByAppearanceId/' + appearanceId);\r\n }\r\n GetAppearanceByGroup(UserId: Number, status: string): Observable {\r\n return this.http.get(this.apiPath + 'AppearanceAttorney/GetInvitedAppliedApplicationGroupByAppearance/' + UserId + '?status=' + status);\r\n }\r\n\r\n GetApplicationForAttorney(UserId: Number, status: string) {\r\n return this.http.get(this.apiPath + 'AppearanceAttorney/GetByAttorneyApplicationCard/' + UserId + '?status=' + status);\r\n }\r\n\r\n GetAppearanceMinMaxForFilter(): Observable {\r\n return this.http.get(this.apiPath + 'Appearance/GetAppearanceMinMaxRate');\r\n }\r\n\r\n GetApprovedAttorneyDetails(AppearanceId: any, AttorneyId: any) {\r\n return this.http.get(this.apiPath + 'AppearanceAttorney/GetAttorneyById?AppearanceId=' + AppearanceId + '&AttorneyId=' + AttorneyId);\r\n }\r\n GetAppearanceDueInHrs(AppearanceId: any) {\r\n return this.http.get(this.apiPath + 'Appearance/GetAppearanceDueInHrs/' + AppearanceId );\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { approveattorney, attorney, attorneyreject, Withdraw } from '../models/attorney';\r\nimport { AddMessage } from '../models/message';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AttorneyService {\r\n\r\n public apiPath: string = environment.apiUrl;\r\n constructor(private http: HttpClient) { }\r\n\r\n getAttoryneyList(): Observable {\r\n return this.http.get(this.apiPath + 'UserProfileDetail/GetAttorneyAll');\r\n }\r\n\r\n getAttoryneyListNew(): Observable {\r\n return this.http.get(this.apiPath + 'UserProfileDetail/GetAttornies');\r\n }\r\n findAttorneyByAppearanceId(appearanceId: any): Observable {\r\n return this.http.get(this.apiPath + 'UserProfileDetail/GetAttornies?AppearanceId='+appearanceId);\r\n }\r\n getAttoryneyListLatest(caseTypes: any, state: any): Observable {\r\n return this.http.get(this.apiPath + 'AppearanceAttorney/GetAttorneyByStateAndPracticeArea?CaseTypes=' + caseTypes+'&States=' + state);\r\n }\r\n\r\n inviteAttorney(invite: attorney): Observable {\r\n return this.http.post(this.apiPath + 'AppearanceAttorney/InviteAttorney', invite);\r\n }\r\n\r\n rejectAttorneyByEmp(reject: attorneyreject): Observable {\r\n return this.http.post(this.apiPath + 'AppearanceAttorney/RejectAttorneybyEmployer', reject);\r\n }\r\n\r\n approveAttorney(approve: approveattorney): Observable {\r\n return this.http.post(this.apiPath + 'AppearanceAttorney/ApproveAttorney', approve);\r\n }\r\n\r\n WithdrawByAttorney(withdraw: Withdraw): Observable {\r\n return this.http.post(this.apiPath + 'AppearanceAttorney/WithdrawAppearanceByAttorney', withdraw);\r\n }\r\n\r\n rejectAttorneyByAttorney(reject: attorneyreject): Observable {\r\n return this.http.post(this.apiPath + 'AppearanceAttorney/RejectAppearanceByAttorney', reject);\r\n }\r\n\r\n GetAttorneyMinMaxForFilter(): Observable {\r\n return this.http.get(this.apiPath + 'UserProfileDetail/GetAttorneyMinMaxRate');\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpInterceptor, HttpRequest, HttpHandler } from '@angular/common/http';\r\nimport { AuthService } from './auth.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthInterceptorService implements HttpInterceptor {\r\n\r\n constructor(private authService: AuthService) { }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler) {\r\n\r\n const currentuser = this.authService.currentUserValue;\r\n if (currentuser && currentuser.token) {\r\n req = req.clone({\r\n setHeaders: {\r\n Authorization: 'Bearer '+ currentuser.token\r\n }\r\n });\r\n }\r\n return next.handle(req);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Login, LoginResponse, UserModel, VerifyEmailModel } from '../models/user';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthService {\r\n public apiPath: string = environment.apiUrl;\r\n user = new BehaviorSubject({});\r\n public currentUser: Observable;\r\n public isSubUser: boolean = false;\r\n public isDualRoleFirstTime: boolean = true;\r\n constructor(private http: HttpClient) {\r\n this.user = new BehaviorSubject(JSON.parse(localStorage.getItem('currentUser') || '{}'));\r\n this.currentUser = this.user.asObservable();\r\n }\r\n authUser(user: Login): Observable {\r\n return this.http.post(this.apiPath + 'User/login', user).pipe(map(user => {\r\n // store user details and jwt token in local storage to keep user logged in between page refreshes\r\n localStorage.setItem('currentUser', JSON.stringify(user.model));\r\n localStorage.setItem('Is2FAPassed', \"1\");\r\n this.isSubUser = user.model?.parentUserId != null ? true : false;\r\n this.user.next(user.model);\r\n return user;\r\n }));\r\n }\r\n isOTPRequired(user: Login) {\r\n return this.http.put(this.apiPath + 'User/IsOTPRequired', user);\r\n }\r\n verifyEmail(verifyModel: VerifyEmailModel) {\r\n return this.http.put(this.apiPath + 'User/UpdateStatus', verifyModel);\r\n }\r\n logout() {\r\n // remove user from local storage and set current user to null\r\n localStorage.removeItem('currentUser');\r\n localStorage.removeItem('EA');\r\n this.user.next({});\r\n }\r\n\r\n public get currentUserValue(): UserModel {\r\n return this.user.value;\r\n }\r\n\r\n public currentUserValues(profileType: any) {\r\n this.user.next({ profileType });\r\n localStorage.setItem('currentUser', JSON.stringify(profileType));\r\n }\r\n public updateProfileType(Type: any) {\r\n // Retrieves the string and converts it to a JavaScript object \r\n const retrievedString = localStorage.getItem(\"currentUser\") || '';\r\n const parsedObject = JSON.parse(retrievedString);\r\n\r\n // Modifies the object, converts it to a string and replaces the existing `ship` in LocalStorage\r\n parsedObject.profileType = Type;\r\n this.user.next(parsedObject);\r\n const modifiedndstrigifiedForStorage = JSON.stringify(parsedObject);\r\n localStorage.setItem(\"currentUser\", modifiedndstrigifiedForStorage);\r\n }\r\n\r\n public updateStripeAccount(isStripeComplete: boolean) {\r\n // Retrieves the string and converts it to a JavaScript object \r\n const retrievedString = localStorage.getItem(\"currentUser\") || '';\r\n const parsedObject = JSON.parse(retrievedString);\r\n\r\n // Modifies the object, converts it to a string and replaces the existing `ship` in LocalStorage\r\n parsedObject.isStripeConnected = isStripeComplete;\r\n this.user.next(parsedObject);\r\n const modifiedndstrigifiedForStorage = JSON.stringify(parsedObject);\r\n localStorage.setItem(\"currentUser\", modifiedndstrigifiedForStorage);\r\n }\r\n public updateAutoPaymentSetupCompleted(IsPaymentSetupCompleted: boolean) {\r\n // Retrieves the string and converts it to a JavaScript object \r\n const retrievedString = localStorage.getItem(\"currentUser\") || '';\r\n const parsedObject = JSON.parse(retrievedString);\r\n\r\n // Modifies the object, converts it to a string and replaces the existing `ship` in LocalStorage\r\n parsedObject.isPaymentSetupCompleted = IsPaymentSetupCompleted;\r\n this.user.next(parsedObject);\r\n const modifiedndstrigifiedForStorage = JSON.stringify(parsedObject);\r\n localStorage.setItem(\"currentUser\", modifiedndstrigifiedForStorage);\r\n }\r\n public isLoggedIn(): boolean {\r\n let status = false;\r\n const user = JSON.parse(localStorage.getItem('currentUser') || '{}');\r\n if (user?.token != null) {\r\n status = true;\r\n }\r\n return status;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport * as _ from 'lodash';\r\nimport { CommonConstant } from '../Common/Constants/Constants';\r\nimport { AlertifyService } from './alertify.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CommonService {\r\n\r\n constructor(private alertify: AlertifyService) { }\r\n getDropDownText(id: any, object: any){\r\n const selObj = _.filter(object, function (o: { autoId: any; }) {\r\n return (_.includes(id,o.autoId));\r\n });\r\n return selObj;\r\n }\r\n\r\n fileUpload(event: any){\r\n let docToUpload: any = [];\r\n Array.from(event.target.files).forEach((element: any) => {\r\n if (element.size < CommonConstant.RESPONSE_MESSAGES.MB_SIZE) {\r\n if (CommonConstant.ALLOWED_FILE_TYPES.includes(element.name.split('.')[1])) {\r\n docToUpload.push(element);\r\n } else {\r\n this.alertify.error(CommonConstant.RESPONSE_MESSAGES.FILE_TYPE_ERROR);\r\n }\r\n } else {\r\n this.alertify.error(CommonConstant.RESPONSE_MESSAGES.FILE_SIZE_ERROR);\r\n }\r\n });\r\n\r\n return docToUpload;\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { AddMessage } from '../models/message';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CommunicationService {\r\n\r\n public apiPath: string = environment.apiUrl;\r\n constructor(private http: HttpClient) { }\r\n \r\n addMessage(message: AddMessage): Observable{\r\n return this.http.post(this.apiPath + 'AppearanceMessage/Add' , message);\r\n }\r\n\r\n getMessageByAppearanceId(Id:any, fromId: any): Observable {\r\n return this.http.get(this.apiPath + 'AppearanceMessage/GetByAppearance?AppearanceId='+Id+'&FromToId='+fromId);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DataService {\r\n\r\n constructor() { }\r\n\r\n private data: any = {};\r\n\r\n setOption(option: string | number, value: any) {\r\n this.data[option] = value;\r\n }\r\n\r\n getOption() {\r\n return this.data;\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { InvoiceEntry, Rating, RejectReason } from '../models/invoice';\r\n\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class InvoiceService {\r\n\r\n\r\n public apiPath: string = environment.apiUrl;\r\n constructor(private http: HttpClient) { }\r\n\r\n AddInvoice(invoice: InvoiceEntry): Observable {\r\n return this.http.post(this.apiPath + 'AppearanceInvoice/Add', invoice);\r\n }\r\n\r\n AddInvoiceDraft(invoice: InvoiceEntry): Observable {\r\n return this.http.post(this.apiPath + 'AppearanceInvoice/AddDraft', invoice);\r\n }\r\n\r\n getInvoiceDetail(appearanceId: any, attorneyId: any): Observable {\r\n return this.http.get(this.apiPath + 'AppearanceInvoice/GetApprovedInvoiceDetails?AttorneyId=' + attorneyId + '&AppearanceId=' + appearanceId);\r\n }\r\n\r\n getInvoiceByAppearanceId(appearanceId: any): Observable {\r\n return this.http.get(this.apiPath + 'AppearanceInvoice/GetByAppearance/' + appearanceId);\r\n }\r\n //Following function added by atul on 17 may 22 for invoice draft feature\r\n getForInvoiceUpdate(appearanceId: any): Observable {\r\n return this.http.get(this.apiPath + 'AppearanceInvoice/GetForInvoiceUpdate/' + appearanceId);\r\n }\r\n \r\n getInvoiceList(Id: any, ProfileType: any): Observable {\r\n return this.http.get(this.apiPath + 'AppearanceInvoice/GetByUserId?AttorneyId=' + Id + '&ProfileType=' + ProfileType);\r\n }\r\n\r\n RejectInvoice(InvoiceNo: number, RejectReason: RejectReason) {\r\n return this.http.patch(this.apiPath + 'AppearanceInvoice/RejectInvoice?Id=' + InvoiceNo, RejectReason);\r\n }\r\n PayInvoice(invoice: any) {\r\n return this.http.post(this.apiPath + 'Stripe/Checkout', invoice);\r\n //return this.http.post(this.apiPath + 'AppearanceInvoice/PayInvoice', invoice);\r\n }\r\n getInvoices(userId: any, profileType: string, status: string): Observable {\r\n return this.http.get(this.apiPath + 'AppearanceInvoice/GetInvoices?UserMasterId=' + userId + '&ProfileType=' + profileType + '&RecordStatus=' + status);\r\n }\r\n getInvoiceInfo(appearanceId: any, AttorneyId:any): Observable {\r\n return this.http.get(this.apiPath + 'AppearanceInvoiceInfo/GetInvoiceInfo/' + appearanceId + '?AttorneyId=' + AttorneyId);\r\n }\r\n //Following function added by atul on 25 apr 22 for task 495: Mandatory Stripe registration along with auto-debit feature\r\n ReceivePayment(invoice: any) {\r\n return this.http.post(this.apiPath + 'Stripe/ReceivePayment', invoice);\r\n //return this.http.post(this.apiPath + 'AppearanceInvoice/PayInvoice', invoice);\r\n }\r\n AddRating(rate: Rating) {\r\n return this.http.post(this.apiPath + 'UserRating/add', rate);\r\n }\r\n //Following function added by atul on 17 may 22 for invoice draft feature\r\n DeleteDraft(Id: any) {\r\n return this.http.patch(this.apiPath + 'AppearanceInvoice/DeleteDraft?Id=' + Id,Id);\r\n }\r\n\r\n GetPaymentToken(invoiceId: any) {\r\n return this.http.post(this.apiPath + 'Nexio/GetMakePaymentToken?invoiceId=' + invoiceId,null);\r\n //return this.http.post(this.apiPath + 'AppearanceInvoice/PayInvoice', invoice);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NotificationsService {\r\n\r\n public apiPath: string = environment.apiUrl;\r\n constructor(private http: HttpClient) { }\r\n\r\n getNotifications(UserId: Number): Observable {\r\n return this.http.get(this.apiPath + 'EmailNotificationLog/GetNotificationForUser/' + UserId);\r\n }\r\n getAllNotifications(UserId: Number): Observable {\r\n return this.http.get(this.apiPath + 'EmailNotificationLog/GetAllNotificationForUser/' + UserId);\r\n }\r\n deleteNotifications(autoIds: number[]): Observable {\r\n return this.http.post(this.apiPath + 'EmailNotificationLog/DeleteNotifications/', autoIds);\r\n }\r\n markReadNotifications(autoIds: number[]): Observable {\r\n return this.http.post(this.apiPath + 'EmailNotificationLog/MarkReadNotifications/', autoIds);\r\n } \r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AlertifyService } from './alertify.service';\r\nimport { AuthService } from './auth.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RouteGaurdForHomeService {\r\n\r\n constructor(private authService: AuthService, public alertify: AlertifyService, private router: Router) { }\r\n\r\n canActivate(): boolean {\r\n //Code modified by atul on 14 may 22 to fix bug in route graurd reported by nirav \"user can open pages like dashboard, profile without email verification\r\n let cu = this.authService.currentUserValue;\r\n\r\n if (this.authService.isLoggedIn() && (cu.recordStatus == 'I' || cu.recordStatus == null) && cu.recordStatus != undefined) {\r\n this.alertify.warning('Please verify your email address.');\r\n this.router.navigate(['verification']);\r\n return false;\r\n // } else if (this.authService.isLoggedIn() && ((cu.parentUserId == null && (cu.profileType == \"A\" || cu.profileType == \"EA\"))\r\n // || ((cu.isStripeConnected == null || cu.isStripeConnected == false) && (cu.profileType == \"A\" || cu.profileType == \"EA\"))\r\n // || (cu.parentUserId != null && (cu.mobileNo == undefined || cu.mobileNo == \"\")))) {\r\n } else if (\r\n this.authService.isLoggedIn()\r\n && this.checkStripeNotConnected()) {\r\n this.alertify.warning('Please complete your profile first.');\r\n this.router.navigate(['profile']);\r\n return false;\r\n } else if (this.authService.isLoggedIn()) {\r\n console.log(this.router.url);\r\n this.router.navigate(['dashboard']);\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n checkStripeNotConnected() {\r\n let cu = this.authService.currentUserValue;\r\n // if (cu.parentUserId == null && (cu.profileType == \"A\" || cu.profileType == \"EA\") && (cu.isStripeConnected == null || cu.isStripeConnected == false)) {\r\n // return true;\r\n // }\r\n if (cu.parentUserId == null && ((cu.profileType == \"I\" || cu.profileType == \"EA\" || cu.profileType == \"E\") && (cu.isPaymentSetupCompleted == null || cu.isPaymentSetupCompleted == false))) {\r\n return true;\r\n }\r\n if (cu.parentUserId != null && (cu.mobileNo == undefined || cu.mobileNo == \"\")) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n}\r\n\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AlertifyService } from './alertify.service';\r\nimport { AuthService } from './auth.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RouteGaurdForProfileCheckService implements CanActivate {\r\n\r\n constructor(private authService: AuthService, public alertify: AlertifyService, public modalService: NgbModal, private router: Router) { }\r\n\r\n canActivate(): boolean {\r\n //Code added by atul on 14 may 22 to fix bug in route graurd reported by nirav \"user can open pages like dashboard, profile without email verification\r\n let cu = this.authService.currentUserValue;\r\n\r\n if (this.authService.isLoggedIn() && (cu.recordStatus == 'I' || cu.recordStatus == null)) {\r\n this.alertify.warning('Please verify your email address.');\r\n this.router.navigate(['verification']);\r\n return false;\r\n } \r\n return true;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AlertifyService } from './alertify.service';\r\nimport { AuthService } from './auth.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RouteGaurdForVerifiedAccountService implements CanActivate {\r\n\r\n constructor(private authService: AuthService, public alertify: AlertifyService, public modalService: NgbModal, private router: Router) { }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {\r\n //Code modified by atul on 14 may 22 to fix bug in route graurd reported by nirav \"user can open pages like dashboard, profile without email verification\r\n let cu = this.authService.currentUserValue;\r\n\r\n if (this.authService.isLoggedIn() && (cu.recordStatus == 'I' || cu.recordStatus == null) && cu.recordStatus != undefined) {\r\n this.alertify.warning('Please verify your email address.');\r\n this.router.navigate(['verification']);\r\n return false;\r\n } else if (this.authService.isLoggedIn() && this.checkStripeNotConnected()) {\r\n this.alertify.warning('Please complete your profile first.');\r\n this.router.navigate(['profile']);\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n checkStripeNotConnected() {\r\n let cu = this.authService.currentUserValue;\r\n // if (cu.parentUserId == null && (cu.profileType == \"A\" || cu.profileType == \"EA\") && (cu.isStripeConnected == null || cu.isStripeConnected == false)) {\r\n // return true;\r\n // }\r\n if (cu.parentUserId == null && ((cu.profileType == \"I\" || cu.profileType == \"EA\" || cu.profileType == \"E\") && (cu.isPaymentSetupCompleted == null || cu.isPaymentSetupCompleted == false))) {\r\n return true;\r\n }\r\n if (cu.parentUserId != null && (cu.mobileNo == undefined || cu.mobileNo == \"\")) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { UserLoginComponent } from '../user/user-login/user-login.component';\r\nimport { AlertifyService } from './alertify.service';\r\nimport { AuthService } from './auth.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RouteGuardService implements CanActivate {\r\n\r\n constructor(private authService: AuthService, public alertify: AlertifyService, public modalService: NgbModal, private router: Router) { }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {\r\n //Following code commented by atul on 13 may 22 on mehul's request\r\n if (this.authService.isLoggedIn() && (this.authService.currentUserValue.recordStatus == 'I' || this.authService.currentUserValue.recordStatus == null)) {\r\n this.alertify.warning('Please verify your email address.');\r\n this.router.navigate(['verification']);\r\n return false;\r\n } else if (!this.authService.isLoggedIn()) {\r\n this.router.navigate(['dashboard'], { queryParams: { returnUrl: state.url } });\r\n this.openLoginPopup('1');\r\n return false;\r\n //} else if (this.authService.currentUserValue.recordStatus == 'I' || this.authService.currentUserValue.recordStatus == null) {\r\n // this.alertify.warning('Please verify your email !');\r\n // this.router.navigate(['verification']);\r\n // return false;\r\n //} else if ((this.authService.currentUserValue.practiceAreas == null || this.authService.currentUserValue.practiceAreas.length == 0) && (this.authService.currentUserValue.profileType == \"E\") && this.authService.currentUserValue.parentUserId == null) {\r\n // this.alertify.error('Complete your profile first !');\r\n // this.router.navigate(['profile']);\r\n // return false;\r\n } else if (this.authService.isLoggedIn() && this.authService.currentUserValue.profileType == \"\" && this.authService.currentUserValue.parentUserId == null) {\r\n this.alertify.warning('Please complete your profile first.');\r\n this.router.navigate(['profile']);\r\n return false;\r\n }\r\n else if (this.authService.isLoggedIn() && this.checkStripeNotConnected()) {\r\n this.alertify.warning('Please complete your profile first.');\r\n this.router.navigate(['profile']);\r\n return false;\r\n } else if (this.authService.isLoggedIn() && this.authService.currentUserValue.parentUserId != null && (this.authService.currentUserValue.mobileNo == undefined || this.authService.currentUserValue.mobileNo == \"\")) {\r\n this.alertify.warning('Please complete your profile first.');\r\n this.router.navigate(['profile']);\r\n return false;\r\n }\r\n else if (this.authService.currentUserValue.parentUserId != null) {\r\n return true;\r\n }\r\n return true;\r\n }\r\n\r\n openLoginPopup(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(UserLoginComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n\r\n checkStripeNotConnected() {\r\n let cu = this.authService.currentUserValue;\r\n // if (cu.parentUserId == null && (cu.profileType == \"A\" || cu.profileType == \"EA\") ) { //&& (cu.isStripeConnected == null || cu.isStripeConnected == false)\r\n // return true;\r\n // }\r\n if (cu.parentUserId == null && ((cu.profileType == \"I\" || cu.profileType == \"EA\" || cu.profileType == \"E\") && (cu.isPaymentSetupCompleted == null || cu.isPaymentSetupCompleted == false))) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ChangePasswordModel, forgetPassword, Resendverification, UpdateProfileRequest, User, UserBars, UserPracticeArea, UserProfileDetail } from '../models/user';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Observable } from 'rxjs';\r\nimport { StateMaster, StateMasterList } from '../models/master';\r\nimport { AddressParams, AddressRequest } from '../models/address';\r\nimport { GetPaymentDetailDTO, InvoiceIdDTO, IsStripeConnectedDTO, SaveCardTokenDTO, SavePaymentDetailDTO, StripeConnectDTO, StripePaymentSetupDTO, UserIdDTO } from '../models/stripe';\r\nimport { NexioPaymentBySavedMethodDTO, NexioPaymentProcessedDTO, UserPaymentSetupDetailDTO } from '../models/nexio';\r\n@Injectable()\r\nexport class UserService {\r\n public apiPath: string = environment.apiUrl;\r\n constructor(private http: HttpClient) { }\r\n\r\n addUser(user: User): Observable {\r\n return this.http.post(this.apiPath + 'User/Add', user);\r\n }\r\n\r\n ResendEmailVerification(ResendEmail: Resendverification) {\r\n return this.http.put(this.apiPath + 'User/ResendVerificationMail', ResendEmail);\r\n }\r\n\r\n ChangePassword(password: ChangePasswordModel) {\r\n return this.http.put(this.apiPath + 'User/ResetPassword', password);\r\n }\r\n SendForgetPasswordEmail(forgetPassword: forgetPassword) {\r\n return this.http.put(this.apiPath + 'User/SendForgetPasswordMail', forgetPassword);\r\n }\r\n getUser(UserId: Number): Observable {\r\n return this.http.get(this.apiPath + 'UserGeneralProfile/GetByUser/' + UserId);\r\n }\r\n\r\n getSubUserByParentId(ParentId: Number) {\r\n return this.http.get(this.apiPath + 'User/GetSubUser/' + ParentId);\r\n }\r\n\r\n deleteSubUserById(Id: number) {\r\n return this.http.patch(this.apiPath + 'User/Delete?Id=' + Id, Id);\r\n }\r\n\r\n DownloadResume(userId: any): Observable {\r\n return this.http.get(this.apiPath + 'UserProfileDetail/DownloadResume?UserMasterId=' + userId, { responseType: 'blob' });\r\n }\r\n deleteResume(userId: any){\r\n return this.http.patch(this.apiPath + 'UserProfileDetail/DeleteResume?UserMasterId=' + userId, userId);\r\n }\r\n updateGeneralProfile(userGeneralProfile: UpdateProfileRequest, ProfileType: string) {\r\n const currentUser = JSON.parse(localStorage.getItem('currentUser') || '{}');\r\n userGeneralProfile.userMasterId = currentUser.id;\r\n userGeneralProfile.profileType = ProfileType;\r\n return this.http.put(this.apiPath + 'UserGeneralProfile/update', userGeneralProfile);\r\n }\r\n\r\n getAllState() {\r\n return this.http.get(this.apiPath + 'State/GetByCountry/USA');\r\n }\r\n async getAllStates() {\r\n return this.http.get(this.apiPath + 'State/GetByCountry/USA').toPromise();\r\n }\r\n\r\n getAllCounty() {\r\n return this.http.get(this.apiPath + 'County');\r\n }\r\n getCountyByStateIds(StateIds: string) {\r\n return this.http.get(this.apiPath + 'County/GetByStateIds/' + StateIds);\r\n }\r\n getAllCountyByState(Id: number) {\r\n return this.http.get(this.apiPath + 'County/GetByState/' + Id);\r\n }\r\n getAllCityByCounty(Id: number) {\r\n return this.http.get(this.apiPath + 'City/GetByCounty/' + Id);\r\n }\r\n UpdateUserAddress(Id: number, userAddressDetail: AddressParams) {\r\n return this.http.put(this.apiPath + 'UserAddressDetail/update/' + Id, userAddressDetail);\r\n }\r\n\r\n AddUserAddress(userAddressDetail: AddressParams) {\r\n return this.http.post(this.apiPath + 'UserAddressDetail/add', userAddressDetail);\r\n }\r\n\r\n GetBarDetaislByUserId(UserId: Number) {\r\n return this.http.get(this.apiPath + 'UserBarDetails/GetByUser/' + UserId);\r\n }\r\n\r\n AddBarDetails(barRequest: UserBars[]): Observable {\r\n return this.http.post(this.apiPath + 'UserBarDetails/add', barRequest);\r\n }\r\n AddPracticeArea(practiceReq: UserPracticeArea[]): Observable {\r\n return this.http.post(this.apiPath + 'UserPracticeArea/add', practiceReq);\r\n }\r\n GetPracticeAreaByUserId(UserId: Number) {\r\n return this.http.get(this.apiPath + 'UserPracticeArea/GetByUser/' + UserId);\r\n }\r\n AddUserProfiledetails(userprofile: UserProfileDetail[]): Observable {\r\n return this.http.post(this.apiPath + 'UserProfileDetail/add', userprofile);\r\n }\r\n UpdateUserProfiledetails(Id: number, userprofile: UserProfileDetail[]): Observable {\r\n return this.http.post(this.apiPath + '/api/UserProfileDetail/update/' + Id, userprofile);\r\n }\r\n AddUserDetails(userDetails: any) {\r\n return this.http.post(this.apiPath + 'UserProfileDetail/add', userDetails);\r\n }\r\n\r\n UpdateUserDetails(userDetails: any, Id: any) {\r\n return this.http.put(this.apiPath + 'UserProfileDetail/update/' + Id, userDetails);\r\n }\r\n\r\n getAllRoles() {\r\n return this.http.get(this.apiPath + 'UserRole/GetRoles');\r\n }\r\n GetIsStripeConnected(isStripeConnectedDTO: IsStripeConnectedDTO): Observable {\r\n return this.http.post(this.apiPath + 'Stripe/IsStripeConnected',isStripeConnectedDTO);\r\n }\r\n ConnectToStripe(stripeConnectDTO: StripeConnectDTO): Observable {\r\n return this.http.post(this.apiPath + 'Stripe/Connect',stripeConnectDTO);\r\n }\r\n\r\n savePaymentDetail(sessionId: any,isGet: any): Observable {\r\n \r\n if(isGet == 1){\r\n const detailDTO: GetPaymentDetailDTO = {\r\n InvoiceId: sessionId \r\n }\r\n return this.http.post(this.apiPath + 'Stripe/GetPaymentDetail',detailDTO);\r\n }\r\n else{\r\n const detailDTO: SavePaymentDetailDTO = {\r\n CheckoutSessionId: sessionId \r\n }\r\n return this.http.post(this.apiPath + 'Stripe/SavePaymentDetail',detailDTO);\r\n }\r\n }\r\n getLastPaymentDetail(invoiceId: any): Observable {\r\n return this.http.get(this.apiPath + 'Nexio/GetLastPaymentDetail/' + invoiceId);\r\n }\r\n getPaymentMethods(){\r\n return this.http.get(this.apiPath + 'Nexio/GetPaymentMethods');\r\n }\r\n GetPasswordUpdatedDate(userMasterId: number | Number) {\r\n return this.http.get(this.apiPath + 'UserSetting/GetPasswordUpdatedDate/' + userMasterId);\r\n }\r\n GetUserSettings(userMasterId: number | Number) {\r\n return this.http.get(this.apiPath + 'UserSetting/GetSettingsForUser/' + userMasterId);\r\n }\r\n SetUserSetting(userSetting: any) {\r\n return this.http.post(this.apiPath + 'UserSetting/add', userSetting);\r\n }\r\n SetTemporaryUnavailable(temporaryUnavailable: any) {\r\n return this.http.post(this.apiPath + 'User/SetTemporaryUnavailable', temporaryUnavailable);\r\n }\r\n GetUserById(UserId: Number) {\r\n return this.http.get(this.apiPath + 'User/' + UserId);\r\n }\r\n GetDashboardDetails(UserMasterId: any, UserRole: any) {\r\n return this.http.get(this.apiPath + 'Dashboard/GetDashboardDetails?UserMasterId=' + UserMasterId + '&ProfileType=' + UserRole);\r\n }\r\n //Following 3 functions added by atul on 25 apr 22 for task 495: Mandatory Stripe registration along with auto-debit feature\r\n FuturePaymentSetup(setupDTO: StripePaymentSetupDTO): Observable {\r\n return this.http.post(this.apiPath + 'Stripe/PaymentSetup', setupDTO);\r\n }\r\n savePaymentSetupResponse(sessionId: any): Observable {\r\n const detailDTO: SavePaymentDetailDTO = {\r\n CheckoutSessionId: sessionId \r\n }\r\n return this.http.post(this.apiPath + 'Stripe/PaymentSetupResponse',detailDTO);\r\n }\r\n GetIsPaymentSetupCompleted(isStripeConnectedDTO: IsStripeConnectedDTO): Observable {\r\n return this.http.post(this.apiPath + 'Nexio/IsPaymentSetupCompleted',isStripeConnectedDTO);\r\n }\r\n GetIsPaymentSetupInProgress(isStripeConnectedDTO: IsStripeConnectedDTO): Observable {\r\n return this.http.post(this.apiPath + 'Stripe/IsPaymentSetupInProgress',isStripeConnectedDTO);\r\n }\r\n RemovePayMethod(userMasterId: any) {\r\n const userIdDTO: UserIdDTO = {\r\n UserMasterId: +userMasterId\r\n }\r\n //Stripe Commented code: Following 1 line commented and changed by atul on 25 dec 22\r\n //return this.http.post(this.apiPath + 'Stripe/RemovePayMethod', userIdDTO);\r\n return this.http.post(this.apiPath + 'Nexio/RemovePayMethod', userIdDTO);\r\n }\r\n GetIsStripeInProgress(isStripeConnectedDTO: IsStripeConnectedDTO): Observable {\r\n return this.http.post(this.apiPath + 'Stripe/IsStripeInProgress',isStripeConnectedDTO);\r\n }\r\n\r\n GetSaveCardToken(saveCardTokenDTO: SaveCardTokenDTO): Observable {\r\n return this.http.post(this.apiPath + 'Nexio/GetSaveCardToken',saveCardTokenDTO);\r\n }\r\n SaveCardTokenRes(dto: UserPaymentSetupDetailDTO): Observable {\r\n return this.http.post(this.apiPath + 'Nexio/SaveCardTokenRes',dto);\r\n }\r\n SaveNexioPaymentRes(dto: NexioPaymentProcessedDTO): Observable {\r\n return this.http.post(this.apiPath + 'Nexio/SaveNexioPaymentRes',dto);\r\n }\r\n NexioPaymentBySavedMethod(dto: NexioPaymentBySavedMethodDTO): Observable {\r\n return this.http.post(this.apiPath + 'Nexio/NexioPaymentBySavedMethod',dto);\r\n }\r\n MakePayout(invoiceId: any){\r\n const invoiceIdDTO: InvoiceIdDTO = {\r\n InvoiceId: +invoiceId\r\n }\r\n\r\n return this.http.post(this.apiPath + 'Nexio/MakePayout', invoiceIdDTO);\r\n }\r\n GetNomadStatus(userMasterId: number | Number) {\r\n return this.http.get(this.apiPath + 'Nexio/GetWalletBalance/' + userMasterId);\r\n }\r\n CreateNomadAccount(userMasterId: number | Number) {\r\n return this.http.get(this.apiPath + 'Nexio/CreateNomadAccount/' + userMasterId);\r\n }\r\n NomadWalletDetails(userMasterId: number | Number) {\r\n return this.http.get(this.apiPath + 'Nexio/NomadWalletDetails/' + userMasterId);\r\n }\r\n //Following 2 functions added by atul on 12 nov 23 because we are moving from Nomad to Ipayout\r\n CreateIPayoutAccount(userMasterId: number | Number) {\r\n return this.http.get(this.apiPath + 'IPayout/CreateIPayoutAccount/' + userMasterId);\r\n }\r\n IPayoutWalletDetails(userMasterId: number | Number) {\r\n return this.http.get(this.apiPath + 'Nexio/IPayoutWalletDetails/' + userMasterId);\r\n }\r\n AutoLoginWalletDetails(userMasterId: number | Number) {\r\n return this.http.get(this.apiPath + 'IPayout/AutoLogin/' + userMasterId);\r\n }\r\n AddActivityLog(activityLog: any): Observable {\r\n console.log(\"activityLog submit\",activityLog);\r\n return this.http.post(this.apiPath + 'ActivityLog/Add',activityLog);\r\n }\r\n}\r\n","import { Component, HostListener, Input, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\n\r\nimport { AfterViewInit, ElementRef} from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { NexioPaymentProcessedDTO, UserPaymentSetupDetailDTO } from 'src/app/models/nexio';\r\nimport { PaymentReceiptComponent } from '../payment-receipt/payment-receipt.component';\r\n\r\n\r\n@Component({\r\n selector: 'app-pay-invoice',\r\n templateUrl: './pay-invoice.component.html',\r\n styleUrls: ['./pay-invoice.component.css']\r\n})\r\nexport class PayInvoiceComponent implements OnInit {\r\n @Input() invoiceId: any;\r\n @Input() token:any;\r\n @Input() totalForPay:any;\r\n \r\n constructor(private modalService: NgbModal,private route: ActivatedRoute, private userService: UserService, private spinner: NgxSpinnerService, public authService: AuthService,public activeModal: NgbActiveModal, private elementRef:ElementRef, private alertify: AlertifyService) { }\r\n private paymentGatewayUrl = environment.paymentGatewayUrl;\r\n\r\n @HostListener('window:message', ['$event'])\r\n onMessage(event: any) {\r\n if (event.origin === this.paymentGatewayUrl) {\r\n const eventData = event.data?.data;\r\n const eventType = event.data?.event;\r\n\r\n if (eventType === 'loaded') {\r\n this.spinner.hide(); \r\n }\r\n if (eventType === 'error') {\r\n this.alertify.error(\"Payment gateway error: \" +event.data.data.message);\r\n }\r\n if (eventType === 'processed') {\r\n var userMasterId: Number = this.authService.currentUserValue.id || 0;\r\n const dto: NexioPaymentProcessedDTO = {\r\n UserMasterId: userMasterId,\r\n InvoiceId:this.invoiceId,\r\n ResponseJson:JSON.stringify(eventData),\r\n Status:'processed',\r\n PaymentMode: 'card'\r\n }\r\n \r\n this.userService.SaveNexioPaymentRes(dto).subscribe(result => {\r\n this.spinner.hide(); \r\n if (result.model != null) {\r\n this.activeModal.dismiss('Cross click');\r\n const modalRef = this.modalService.open(PaymentReceiptComponent, { size: 'lg', backdrop: 'static' }); \r\n //modalRef.componentInstance.src = invoice;\r\n modalRef.componentInstance.invoiceId = this.invoiceId;\r\n }\r\n else {\r\n this.alertify.error(\"An unexpected error occurred. Please try again.\");\r\n }\r\n //this.spinner.hide();\r\n });\r\n // var userMasterId: Number = this.authService.currentUserValue.id || 0;\r\n // const dto: NexioPaymentProcessedDTO = {\r\n // UserMasterId: userMasterId,\r\n // InvoiceId:this.invoiceId,\r\n // ResponseJson:eventData,\r\n // Status:eventType\r\n // }\r\n \r\n // this.userService.SaveNexioPaymentRes(dto).subscribe(result => {\r\n // if (result.model != null) {\r\n // const modalRef = this.modalService.open(PaymentReceiptComponent, { size: 'lg', backdrop: 'static' }); \r\n // //modalRef.componentInstance.src = invoice;\r\n // modalRef.componentInstance.invoiceId = this.invoiceId;\r\n // }\r\n // else {\r\n // this.alertify.error(\"Something went wrong.\");\r\n // }\r\n // //this.spinner.hide();\r\n // });\r\n }\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n var iframeBaseUrl =this.paymentGatewayUrl + \"/pay/v3\"; \r\n var oneTimeUseToken = \"?token=\" + this.token;\r\n var returnHtml = \"&shouldReturnHtml=true\";\r\n var fullurl = iframeBaseUrl + oneTimeUseToken + returnHtml;\r\n \r\n this.elementRef.nativeElement.querySelector('#myIframe').src = fullurl;\r\n this.elementRef.nativeElement.querySelector('#myForm').addEventListener('submit', (event:any) => {\r\n event.preventDefault();\r\n this.elementRef.nativeElement.querySelector('#myIframe').contentWindow.postMessage('posted', this.paymentGatewayUrl);\r\n this.spinner.show();\r\n return false; \r\n });\t\r\n }\r\n \r\n onClick(event: any) {\r\n console.log(event);\r\n }\r\n \r\n ngOnInit() {\r\n this.spinner.show();\r\n // this.profileType = this.authService.currentUserValue.profileType || \"\";\r\n\r\n // this.route.queryParams.subscribe(params => {\r\n // console.log(this.invoiceId);\r\n // }); \r\n }\r\n \r\n}\r\n","
\r\n
\r\n

Make Payment

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

Loading...

\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\n\r\n@Component({\r\n selector: 'app-payment-receipt',\r\n templateUrl: './payment-receipt.component.html',\r\n styleUrls: ['./payment-receipt.component.css']\r\n})\r\nexport class PaymentReceiptComponent implements OnInit {\r\n @Input() invoiceId: any;\r\n \r\n constructor(private route: ActivatedRoute, private userService: UserService, private spinner: NgxSpinnerService, public authService: AuthService,public activeModal: NgbActiveModal ) { }\r\n public paymentStatusMessage: string =\"Loading...\";\r\n public isPaymentSuccess: boolean = false;\r\n public isError: boolean = false;\r\n public ReferenceNo: string =\"\";\r\n public TransactionAmount: string =\"\";\r\n public TransactionAmountForAtt: any =\"\";\r\n public PaymentStatus: string =\"\";\r\n public ReceiptNo: string =\"\";\r\n public ReceiptDate: Date ;\r\n public InvoiceNumber: string =\"\";\r\n public profileType:string;\r\n public LateCharges:number ;\r\n public VidtureCharges:number ;\r\n\r\n ngOnInit() {\r\n this.profileType = this.authService.currentUserValue.profileType || \"\";\r\n\r\n this.route.queryParams.subscribe(params => {\r\n console.log(this.invoiceId);\r\n \r\n if(this.invoiceId != null)\r\n {\r\n this.getLastPaymentDetail(this.invoiceId);\r\n }\r\n\r\n }); \r\n }\r\n DoPayout(){\r\n this.userService.MakePayout(this.invoiceId).subscribe(result => {\r\n console.log(result);\r\n if(result.isSuccess==true)\r\n {\r\n console.log(result);\r\n if(result.model.paymentStatus == 'processed')\r\n {\r\n this.isPaymentSuccess = true;\r\n this.paymentStatusMessage = \"Payment successful. \"; \r\n }\r\n else if(result.model.paymentStatus == 'failed' || result.model.paymentStatus == 'canceled' || result.model.paymentStatus == 'incomplete' || result.model.paymentStatus == 'requires_payment_method')\r\n {\r\n if(this.profileType == \"A\")\r\n this.paymentStatusMessage = \"Payment failed. \";\r\n else \r\n this.paymentStatusMessage = \"Payment failed. Please try again. \";\r\n\r\n }\r\n else{\r\n if(result.model.invoiceStatus =='IC' || result.model.invoiceStatus =='IR')\r\n {\r\n this.paymentStatusMessage = \"Last Payment failed. \";\r\n }\r\n else\r\n this.paymentStatusMessage = \"Payment is 'In progress'. Please wait for sometime. \";\r\n \r\n }\r\n \r\n this.ReferenceNo = result.model.referenceNo;\r\n this.TransactionAmount = result.model.transactionAmount;\r\n this.TransactionAmountForAtt = result.model.transactionAmount -result.model.vidtureCharges;\r\n this.PaymentStatus = result.model.paymentStatus;\r\n this.ReceiptNo = result.model.receiptNo;\r\n this.ReceiptDate = result.model.receiptDate;\r\n this.InvoiceNumber = result.model.invoiceNumber; \r\n this.LateCharges = result.model.lateCharges; \r\n this.VidtureCharges = result.model.vidtureCharges; \r\n \r\n }\r\n else \r\n {\r\n this.paymentStatusMessage = \"No details found.\";\r\n this.isError =true;\r\n }\r\n this.spinner.hide();\r\n });\r\n }\r\n closeButtonClick(){\r\n this.activeModal.dismiss('Cross click');\r\n setTimeout(() => {\r\n window.location.reload();\r\n }, 1);\r\n }\r\n getLastPaymentDetail(invoiceId:any) {\r\n this.spinner.show();\r\n this.userService.getLastPaymentDetail(invoiceId).subscribe(result => {\r\n console.log(result);\r\n if(result.isSuccess==true)\r\n {\r\n console.log(result);\r\n if(result.model.paymentStatus == 'processed')\r\n {\r\n this.isPaymentSuccess = true;\r\n this.paymentStatusMessage = \"Payment successful. \"; \r\n }\r\n else if(result.model.paymentStatus == 'failed' || result.model.paymentStatus == 'canceled' || result.model.paymentStatus == 'incomplete' || result.model.paymentStatus == 'requires_payment_method')\r\n {\r\n if(this.profileType == \"A\")\r\n this.paymentStatusMessage = \"Payment failed. \";\r\n else \r\n this.paymentStatusMessage = \"Payment failed. Please try again. \";\r\n\r\n }\r\n else{\r\n if(result.model.invoiceStatus =='IC' || result.model.invoiceStatus =='IR')\r\n {\r\n this.paymentStatusMessage = \"Last Payment failed. \";\r\n }\r\n else\r\n this.paymentStatusMessage = \"Payment is 'In progress'. Please wait for sometime. \";\r\n \r\n }\r\n \r\n this.ReferenceNo = result.model.referenceNo;\r\n this.TransactionAmount = result.model.transactionAmount;\r\n this.TransactionAmountForAtt = result.model.transactionAmount -result.model.vidtureCharges;\r\n this.PaymentStatus = result.model.paymentStatus;\r\n this.ReceiptNo = result.model.receiptNo;\r\n this.ReceiptDate = result.model.receiptDate;\r\n this.InvoiceNumber = result.model.invoiceNumber; \r\n this.LateCharges = result.model.lateCharges; \r\n this.VidtureCharges = result.model.vidtureCharges; \r\n \r\n }\r\n else \r\n {\r\n this.paymentStatusMessage = \"No details found.\";\r\n this.isError =true;\r\n }\r\n this.spinner.hide();\r\n });\r\n }\r\n \r\n}\r\n","\r\n
\r\n
\r\n

Transaction details \r\n

\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{paymentStatusMessage}}
Below are the details of your last transaction: \r\n
\r\n
\r\n
\r\n \r\n \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.0\" >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Loading...

\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { UserService } from 'src/app/services/user.service';\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\r\n constructor(private route: ActivatedRoute, private userService: UserService, private spinner: NgxSpinnerService, public authService: AuthService ) { }\r\n public paymentStatusMessage: string =\"Loading...\";\r\n public isPaymentSuccess: boolean = false;\r\n public isError: boolean = false;\r\n public ReferenceNo: string =\"\";\r\n public TransactionAmount: string =\"\";\r\n public PaymentStatus: string =\"\";\r\n public ReceiptNo: string =\"\";\r\n public ReceiptDate: Date ;\r\n public InvoiceNumber: string =\"\";\r\n public profileType:string;\r\n public LateCharges:number ;\r\n public VidtureCharges:number ;\r\n\r\n ngOnInit(): void {\r\n this.profileType = this.authService.currentUserValue.profileType || \"\";\r\n\r\n this.route.queryParams.subscribe(params => {\r\n console.log(params['session_id']);\r\n //this.param2 = params['param2'];\r\n if(params['get_payment_details'] != null)\r\n {\r\n this.savePaymentDetails(params['get_payment_details'], 1);\r\n }\r\n else{ \r\n if(params['session_id'] == null)\r\n {\r\n this.paymentStatusMessage = \"Something went wrong. Please try again after sometime.\";\r\n this.isError =true;\r\n }\r\n else{\r\n this.savePaymentDetails(params['session_id'], 0);\r\n }\r\n }\r\n });\r\n this.route.params.subscribe(rtparams => \r\n {\r\n console.log(rtparams.session_id);\r\n \r\n }\r\n ); \r\n }\r\n\r\n savePaymentDetails(session_id:any, isGet:any) {\r\n this.spinner.show();\r\n this.userService.savePaymentDetail(session_id, isGet).subscribe(result => {\r\n if(result.isSuccess==true)\r\n {\r\n if(result.model.paymentStatus == 'succeeded')//(result.model.paymentStatus == 'unpaid' || result.model.paymentStatus == 'processing' || result.model.paymentStatus == 'pending')\r\n {\r\n this.isPaymentSuccess = true;\r\n this.paymentStatusMessage = \"Payment successful. \"; \r\n }\r\n else if(result.model.paymentStatus == 'failed' || result.model.paymentStatus == 'canceled' || result.model.paymentStatus == 'incomplete' || result.model.paymentStatus == 'requires_payment_method')\r\n {\r\n if(this.profileType == \"A\")\r\n this.paymentStatusMessage = \"Payment failed. \";\r\n else \r\n this.paymentStatusMessage = \"Payment failed. Please try again. \";\r\n\r\n }\r\n else{\r\n this.paymentStatusMessage = \"Payment is 'In progress'. Please wait for sometime. \";\r\n \r\n }\r\n \r\n this.ReferenceNo = result.model.referenceNo;\r\n this.TransactionAmount = result.model.transactionAmount;\r\n this.PaymentStatus = result.model.paymentStatus;\r\n this.ReceiptNo = result.model.receiptNo;\r\n this.ReceiptDate = result.model.receiptDate;\r\n this.InvoiceNumber = result.model.invoiceNumber; \r\n this.LateCharges = result.model.lateCharges; \r\n this.VidtureCharges = result.model.vidtureCharges; \r\n \r\n }\r\n else \r\n {\r\n this.paymentStatusMessage = \"No details found.\";\r\n this.isError =true;\r\n }\r\n this.spinner.hide();\r\n });\r\n }\r\n \r\n}\r\n","\r\n
\r\n
\r\n
\r\n

Payment Status

\r\n
    \r\n
  1. Home
  2. \r\n
  3. Payment Status
  4. \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{paymentStatusMessage}}
Last transaction details are given below: \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n Click here to go to Paid Invoices.\r\n
\r\n
\r\n Click here to go to Due Invoices.\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n

Loading...

\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { NexioPaymentBySavedMethodDTO, NexioPaymentProcessedDTO } from 'src/app/models/nexio';\r\nimport { IsStripeConnectedDTO } from 'src/app/models/stripe';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { InvoiceService } from 'src/app/services/invoice.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { PayInvoiceComponent } from '../pay-invoice/pay-invoice.component';\r\nimport { PaymentReceiptComponent } from '../payment-receipt/payment-receipt.component';\r\n\r\n@Component({\r\n selector: 'app-select-payment-method',\r\n templateUrl: './select-payment-method.component.html',\r\n styleUrls: ['./select-payment-method.component.css']\r\n})\r\nexport class SelectPaymentMethodComponent implements OnInit {\r\n\r\n @Input() src: any;\r\n\r\n public selectedValue: number;\r\n public paymentMethods: any;\r\n public CurrentPayBrand:string;\r\n public CurrentPayLastDigits:string;\r\n\r\n constructor(public activeModal: NgbActiveModal,\r\n public invoiceService: InvoiceService,\r\n private userService: UserService,\r\n private alertify: AlertifyService, private modalService: NgbModal, private authService: AuthService, private spinner: NgxSpinnerService) { }\r\n\r\n\r\n ngOnInit(): void {\r\n this.spinner.show();\r\n this.selectedValue = 0;\r\n this.src.latePaymentPct = this.src.latePayment * 100 / this.src.totalAmount; \r\n this.src.totalForPay = Math.round((this.src.totalAmount +this.src.latePayment+this.src.videturCommAmount)* 100 ) / 100; \r\n this.getPaymentMethods();\r\n this.getSavedPaymentMethods();\r\n //this.handleChangeMethod(0,0);\r\n\r\n }\r\n getPaymentMethods() {\r\n this.userService.getPaymentMethods().subscribe(result => {\r\n this.paymentMethods = result.list;\r\n });\r\n }\r\n \r\n getSavedPaymentMethods() {\r\n var userMasterId: Number = this.authService.currentUserValue.id || 0;\r\n var profileType = this.authService.currentUserValue.profileType || \"\";\r\n const isStripeConnectedDTO: IsStripeConnectedDTO = {\r\n UserMasterId: userMasterId,\r\n ProfileType: profileType\r\n }\r\n this.userService.GetIsPaymentSetupCompleted(isStripeConnectedDTO).subscribe(result => {\r\n this.spinner.hide();\r\n if (result.model != null) {\r\n // this.IsPaymentSetupCompleted = true;\r\n // this.stripeForm.patchValue({\r\n // hidIsPaymentSetupCompleted: true\r\n // });\r\n //this.CurrentPayMethod = result.model.methodType;\r\n this.CurrentPayBrand = result.model.cardType;\r\n this.CurrentPayLastDigits = result.model.cardLastDigits;\r\n \r\n // this.CurrentPayAcType = result.model.acType;\r\n // this.CurrentPayBank = result.model.bankName;\r\n }\r\n // else {\r\n // this.IsPaymentSetupCompleted = false;\r\n // this.stripeForm.patchValue({\r\n // hidIsPaymentSetupCompleted: false\r\n // });\r\n // }\r\n });\r\n }\r\n payInvoice(invoice: any){\r\n if(this.selectedValue == 0)\r\n {\r\n this.alertify.error(\"Please select a payment method.\");\r\n return;\r\n }\r\n else if(this.selectedValue == 99){\r\n this.spinner.show(); \r\n var userMasterId: Number = this.authService.currentUserValue.id || 0;\r\n const dto: NexioPaymentBySavedMethodDTO = {\r\n UserMasterId: userMasterId,\r\n InvoiceId:invoice.autoId,\r\n SavedMethodId:this.selectedValue\r\n }\r\n \r\n this.userService.NexioPaymentBySavedMethod(dto).subscribe(result => {\r\n this.spinner.hide(); \r\n if (result.model != null) {\r\n this.activeModal.dismiss('Cross click');\r\n const modalRef = this.modalService.open(PaymentReceiptComponent, { size: 'lg', backdrop: 'static' }); \r\n modalRef.componentInstance.invoiceId = invoice.autoId;\r\n }\r\n else {\r\n this.alertify.error(\"An unexpected error occurred. Please try again.\");\r\n }\r\n });\r\n return;\r\n \r\n }\r\n else{\r\n this.invoiceService.GetPaymentToken(invoice.autoId).subscribe(result => {\r\n if(result.model && result.model != '') \r\n {\r\n invoice.PaymentMethodId = this.selectedValue;\r\n this.activeModal.dismiss('Cross click');\r\n const modalRef = this.modalService.open(PayInvoiceComponent, { size: 'md', backdrop: 'static' }); \r\n modalRef.componentInstance.invoiceId = invoice.autoId;\r\n modalRef.componentInstance.token = result.model;\r\n modalRef.componentInstance.totalForPay = invoice.totalForPay;\r\n }\r\n });\r\n }\r\n return;\r\n this.invoiceService.PayInvoice(invoice).subscribe(result => {\r\n if(result.isSuccess)\r\n {\r\n window.location.href = result.model.accountLinkUrl; \r\n }\r\n else \r\n {\r\n this.alertify.error(result.message);\r\n }\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
Select Payment Method
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\"icon\"
\r\n
\r\n \r\n
\r\n
\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\"
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Invoice Amount :
Late Charges ({{src.latePaymentPct | number : '1.0-2'}}%):
Videtur Charges ({{src.videturCommPer | number : '1.0-2'}}%):
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

Loading...

","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ChangePasswordModel } from 'src/app/models/user';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\n\r\n@Component({\r\n selector: 'app-change-password',\r\n templateUrl: './change-password.component.html',\r\n styleUrls: ['./change-password.component.css']\r\n})\r\nexport class ChangePasswordComponent implements OnInit {\r\n\r\n changePasswordForm: FormGroup;\r\n userSubmitted: boolean;\r\n public reset: any;\r\n public Id: any;\r\n public email: any;\r\n public tempPassword: string;\r\n public parameters: any;\r\n public isforgetPassword: boolean = false;\r\n constructor(private userService: UserService,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private authService: AuthService,\r\n private alertify: AlertifyService) { }\r\n\r\n ngOnInit() {\r\n this.reset = this.route.snapshot.params.emailtoken;\r\n if (this.reset != undefined && this.reset != null) {\r\n this.parameters = atob(this.reset).split('***');\r\n this.email = this.parameters[0];\r\n this.Id = this.parameters[1];\r\n this.tempPassword = this.parameters[2];\r\n this.isforgetPassword = true;\r\n }\r\n\r\n this.changePasswordForm = new FormGroup({\r\n currentPassword: new FormControl(null, [Validators.required]),\r\n newPassword: new FormControl(null, [Validators.required]),\r\n newConfirmPassword: new FormControl(null, [Validators.required, Validators.minLength(8)])\r\n }, this.passwordMatchingValidatior('newPassword', 'newConfirmPassword'));\r\n\r\n if (this.isforgetPassword) {\r\n this.onRemoveValidationClick();\r\n }\r\n }\r\n onRemoveValidationClick() {\r\n this.changePasswordForm.controls[\"currentPassword\"].clearValidators();\r\n this.changePasswordForm.controls[\"currentPassword\"].updateValueAndValidity();\r\n }\r\n\r\n passwordMatchingValidatior(password: string, confirmPassword: string): Validators {\r\n return (formGroup: FormGroup) => {\r\n const passwordControl = formGroup.controls[password];\r\n const confirmPasswordControl = formGroup.controls[confirmPassword];\r\n\r\n if (passwordControl.value === confirmPasswordControl.value)\r\n confirmPasswordControl.setErrors(null);\r\n else\r\n confirmPasswordControl.setErrors({ passwordMismatch: true });\r\n }\r\n }\r\n // convenience getter for easy access to form fields\r\n get currentPassword() {\r\n return this.changePasswordForm.get('currentPassword') as FormControl;\r\n }\r\n get newPassword() {\r\n return this.changePasswordForm.get('newPassword') as FormControl;\r\n }\r\n get newConfirmPassword() {\r\n return this.changePasswordForm.get('newConfirmPassword') as FormControl;\r\n }\r\n\r\n userData(): ChangePasswordModel {\r\n return {\r\n userEmailId: this.authService.currentUserValue.username || '',\r\n currentPassword: this.currentPassword.value,\r\n newPassword: this.newPassword.value,\r\n isTempPassword: false\r\n }\r\n }\r\n userDataforForgetPassword(): ChangePasswordModel {\r\n return {\r\n userEmailId: this.email,\r\n currentPassword: this.tempPassword,\r\n newPassword: this.newPassword.value,\r\n isTempPassword: true\r\n }\r\n }\r\n onSubmit() {\r\n this.userSubmitted = true;\r\n if (this.changePasswordForm.valid) {\r\n if (!this.isforgetPassword) {\r\n this.userService.ChangePassword(this.userData()).subscribe(result => {\r\n if (result.isSuccess) {\r\n this.alertify.success(result.message);\r\n this.router.navigate(['/dashboard']);\r\n } else {\r\n this.alertify.error(result.message);\r\n }\r\n });\r\n this.userSubmitted = false;\r\n }else {\r\n this.userService.ChangePassword(this.userDataforForgetPassword()).subscribe(result => {\r\n if (result.isSuccess) {\r\n this.alertify.success(result.message);\r\n this.router.navigate(['/dashboard']);\r\n } else {\r\n this.alertify.error(result.message);\r\n }\r\n });\r\n this.userSubmitted = false;\r\n }\r\n }\r\n else {\r\n this.alertify.error('Please check all required fields.');\r\n }\r\n }\r\n}\r\n"," \r\n
\r\n
\r\n
\r\n

Change Password

\r\n
    \r\n
  1. Home
  2. \r\n
  3. Settings
  4. \r\n
  5. Change password
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Change Password

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n Please provide password.\r\n \r\n \r\n Password should not be lesser than 8 character.\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n Please provide password.\r\n \r\n \r\n Password should not be lesser than 8 character.\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n Please provide password.\r\n \r\n \r\n Password should not be lesser than 8 character.\r\n \r\n \r\n Password not matched.\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,Input } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { NgbModal, NgbActiveModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { forgetPassword } from 'src/app/models/user';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { UserLoginComponent } from '../user-login/user-login.component';\r\n\r\n@Component({\r\n selector: 'app-forgot-password',\r\n templateUrl: './forgot-password.component.html',\r\n styleUrls: ['./forgot-password.component.css',\r\n '../../../assets/css/login_modal.css']\r\n})\r\nexport class ForgotPasswordComponent implements OnInit {\r\n\r\n @Input() src:any;\r\n constructor(public activeModal: NgbActiveModal,public modalService: NgbModal,public userService: UserService, public alertify: AlertifyService) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n openLoginPopup(link:any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(UserLoginComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n onSubmit(ForgotPassword:NgForm){\r\n if(ForgotPassword.value.LoginId != '' && ForgotPassword.value.LoginId != undefined){\r\n let forgetPasswordModel = new forgetPassword();\r\n forgetPasswordModel.userEmailId = ForgotPassword.value.LoginId;\r\n this.userService.SendForgetPasswordEmail(forgetPasswordModel).subscribe(result => {\r\n if (result.isSuccess) {\r\n this.alertify.success(result.message);\r\n this.activeModal.dismiss('Cross click')\r\n } else {\r\n this.alertify.error(result.message);\r\n }\r\n });\r\n }else {\r\n\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n Please provide login ID.\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, FormGroup, Validators } from '@angular/forms';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { IsStripeConnectedDTO, StripePaymentSetupDTO } from 'src/app/models/stripe';\r\nimport { TemporaryUnavailable, UserSettingDTO } from 'src/app/models/user';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\n\r\n@Component({\r\n selector: 'app-settings',\r\n templateUrl: './settings.component.html',\r\n styleUrls: ['./settings.component.css']\r\n})\r\nexport class SettingsComponent implements OnInit {\r\n public profileType: string = \"\";\r\n public firstName: string;\r\n public lastName: string;\r\n public PasswordUpdatedDate: any = null;\r\n //public IsPasswordUpdatedDate:boolean = false;\r\n userProfileForm: FormGroup;\r\n public isTwoFAEnabled: boolean = false;\r\n \r\n constructor(private authService: AuthService,private userService: UserService, private spinner: NgxSpinnerService, private formBuilder: FormBuilder,private route: ActivatedRoute, private alertify: AlertifyService) { }\r\n\r\n ngOnInit() {\r\n this.profileType = this.authService.currentUserValue.profileType || \"\";\r\n this.firstName = this.authService.currentUserValue.firstName || '';\r\n this.lastName = this.authService.currentUserValue.lastName || '';\r\n this.spinner.show();\r\n\r\n this.GetPasswordUpdatedDate();\r\n this.userProfileForm = this.formBuilder.group({\r\n TwoFA: [false],\r\n OAE: [true],\r\n AAE: [true],\r\n FAE: [true],\r\n INVE: [true],\r\n CAE: [true],\r\n RATE: [true],\r\n SAE: [true],\r\n SINVE: [true],\r\n MSGE: [true],\r\n NAA: [true],\r\n AAA: [true],\r\n INVA: [true],\r\n CAA: [true],\r\n MSGA: [true],\r\n paymentMethod: [''],\r\n TemporaryUnavailable:[false],\r\n TemporaryUnavailableTill:[]\r\n });\r\n this.getAllSettings();\r\n this.GetTemporaryUnavailable();\r\n }\r\n //convenience getter for easy access to form fields\r\n get f() { return this.userProfileForm.controls; }\r\n\r\n GetPasswordUpdatedDate() {\r\n var userMasterId = this.authService.currentUserValue.id || 0;\r\n this.userService.GetPasswordUpdatedDate(userMasterId).subscribe(result => {\r\n if(result.isSuccess)\r\n {\r\n this.PasswordUpdatedDate =result.model;\r\n //if(result.model != null) \r\n //this.IsPasswordUpdatedDate =true; \r\n // this.userProfileForm.patchValue({\r\n // IndividualCheckChecked: this.userProfileForm.value['IndividualCheckChecked']\r\n // }) \r\n }\r\n });\r\n }\r\n getAllSettings() {\r\n var userMasterId = this.authService.currentUserValue.id || 0;\r\n this.userService.GetUserSettings(userMasterId).subscribe(result => {\r\n this.spinner.hide();\r\n if(result.isSuccess && result.model != null)\r\n {\r\n result.model.forEach((element: any) => {\r\n this.userProfileForm.patchValue({\r\n [element.settingCode]:element.isEnabled\r\n });\r\n }); \r\n }\r\n });\r\n }\r\n ChangeSetting(code: any) {\r\n var userId = this.authService.currentUserValue.id || 0;\r\n var isEnabled = this.userProfileForm.value[code];\r\n if(code ==\"TwoFA\"){\r\n isEnabled = !isEnabled;\r\n }\r\n var userSetting: UserSettingDTO = {\r\n UserMasterId: userId,\r\n SettingCode: code,\r\n IsEnabled: isEnabled \r\n }\r\n this.userService.SetUserSetting(userSetting).subscribe(result => {\r\n if(result.isSuccess && result.model != null)\r\n {\r\n this.userProfileForm.patchValue({\r\n [result.model.settingCode]:result.model.isEnabled\r\n });\r\n }\r\n });\r\n }\r\n GetTemporaryUnavailable(){\r\n var userId = this.authService.currentUserValue.id || 0;\r\n this.userService.GetUserById(userId).subscribe(result => {\r\n if(result.temporaryUnavailableTill != null)\r\n {\r\n this.userProfileForm.patchValue({\r\n TemporaryUnavailableTill:result.temporaryUnavailableTill.slice(0, result.temporaryUnavailableTill.indexOf('T')),\r\n TemporaryUnavailable:true\r\n });\r\n }\r\n \r\n });\r\n }\r\n ChangeTemporaryUnavailable(){\r\n // this.userProfileForm.patchValue({\r\n // TemporaryUnavailable:true\r\n // });\r\n var userId = this.authService.currentUserValue.id || 0;\r\n console.log(this.userProfileForm.get('TemporaryUnavailableTill')?.value);\r\n if(!this.userProfileForm.get('TemporaryUnavailable')?.value){\r\n this.userProfileForm.patchValue({\r\n TemporaryUnavailableTill:null\r\n });\r\n var temporaryUnavailable: TemporaryUnavailable = {\r\n UserMasterId: userId,\r\n TemporaryUnavailableTill: null\r\n }\r\n this.userService.SetTemporaryUnavailable(temporaryUnavailable).subscribe(result => {\r\n if(result.isSuccess && result.model != null)\r\n {\r\n //this.alertify.success(\"Temporary Unavailable set seccessfully.\"); \r\n }\r\n });\r\n }\r\n else{\r\n if(this.userProfileForm.get('TemporaryUnavailableTill')?.value !=null)\r\n {\r\n var temporaryUnavailable: TemporaryUnavailable = {\r\n UserMasterId: userId,\r\n TemporaryUnavailableTill: this.userProfileForm.get('TemporaryUnavailableTill')?.value\r\n }\r\n this.userService.SetTemporaryUnavailable(temporaryUnavailable).subscribe(result => {\r\n if(result.isSuccess && result.model != null)\r\n {\r\n //this.alertify.success(\"Temporary Unavailable set seccessfully.\"); \r\n }\r\n });\r\n }\r\n } \r\n }\r\n\r\n getInitials(firstName:string, lastName:string) {\r\n return firstName[0].toUpperCase() + lastName[0].toUpperCase();\r\n }\r\n}\r\n","
\r\n
\r\n \r\n

{{getInitials(firstName,lastName)}}

\r\n

Welcome {{firstName}} {{lastName}}

\r\n
Manage your info, privacy, and security to make Videtur work better for you.
\r\n
\r\n
 
\r\n
\r\n
\r\n

Security Settings

\r\n

These settings are helps you keep your account secure.

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

\r\n 2FA Authentication \r\n Enabled\r\n Disabled\r\n

Your account will be more secure with 2 factor authentication.

\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Change password\r\n
\r\n
\r\n

Last updated on {{PasswordUpdatedDate | date:'mediumDate'}}

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

General settings

(Attorney)
\r\n
\r\n
\r\n
\r\n
\r\n     \r\n \r\n \r\n   \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

Notification settings

(Employer)
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
Open Appearance Related.
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
Attorney Application Related.
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
Filled Appearance Related.
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
Invoice Related.
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
Closed Appearance Related.
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
Ratings related.
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
Subusers' Appearances related.
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
Subusers' Invoices related.
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
Attorney Communication Related.
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

Notification settings

(Attorney)
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
New Appearances related
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
Applied Appearances related.
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
Invoices Related.
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
Ratings related.
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
Hiring Attorney Communication related.
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

Loading...

\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Resendverification, User } from 'src/app/models/user';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\n\r\n@Component({\r\n selector: 'app-sub-users',\r\n templateUrl: './sub-users.component.html',\r\n styleUrls: ['./sub-users.component.css']\r\n})\r\nexport class SubUsersComponent implements OnInit {\r\n\r\n firstName: string;\r\n lastName: string;\r\n email: string;\r\n user: User;\r\n roleName: string;\r\n public Roles: any;\r\n public subUserList: any = [];\r\n constructor(private userService: UserService, private alertify: AlertifyService, private authService: AuthService) { }\r\n\r\n ngOnInit() {\r\n this.GetSubUserList();\r\n this.GetAllRoles();\r\n }\r\n\r\n userData(): User {\r\n return this.user = {\r\n FirstName: this.firstName,\r\n LastName: this.lastName,\r\n LoginId: this.email,\r\n Password: this.firstName + this.lastName + '@123',\r\n ParentUserId: this.authService.currentUserValue.parentUserId == null ? this.authService.currentUserValue.id : this.authService.currentUserValue.parentUserId,\r\n RoleName: this.roleName,\r\n ProfileType: this.authService.currentUserValue.profileType || '',\r\n IdentityProviderCode :''\r\n }\r\n }\r\n AddSubUser() {\r\n this.userService.addUser(this.userData()).subscribe(result => {\r\n //this.onReset();\r\n if (result.isSuccess) {\r\n this.GetSubUserList();\r\n this.alertify.success(result.message);\r\n this.ClearField();\r\n } else {\r\n this.alertify.error(result.message);\r\n }\r\n\r\n });\r\n }\r\n ResendVerificationEmail(subUserEmail: string) {\r\n let resendEmail = new Resendverification();\r\n resendEmail.userEmailId = subUserEmail;\r\n this.userService.ResendEmailVerification(resendEmail).subscribe(result => {\r\n if (result) {\r\n this.alertify.success('An email has been sent successfully.');\r\n }\r\n });\r\n }\r\n\r\n ClearField() {\r\n this.firstName = '';\r\n this.lastName = '';\r\n this.roleName = '';\r\n this.email = ''\r\n }\r\n\r\n GetSubUserList() {\r\n const UserId = this.authService.currentUserValue.id || 0;\r\n this.userService.getSubUserByParentId(UserId).subscribe(result => {\r\n this.subUserList = result.list;\r\n });\r\n }\r\n\r\n GetAllRoles() {\r\n this.userService.getAllRoles().subscribe(result => {\r\n if (this.authService.currentUserValue.parentUserId != null) {\r\n this.Roles = result.list.filter((x: { userRoleName: string; }) => x.userRoleName != 'Administrator');\r\n } else {\r\n this.Roles = result.list;\r\n }\r\n });\r\n }\r\n DeleteSubUser(user: any) {\r\n this.userService.deleteSubUserById(user.subUserId).subscribe(result => {\r\n this.GetSubUserList();\r\n this.alertify.success(result.message);\r\n });\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n

Sub-Users

\r\n
    \r\n
  1. Home
  2. \r\n
  3. Sub-Users
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \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 NameLast NameSub-User EmailRole NameStatus\r\n   \r\n
\r\n \r\n \r\n \r\n \r\n
{{subuser.firstName}}{{subuser.lastName}}{{subuser.loginId}}{{subuser.roleName}}{{subuser.recordStatus}}\r\n  \r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit, Input, ElementRef, ViewChild } from '@angular/core';\r\nimport { FormControl, FormGroup, NgForm, Validators } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { NgbModal, NgbActiveModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { FacebookLoginProvider, GoogleLoginProvider, SocialAuthService, SocialUser } from 'angularx-social-login';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { FBLogin, Login, User } from 'src/app/models/user';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { ForgotPasswordComponent } from '../forgot-password/forgot-password.component';\r\nimport { UserRegistrationComponent } from '../user-registration/user-registration.component';\r\nimport { CredentialResponse , PromptMomentNotification} from 'google-one-tap'; //\r\n\r\n@Component({\r\n selector: 'app-user-login',\r\n templateUrl: './user-login.component.html',\r\n styleUrls: ['./user-login.component.css',\r\n '../../../assets/css/login_modal.css']\r\n})\r\nexport class UserLoginComponent implements OnInit {\r\n loginForm: FormGroup;\r\n otpForm: FormGroup;\r\n showOtpForm: boolean;\r\n userSubmitted: boolean;\r\n @Input() src: any;\r\n returnUrl: any;\r\n auth2: any;\r\n socialUser!: SocialUser;\r\n private clientId = environment.clientId;\r\n\r\n constructor(public activeModal: NgbActiveModal,\r\n public modalService: NgbModal,\r\n private route: ActivatedRoute,\r\n private spinner: NgxSpinnerService,\r\n private authService: AuthService,\r\n private alertify: AlertifyService,\r\n private userService: UserService,\r\n private socialAuthService: SocialAuthService,\r\n private router: Router) { }\r\n\r\n ngOnInit() {\r\n // get return url from route parameters or default to '/'\r\n this.returnUrl = this.route.snapshot.queryParams['returnUrl'] || '/';\r\n this.loginForm = new FormGroup({\r\n loginId: new FormControl(null, [Validators.required, Validators.email]),\r\n password: new FormControl(null, [Validators.required, Validators.minLength(8)]),\r\n otp: new FormControl(null)\r\n });\r\n this.otpForm = new FormGroup({\r\n otp: new FormControl(null, [Validators.required, Validators.minLength(6)])\r\n });\r\n\r\n this.socialAuthService.authState.subscribe((user) => {\r\n this.socialUser = user;\r\n console.log(this.socialUser);\r\n });\r\n\r\n // @ts-ignore\r\n //window.onGoogleLibraryLoad = () => {\r\n // @ts-ignore\r\n google.accounts.id.initialize({\r\n client_id: this.clientId,\r\n callback: this.handleCredentialResponse.bind(this),\r\n auto_select: false,\r\n cancel_on_tap_outside: true\r\n });\r\n // @ts-ignore\r\n google.accounts.id.renderButton(\r\n // @ts-ignore\r\n document.getElementById(\"buttonDiv\"),\r\n { theme: \"outline\", size: \"large\", width: \"100%\" } \r\n );\r\n // @ts-ignore\r\n //google.accounts.id.prompt((notification: PromptMomentNotification) => {}); //\r\n //};\r\n }\r\n \r\n async handleCredentialResponse(response: CredentialResponse) {\r\n // debugger;\r\n // this.alertify.success(\"done\");\r\n console.log(response);\r\n var user: Login = {\r\n LoginId:\"\",\r\n Password:response.credential,\r\n IdentityProviderCode:\"G\"\r\n }\r\n this.authService.authUser(user).subscribe(result => {\r\n this.spinner.hide();\r\n if (result.isSuccess) {\r\n if (result.model.modifiedById == null && result.model.parentUserId != null) {\r\n this.router.navigate(['/change-password']);\r\n this.alertify.warning('Please change your password.');\r\n } else if (result.model.recordStatus == 'I') {\r\n this.router.navigate(['verification']);\r\n this.alertify.warning('Please verify your email address.');\r\n }\r\n else if (!this.CheckPendingProfile(result.model)) {\r\n this.router.navigate(['/profile']);\r\n this.alertify.warning('Please complete profile first.');\r\n } else if (this.returnUrl && this.returnUrl != '/') {\r\n this.router.navigateByUrl(this.returnUrl);\r\n }\r\n else {\r\n this.router.navigate(['/dashboard']);\r\n }\r\n this.alertify.success('Login successful.');\r\n this.modalService.dismissAll();\r\n }\r\n else if (!result.isSuccess) {\r\n this.alertify.error(result.message);\r\n }\r\n });\r\n}\r\n\r\n onOtpSubmit(){\r\n let otp = this.otpForm.get('otp')?.value;\r\n if (otp == null || otp == \"\") {\r\n this.alertify.error(\"Please provide One-Time Password.\");\r\n return;\r\n }\r\n this.loginForm.patchValue({\r\n otp: this.otpForm.get('otp')?.value\r\n });\r\n this.LoginApiCall();\r\n }\r\n onLogin() {\r\n this.spinner.show();\r\n this.userSubmitted = true;\r\n if (this.loginForm.valid) {\r\n let is2FAPassed = localStorage.getItem('Is2FAPassed');\r\n if (is2FAPassed == null || is2FAPassed != \"1\") {\r\n this.authService.isOTPRequired(this.loginForm.value).subscribe(result => {\r\n if (result.model != null && result.model == false && result.isSuccess == true) {\r\n this.LoginApiCall();\r\n }\r\n else if (result.isSuccess == false) {\r\n this.alertify.error(result.message);\r\n }\r\n else {\r\n this.showOtpForm = true;\r\n }\r\n this.spinner.hide();\r\n });\r\n }\r\n else {\r\n this.LoginApiCall();\r\n }\r\n }\r\n }\r\n onResend() {\r\n this.spinner.show();\r\n this.authService.isOTPRequired(this.loginForm.value).subscribe(result => {\r\n if (result.isSuccess == false) {\r\n this.alertify.error(result.message);\r\n }\r\n else {\r\n this.alertify.success(\"Verification code has been resent to your login email.\");\r\n }\r\n this.spinner.hide();\r\n });\r\n }\r\n\r\n private LoginApiCall() {\r\n this.authService.authUser(this.loginForm.value).subscribe(result => {\r\n this.spinner.hide();\r\n if (result.isSuccess) {\r\n if (result.model.modifiedById == null && result.model.parentUserId != null) {\r\n this.router.navigate(['/change-password']);\r\n this.alertify.warning('Please change your password.');\r\n } else if (result.model.recordStatus == 'I') {\r\n this.router.navigate(['verification']);\r\n this.alertify.warning('Please verify your email address.');\r\n }\r\n else if (!this.CheckPendingProfile(result.model)) {\r\n this.router.navigate(['/profile']);\r\n this.alertify.warning('Please complete profile first.');\r\n } else if (this.returnUrl && this.returnUrl != '/') {\r\n this.router.navigateByUrl(this.returnUrl);\r\n }\r\n else {\r\n this.router.navigate(['/dashboard']);\r\n }\r\n this.alertify.success('Login Successful.');\r\n this.modalService.dismissAll();\r\n }\r\n else if (!result.isSuccess) {\r\n this.alertify.error(result.message);\r\n }\r\n });\r\n }\r\n\r\n loginWithGoogle(): void {\r\n this.socialAuthService.signIn(GoogleLoginProvider.PROVIDER_ID).then(() => this.router.navigate(['mainpage']));;\r\n }\r\n\r\n signInWithFB(): void {\r\n let user: User = {\r\n FirstName: '',\r\n LastName: '',\r\n LoginId: '',\r\n Password: '',\r\n RoleName: '',\r\n ProfileType: '',\r\n IdentityProviderCode: ''\r\n };\r\n this.socialAuthService.signIn(FacebookLoginProvider.PROVIDER_ID).then(socialusers => {\r\n console.log(socialusers);\r\n user.FirstName = socialusers.firstName;\r\n user.LastName = socialusers.lastName;\r\n user.LoginId = socialusers.email;\r\n user.ParentUserId = 0;\r\n user.RoleName = '';\r\n user.ProfileType = 'Admin';\r\n user.Password = socialusers.authToken;\r\n user.IdentityProviderCode = 'FB';\r\n this.addSocialUserToDB(user);\r\n });\r\n }\r\n\r\n addSocialUserToDB(user: User) {\r\n let fblogin: FBLogin = {\r\n LoginId: '',\r\n Password: '',\r\n IdentityProviderCode: ''\r\n }\r\n this.userService.addUser(user).subscribe(result => {\r\n console.log(result);\r\n if (result.isSuccess) {\r\n this.alertify.success(result.message);\r\n this.modalService.dismissAll();\r\n // this.router.navigate(['verification']);\r\n // this.loginForm.patchValue({\r\n // loginId: user.LoginId,\r\n // password: user.Password\r\n // })\r\n fblogin.IdentityProviderCode = 'FB',\r\n fblogin.LoginId = user.LoginId,\r\n fblogin.Password = user.Password\r\n this.onFBLogin(fblogin);\r\n } else {\r\n // this.loginForm.patchValue({\r\n // loginId: user.LoginId,\r\n // password: user.Password\r\n // })\r\n fblogin.IdentityProviderCode = 'FB',\r\n fblogin.LoginId = user.LoginId,\r\n fblogin.Password = user.Password\r\n this.onFBLogin(fblogin);\r\n }\r\n });\r\n }\r\n\r\n onFBLogin(login: any) {\r\n this.authService.authUser(login).subscribe(result => {\r\n this.spinner.hide();\r\n if (result.isSuccess) {\r\n if (result.model.modifiedById == null && result.model.parentUserId != null) {\r\n this.router.navigate(['/change-password']);\r\n this.alertify.warning('Please change the password.');\r\n } else if (result.model.recordStatus == 'I') {\r\n this.router.navigate(['verification']);\r\n this.alertify.warning('Please verify your email address.');\r\n }\r\n else if (!this.CheckPendingProfile(result.model)) {\r\n this.router.navigate(['/profile']);\r\n this.alertify.warning('Please complete profile first.');\r\n } else if (this.returnUrl && this.returnUrl != '/') {\r\n this.router.navigateByUrl(this.returnUrl);\r\n }\r\n else {\r\n this.router.navigate(['/dashboard']);\r\n }\r\n this.alertify.success('Login Successful.');\r\n this.modalService.dismissAll();\r\n }\r\n else if (!result.isSuccess) {\r\n this.alertify.error(result.message);\r\n }\r\n });\r\n }\r\n CheckPendingProfile(result: any) {\r\n if (result.profileType == \"E\") {\r\n if (result.parentUserId == null) {\r\n //following routes modified by atul on 13 may 22 for making stripe mandatory\r\n // if (result.practiceAreas?.length == 0) {\r\n // return false;\r\n // } else {\r\n return true;\r\n //}\r\n } else {\r\n //Following 5 lines modified by atul on 11 apr 22 for fix bug 445:Subuser is not asked to complete profile (Mobile no which is mandatory field) on first login or after that\r\n //result.practiceAreas?.length == 0 || \r\n if (result.mobileNo == \"\" || result.mobileNo == null || result.mobileNo == undefined) {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n }\r\n } else if (result.profileType == \"A\" || result.profileType == \"EA\") {\r\n if (result.parentUserId == null) {\r\n if (result.barDetails?.length == 0 || result.practiceAreas?.length == 0 || result.profileDetails?.length == 0) {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n } else {\r\n //Following 5 lines modified by atul on 11 apr 22 for fix bug 445:Subuser is not asked to complete profile (Mobile no which is mandatory field) on first login or after that\r\n if (result.mobileNo == \"\" || result.mobileNo == null || result.mobileNo == undefined) {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n }\r\n } else if (result.profileType == \"\" && result.parentUserId == null) {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n\r\n }\r\n\r\n // ------------------------------------\r\n // Getter methods for all form controls\r\n // ------------------------------------\r\n get loginId() {\r\n return this.loginForm.get('loginId') as FormControl;\r\n }\r\n get password() {\r\n return this.loginForm.get('password') as FormControl;\r\n }\r\n // -----------------------\r\n\r\n\r\n openRegisterPopup(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(UserRegistrationComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n openForgotPasswordPopup(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(ForgotPasswordComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n\r\n}\r\n\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n Please provide login ID.\r\n
\r\n
\r\n \r\n Please provide password.\r\n
\r\n \r\n
\r\n
\r\n
\r\n
Two-step authentication
\r\n To continue, please enter the 6-digit verification code sent to your login email.\r\n
\r\n
\r\n \r\n Please provide OTP.\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n Didn't receive a code? \r\n
\r\n\r\n
or use a social network
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

Logining in...

\r\n","import { analyzeAndValidateNgModules } from '@angular/compiler';\r\nimport { Component, ElementRef, HostListener, OnInit } from '@angular/core';\r\nimport { AbstractControl, FormArray, FormBuilder, FormControl, FormGroup, ValidationErrors, Validators } from '@angular/forms';\r\nimport { ActivityLog, AddressParams, AddressRequest } from 'src/app/models/address';\r\nimport { StateMaster, StateMasterList } from 'src/app/models/master';\r\nimport { Login, UpdateProfileRequest, User, UserBars, UsergeneralInfo, UserGenProfileRequest, UserModel, UserPracticeArea } from 'src/app/models/user';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { AppearanceService } from 'src/app/services/appearance.service';\r\nimport { ConfirmDialogService } from 'src/app/services/Common/confirm-dialog.service';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { saveAs } from 'file-saver';\r\nimport { IsStripeConnectedDTO, SaveCardTokenDTO, StripeConnectDTO, StripePaymentSetupDTO } from 'src/app/models/stripe';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CommonConstant } from 'src/app/Common/Constants/Constants';\r\nimport { environment } from 'src/environments/environment';\r\nimport { UserPaymentSetupDetailDTO } from 'src/app/models/nexio';\r\n\r\n@Component({\r\n selector: 'app-user-profile',\r\n templateUrl: './user-profile.component.html',\r\n styleUrls: ['./user-profile.component.css']\r\n})\r\nexport class UserProfileComponent implements OnInit {\r\n\r\n constructor(private userService: UserService, private spinner: NgxSpinnerService, private confirmDialogService: ConfirmDialogService, private fb: FormBuilder, private appearanceService: AppearanceService, private authService: AuthService, private formBuilder: FormBuilder, private alertify: AlertifyService, private route: ActivatedRoute, private elementRef:ElementRef,private router: Router) { }\r\n \r\n //Following variable and function added by atul on 27 dec 22 for nexio\r\n private paymentGatewayUrl = environment.paymentGatewayUrl;\r\n @HostListener('window:message', ['$event'])\r\n onMessage(event: any) {\r\n if (event.origin === this.paymentGatewayUrl) {\r\n const eventData = event.data?.data;\r\n const eventType = event.data?.event;\r\n\r\n if (eventType === 'loaded') {\r\n this.spinner.hide(); \r\n }\r\n if (eventType === 'error') {\r\n this.spinner.hide();\r\n this.alertify.error(\"Payment gateway error: \" +event.data.data.message);\r\n }\r\n if (eventType === 'cardSaved') {\r\n if(eventData?.token != '')\r\n {\r\n var userMasterId: Number = this.authService.currentUserValue.id || 0;\r\n const userPaymentSetupDetailDTO: UserPaymentSetupDetailDTO = {\r\n UserMasterId: userMasterId,\r\n IsCompleted:true,\r\n PgToken:eventData?.token.token,\r\n CardType:eventData?.token.cardType,\r\n LastDigits:eventData?.token.lastFour,\r\n IsDefault:true\r\n }\r\n \r\n this.userService.SaveCardTokenRes(userPaymentSetupDetailDTO).subscribe(result => {\r\n if (result.model != null) {\r\n this.IsPaymentSetupCompleted = true;\r\n this.stripeForm.patchValue({\r\n hidIsPaymentSetupCompleted: true\r\n });\r\n this.IsPaymentSetupStarted =false;\r\n this.CurrentPayMethod = \"card\";\r\n this.CurrentPayBrand = result.model.cardType;\r\n this.CurrentPayLastDigits = result.model.lastFour;\r\n // this.CurrentPayAcType = result.model.acType;\r\n // this.CurrentPayBank = result.model.bankName;\r\n }\r\n else {\r\n this.IsPaymentSetupCompleted = false;\r\n this.stripeForm.patchValue({\r\n hidIsPaymentSetupCompleted: false\r\n });\r\n }\r\n //this.spinner.hide();\r\n this.GetIsPaymentSetupCompleted();\r\n });\r\n } \r\n else{\r\n this.alertify.error(\"Payment gateway error: An unexpected error occurred. Please try again.\");\r\n }\r\n }\r\n }\r\n }\r\n token:string=\"\";\r\n\r\n \r\n public userGenInfo: UsergeneralInfo;\r\n public updateProfileReq: UpdateProfileRequest;\r\n userProfileForm: FormGroup;\r\n \r\n stripeForm: FormGroup;\r\n submittingReqCount: number = 0;\r\n stripeSubmitTimer: any;\r\n public IndividualCheckChecked: Boolean;\r\n public LawFirmCheckChecked: Boolean;\r\n public AttorneyCheckChecked: Boolean;\r\n submitted = false;\r\n public stateList: any;\r\n public countyList: any;\r\n public cityList: any;\r\n public BillingcountyList: any;\r\n public BillingcityList: any;\r\n public selectedFiles: any = [];\r\n public PhysicalAutoId: number;\r\n index = 0;\r\n public finalFormData = new FormData();\r\n public finalFormDataUpdate = new FormData();\r\n public BillingAutoId: number;\r\n public NumberofAddress: number;\r\n public ProfileType: string;\r\n public casetypes: any[];\r\n public profile: any;\r\n public updateAddressReq: AddressParams = new AddressParams();\r\n public updateBillingAddressReq: AddressParams = new AddressParams();\r\n public activityLogReq: ActivityLog = new ActivityLog();\r\n public Bars = new Array();\r\n public PracticeAreas = new Array();\r\n public UserProfileDetails: any;\r\n public languages: any;\r\n public Days: any;\r\n public ResumePath: any;\r\n public resume: any;\r\n \r\n public isOptional: boolean = false;\r\n public isSubUser: boolean;\r\n public disableInvidual: boolean = false;\r\n public disableEmployerAttorney: boolean = false;\r\n //Following 6 variables added by atul on 29 apr 22 for Payment Settings\r\n public IsPaymentSetupCompleted: boolean = false;\r\n public IsPaymentSetupInProgress: boolean = false;\r\n public CurrentPayMethod: string = '';\r\n public CurrentPayBrand: string = '';\r\n public CurrentPayLastDigits: string = '';\r\n public CurrentPayAcType: string = '';\r\n public CurrentPayBank: string = '';\r\n public IsPaymentSetupStarted:boolean = false;\r\n public WalletBalance:string ='';\r\n\r\n ngOnInit() {\r\n this.isSubUser = this.authService.currentUserValue.parentUserId != null ? true : false;\r\n this.getAllState();\r\n this.GetCaseTypes();\r\n this.GetBarDetails();\r\n this.GetPracticeAreas();\r\n this.getLanguage();\r\n this.userProfileForm = this.formBuilder.group({\r\n firstName: ['', Validators.required],\r\n lastName: ['', Validators.required],\r\n mobileNo: ['', [Validators.required, Validators.pattern(\"[- +()0-9]+\")]],\r\n Physicaladdress1: ['', Validators.required],\r\n Physicaladdress2: [''],\r\n alternateEmail: ['', Validators.email],\r\n Physicalstate: ['', Validators.required],\r\n Physicalcounty: ['', Validators.required],\r\n Physicalcity: ['', Validators.required],\r\n Physicalzipcode: ['', Validators.required],\r\n Billingaddress1: ['', Validators.required],\r\n Billingaddress2: [''],\r\n Billingstate: ['', Validators.required],\r\n Billingcounty: ['', Validators.required],\r\n Billingcity: ['', Validators.required],\r\n Billingzipcode: ['', Validators.required],\r\n businessNo: ['', Validators.pattern(\"[- +()0-9]+\")],\r\n middleName: [''],\r\n LawFirmCheckChecked: [false],\r\n AttorneyCheckChecked: [false],\r\n IndividualCheckChecked: [false],\r\n SameAddress: [false],\r\n firmName: [''],\r\n website: [''],\r\n stateMasterId: [0],\r\n barNo: [''],\r\n practiceArea: [0],\r\n practiceDesc: [''],\r\n yearsofexperience: [''],\r\n hourlyratemin: [''],\r\n BriefBio: [''],\r\n ratenegotiable: [false],\r\n traveldistance: [''],\r\n Language: [''],\r\n hidIsPracticeAreas: [false],\r\n hidIsBars: [false]\r\n });\r\n\r\n this.stripeForm = this.formBuilder.group({\r\n businessType: [''],\r\n paymentMethod: [''],\r\n hidIsPaymentSetupInProgress: [false],\r\n hidIsPaymentSetupCompleted: [false]\r\n });\r\n this.spinner.show();\r\n this.AttorneyCheckChecked = this.userProfileForm.value['AttorneyCheckChecked'];\r\n this.LawFirmCheckChecked = this.userProfileForm.value['LawFirmCheckChecked'];\r\n this.IndividualCheckChecked = this.userProfileForm.value['IndividualCheckChecked'];\r\n this.getUserGeneralProfile();\r\n this.AddFirmNameValidation();\r\n this.GetIsPaymentSetupCompleted();\r\n this.GetNomadStatus();\r\n }\r\n\r\n //Dynamic firm validaation\r\n AddFirmNameValidation() {\r\n //this.LawFirmCheckChecked = true;\r\n //this.userProfileForm.get('firmName')?.valueChanges.subscribe(val => {\r\n if (this.LawFirmCheckChecked && this.AttorneyCheckChecked) {\r\n this.userProfileForm.controls['firmName'].setValidators([Validators.required]);\r\n this.userProfileForm.controls['hourlyratemin'].setValidators([Validators.required]);\r\n // this.userProfileForm.controls['hourlyratemax'].setValidators([Validators.required]);\r\n this.userProfileForm.controls['firmName'].updateValueAndValidity();\r\n this.userProfileForm.controls['hourlyratemin'].updateValueAndValidity();\r\n // this.userProfileForm.controls['hourlyratemax'].updateValueAndValidity();\r\n this.isOptional = false;\r\n\r\n //Following 8 line added by atul on 25 apr 22 for task 495: Mandatory Stripe registration along with auto-debit feature\r\n this.userProfileForm.controls['hidIsPracticeAreas'].setValidators([Validators.requiredTrue]);\r\n this.userProfileForm.controls['hidIsPracticeAreas'].updateValueAndValidity();\r\n this.userProfileForm.controls['hidIsBars'].setValidators([Validators.requiredTrue]);\r\n this.userProfileForm.controls['hidIsBars'].updateValueAndValidity();\r\n //Stripe Commented code: Following 4 line commented by atul on 25 dec 22\r\n // this.stripeForm.controls['hidIsStripeInProgress'].setValidators([Validators.requiredTrue]);\r\n // this.stripeForm.controls['hidIsStripeInProgress'].updateValueAndValidity();\r\n // this.stripeForm.controls['hidIsPaymentSetupInProgress'].setValidators([Validators.requiredTrue]);\r\n // this.stripeForm.controls['hidIsPaymentSetupInProgress'].updateValueAndValidity();\r\n } else if (this.AttorneyCheckChecked) {\r\n this.userProfileForm.controls['hourlyratemin'].setValidators([Validators.required]);\r\n // this.userProfileForm.controls['hourlyratemax'].setValidators([Validators.required]);\r\n this.userProfileForm.controls['hourlyratemin'].updateValueAndValidity();\r\n // this.userProfileForm.controls['hourlyratemax'].updateValueAndValidity();\r\n this.userProfileForm.controls['firmName'].clearValidators();\r\n this.userProfileForm.controls['firmName'].updateValueAndValidity();\r\n this.isOptional = true;\r\n\r\n //Following 8 line added by atul on 25 apr 22 for task 495: Mandatory Stripe registration along with auto-debit feature\r\n this.userProfileForm.controls['hidIsPracticeAreas'].setValidators([Validators.requiredTrue]);\r\n this.userProfileForm.controls['hidIsPracticeAreas'].updateValueAndValidity();\r\n this.userProfileForm.controls['hidIsBars'].setValidators([Validators.requiredTrue]);\r\n this.userProfileForm.controls['hidIsBars'].updateValueAndValidity();\r\n //Stripe Commented code: Following 4 line commented by atul on 25 dec 22\r\n // this.stripeForm.controls['hidIsStripeInProgress'].setValidators([Validators.requiredTrue]);\r\n // this.stripeForm.controls['hidIsStripeInProgress'].updateValueAndValidity();\r\n // this.stripeForm.controls['hidIsPaymentSetupInProgress'].clearValidators();\r\n // this.stripeForm.controls['hidIsPaymentSetupInProgress'].updateValueAndValidity();\r\n } else if (this.LawFirmCheckChecked) {\r\n this.userProfileForm.controls['firmName'].setValidators([Validators.required]);\r\n this.userProfileForm.controls['firmName'].updateValueAndValidity();\r\n this.isOptional = false;\r\n\r\n //Following 8 line added by atul on 25 apr 22 for task 495: Mandatory Stripe registration along with auto-debit feature\r\n this.userProfileForm.controls['hidIsPracticeAreas'].clearValidators();\r\n this.userProfileForm.controls['hidIsPracticeAreas'].updateValueAndValidity();\r\n this.userProfileForm.controls['hidIsBars'].clearValidators();\r\n this.userProfileForm.controls['hidIsBars'].updateValueAndValidity();\r\n //Stripe Commented code: Following 4 line commented by atul on 25 dec 22\r\n // this.stripeForm.controls['hidIsStripeInProgress'].clearValidators();\r\n // this.stripeForm.controls['hidIsStripeInProgress'].updateValueAndValidity();\r\n // this.stripeForm.controls['hidIsPaymentSetupInProgress'].setValidators([Validators.requiredTrue]);\r\n // this.stripeForm.controls['hidIsPaymentSetupInProgress'].updateValueAndValidity();\r\n }\r\n else if (this.IndividualCheckChecked) {\r\n this.userProfileForm.controls['firmName'].clearValidators();\r\n this.userProfileForm.controls['hourlyratemin'].clearValidators();\r\n // this.userProfileForm.controls['hourlyratemax'].clearValidators();\r\n this.userProfileForm.controls['firmName'].updateValueAndValidity();\r\n this.userProfileForm.controls['hourlyratemin'].updateValueAndValidity();\r\n // this.userProfileForm.controls['hourlyratemax'].updateValueAndValidity();\r\n this.isOptional = true;\r\n\r\n //Following 8 line added by atul on 25 apr 22 for task 495: Mandatory Stripe registration along with auto-debit feature\r\n this.userProfileForm.controls['hidIsPracticeAreas'].clearValidators();\r\n this.userProfileForm.controls['hidIsPracticeAreas'].updateValueAndValidity();\r\n this.userProfileForm.controls['hidIsBars'].clearValidators();\r\n this.userProfileForm.controls['hidIsBars'].updateValueAndValidity();\r\n //Stripe Commented code: Following 4 line commented by atul on 25 dec 22\r\n // this.stripeForm.controls['hidIsStripeInProgress'].clearValidators();\r\n // this.stripeForm.controls['hidIsStripeInProgress'].updateValueAndValidity();\r\n // this.stripeForm.controls['hidIsPaymentSetupInProgress'].setValidators([Validators.requiredTrue]);\r\n // this.stripeForm.controls['hidIsPaymentSetupInProgress'].updateValueAndValidity();\r\n }\r\n //Following section added by atul on date 9 apr 22 for fix bug 473 Subuser created by Dual role user also gets dual role\r\n if (this.isSubUser) {\r\n this.userProfileForm.controls['hourlyratemin'].clearValidators();\r\n this.userProfileForm.controls['hourlyratemin'].updateValueAndValidity();\r\n\r\n this.userProfileForm.controls['Physicaladdress1'].clearValidators();\r\n this.userProfileForm.controls['Physicaladdress1'].updateValueAndValidity();\r\n this.userProfileForm.controls['Physicaladdress2'].clearValidators();\r\n this.userProfileForm.controls['Physicaladdress2'].updateValueAndValidity();\r\n this.userProfileForm.controls['Physicalstate'].clearValidators();\r\n this.userProfileForm.controls['Physicalstate'].updateValueAndValidity();\r\n this.userProfileForm.controls['Physicalcounty'].clearValidators();\r\n this.userProfileForm.controls['Physicalcounty'].updateValueAndValidity();\r\n this.userProfileForm.controls['Physicalcity'].clearValidators();\r\n this.userProfileForm.controls['Physicalcity'].updateValueAndValidity();\r\n this.userProfileForm.controls['Physicalzipcode'].clearValidators();\r\n this.userProfileForm.controls['Physicalzipcode'].updateValueAndValidity();\r\n\r\n this.userProfileForm.controls['Billingaddress1'].clearValidators();\r\n this.userProfileForm.controls['Billingaddress1'].updateValueAndValidity();\r\n this.userProfileForm.controls['Billingaddress2'].clearValidators();\r\n this.userProfileForm.controls['Billingaddress2'].updateValueAndValidity();\r\n this.userProfileForm.controls['Billingstate'].clearValidators();\r\n this.userProfileForm.controls['Billingstate'].updateValueAndValidity();\r\n this.userProfileForm.controls['Billingcounty'].clearValidators();\r\n this.userProfileForm.controls['Billingcounty'].updateValueAndValidity();\r\n this.userProfileForm.controls['Billingcity'].clearValidators();\r\n this.userProfileForm.controls['Billingcity'].updateValueAndValidity();\r\n this.userProfileForm.controls['Billingzipcode'].clearValidators();\r\n this.userProfileForm.controls['Billingzipcode'].updateValueAndValidity();\r\n\r\n //Following 4 line added by atul on 25 apr 22 for task 495: Mandatory Stripe registration along with auto-debit feature\r\n this.userProfileForm.controls['hidIsPracticeAreas'].clearValidators();\r\n this.userProfileForm.controls['hidIsPracticeAreas'].updateValueAndValidity();\r\n this.userProfileForm.controls['hidIsBars'].clearValidators();\r\n this.userProfileForm.controls['hidIsBars'].updateValueAndValidity();\r\n //Stripe Commented code: Following 4 line commented by atul on 25 dec 22\r\n // this.stripeForm.controls['hidIsStripeInProgress'].clearValidators();\r\n // this.stripeForm.controls['hidIsStripeInProgress'].updateValueAndValidity();\r\n // this.stripeForm.controls['hidIsPaymentSetupInProgress'].clearValidators();\r\n // this.stripeForm.controls['hidIsPaymentSetupInProgress'].updateValueAndValidity();\r\n }\r\n // } else {\r\n // this.userProfileForm.controls['firmName'].clearValidators();\r\n // this.userProfileForm.controls['hourlyratemin'].clearValidators();\r\n // this.userProfileForm.controls['hourlyratemax'].clearValidators();\r\n // });\r\n }\r\n\r\n\r\n\r\n getLanguage() {\r\n this.appearanceService.getLanguage().subscribe(lang => {\r\n this.languages = lang.list;\r\n });\r\n }\r\n AddMoreBar() {\r\n let bar = new UserBars();\r\n if (this.userProfileForm.get('barNo')?.value != \"\") {\r\n if (this.userProfileForm.get('stateMasterId')?.value != \"0\") {\r\n if (!this.Bars.some(x => x.stateMasterId == this.userProfileForm.get('stateMasterId')?.value)) {\r\n bar.stateMasterId = this.userProfileForm.get('stateMasterId')?.value;\r\n bar.barNo = this.userProfileForm.get('barNo')?.value;\r\n bar.isPrimary = true;\r\n bar.userMasterId = this.authService.currentUserValue.id || 0;\r\n bar.stateName = this.stateList.filter((v: { autoId: any; }) => v.autoId == this.userProfileForm.get('stateMasterId')?.value)[0].stateName;\r\n const UserId = this.authService.currentUserValue.id || 0;\r\n this.Bars.push(bar);\r\n this.userProfileForm.patchValue({\r\n stateMasterId: 0,\r\n barNo: '',\r\n hidIsBars: this.Bars.length > 0 ? true : false\r\n });\r\n } else {\r\n this.alertify.error(\"This state has already been added.\");\r\n }\r\n } else {\r\n this.alertify.error(\"Please select a state.\");\r\n }\r\n } else {\r\n this.alertify.error(\"Please enter a bar number.\");\r\n }\r\n }\r\n onBarRemoveRow(rowIndex: number) {\r\n if (rowIndex > 0) {\r\n this.index = this.index - 1;\r\n (this.userProfileForm.get('bar') as FormArray).removeAt(rowIndex);\r\n this.userProfileForm.patchValue({\r\n hidIsBars: this.Bars.length > 0 ? true : false\r\n });\r\n }\r\n }\r\n\r\n GetBarDetails() {\r\n let bar = new UserBars();\r\n const userId = this.authService.currentUserValue.id || 0;\r\n this.userService.GetBarDetaislByUserId(userId).subscribe(bar => {\r\n this.Bars = bar.list;\r\n this.userProfileForm.patchValue({\r\n hidIsBars: this.Bars.length > 0 ? true : false\r\n });\r\n });\r\n }\r\n\r\n DeleteBar(event: any) {\r\n this.confirmDialogService.confirmThis(\"Are you sure to delete?\", () => {\r\n this.Bars.forEach((item, index) => {\r\n if (item.stateMasterId == event.stateMasterId && item.barNo == event.barNo) this.Bars.splice(index, 1);\r\n });\r\n this.userProfileForm.patchValue({\r\n hidIsBars: this.Bars.length > 0 ? true : false\r\n });\r\n }, function () {\r\n })\r\n }\r\n\r\n\r\n RateNegotiablechecked() {\r\n this.userProfileForm.patchValue({\r\n ratenegotiable: !this.userProfileForm.value['ratenegotiable']\r\n })\r\n }\r\n LawFirmCheckCheckedchange(event: any) {\r\n //this.AttorneyEmployerChange(event);\r\n if (!event.target.checked && (this.profile.appearanceCount !== 0 || this.profile.applicationCount !== 0) && this.ProfileType == \"EA\") {\r\n this.userProfileForm.patchValue({\r\n LawFirmCheckChecked: this.userProfileForm.value['LawFirmCheckChecked']\r\n })\r\n this.alertify.error('Cannot change the profile type as you have applied for a job or posted an appearance.');\r\n }\r\n else if (!event.target.checked && (this.profile.appearanceCount !== 0 || this.profile.applicationCount !== 0) && this.ProfileType == \"E\") {\r\n this.userProfileForm.patchValue({\r\n LawFirmCheckChecked: this.userProfileForm.value['LawFirmCheckChecked']\r\n })\r\n this.alertify.error('Cannot change the profile type as you have applied for a job or posted an appearance.');\r\n }\r\n else if (event.target.checked && (this.profile.appearanceCount !== 0 || this.profile.applicationCount !== 0) && this.ProfileType == \"I\") {\r\n this.userProfileForm.patchValue({\r\n LawFirmCheckChecked: this.userProfileForm.value['LawFirmCheckChecked']\r\n })\r\n this.alertify.error('Cannot change the profile type as you have applied for a job or posted an appearance.');\r\n } else {\r\n if (!this.userProfileForm.value['LawFirmCheckChecked'] && (this.ProfileType == '' || this.ProfileType == undefined)) {\r\n this.ProfileType = 'E';\r\n }\r\n this.userProfileForm.patchValue({\r\n LawFirmCheckChecked: !this.userProfileForm.value['LawFirmCheckChecked']\r\n })\r\n this.LawFirmCheckChecked = this.userProfileForm.value['LawFirmCheckChecked'];\r\n this.userProfileForm.patchValue({\r\n IndividualCheckChecked: false\r\n })\r\n this.AddFirmNameValidation();\r\n }\r\n // if (this.profile.appearanceCount === 0 && this.profile.applicationCount === 0) {\r\n // if (!this.userProfileForm.value['LawFirmCheckChecked']) {\r\n // this.ProfileType = 'E';\r\n // }\r\n // this.userProfileForm.patchValue({\r\n // LawFirmCheckChecked: !this.userProfileForm.value['LawFirmCheckChecked']\r\n // })\r\n // this.LawFirmCheckChecked = this.userProfileForm.value['LawFirmCheckChecked'];\r\n // this.userProfileForm.patchValue({\r\n // IndividualCheckChecked: false\r\n // })\r\n // this.AddFirmNameValidation();\r\n\r\n // } else {\r\n // this.userProfileForm.patchValue({\r\n // LawFirmCheckChecked: this.userProfileForm.value['LawFirmCheckChecked']\r\n // })\r\n // this.alertify.error('Can not change profile type as you have applied job Or appearance posted');\r\n // }\r\n }\r\n AttorneyCheckCheckedchange(event: any) {\r\n //this.AttorneyEmployerChange(event);\r\n if (!event.target.checked && (this.profile.appearanceCount !== 0 || this.profile.applicationCount !== 0) && this.ProfileType == \"EA\") {\r\n this.userProfileForm.patchValue({\r\n AttorneyCheckChecked: this.userProfileForm.value['AttorneyCheckChecked']\r\n })\r\n this.alertify.error('Cannot change the profile type as you have applied for a job or posted an appearance.');\r\n } else if (!event.target.checked && (this.profile.appearanceCount !== 0 || this.profile.applicationCount !== 0) && this.ProfileType == \"A\") {\r\n this.userProfileForm.patchValue({\r\n AttorneyCheckChecked: this.userProfileForm.value['AttorneyCheckChecked']\r\n })\r\n this.alertify.error('Cannot change the profile type as you have applied for a job or posted an appearance.');\r\n }\r\n else if (event.target.checked && (this.profile.appearanceCount !== 0 || this.profile.applicationCount !== 0) && this.ProfileType == \"I\") {\r\n this.userProfileForm.patchValue({\r\n AttorneyCheckChecked: this.userProfileForm.value['AttorneyCheckChecked']\r\n })\r\n this.alertify.error('Cannot change the profile type as you have applied for a job or posted an appearance.');\r\n }\r\n else {\r\n if (!this.userProfileForm.value['AttorneyCheckChecked'] && (this.ProfileType == '' || this.ProfileType == undefined)) {\r\n this.ProfileType = 'A';\r\n }\r\n this.userProfileForm.patchValue({\r\n AttorneyCheckChecked: !this.userProfileForm.value['AttorneyCheckChecked']\r\n })\r\n this.AttorneyCheckChecked = this.userProfileForm.value['AttorneyCheckChecked'];\r\n this.userProfileForm.patchValue({\r\n IndividualCheckChecked: false\r\n })\r\n this.AddFirmNameValidation();\r\n }\r\n \r\n }\r\n\r\n IndividualCheckCheckedchange(event: any) {\r\n //this.IndividualChangeAfterProfileSave(event);\r\n if (!event.target.checked && (this.profile.appearanceCount !== 0 || this.profile.applicationCount !== 0)) {\r\n this.userProfileForm.patchValue({\r\n IndividualCheckChecked: this.userProfileForm.value['IndividualCheckChecked']\r\n })\r\n this.alertify.error('Cannot change the profile type as you have applied for a job or posted an appearance.');\r\n } else if (event.target.checked && (this.profile.appearanceCount !== 0 || this.profile.applicationCount !== 0) && this.profile.profileType == 'EA') {\r\n this.userProfileForm.patchValue({\r\n IndividualCheckChecked: this.userProfileForm.value['IndividualCheckChecked']\r\n })\r\n this.alertify.error('Cannot change the profile type as you have applied for a job or posted an appearance.');\r\n } else if (this.ProfileType != '' || this.ProfileType != undefined) {\r\n if (!this.userProfileForm.value['IndividualCheckChecked']) {\r\n this.ProfileType = 'I';\r\n }\r\n this.userProfileForm.patchValue({\r\n IndividualCheckChecked: !this.userProfileForm.value['IndividualCheckChecked']\r\n })\r\n this.IndividualCheckChecked = this.userProfileForm.value['IndividualCheckChecked'];\r\n this.LawFirmCheckChecked = false;\r\n this.AttorneyCheckChecked = false;\r\n this.userProfileForm.patchValue({\r\n LawFirmCheckChecked: false\r\n })\r\n this.userProfileForm.patchValue({\r\n AttorneyCheckChecked: false\r\n })\r\n this.AddFirmNameValidation();\r\n }\r\n }\r\n\r\n IndividualChangeAfterProfileSave(event: any) {\r\n if ((this.ProfileType == 'E' || this.ProfileType == 'A' || this.ProfileType == 'EA') && event.target.checked) {\r\n this.userProfileForm.patchValue({\r\n IndividualCheckChecked: this.userProfileForm.value['IndividualCheckChecked']\r\n })\r\n this.alertify.error('Cannot change the profile type.');\r\n }\r\n }\r\n AttorneyEmployerChange(event: any) {\r\n if (this.ProfileType == 'I' && event.target.checked) {\r\n this.userProfileForm.patchValue({\r\n LawFirmCheckChecked: this.userProfileForm.value['LawFirmCheckChecked']\r\n })\r\n this.userProfileForm.patchValue({\r\n AttorneyCheckChecked: this.userProfileForm.value['AttorneyCheckChecked']\r\n })\r\n this.alertify.error('Cannot change the profile type.');\r\n }\r\n }\r\n AddMore() {\r\n let area = new UserPracticeArea();\r\n if (this.userProfileForm.get('practiceArea')?.value != \"0\") {\r\n if (!this.PracticeAreas.some(x => x.practiceAreaId == this.userProfileForm.get('practiceArea')?.value)) {\r\n area.practiceAreaId = this.userProfileForm.get('practiceArea')?.value;\r\n area.briefDescription = this.userProfileForm.get('practiceDesc')?.value;\r\n area.userMasterId = this.authService.currentUserValue.id || 0;\r\n area.practiceArea = this.casetypes.filter(v => v.autoId == this.userProfileForm.get('practiceArea')?.value)[0].practiceArea;\r\n const UserId = this.authService.currentUserValue.id || 0;\r\n this.PracticeAreas.push(area);\r\n this.userProfileForm.patchValue({\r\n practiceArea: 0,\r\n practiceDesc: '',\r\n hidIsPracticeAreas: this.PracticeAreas.length > 0 ? true : false\r\n });\r\n } else {\r\n this.alertify.error(\"This practice area has already been added.\");\r\n }\r\n } else {\r\n this.alertify.error(\"Please select a practice area.\");\r\n }\r\n\r\n }\r\n\r\n DeletePracticeArea(event: any) {\r\n this.PracticeAreas = this.PracticeAreas.filter(x => x.practiceAreaId != event.practiceAreaId);\r\n this.userProfileForm.patchValue({\r\n hidIsPracticeAreas: this.PracticeAreas.length > 0 ? true : false\r\n });\r\n }\r\n\r\n GetPracticeAreas() {\r\n let bar = new UserPracticeArea();\r\n const userId = this.authService.currentUserValue.id || 0;\r\n this.userService.GetPracticeAreaByUserId(userId).subscribe(practice => {\r\n this.PracticeAreas = practice.list;\r\n this.userProfileForm.patchValue({\r\n hidIsPracticeAreas: this.PracticeAreas.length > 0 ? true : false\r\n });\r\n });\r\n }\r\n\r\n ProfileTypeSelection() {\r\n if ((this.profile.appearanceCount !== 0 || this.profile.applicationCount !== 0) && this.profile.profileType == 'I') {\r\n this.disableEmployerAttorney = true;\r\n } else if ((this.profile.appearanceCount !== 0 || this.profile.applicationCount !== 0) && (this.profile.profileType == 'E' || this.profile.profileType == 'A' || this.profile.profileType == 'EA')) {\r\n this.disableInvidual = true;\r\n }\r\n }\r\n public userInfo: any;\r\n getUserGeneralProfile(calledBy=\"\") {\r\n //this.spinner.show();\r\n const user = JSON.parse(localStorage.getItem('currentUser') || '{}');\r\n this.profile = user;\r\n this.ProfileTypeSelection();\r\n\r\n this.userService.getUser(user.id).subscribe(user => {\r\n this.ProfileType = user.model.profileType;\r\n this.userInfo = user.model;\r\n this.userProfileForm.patchValue(user.model);\r\n \r\n if (this.submittingReqCount > 0) {\r\n this.spinner.hide();\r\n }\r\n if (user.model.profileType != null) {\r\n if (user.model.profileType == \"E\") {\r\n this.userProfileForm.patchValue({\r\n LawFirmCheckChecked: true,\r\n AttorneyCheckChecked: false,\r\n IndividualCheckChecked: false\r\n });\r\n this.LawFirmCheckChecked = true;\r\n //if (this.LawFirmCheckChecked) {\r\n this.AddFirmNameValidation();\r\n // }\r\n } else if (user.model.profileType == \"EA\") {\r\n this.userProfileForm.patchValue({\r\n LawFirmCheckChecked: true,\r\n AttorneyCheckChecked: true,\r\n IndividualCheckChecked: false\r\n });\r\n this.LawFirmCheckChecked = true;\r\n this.AttorneyCheckChecked = true;\r\n this.AddFirmNameValidation();\r\n } else if (user.model.profileType == \"A\") {\r\n this.userProfileForm.patchValue({\r\n LawFirmCheckChecked: false,\r\n AttorneyCheckChecked: true,\r\n IndividualCheckChecked: false\r\n });\r\n this.AttorneyCheckChecked = true;\r\n this.AddFirmNameValidation();\r\n } else if (user.model.profileType == \"I\") {\r\n this.userProfileForm.patchValue({\r\n LawFirmCheckChecked: false,\r\n AttorneyCheckChecked: false,\r\n IndividualCheckChecked: true\r\n });\r\n this.IndividualCheckChecked = true;\r\n this.AddFirmNameValidation();\r\n }\r\n } else {\r\n this.userProfileForm.patchValue({\r\n LawFirmCheckChecked: false,\r\n AttorneyCheckChecked: false,\r\n IndividualCheckChecked: false\r\n });\r\n }\r\n if (user.model.userAddressDTO.length > 0) {\r\n this.userProfileForm.patchValue({\r\n Physicaladdress1: user.model.userAddressDTO[0].address1,\r\n Physicaladdress2: user.model.userAddressDTO[0].address2,\r\n Physicalstate: user.model.userAddressDTO[0].stateId,\r\n Physicalcounty: user.model.userAddressDTO[0].countyId,\r\n Physicalcity: user.model.userAddressDTO[0].cityId,\r\n Physicalzipcode: user.model.userAddressDTO[0].zipCode,\r\n Billingaddress1: user.model.userAddressDTO[1].address1,\r\n Billingaddress2: user.model.userAddressDTO[1].address2,\r\n Billingstate: user.model.userAddressDTO[1].stateId,\r\n Billingcounty: user.model.userAddressDTO[1].countyId,\r\n Billingcity: user.model.userAddressDTO[1].cityId,\r\n Billingzipcode: user.model.userAddressDTO[1].zipCode,\r\n })\r\n this.getCountyByState(user.model.userAddressDTO[0].stateId);\r\n this.getBillingCountyByState(user.model.userAddressDTO[1].stateId);\r\n this.getCityByCounty(user.model.userAddressDTO[0].countyId);\r\n this.getBillingCityByCounty(user.model.userAddressDTO[1].countyId);\r\n this.PhysicalAutoId = user.model.userAddressDTO[0].autoId;\r\n this.BillingAutoId = user.model.userAddressDTO[1].autoId;\r\n\r\n if (user.model.userProfile != null) {\r\n this.userProfileForm.patchValue({\r\n yearsofexperience: user.model.userProfile[0].expYears,\r\n hourlyratemin: user.model.userProfile[0].hourlyRateMin,\r\n BriefBio: user.model.userProfile[0].briefResume,\r\n ratenegotiable: user.model.userProfile[0].rateNegotiable,\r\n Language: user.model.userProfile[0].languages,\r\n });\r\n\r\n this.UserProfileDetails = user.model.userProfile;\r\n this.ResumePath = user.model.userProfile[0].resumePath;\r\n this.resume = user.model.userProfile[0].resume;\r\n }\r\n }\r\n this.NumberofAddress = user.model.userAddressDTO.length;\r\n\r\n if(calledBy==\"Submit\"){\r\n this.alertify.success('Profile updated successfully.');\r\n this.activityLogReq.activityName=\"Profile Update Complete\";\r\n this.activityLogReq.activityData=this.GetFormData();\r\n this.userService.AddActivityLog(this.activityLogReq).subscribe(event => { });\r\n this.spinner.hide();\r\n }\r\n\r\n this.submitted=false;\r\n });\r\n }\r\n\r\n getAllState() {\r\n this.userService.getAllState().subscribe(state => {\r\n this.stateList = state.list;\r\n\r\n });\r\n }\r\n\r\n onBillingSelectedState(Id: any) {\r\n if (parseInt(Id.value) > 0) {\r\n this.userProfileForm.patchValue({\r\n Billingcounty: '',\r\n Billingcity: ''\r\n });\r\n this.getBillingCountyByState(Id.value);\r\n }\r\n }\r\n\r\n async getBillingCountyByState(Id: number) {\r\n //Code modified by atul on dated 10 apr 22 for fix bug 448 City and county for Billing Address not auto-populated\r\n this.userService.getAllCountyByState(Id).subscribe(county => {\r\n this.BillingcountyList = county.list;\r\n setTimeout(() => {\r\n var billingCounty = this.userProfileForm.value['Billingcounty'];\r\n this.userProfileForm.patchValue({\r\n Billingcounty: billingCounty,\r\n })\r\n if (billingCounty != '' && parseInt(billingCounty) > 0)\r\n this.getBillingCityByCounty(parseInt(billingCounty))\r\n }, 1);\r\n });\r\n }\r\n\r\n\r\n async getBillingCityByCounty(Id: number) {\r\n //Code modified by atul on dated 10 apr 22 for fix bug 448 City and county for Billing Address not auto-populated\r\n this.userService.getAllCityByCounty(Id).subscribe(city => {\r\n this.BillingcityList = city.list;\r\n setTimeout(() => {\r\n this.userProfileForm.patchValue({\r\n Billingcity: this.userProfileForm.value['Billingcity']\r\n })\r\n }, 1);\r\n });\r\n }\r\n onSelectedState(Id: any) {\r\n if (parseInt(Id.value) > 0) {\r\n this.userProfileForm.patchValue({\r\n Physicalcounty: '',\r\n Physicalcity: ''\r\n });\r\n this.getCountyByState(Id.value);\r\n }\r\n }\r\n DownloadResume(docname: string) {\r\n this.userService.DownloadResume(this.authService.currentUserValue.id || 0)\r\n .subscribe(response => {\r\n saveAs(response, docname)\r\n });\r\n }\r\n\r\n DeleteResume() {\r\n this.userService.deleteResume(this.authService.currentUserValue.id || 0)\r\n .subscribe(response => {\r\n if (response.isSuccess) {\r\n this.alertify.success(response.message);\r\n this.resume = null;\r\n } else {\r\n this.alertify.error(response.message);\r\n }\r\n });\r\n }\r\n async sameAddressChange() {\r\n if (this.userProfileForm.value['SameAddress']) {\r\n //Code modified by atul on dated 10 apr 22 for fix bug 448 City and county for Billing Address not auto-populated\r\n this.userProfileForm.patchValue({\r\n Billingaddress1: this.userProfileForm.value['Physicaladdress1'],\r\n Billingaddress2: this.userProfileForm.value['Physicaladdress2'],\r\n Billingstate: this.userProfileForm.value['Physicalstate'],\r\n Billingcounty: this.userProfileForm.value['Physicalcounty'],\r\n Billingcity: this.userProfileForm.value['Physicalcity'],\r\n Billingzipcode: this.userProfileForm.value['Physicalzipcode'],\r\n });\r\n await this.getBillingCountyByState(parseInt(this.userProfileForm.value['Physicalstate']));\r\n } else {\r\n this.userProfileForm.patchValue({\r\n Billingaddress1: [''],\r\n Billingaddress2: [''],\r\n Billingstate: [0],\r\n Billingcounty: [0],\r\n Billingcity: [0],\r\n Billingzipcode: [''],\r\n })\r\n }\r\n }\r\n\r\n getCountyByState(Id: number) {\r\n this.userService.getAllCountyByState(Id).subscribe(county => {\r\n this.countyList = county.list;\r\n //Code modified by atul on dated 10 apr 22 for fix bug 448 City and county for Billing Address not auto-populated\r\n setTimeout(() => {\r\n var physicalCounty = this.userProfileForm.value['Physicalcounty'];\r\n this.userProfileForm.patchValue({\r\n Physicalcounty: physicalCounty,\r\n })\r\n if (parseInt(physicalCounty) > 0) {\r\n this.getCityByCounty(parseInt(physicalCounty));\r\n }\r\n }, 1);\r\n });\r\n }\r\n onSelectedCounty(Id: any) {\r\n if (parseInt(Id.value) > 0) {\r\n //setTimeout(()=>{\r\n this.userProfileForm.patchValue({\r\n Physicalcity: ''\r\n });\r\n //},1);\r\n this.getCityByCounty(Id.value);\r\n }\r\n }\r\n GetCaseTypes() {\r\n this.appearanceService.getCaseType().subscribe(x => { this.casetypes = x });\r\n }\r\n getCityByCounty(Id: number) {\r\n this.userService.getAllCityByCounty(Id).subscribe(city => {\r\n this.cityList = city.list;\r\n //Code modified by atul on dated 10 apr 22 for fix bug 448 City and county for Billing Address not auto-populated\r\n setTimeout(() => {\r\n this.userProfileForm.patchValue({\r\n Physicalcity: this.userProfileForm.value['Physicalcity']\r\n })\r\n }, 1);\r\n });\r\n }\r\n onBillingSelectedCounty(Id: any) {\r\n if (parseInt(Id.value) > 0) {\r\n this.userProfileForm.patchValue({\r\n Billingcity: ''\r\n });\r\n this.getBillingCityByCounty(Id.value);\r\n }\r\n }\r\n\r\n uploadResume(event: any) {\r\n if (event.target.files.length === 0) {\r\n return;\r\n }\r\n Array.from(event.target.files).forEach((element: any) => {\r\n this.selectedFiles.push(element);\r\n });\r\n this.ResumePath = event.target.files[0].name;\r\n this.resume.name = event.target.files[0].name;\r\n this.resume.type = event.target.files[0].name.split('.')[1];\r\n }\r\n // convenience getter for easy access to form fields\r\n get f() { return this.userProfileForm.controls; }\r\n get sf() { return this.stripeForm.controls; }\r\n //Following method added by atul on date 9 apr 22 for fix bug 473 Subuser created by Dual role user also gets dual role\r\n getFormValidationErrors() {\r\n //Code modified by atul on dated 20 apr 22 for bug 491: Profile - If any mandatory fields are pending, the page should be positioned to show the pending fields\r\n var iRow = 0;\r\n Object.keys(this.userProfileForm.controls).forEach(key => {\r\n\r\n const controlErrors = this.userProfileForm.get(key)?.errors;\r\n if (controlErrors != null) {\r\n iRow++;\r\n if (iRow == 1) {\r\n if (key == \"hidIsBars\") {\r\n key = \"barNoTextBox\";\r\n }\r\n else if (key == \"hidIsPracticeAreas\") {\r\n key = \"practiceDescTextbox\";\r\n }\r\n document.getElementById(key)?.focus();\r\n if (document.getElementById(key) != document.activeElement) {\r\n if (key == \"Physicaladdress1\" || key == \"Physicaladdress2\" || key == \"Physicalstate\" || key == \"Physicalcounty\" || key == \"Physicalcity\" || key == \"Physicalzipcode\"\r\n || key == \"Billingaddress1\" || key == \"Billingaddress2\" || key == \"Billingstate\" || key == \"Billingcounty\" || key == \"Billingcity\" || key == \"Billingzipcode\") {\r\n document.getElementById(\"btnCollapseAddress\")?.click();\r\n }\r\n else if (key == \"firstName\" || key == \"lastname\" || key == \"alternateEmail\" || key == \"mobileNo\" || key == \"businessNo\" || key == \"alternateEmail\") {\r\n document.getElementById(\"btncollapseOne\")?.click();\r\n }\r\n else if (key == \"firmName\") {\r\n document.getElementById(\"btncollapseTwo\")?.click();\r\n }\r\n else if (key == \"hourlyratemin\") {\r\n document.getElementById(\"btncollapseThree\")?.click();\r\n }\r\n else if (key == \"practiceDescTextbox\") {\r\n document.getElementById(\"btncollapsePracticeArea\")?.click();\r\n }\r\n else if (key == \"barNoTextBox\") {\r\n document.getElementById(\"btncollapseBarDetails\")?.click();\r\n }\r\n document.getElementById(key)?.focus();\r\n }\r\n }\r\n Object.keys(controlErrors).forEach(keyError => {\r\n console.log('Key control: ' + key + ', keyError: ' + keyError + ', err value: ', controlErrors[keyError]);\r\n });\r\n }\r\n });\r\n }\r\n //following function added by atul on 12 may 22 for making stripe connect mandatory\r\n getStripeFormValidationErrors() {\r\n var iRow = 0;\r\n Object.keys(this.stripeForm.controls).forEach(key => {\r\n\r\n const controlErrors = this.stripeForm.get(key)?.errors;\r\n if (controlErrors != null) {\r\n iRow++;\r\n if (iRow == 1) {\r\n if (key == \"hidIsPaymentSetupInProgress\") {\r\n key = \"rbCards\";\r\n }\r\n document.getElementById(key)?.focus();\r\n if (document.getElementById(key) != document.activeElement) {\r\n if (key == \"rbIndividual\" || key == \"rbCards\") {\r\n document.getElementById(\"btncollapseFour\")?.click();\r\n }\r\n document.getElementById(key)?.focus();\r\n }\r\n }\r\n Object.keys(controlErrors).forEach(keyError => {\r\n console.log('Key control: ' + key + ', keyError: ' + keyError + ', err value: ', controlErrors[keyError]);\r\n });\r\n }\r\n });\r\n }\r\n //Following all functions modified by atul on 12 may 22 for making stripe mandatory\r\n onSubmit() {\r\n \r\n //Following line added by atul on date 9 apr 22 for fix bug 473 Subuser created by Dual role user also gets dual role\r\n this.getFormValidationErrors();\r\n if (this.userProfileForm.valid) {\r\n if (this.AttorneyCheckChecked && this.LawFirmCheckChecked) {\r\n this.ProfileType = 'EA';\r\n this.UpdateCurrentProfileType(this.ProfileType);\r\n } else if (this.AttorneyCheckChecked) {\r\n this.ProfileType = 'A';\r\n this.UpdateCurrentProfileType(this.ProfileType);\r\n } else if (this.IndividualCheckChecked) {\r\n this.ProfileType = 'I';\r\n this.UpdateCurrentProfileType(this.ProfileType);\r\n } else if (this.LawFirmCheckChecked) {\r\n this.ProfileType = 'E';\r\n this.UpdateCurrentProfileType(this.ProfileType);\r\n }\r\n\r\n if (this.userProfileForm.get('Physicaladdress1')?.value != null && this.NumberofAddress > 0) {\r\n this.updateAddressReq.address1 = this.userProfileForm.get('Physicaladdress1')?.value;\r\n this.updateAddressReq.address2 = this.userProfileForm.get('Physicaladdress2')?.value;\r\n this.updateAddressReq.addressType = \"OG\";\r\n this.updateAddressReq.cityMasterId = this.userProfileForm.get('Physicalcity')?.value;\r\n this.updateAddressReq.countryCode = \"USA\";\r\n this.updateAddressReq.countyMasterId = this.userProfileForm.get('Physicalcounty')?.value;\r\n this.updateAddressReq.isPrimary = true;\r\n this.updateAddressReq.stateMasterId = this.userProfileForm.get('Physicalstate')?.value;\r\n this.updateAddressReq.userMasterId = this.authService.currentUserValue.id || 0;\r\n this.updateAddressReq.zipCode = this.userProfileForm.get('Physicalzipcode')?.value;\r\n\r\n this.userService.UpdateUserAddress(this.PhysicalAutoId, this.updateAddressReq).subscribe(result => {\r\n this.submittingReqCount--;\r\n //this.getUserGeneralProfile();\r\n });\r\n } else if (this.userProfileForm.get('Physicaladdress1')?.value != null) {\r\n this.updateAddressReq.address1 = this.userProfileForm.get('Physicaladdress1')?.value;\r\n this.updateAddressReq.address2 = this.userProfileForm.get('Physicaladdress2')?.value;\r\n this.updateAddressReq.addressType = \"OG\";\r\n this.updateAddressReq.cityMasterId = this.userProfileForm.get('Physicalcity')?.value;\r\n this.updateAddressReq.countryCode = \"USA\";\r\n this.updateAddressReq.countyMasterId = this.userProfileForm.get('Physicalcounty')?.value;\r\n this.updateAddressReq.isPrimary = true;\r\n this.updateAddressReq.stateMasterId = this.userProfileForm.get('Physicalstate')?.value;\r\n this.updateAddressReq.userMasterId = this.authService.currentUserValue.id || 0;\r\n this.updateAddressReq.zipCode = this.userProfileForm.get('Physicalzipcode')?.value;\r\n\r\n this.userService.AddUserAddress(this.updateAddressReq).subscribe(result => {\r\n this.submittingReqCount--;\r\n //this.getUserGeneralProfile();\r\n });\r\n }\r\n\r\n if (this.userProfileForm.get('Billingaddress1')?.value != null && this.NumberofAddress > 0) {\r\n this.updateBillingAddressReq.address1 = this.userProfileForm.get('Billingaddress1')?.value;\r\n this.updateBillingAddressReq.address2 = this.userProfileForm.get('Billingaddress2')?.value;\r\n this.updateBillingAddressReq.addressType = \"PG\";\r\n this.updateBillingAddressReq.cityMasterId = this.userProfileForm.get('Billingcity')?.value;\r\n this.updateBillingAddressReq.countryCode = \"USA\";\r\n this.updateBillingAddressReq.countyMasterId = this.userProfileForm.get('Billingcounty')?.value;\r\n this.updateBillingAddressReq.isPrimary = true;\r\n this.updateBillingAddressReq.stateMasterId = this.userProfileForm.get('Billingstate')?.value;\r\n this.updateBillingAddressReq.userMasterId = this.authService.currentUserValue.id || 0;\r\n this.updateBillingAddressReq.zipCode = this.userProfileForm.get('Billingzipcode')?.value;\r\n\r\n this.userService.UpdateUserAddress(this.BillingAutoId, this.updateBillingAddressReq).subscribe(result => {\r\n this.submittingReqCount--;\r\n //this.getUserGeneralProfile();\r\n });\r\n } else if (this.userProfileForm.get('Billingaddress1')?.value != null) {\r\n this.updateBillingAddressReq.address1 = this.userProfileForm.get('Billingaddress1')?.value;\r\n this.updateBillingAddressReq.address2 = this.userProfileForm.get('Billingaddress2')?.value;\r\n this.updateBillingAddressReq.addressType = \"PG\";\r\n this.updateBillingAddressReq.cityMasterId = this.userProfileForm.get('Billingcity')?.value;\r\n this.updateBillingAddressReq.countryCode = \"USA\";\r\n this.updateBillingAddressReq.countyMasterId = this.userProfileForm.get('Billingcounty')?.value;\r\n this.updateBillingAddressReq.isPrimary = true;\r\n this.updateBillingAddressReq.stateMasterId = this.userProfileForm.get('Billingstate')?.value;\r\n this.updateBillingAddressReq.userMasterId = this.authService.currentUserValue.id || 0;\r\n this.updateBillingAddressReq.zipCode = this.userProfileForm.get('Billingzipcode')?.value;\r\n\r\n this.userService.AddUserAddress(this.updateBillingAddressReq).subscribe(result => {\r\n this.submittingReqCount--;\r\n //this.getUserGeneralProfile();\r\n });\r\n }\r\n\r\n if (this.Bars.length == 0 && this.authService.currentUserValue.profileType == \"A\") {\r\n this.submittingReqCount--;\r\n this.alertify.error(CommonConstant.PROFILE_MESSAGES.SELECT_BARNO_ERROR);\r\n return;\r\n } else {\r\n this.userService.AddBarDetails(this.Bars).subscribe(result => {\r\n this.submittingReqCount--;\r\n //this.getUserGeneralProfile();\r\n });\r\n }\r\n\r\n if (this.PracticeAreas) {\r\n this.userService.AddPracticeArea(this.PracticeAreas).subscribe(result => {\r\n this.submittingReqCount--;\r\n //this.getUserGeneralProfile();\r\n });\r\n }\r\n this.userService.updateGeneralProfile(this.userProfileForm.value, this.ProfileType).subscribe(result => {\r\n this.submittingReqCount--;\r\n //this.alertify.success('Profile updated successfully to see the changes please logout and login again !');\r\n //this.getUserGeneralProfile();\r\n });\r\n if (this.userProfileForm.get('yearsofexperience')?.value != null && (this.UserProfileDetails == undefined || this.UserProfileDetails == null)) {\r\n this.finalFormData.append('ExpYears', this.userProfileForm.get('yearsofexperience')?.value == '' ? 0 : this.userProfileForm.get('yearsofexperience')?.value);\r\n this.finalFormData.append('HourlyRateMin', (this.userProfileForm.get('hourlyratemin')?.value == null || this.userProfileForm.get('hourlyratemin')?.value == '') ? 0 : this.userProfileForm.get('hourlyratemin')?.value);\r\n this.finalFormData.append('BriefResume', this.userProfileForm.get('BriefBio')?.value);\r\n this.finalFormData.append('RateNegotiable', this.userProfileForm.get('ratenegotiable')?.value);\r\n this.finalFormData.append('TravelDistance', this.userProfileForm.get('traveldistance')?.value == '' ? 0 : this.userProfileForm.get('traveldistance')?.value);\r\n this.finalFormData.append('UserMasterId', JSON.stringify(this.authService.currentUserValue.id));\r\n this.finalFormData.append('Languages', this.userProfileForm.get('Language')?.value);\r\n if (this.selectedFiles) {\r\n for (var i = 0; i < this.selectedFiles.length; i++) {\r\n // Store form name as \"file\" with file data\r\n this.finalFormData.append(\"ResumePath\", this.selectedFiles[i], this.selectedFiles[i].name);\r\n }\r\n }\r\n\r\n this.userService.AddUserDetails(this.finalFormData)\r\n .subscribe(event => {\r\n this.submittingReqCount--;\r\n });\r\n } else if (this.UserProfileDetails != undefined) {\r\n this.finalFormDataUpdate = new FormData();\r\n console.log(this.userProfileForm.get('hourlyratemin')?.value);\r\n this.finalFormDataUpdate.append('ExpYears', this.userProfileForm.get('yearsofexperience')?.value == '' ? 0 : this.userProfileForm.get('yearsofexperience')?.value);\r\n this.finalFormDataUpdate.append('HourlyRateMin', (this.userProfileForm.get('hourlyratemin')?.value == null || this.userProfileForm.get('hourlyratemin')?.value == '') ? 0 : this.userProfileForm.get('hourlyratemin')?.value);\r\n this.finalFormDataUpdate.append('BriefResume', this.userProfileForm.get('BriefBio')?.value);\r\n this.finalFormDataUpdate.append('RateNegotiable', this.userProfileForm.get('ratenegotiable')?.value);\r\n this.finalFormDataUpdate.append('TravelDistance', this.userProfileForm.get('traveldistance')?.value == '' ? 0 : this.userProfileForm.get('traveldistance')?.value);\r\n this.finalFormDataUpdate.append('UserMasterId', JSON.stringify(this.authService.currentUserValue.id));\r\n this.finalFormDataUpdate.append('Languages', this.userProfileForm.get('Language')?.value);\r\n if (this.selectedFiles) {\r\n for (var i = 0; i < this.selectedFiles.length; i++) {\r\n // Store form name as \"file\" with file data\r\n this.finalFormDataUpdate.append(\"ResumePath\", this.selectedFiles[i], this.selectedFiles[i].name);\r\n }\r\n }\r\n\r\n this.userService.UpdateUserDetails(this.finalFormDataUpdate, this.authService.currentUserValue.id)\r\n .subscribe(event => {\r\n this.submittingReqCount--;\r\n });\r\n }\r\n } else {\r\n /*Atul added below line in Dec 24 to fix an issue*/\r\n this.spinner.hide();\r\n this.alertify.error(CommonConstant.PROFILE_MESSAGES.ALL_REQUIRED_ERROR);\r\n }\r\n }\r\nGetFormData(){\r\n const userProfileData = this.userProfileForm.value;\r\n const stripeData = this.stripeForm.value;\r\n const combinedData = { ...userProfileData, ...stripeData };\r\n return JSON.stringify(combinedData);\r\n \r\n}\r\n //Stripe Commented code: Following function commented and changed by atul on 25 dec 22\r\n onStripeSubmit() {\r\n console.log('this.submittingReqCount',this.submittingReqCount);\r\n if(this.submitted)\r\n return;\r\n this.submitted = true;\r\n this.spinner.show()\r\n //Log event\r\n this.activityLogReq.activityName=\"Profile Update Start\";\r\n this.activityLogReq.activityData=this.GetFormData();\r\n this.userService.AddActivityLog(this.activityLogReq).subscribe(event => { });\r\n\r\n if (!this.userProfileForm.valid)\r\n this.getFormValidationErrors();\r\n else\r\n this.getStripeFormValidationErrors();\r\n\r\n if (this.userProfileForm.valid && this.stripeForm.valid) {\r\n this.submittingReqCount = 6;\r\n this.stripeSubmitTimer = setInterval(() => {\r\n if (this.submittingReqCount == 0) {\r\n this.getUserGeneralProfile(\"Submit\");\r\n clearInterval(this.stripeSubmitTimer);\r\n this.stripeSubmitTimer = null;\r\n\r\n // this.alertify.success('Profile updated successfully.');\r\n // this.spinner.hide();\r\n }\r\n }, 1000);\r\n this.onSubmit();\r\n }\r\n else {\r\n /*Atul added below 2 line in Dec 24 to fix an issue*/\r\n this.submitted=false;\r\n this.spinner.hide();\r\n this.alertify.error(CommonConstant.PROFILE_MESSAGES.ALL_REQUIRED_ERROR);\r\n }\r\n }\r\n \r\n\r\n //Following function added by atul on 29 apr 22 for task 495: Mandatory Stripe registration along with auto-debit feature\r\n FuturePaymentSetupClicked_Old() {\r\n var userMasterId: any = this.authService.currentUserValue.id || 0;\r\n var paymentMethod: any = this.stripeForm.get('paymentMethod')?.value;\r\n if (paymentMethod == '') {\r\n //this.alertify.success(result);\r\n this.alertify.error(CommonConstant.PROFILE_MESSAGES.SELECT_PAYMENT_ERROR);\r\n document.getElementById(\"rbCards\")?.focus();\r\n return;\r\n }\r\n\r\n\r\n \r\n if (this.stripeSubmitTimer == null) {\r\n this.submitted = true;\r\n this.getFormValidationErrors();\r\n if (this.userProfileForm.valid) {\r\n this.spinner.show();\r\n this.submittingReqCount = 6;\r\n this.stripeSubmitTimer = setInterval(() => {\r\n if (this.submittingReqCount == 0) {\r\n clearInterval(this.stripeSubmitTimer);\r\n this.stripeSubmitTimer = null;\r\n\r\n //Stripe Commented code: Following 1 line commented by atul on 25 dec 22\r\n //this.IsStripeConnecting = true;\r\n const setupDTO: StripePaymentSetupDTO = {\r\n UserMasterId: userMasterId,\r\n PaymentMethodId: +paymentMethod\r\n }\r\n this.userService.FuturePaymentSetup(setupDTO).subscribe(result => {\r\n if (result.model == null) {\r\n this.spinner.hide();\r\n //Stripe Commented code: Following 1 line commented by atul on 25 dec 22\r\n //this.IsStripeConnecting = false;\r\n this.alertify.error(result.message);\r\n }\r\n else {\r\n window.location.href = result.model.accountLinkUrl;\r\n }\r\n });\r\n }\r\n }, 1000);\r\n this.onSubmit();\r\n }\r\n }\r\n }\r\n\r\n decimalFilter(event: any) {\r\n const reg = /^-?\\d*(\\.\\d{0,2})?$/;\r\n let input = event.target.value + String.fromCharCode(event.charCode);\r\n\r\n if (event.charCode == \"46\") {\r\n event.preventDefault();\r\n }\r\n else if (!reg.test(input)) {\r\n event.preventDefault();\r\n }\r\n }\r\n FuturePaymentSetupClicked() {\r\n var userMasterId: any = this.authService.currentUserValue.id || 0;\r\n var paymentMethod: any = this.stripeForm.get('paymentMethod')?.value;\r\n if (paymentMethod == '') {\r\n //this.alertify.success(result);\r\n this.alertify.error(CommonConstant.PROFILE_MESSAGES.SELECT_PAYMENT_ERROR);\r\n document.getElementById(\"rbCards\")?.focus();\r\n return;\r\n }\r\n this.IsPaymentSetupStarted = true;\r\n this.spinner.show();\r\n\r\n setTimeout(() => {\r\n var userMasterId: Number = this.authService.currentUserValue.id || 0;\r\n var profileType = this.authService.currentUserValue.profileType || \"\";\r\n const saveCardTokenDTO: SaveCardTokenDTO = {\r\n UserMasterId: userMasterId,\r\n ProfileType: profileType\r\n }\r\n this.userService.GetSaveCardToken(saveCardTokenDTO).subscribe(result => {\r\n if(result.model && result.model != '') \r\n {\r\n this.token = result.model;\r\n var iframeBaseUrl =this.paymentGatewayUrl + \"/pay/v3/saveCard\"; \r\n var oneTimeUseToken = \"?token=\" + this.token;\r\n var returnHtml = \"&shouldReturnHtml=true\";\r\n this.token = iframeBaseUrl + oneTimeUseToken + returnHtml;\r\n \r\n this.elementRef.nativeElement.querySelector('#myIframe').src = this.token;\r\n this.elementRef.nativeElement.querySelector('#myForm').addEventListener('submit', (event:any) => {\r\n event.preventDefault();\r\n this.elementRef.nativeElement.querySelector('#myIframe').contentWindow.postMessage('posted', this.paymentGatewayUrl);\r\n this.spinner.show();\r\n return false; \r\n });\r\n //this.spinner.hide();\t\r\n }\r\n else{\r\n this.spinner.hide();\r\n }\r\n });\r\n\t \r\n }, 10);\r\n }\r\n\r\n //Following function added by atul on 29 apr 22 for task 495: Mandatory Stripe registration along with auto-debit feature\r\n GetIsPaymentSetupCompleted() { \r\n var userMasterId: Number = this.authService.currentUserValue.id || 0;\r\n var profileType = this.authService.currentUserValue.profileType || \"\";\r\n const isStripeConnectedDTO: IsStripeConnectedDTO = {\r\n UserMasterId: userMasterId,\r\n ProfileType: profileType\r\n }\r\n this.userService.GetIsPaymentSetupCompleted(isStripeConnectedDTO).subscribe(result => {\r\n this.spinner.hide();\r\n //(atul) change this api to include currentpaymethod in response\r\n if (result.model != null) {\r\n this.authService.updateAutoPaymentSetupCompleted(true);\r\n this.IsPaymentSetupCompleted = true;\r\n this.stripeForm.patchValue({\r\n hidIsPaymentSetupCompleted: true\r\n });\r\n this.CurrentPayMethod = result.model.methodType;\r\n this.CurrentPayBrand = result.model.cardType;\r\n this.CurrentPayLastDigits = result.model.cardLastDigits;\r\n // this.CurrentPayAcType = result.model.acType;\r\n // this.CurrentPayBank = result.model.bankName;\r\n }\r\n else {\r\n this.IsPaymentSetupCompleted = false;\r\n this.stripeForm.patchValue({\r\n hidIsPaymentSetupCompleted: false\r\n });\r\n }\r\n });\r\n // this.userService.GetIsPaymentSetupInProgress(isStripeConnectedDTO).subscribe(result => {\r\n // this.spinner.hide();\r\n // //(atul) change this api to include currentpaymethod in response\r\n // if (result.model != null) {\r\n // this.authService.updateAutoPaymentSetupCompleted(true);\r\n // this.IsPaymentSetupInProgress = true;\r\n // this.stripeForm.patchValue({\r\n // hidIsPaymentSetupInProgress: true\r\n // });\r\n // }\r\n // else {\r\n // this.IsPaymentSetupInProgress = false;\r\n // this.stripeForm.patchValue({\r\n // hidIsPaymentSetupInProgress: false\r\n // });\r\n // }\r\n\r\n // });\r\n }\r\n savePaymentSetupResponse(session_id: any) {\r\n this.userService.savePaymentSetupResponse(session_id).subscribe(result => {\r\n if (result.isSuccess == true) {\r\n this.authService.updateStripeAccount(true);\r\n this.GetIsPaymentSetupCompleted();\r\n this.alertify.success(result.message);\r\n }\r\n else {\r\n this.IsPaymentSetupCompleted = false;\r\n this.alertify.error(result.message);\r\n }\r\n });\r\n }\r\n\r\n UpdateCurrentProfileType(profileType: string) {\r\n this.authService.updateProfileType(profileType);\r\n }\r\n //Following function added by atul on 29 apr 22 for task 495: Mandatory Stripe registration along with auto-debit feature\r\n RemovePayMethodClicked() {\r\n this.submitted = true;\r\n this.getFormValidationErrors();\r\n if (this.userProfileForm.valid) {\r\n this.spinner.show();\r\n this.submittingReqCount = 6;\r\n this.stripeSubmitTimer = setInterval(() => {\r\n if (this.submittingReqCount == 0) {\r\n clearInterval(this.stripeSubmitTimer);\r\n this.stripeSubmitTimer = null;\r\n\r\n var userMasterId: any = this.authService.currentUserValue.id || 0;\r\n this.spinner.show();\r\n this.userService.RemovePayMethod(userMasterId).subscribe(result => {\r\n this.spinner.hide();\r\n this.authService.updateAutoPaymentSetupCompleted(false);\r\n //this.authService.updateStripeAccount(false);\r\n if (result.model == null || result.model == false) {\r\n this.alertify.error(result.message);\r\n }\r\n else {\r\n this.alertify.success(result.message);\r\n this.GetIsPaymentSetupCompleted();\r\n }\r\n });\r\n }\r\n }, 1000);\r\n this.onSubmit();\r\n }\r\n return;\r\n \r\n }\r\n // Below Code added by nirav for Avatar Coding\r\n getInitials(firstName: string, lastName: string) {\r\n if (firstName != null && lastName != null) {\r\n return firstName[0].toUpperCase() + lastName[0].toUpperCase();\r\n } else {\r\n return '';\r\n }\r\n }\r\n GetNomadStatus() {\r\n var userMasterId: Number = this.authService.currentUserValue.id || 0;\r\n \r\n this.userService.GetNomadStatus(userMasterId).subscribe(result => {\r\n console.warn(result);\r\n //this.spinner.hide();\r\n //(atul) change this api to include currentpaymethod in response\r\n if (result.model != null) {\r\n this.WalletBalance =result.model;\r\n if(this.WalletBalance != \"NOTEXISTS\" && this.WalletBalance != \"INPROGRESS\" )\r\n {\r\n this.WalletBalance = \"Wallet Balance: $\" + this.WalletBalance;\r\n }\r\n }\r\n else {\r\n \r\n }\r\n });\r\n \r\n }\r\n CreateNomadAccount(){\r\n var userMasterId: Number = this.authService.currentUserValue.id || 0;\r\n this.spinner.show();\r\n this.userService.CreateNomadAccount(userMasterId).subscribe(result => {\r\n if (result.model != null) {\r\n this.WalletBalance =result.model;\r\n if(this.WalletBalance != \"NOTEXISTS\" && this.WalletBalance != \"INPROGRESS\" )\r\n {\r\n this.WalletBalance = \"Wallet Balance: $\" + this.WalletBalance;\r\n }\r\n \r\n \r\n }\r\n else {\r\n \r\n }\r\n this.spinner.hide();\r\n });\r\n }\r\n //Following function added by atul on 12 nov 23 because we are moving from Nomad to Ipayout\r\n CreateIPayoutAccount(){\r\n var userMasterId: Number = this.authService.currentUserValue.id || 0;\r\n this.spinner.show();\r\n this.userService.CreateIPayoutAccount(userMasterId).subscribe(result => {\r\n if (result.model != null) {\r\n if(result.model != \"INPROGRESS\" )\r\n {\r\n this.alertify.error(\"Create Account error: \" + result.model);\r\n }\r\n else{\r\n this.WalletBalance =result.model;\r\n } \r\n }\r\n this.spinner.hide();\r\n });\r\n }\r\n NomadWalletDetails(){\r\n var userMasterId: Number = this.authService.currentUserValue.id || 0;\r\n this.spinner.show();\r\n this.userService.NomadWalletDetails(userMasterId).subscribe(result => {\r\n if (result.model != null && result.model != '') {\r\n //window.location.href = result.model; \r\n this.spinner.hide(); \r\n window.open(result.model, '_blank');\r\n }\r\n else {\r\n this.spinner.hide(); \r\n }\r\n });\r\n }\r\n //Following function added by atul on 12 nov 23 because we are moving from Nomad to Ipayout\r\n IPayoutWalletDetails(){\r\n var userMasterId: Number = this.authService.currentUserValue.id || 0;\r\n const routeToOpen = '/user-wallet/' + userMasterId;\r\n window.open(this.router.serializeUrl(this.router.createUrlTree([routeToOpen]))); \r\n return;\r\n }\r\n ContactUsClick(){\r\n window.location.href =\"contact-us\";\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n

Profile

\r\n
    \r\n
  1. Home
  2. \r\n
  3. Profile
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
OR
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

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

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
{{getInitials(userInfo?.firstName,userInfo?.lastName)}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Please enter first name.
\r\n
\r\n \r\n
\r\n
Please enter last name.
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n Please enter valid 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 Mobile Phone is required.\r\n
\r\n
Please, Enter 10 digit Mobile Phone.
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
Please, Enter 10 digit Work Phone.
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\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
\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
County is required
\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
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Zip Code 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
Billing Address 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
State is required
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
County is required
\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
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Zip Code 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
Firm Name 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
Hourly Rate 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 {{lang.recordName}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
File NameFile TypeAction

{{resume.name}}

{{resume.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 \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
Practice Area\r\n Brief Description (optional)\r\n \r\n  \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{area.practiceArea}}\r\n \r\n {{area.briefDescription}}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
StateBar #\r\n \r\n  \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{bar.stateName}}\r\n \r\n {{bar.barNo}}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n I-Payout (To receive payments): \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n {{WalletBalance}}\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n Auto debit payment settings:\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
\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 setup is in progress.   \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n Completed.   \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Please complete auto debit payment setup.
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n  \r\n Cancel\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n

Loading...

\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { NgbModal, NgbActiveModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { User } from 'src/app/models/user';\r\nimport { UserLoginComponent } from '../user-login/user-login.component';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { Router } from '@angular/router';\r\nimport { TermsComponent } from 'src/app/basic-pages/terms/terms.component';\r\n\r\n@Component({\r\n selector: 'app-user-registration',\r\n templateUrl: './user-registration.component.html',\r\n styleUrls: ['./user-registration.component.css', '../../../assets/css/login_modal.css']\r\n})\r\nexport class UserRegistrationComponent implements OnInit {\r\n\r\n constructor(public activeModal: NgbActiveModal,\r\n public modalService: NgbModal,\r\n private userService: UserService,\r\n private router: Router,\r\n private alertify: AlertifyService) { }\r\n\r\n registrationForm: FormGroup;\r\n userSubmitted: boolean;\r\n user: User;\r\n ngOnInit() {\r\n this.registrationForm = new FormGroup({\r\n firstName: new FormControl(null, [Validators.required]),\r\n lastName: new FormControl(null, [Validators.required]),\r\n loginId: new FormControl(null, [Validators.required, Validators.email]),\r\n password: new FormControl(null, [Validators.required, Validators.minLength(8)]),\r\n confirmPassword: new FormControl(null, [Validators.required]),\r\n acceptTerms: new FormControl(false, [Validators.required])\r\n }, this.passwordMatchingValidatior('password', 'confirmPassword'));\r\n }\r\n\r\n passwordMatchingValidatior(password: string, confirmPassword: string): Validators {\r\n return (formGroup: FormGroup) => {\r\n const passwordControl = formGroup.controls[password];\r\n const confirmPasswordControl = formGroup.controls[confirmPassword];\r\n\r\n if (passwordControl.value === confirmPasswordControl.value)\r\n confirmPasswordControl.setErrors(null);\r\n else\r\n confirmPasswordControl.setErrors({ passwordMismatch: true });\r\n }\r\n }\r\n Terms(){\r\n const modalrefs = this.modalService.open(TermsComponent, { size: 'xl', backdrop: 'static' });\r\n modalrefs.componentInstance.fromSignUp = true;\r\n }\r\n onSubmit() {\r\n this.userSubmitted = true;\r\n if (this.registrationForm.valid && this.acceptTerms.value) {\r\n this.userService.addUser(this.userData()).subscribe(result => {\r\n if(result.isSuccess){\r\n this.alertify.success(result.message);\r\n this.modalService.dismissAll();\r\n localStorage.setItem('signupemail',this.loginId.value);\r\n this.router.navigate(['verification']);\r\n }else{\r\n this.alertify.error(result.message);\r\n }\r\n });\r\n this.userSubmitted = false;\r\n }\r\n else {\r\n this.alertify.error('Please review and agree to the Terms and Conditions.');\r\n\r\n }\r\n }\r\n\r\n userData(): User {\r\n return this.user = {\r\n FirstName: this.firstName.value,\r\n LastName: this.lastName.value,\r\n LoginId: this.loginId.value,\r\n Password: this.password.value,\r\n ParentUserId: 0,\r\n RoleName: '',\r\n ProfileType:'Admin',\r\n IdentityProviderCode:''\r\n }\r\n }\r\n\r\n // ------------------------------------\r\n // Getter methods for all form controls\r\n // ------------------------------------\r\n get firstName() {\r\n return this.registrationForm.get('firstName') as FormControl;\r\n }\r\n get lastName() {\r\n return this.registrationForm.get('lastName') as FormControl;\r\n }\r\n get loginId() {\r\n return this.registrationForm.get('loginId') as FormControl;\r\n }\r\n get password() {\r\n return this.registrationForm.get('password') as FormControl;\r\n }\r\n get confirmPassword() {\r\n return this.registrationForm.get('confirmPassword') as FormControl;\r\n }\r\n get acceptTerms() {\r\n return this.registrationForm.get('acceptTerms') as FormControl;\r\n }\r\n // -----------------------\r\n openLoginPopup(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(UserLoginComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Please provide first name.\r\n
\r\n
\r\n
\r\n
\r\n \r\n Please\r\n provide last name.\r\n
\r\n
\r\n
\r\n
\r\n \r\n Please\r\n provide login id.\r\n
\r\n
\r\n \r\n \r\n \r\n Please provide password.\r\n \r\n \r\n Password should not be lesser than 8 character.\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Please confirm password.\r\n \r\n \r\n \r\n Password not matched.\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n Please accept terms and conditions.\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
","import { Component, OnInit, Renderer2 } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-user-wallet',\r\n templateUrl: './user-wallet.component.html',\r\n styleUrls: ['./user-wallet.component.css']\r\n})\r\nexport class UserWalletComponent implements OnInit {\r\n private iPayoutMemberLoginUrl = environment.iPayoutMemberLoginUrl;\r\n public userMasterId: any;\r\n public loginKey: any;\r\n\r\n constructor(private route: ActivatedRoute,private renderer: Renderer2, private spinner: NgxSpinnerService,public alert: AlertifyService, public userService: UserService) { }\r\n\r\n ngOnInit() {\r\n this.spinner.show(); \r\n\r\n this.userMasterId = this.route.snapshot.params.userMasterId;\r\n if (this.userMasterId != undefined && this.userMasterId != null) {\r\n this.userService.AutoLoginWalletDetails(this.userMasterId).subscribe(result => {\r\n if (result.model != null && result.model != '') {\r\n //window.location.href = result.model; \r\n //this.spinner.hide();\r\n this.loginKey = result.model;\r\n //window.open(result.model, '_blank');\r\n // Create the form element\r\n const form = this.renderer.createElement('form');\r\n this.renderer.setProperty(form, 'id', 'theForm');\r\n this.renderer.setProperty(form, 'action', this.iPayoutMemberLoginUrl);\r\n this.renderer.setProperty(form, 'method', 'post');\r\n\r\n // Create the hidden input element\r\n const input = this.renderer.createElement('input');\r\n this.renderer.setProperty(input, 'type', 'hidden');\r\n this.renderer.setProperty(input, 'name', 'secKey');\r\n this.renderer.setProperty(input, 'value', this.loginKey);\r\n\r\n // Append the input element to the form\r\n this.renderer.appendChild(form, input);\r\n\r\n // Append the form to the body\r\n this.renderer.appendChild(document.body, form);\r\n\r\n // Submit the form\r\n form.submit();\r\n }\r\n else {\r\n this.spinner.hide(); \r\n }\r\n });\r\n }\r\n}\r\n\r\n\r\n}\r\n","Redirecting to I-Payout wallet...\r\n
\r\n




\r\n\r\n






\r\n






\r\n

\r\n\r\n

Loading...

","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { Resendverification, VerifyEmailModel } from 'src/app/models/user';\r\nimport { AlertifyService } from 'src/app/services/alertify.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { UserLoginComponent } from '../user-login/user-login.component';\r\n\r\n@Component({\r\n selector: 'app-verification',\r\n templateUrl: './verification.component.html',\r\n styleUrls: ['./verification.component.css']\r\n})\r\nexport class VerificationComponent implements OnInit {\r\n\r\n public verification: any;\r\n public Id: any;\r\n public IsVerifiedEmail: boolean = false;\r\n constructor(private route: ActivatedRoute,public alert: AlertifyService, public userService: UserService, public modalService: NgbModal, private authService: AuthService) { }\r\n\r\n ngOnInit() {\r\n this.verification = this.route.snapshot.params.emailtoken;\r\n if (this.verification != undefined && this.verification != null) {\r\n this.Id = parseInt(atob(this.verification).split('***')[1]);\r\n if (this.Id > 0) {\r\n this.VerifyEmail();\r\n }\r\n } else {\r\n this.Id = 0;\r\n this.IsVerifiedEmail = false;\r\n }\r\n }\r\n\r\n openLoginPopup(link: any) {\r\n //const modalRef = this.modalService.open(UserLoginComponent,{size:'sm', backdrop: 'static' });\r\n const modalRef = this.modalService.open(UserLoginComponent);\r\n modalRef.componentInstance.src = link;\r\n }\r\n ResendVerificationEmail(){\r\n let resendEmail = new Resendverification();\r\n //resendEmail.userEmailId = this.authService.currentUserValue.username || '';\r\n resendEmail.userEmailId = localStorage.getItem('signupemail') ||\"\";\r\n this.userService.ResendEmailVerification(resendEmail).subscribe(result => {\r\n if (result) {\r\n this.alert.success('Email sent successfully !');\r\n }\r\n });\r\n }\r\n\r\n VerifyEmail() {\r\n const verifyEmail = new VerifyEmailModel();\r\n verifyEmail.auto_Id = this.Id;\r\n verifyEmail.recordStatus = 'V';\r\n this.authService.verifyEmail(verifyEmail).subscribe(result => {\r\n if (result.isSuccess) {\r\n this.IsVerifiedEmail = true;\r\n }\r\n });\r\n }\r\n\r\n}\r\n"," \r\n
\r\n
\r\n
\r\n

Verification

\r\n
    \r\n
  1. Home
  2. \r\n
  3. Verification
  4. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Kindly check your email for verification, Resend verification email.

\r\n
\r\n\r\n
\r\n Your email has been successfully confirmed. Please click here to log in. \r\n
\r\n
\r\n","export const environment = {\r\n production: true,\r\n //apiUrl: 'https://localhost:5003/api/',//'http://localhost:21897/api/',\r\n apiUrl: 'https://videturproapi.azurewebsites.net/api/', // change this URL as production API url,\r\n //apiUrl: 'https://videturprodevapi.azurewebsites.net/api/', // dev\r\n //apiUrl: 'https://videturprostagingapi.azurewebsites.net/api/', // stage\r\n feature: {\r\n Idle: {\r\n enable: true,\r\n idleTimeSeconds: 1200, // In future we will pick this from DB which will set from Admin module\r\n timeOutSeconds: 1\r\n }\r\n },\r\n \r\n //For local: using atulyadav012@gmail.com\r\n //clientId:\"36391891638-mpnbjna6gftikakja3v701v6mqbhg425.apps.googleusercontent.com\"\r\n //For Dev using atul.yadav@merriment.co\r\n //clientId:\"86628243265-56560uk7k7smctoi2lb7vahcd4965jue.apps.googleusercontent.com\",\r\n //For prod google login using info@merriment.co\r\n clientId:\"547670947701-jduodc73csvl9lnkhj3f6qjic9giub5f.apps.googleusercontent.com\", //client secret: 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\r\n \r\n //for dev\r\n //paymentGatewayUrl:\"https://api.nexiopaysandbox.com\",\r\n //for prod\r\n paymentGatewayUrl:\"https://api.nexiopay.com\",\r\n //for dev i payout\r\n //iPayoutMemberLoginUrl:\"https://videtur.testewallet.com/MemberLogin.aspx\"\r\n //for prod i payout\r\n iPayoutMemberLoginUrl:\"https://videtur.globalewallet.com/MemberLogin.aspx\"\r\n};\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\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:///"}